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/mx31moboard-devboard.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/mx31moboard-devboard.c')
-rw-r--r-- | arch/arm/mach-mx3/mx31moboard-devboard.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/arm/mach-mx3/mx31moboard-devboard.c b/arch/arm/mach-mx3/mx31moboard-devboard.c index 94a0b9e4b7f3..6410b9c48a02 100644 --- a/arch/arm/mach-mx3/mx31moboard-devboard.c +++ b/arch/arm/mach-mx3/mx31moboard-devboard.c | |||
@@ -15,6 +15,7 @@ | |||
15 | #include <linux/gpio.h> | 15 | #include <linux/gpio.h> |
16 | #include <linux/init.h> | 16 | #include <linux/init.h> |
17 | #include <linux/interrupt.h> | 17 | #include <linux/interrupt.h> |
18 | #include <linux/delay.h> | ||
18 | #include <linux/platform_device.h> | 19 | #include <linux/platform_device.h> |
19 | #include <linux/slab.h> | 20 | #include <linux/slab.h> |
20 | #include <linux/types.h> | 21 | #include <linux/types.h> |
@@ -149,7 +150,10 @@ static int devboard_usbh1_hw_init(struct platform_device *pdev) | |||
149 | mxc_iomux_set_pad(MX31_PIN_CSPI1_SPI_RDY, USB_PAD_CFG); | 150 | mxc_iomux_set_pad(MX31_PIN_CSPI1_SPI_RDY, USB_PAD_CFG); |
150 | mxc_iomux_set_pad(MX31_PIN_SFS6, USB_PAD_CFG); | 151 | mxc_iomux_set_pad(MX31_PIN_SFS6, USB_PAD_CFG); |
151 | 152 | ||
152 | return 0; | 153 | mdelay(10); |
154 | |||
155 | return mx31_initialize_usb_hw(pdev->id, MXC_EHCI_POWER_PINS_ENABLED | | ||
156 | MXC_EHCI_INTERFACE_SINGLE_UNI); | ||
153 | } | 157 | } |
154 | 158 | ||
155 | #define USBH1_VBUSEN_B IOMUX_TO_GPIO(MX31_PIN_NFRE_B) | 159 | #define USBH1_VBUSEN_B IOMUX_TO_GPIO(MX31_PIN_NFRE_B) |
@@ -187,7 +191,6 @@ static int devboard_isp1105_set_vbus(struct otg_transceiver *otg, bool on) | |||
187 | static struct mxc_usbh_platform_data usbh1_pdata __initdata = { | 191 | static struct mxc_usbh_platform_data usbh1_pdata __initdata = { |
188 | .init = devboard_usbh1_hw_init, | 192 | .init = devboard_usbh1_hw_init, |
189 | .portsc = MXC_EHCI_MODE_UTMI | MXC_EHCI_SERIAL, | 193 | .portsc = MXC_EHCI_MODE_UTMI | MXC_EHCI_SERIAL, |
190 | .flags = MXC_EHCI_POWER_PINS_ENABLED | MXC_EHCI_INTERFACE_SINGLE_UNI, | ||
191 | }; | 194 | }; |
192 | 195 | ||
193 | static int __init devboard_usbh1_init(void) | 196 | static int __init devboard_usbh1_init(void) |