diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2011-01-03 05:30:28 -0500 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2011-02-11 02:40:45 -0500 |
commit | 4bd597b633ae630e09d58957bd99870eac35fcb4 (patch) | |
tree | 39b829bee667531ac41ea48d7f392ecb9258f956 /arch/arm/mach-mx3/mach-cpuimx35.c | |
parent | cb07625d1f84fb48e6849cb530762ffcc6f8e458 (diff) |
ARM i.MX ehci: do ehci init in board specific functions
The mxc-ehci driver calls SoC specific phy initialization right after
calling board specific initialization. To offer greater flexibility for
boards to setup the phy and to get rid of some unnecessary flags in
platform data this patch lets the boards call the SoC specific phy
initialization and remove it from the driver.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-mx3/mach-cpuimx35.c')
-rw-r--r-- | arch/arm/mach-mx3/mach-cpuimx35.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/arch/arm/mach-mx3/mach-cpuimx35.c b/arch/arm/mach-mx3/mach-cpuimx35.c index 3eedf0fcaedd..0f2305626e17 100644 --- a/arch/arm/mach-mx3/mach-cpuimx35.c +++ b/arch/arm/mach-mx3/mach-cpuimx35.c | |||
@@ -111,15 +111,25 @@ static const struct mxc_nand_platform_data | |||
111 | .flash_bbt = 1, | 111 | .flash_bbt = 1, |
112 | }; | 112 | }; |
113 | 113 | ||
114 | static int eukrea_cpuimx35_otg_init(struct platform_device *pdev) | ||
115 | { | ||
116 | return mx35_initialize_usb_hw(pdev->id, MXC_EHCI_INTERFACE_DIFF_UNI); | ||
117 | } | ||
118 | |||
114 | static const struct mxc_usbh_platform_data otg_pdata __initconst = { | 119 | static const struct mxc_usbh_platform_data otg_pdata __initconst = { |
120 | .init = eukrea_cpuimx35_otg_init, | ||
115 | .portsc = MXC_EHCI_MODE_UTMI, | 121 | .portsc = MXC_EHCI_MODE_UTMI, |
116 | .flags = MXC_EHCI_INTERFACE_DIFF_UNI, | ||
117 | }; | 122 | }; |
118 | 123 | ||
124 | static int eukrea_cpuimx35_usbh1_init(struct platform_device *pdev) | ||
125 | { | ||
126 | return mx35_initialize_usb_hw(pdev->id, MXC_EHCI_INTERFACE_SINGLE_UNI | | ||
127 | MXC_EHCI_INTERNAL_PHY | MXC_EHCI_IPPUE_DOWN); | ||
128 | } | ||
129 | |||
119 | static const struct mxc_usbh_platform_data usbh1_pdata __initconst = { | 130 | static const struct mxc_usbh_platform_data usbh1_pdata __initconst = { |
131 | .init = eukrea_cpuimx35_usbh1_init, | ||
120 | .portsc = MXC_EHCI_MODE_SERIAL, | 132 | .portsc = MXC_EHCI_MODE_SERIAL, |
121 | .flags = MXC_EHCI_INTERFACE_SINGLE_UNI | MXC_EHCI_INTERNAL_PHY | | ||
122 | MXC_EHCI_IPPUE_DOWN, | ||
123 | }; | 133 | }; |
124 | 134 | ||
125 | static const struct fsl_usb2_platform_data otg_device_pdata __initconst = { | 135 | static const struct fsl_usb2_platform_data otg_device_pdata __initconst = { |