diff options
-rw-r--r-- | arch/arm/mach-omap2/board-4430sdp.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c index df5a425a49d1..d7cb9680b4fa 100644 --- a/arch/arm/mach-omap2/board-4430sdp.c +++ b/arch/arm/mach-omap2/board-4430sdp.c | |||
@@ -42,6 +42,7 @@ | |||
42 | #define ETH_KS8851_IRQ 34 | 42 | #define ETH_KS8851_IRQ 34 |
43 | #define ETH_KS8851_POWER_ON 48 | 43 | #define ETH_KS8851_POWER_ON 48 |
44 | #define ETH_KS8851_QUART 138 | 44 | #define ETH_KS8851_QUART 138 |
45 | #define OMAP4SDP_MDM_PWR_EN_GPIO 157 | ||
45 | #define OMAP4_SFH7741_SENSOR_OUTPUT_GPIO 184 | 46 | #define OMAP4_SFH7741_SENSOR_OUTPUT_GPIO 184 |
46 | #define OMAP4_SFH7741_ENABLE_GPIO 188 | 47 | #define OMAP4_SFH7741_ENABLE_GPIO 188 |
47 | 48 | ||
@@ -225,6 +226,16 @@ static void __init omap_4430sdp_init_irq(void) | |||
225 | omap_gpio_init(); | 226 | omap_gpio_init(); |
226 | } | 227 | } |
227 | 228 | ||
229 | static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { | ||
230 | .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, | ||
231 | .port_mode[1] = EHCI_HCD_OMAP_MODE_UNKNOWN, | ||
232 | .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, | ||
233 | .phy_reset = false, | ||
234 | .reset_gpio_port[0] = -EINVAL, | ||
235 | .reset_gpio_port[1] = -EINVAL, | ||
236 | .reset_gpio_port[2] = -EINVAL, | ||
237 | }; | ||
238 | |||
228 | static struct omap_musb_board_data musb_board_data = { | 239 | static struct omap_musb_board_data musb_board_data = { |
229 | .interface_type = MUSB_INTERFACE_UTMI, | 240 | .interface_type = MUSB_INTERFACE_UTMI, |
230 | .mode = MUSB_PERIPHERAL, | 241 | .mode = MUSB_PERIPHERAL, |
@@ -514,6 +525,15 @@ static void __init omap_4430sdp_init(void) | |||
514 | platform_add_devices(sdp4430_devices, ARRAY_SIZE(sdp4430_devices)); | 525 | platform_add_devices(sdp4430_devices, ARRAY_SIZE(sdp4430_devices)); |
515 | omap_serial_init(); | 526 | omap_serial_init(); |
516 | omap4_twl6030_hsmmc_init(mmc); | 527 | omap4_twl6030_hsmmc_init(mmc); |
528 | |||
529 | /* Power on the ULPI PHY */ | ||
530 | if (gpio_is_valid(OMAP4SDP_MDM_PWR_EN_GPIO)) { | ||
531 | /* FIXME: Assumes pad is already muxed for GPIO mode */ | ||
532 | gpio_request(OMAP4SDP_MDM_PWR_EN_GPIO, "USBB1 PHY VMDM_3V3"); | ||
533 | gpio_direction_output(OMAP4SDP_MDM_PWR_EN_GPIO, 1); | ||
534 | } | ||
535 | usb_ehci_init(&ehci_pdata); | ||
536 | |||
517 | /* OMAP4 SDP uses internal transceiver so register nop transceiver */ | 537 | /* OMAP4 SDP uses internal transceiver so register nop transceiver */ |
518 | usb_nop_xceiv_register(); | 538 | usb_nop_xceiv_register(); |
519 | /* FIXME: allow multi-omap to boot until musb is updated for omap4 */ | 539 | /* FIXME: allow multi-omap to boot until musb is updated for omap4 */ |