aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mach-omap2/board-3430sdp.c10
-rw-r--r--arch/arm/mach-omap2/board-3630sdp.c10
-rw-r--r--arch/arm/mach-omap2/board-4430sdp.c10
-rw-r--r--arch/arm/mach-omap2/board-am3517crane.c10
-rw-r--r--arch/arm/mach-omap2/board-am3517evm.c12
-rw-r--r--arch/arm/mach-omap2/board-cm-t35.c10
-rw-r--r--arch/arm/mach-omap2/board-cm-t3517.c8
-rw-r--r--arch/arm/mach-omap2/board-devkit8000.c10
-rw-r--r--arch/arm/mach-omap2/board-igep0020.c10
-rw-r--r--arch/arm/mach-omap2/board-igep0030.c10
-rw-r--r--arch/arm/mach-omap2/board-omap3beagle.c10
-rw-r--r--arch/arm/mach-omap2/board-omap3evm.c14
-rw-r--r--arch/arm/mach-omap2/board-omap3pandora.c10
-rw-r--r--arch/arm/mach-omap2/board-omap3stalker.c10
-rw-r--r--arch/arm/mach-omap2/board-omap3touchbook.c10
-rw-r--r--arch/arm/mach-omap2/board-omap4panda.c10
-rw-r--r--arch/arm/mach-omap2/board-overo.c10
-rw-r--r--arch/arm/mach-omap2/board-zoom.c10
-rw-r--r--arch/arm/mach-omap2/usb-host.c50
-rw-r--r--arch/arm/plat-omap/include/plat/usb.h54
20 files changed, 152 insertions, 136 deletions
diff --git a/arch/arm/mach-omap2/board-3430sdp.c b/arch/arm/mach-omap2/board-3430sdp.c
index d4e41ef86aa5..a991aeb56091 100644
--- a/arch/arm/mach-omap2/board-3430sdp.c
+++ b/arch/arm/mach-omap2/board-3430sdp.c
@@ -653,11 +653,11 @@ static void enable_board_wakeup_source(void)
653 OMAP_WAKEUP_EN | OMAP_PIN_INPUT_PULLUP); 653 OMAP_WAKEUP_EN | OMAP_PIN_INPUT_PULLUP);
654} 654}
655 655
656static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 656static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
657 657
658 .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, 658 .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
659 .port_mode[1] = EHCI_HCD_OMAP_MODE_PHY, 659 .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
660 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 660 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
661 661
662 .phy_reset = true, 662 .phy_reset = true,
663 .reset_gpio_port[0] = 57, 663 .reset_gpio_port[0] = 57,
@@ -816,7 +816,7 @@ static void __init omap_3430sdp_init(void)
816 board_flash_init(sdp_flash_partitions, chip_sel_3430); 816 board_flash_init(sdp_flash_partitions, chip_sel_3430);
817 sdp3430_display_init(); 817 sdp3430_display_init();
818 enable_board_wakeup_source(); 818 enable_board_wakeup_source();
819 usb_ehci_init(&ehci_pdata); 819 usb_ehci_init(&usbhs_bdata);
820} 820}
821 821
822MACHINE_START(OMAP_3430SDP, "OMAP3430 3430SDP board") 822MACHINE_START(OMAP_3430SDP, "OMAP3430 3430SDP board")
diff --git a/arch/arm/mach-omap2/board-3630sdp.c b/arch/arm/mach-omap2/board-3630sdp.c
index 62645640f5e4..03fd8aca3cc8 100644
--- a/arch/arm/mach-omap2/board-3630sdp.c
+++ b/arch/arm/mach-omap2/board-3630sdp.c
@@ -54,11 +54,11 @@ static void enable_board_wakeup_source(void)
54 OMAP_WAKEUP_EN | OMAP_PIN_INPUT_PULLUP); 54 OMAP_WAKEUP_EN | OMAP_PIN_INPUT_PULLUP);
55} 55}
56 56
57static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 57static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
58 58
59 .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, 59 .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
60 .port_mode[1] = EHCI_HCD_OMAP_MODE_PHY, 60 .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
61 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 61 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
62 62
63 .phy_reset = true, 63 .phy_reset = true,
64 .reset_gpio_port[0] = 126, 64 .reset_gpio_port[0] = 126,
@@ -211,7 +211,7 @@ static void __init omap_sdp_init(void)
211 board_smc91x_init(); 211 board_smc91x_init();
212 board_flash_init(sdp_flash_partitions, chip_sel_sdp); 212 board_flash_init(sdp_flash_partitions, chip_sel_sdp);
213 enable_board_wakeup_source(); 213 enable_board_wakeup_source();
214 usb_ehci_init(&ehci_pdata); 214 usb_ehci_init(&usbhs_bdata);
215} 215}
216 216
217MACHINE_START(OMAP_3630SDP, "OMAP 3630SDP board") 217MACHINE_START(OMAP_3630SDP, "OMAP 3630SDP board")
diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c
index 9cf8e333255f..0e1609d3fa85 100644
--- a/arch/arm/mach-omap2/board-4430sdp.c
+++ b/arch/arm/mach-omap2/board-4430sdp.c
@@ -251,10 +251,10 @@ static void __init omap_4430sdp_init_irq(void)
251 gic_init_irq(); 251 gic_init_irq();
252} 252}
253 253
254static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 254static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
255 .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, 255 .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
256 .port_mode[1] = EHCI_HCD_OMAP_MODE_UNKNOWN, 256 .port_mode[1] = OMAP_USBHS_PORT_MODE_UNUSED,
257 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 257 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
258 .phy_reset = false, 258 .phy_reset = false,
259 .reset_gpio_port[0] = -EINVAL, 259 .reset_gpio_port[0] = -EINVAL,
260 .reset_gpio_port[1] = -EINVAL, 260 .reset_gpio_port[1] = -EINVAL,
@@ -584,7 +584,7 @@ static void __init omap_4430sdp_init(void)
584 else 584 else
585 gpio_direction_output(OMAP4SDP_MDM_PWR_EN_GPIO, 1); 585 gpio_direction_output(OMAP4SDP_MDM_PWR_EN_GPIO, 1);
586 586
587 usb_ehci_init(&ehci_pdata); 587 usb_ehci_init(&usbhs_bdata);
588 usb_musb_init(&musb_board_data); 588 usb_musb_init(&musb_board_data);
589 589
590 status = omap_ethernet_init(); 590 status = omap_ethernet_init();
diff --git a/arch/arm/mach-omap2/board-am3517crane.c b/arch/arm/mach-omap2/board-am3517crane.c
index 71acb5ab281c..1b825a00c5b0 100644
--- a/arch/arm/mach-omap2/board-am3517crane.c
+++ b/arch/arm/mach-omap2/board-am3517crane.c
@@ -59,10 +59,10 @@ static void __init am3517_crane_init_irq(void)
59 omap_init_irq(); 59 omap_init_irq();
60} 60}
61 61
62static struct ehci_hcd_omap_platform_data ehci_pdata __initdata = { 62static struct usbhs_omap_board_data usbhs_bdata __initdata = {
63 .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, 63 .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
64 .port_mode[1] = EHCI_HCD_OMAP_MODE_UNKNOWN, 64 .port_mode[1] = OMAP_USBHS_PORT_MODE_UNUSED,
65 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 65 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
66 66
67 .phy_reset = true, 67 .phy_reset = true,
68 .reset_gpio_port[0] = GPIO_USB_NRESET, 68 .reset_gpio_port[0] = GPIO_USB_NRESET,
@@ -103,7 +103,7 @@ static void __init am3517_crane_init(void)
103 return; 103 return;
104 } 104 }
105 105
106 usb_ehci_init(&ehci_pdata); 106 usb_ehci_init(&usbhs_bdata);
107} 107}
108 108
109MACHINE_START(CRANEBOARD, "AM3517/05 CRANEBOARD") 109MACHINE_START(CRANEBOARD, "AM3517/05 CRANEBOARD")
diff --git a/arch/arm/mach-omap2/board-am3517evm.c b/arch/arm/mach-omap2/board-am3517evm.c
index 10d60b7743cf..f5bc1c6ccf5e 100644
--- a/arch/arm/mach-omap2/board-am3517evm.c
+++ b/arch/arm/mach-omap2/board-am3517evm.c
@@ -430,15 +430,15 @@ static __init void am3517_evm_musb_init(void)
430 usb_musb_init(&musb_board_data); 430 usb_musb_init(&musb_board_data);
431} 431}
432 432
433static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 433static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
434 .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, 434 .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
435#if defined(CONFIG_PANEL_SHARP_LQ043T1DG01) || \ 435#if defined(CONFIG_PANEL_SHARP_LQ043T1DG01) || \
436 defined(CONFIG_PANEL_SHARP_LQ043T1DG01_MODULE) 436 defined(CONFIG_PANEL_SHARP_LQ043T1DG01_MODULE)
437 .port_mode[1] = EHCI_HCD_OMAP_MODE_UNKNOWN, 437 .port_mode[1] = OMAP_USBHS_PORT_MODE_UNUSED,
438#else 438#else
439 .port_mode[1] = EHCI_HCD_OMAP_MODE_PHY, 439 .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
440#endif 440#endif
441 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 441 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
442 442
443 .phy_reset = true, 443 .phy_reset = true,
444 .reset_gpio_port[0] = 57, 444 .reset_gpio_port[0] = 57,
@@ -502,7 +502,7 @@ static void __init am3517_evm_init(void)
502 502
503 /* Configure GPIO for EHCI port */ 503 /* Configure GPIO for EHCI port */
504 omap_mux_init_gpio(57, OMAP_PIN_OUTPUT); 504 omap_mux_init_gpio(57, OMAP_PIN_OUTPUT);
505 usb_ehci_init(&ehci_pdata); 505 usb_ehci_init(&usbhs_bdata);
506 am3517_evm_hecc_init(&am3517_evm_hecc_pdata); 506 am3517_evm_hecc_init(&am3517_evm_hecc_pdata);
507 /* DSS */ 507 /* DSS */
508 am3517_evm_display_init(); 508 am3517_evm_display_init();
diff --git a/arch/arm/mach-omap2/board-cm-t35.c b/arch/arm/mach-omap2/board-cm-t35.c
index dac141610666..c79aa9be72f7 100644
--- a/arch/arm/mach-omap2/board-cm-t35.c
+++ b/arch/arm/mach-omap2/board-cm-t35.c
@@ -605,10 +605,10 @@ static struct omap2_hsmmc_info mmc[] = {
605 {} /* Terminator */ 605 {} /* Terminator */
606}; 606};
607 607
608static struct ehci_hcd_omap_platform_data ehci_pdata __initdata = { 608static struct usbhs_omap_board_data usbhs_bdata __initdata = {
609 .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, 609 .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
610 .port_mode[1] = EHCI_HCD_OMAP_MODE_PHY, 610 .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
611 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 611 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
612 612
613 .phy_reset = true, 613 .phy_reset = true,
614 .reset_gpio_port[0] = OMAP_MAX_GPIO_LINES + 6, 614 .reset_gpio_port[0] = OMAP_MAX_GPIO_LINES + 6,
@@ -810,7 +810,7 @@ static void __init cm_t35_init(void)
810 cm_t35_init_display(); 810 cm_t35_init_display();
811 811
812 usb_musb_init(&musb_board_data); 812 usb_musb_init(&musb_board_data);
813 usb_ehci_init(&ehci_pdata); 813 usb_ehci_init(&usbhs_bdata);
814} 814}
815 815
816MACHINE_START(CM_T35, "Compulab CM-T35") 816MACHINE_START(CM_T35, "Compulab CM-T35")
diff --git a/arch/arm/mach-omap2/board-cm-t3517.c b/arch/arm/mach-omap2/board-cm-t3517.c
index 8f9a64d650ee..8288a0b9159e 100644
--- a/arch/arm/mach-omap2/board-cm-t3517.c
+++ b/arch/arm/mach-omap2/board-cm-t3517.c
@@ -167,10 +167,10 @@ static inline void cm_t3517_init_rtc(void) {}
167#define HSUSB2_RESET_GPIO (147) 167#define HSUSB2_RESET_GPIO (147)
168#define USB_HUB_RESET_GPIO (152) 168#define USB_HUB_RESET_GPIO (152)
169 169
170static struct ehci_hcd_omap_platform_data cm_t3517_ehci_pdata __initdata = { 170static struct usbhs_omap_board_data cm_t3517_ehci_pdata __initdata = {
171 .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, 171 .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
172 .port_mode[1] = EHCI_HCD_OMAP_MODE_PHY, 172 .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
173 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 173 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
174 174
175 .phy_reset = true, 175 .phy_reset = true,
176 .reset_gpio_port[0] = HSUSB1_RESET_GPIO, 176 .reset_gpio_port[0] = HSUSB1_RESET_GPIO,
diff --git a/arch/arm/mach-omap2/board-devkit8000.c b/arch/arm/mach-omap2/board-devkit8000.c
index 9a2a31e011ce..e0131dda5792 100644
--- a/arch/arm/mach-omap2/board-devkit8000.c
+++ b/arch/arm/mach-omap2/board-devkit8000.c
@@ -620,11 +620,11 @@ static struct omap_musb_board_data musb_board_data = {
620 .power = 100, 620 .power = 100,
621}; 621};
622 622
623static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 623static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
624 624
625 .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, 625 .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
626 .port_mode[1] = EHCI_HCD_OMAP_MODE_UNKNOWN, 626 .port_mode[1] = OMAP_USBHS_PORT_MODE_UNUSED,
627 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 627 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
628 628
629 .phy_reset = true, 629 .phy_reset = true,
630 .reset_gpio_port[0] = -EINVAL, 630 .reset_gpio_port[0] = -EINVAL,
@@ -803,7 +803,7 @@ static void __init devkit8000_init(void)
803 devkit8000_ads7846_init(); 803 devkit8000_ads7846_init();
804 804
805 usb_musb_init(&musb_board_data); 805 usb_musb_init(&musb_board_data);
806 usb_ehci_init(&ehci_pdata); 806 usb_ehci_init(&usbhs_bdata);
807 devkit8000_flash_init(); 807 devkit8000_flash_init();
808 808
809 /* Ensure SDRC pins are mux'd for self-refresh */ 809 /* Ensure SDRC pins are mux'd for self-refresh */
diff --git a/arch/arm/mach-omap2/board-igep0020.c b/arch/arm/mach-omap2/board-igep0020.c
index 3be85a1f55f4..a9d7d1dc63ab 100644
--- a/arch/arm/mach-omap2/board-igep0020.c
+++ b/arch/arm/mach-omap2/board-igep0020.c
@@ -627,10 +627,10 @@ static struct omap_musb_board_data musb_board_data = {
627 .power = 100, 627 .power = 100,
628}; 628};
629 629
630static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 630static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
631 .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, 631 .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
632 .port_mode[1] = EHCI_HCD_OMAP_MODE_UNKNOWN, 632 .port_mode[1] = OMAP_USBHS_PORT_MODE_UNUSED,
633 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 633 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
634 634
635 .phy_reset = true, 635 .phy_reset = true,
636 .reset_gpio_port[0] = IGEP2_GPIO_USBH_NRESET, 636 .reset_gpio_port[0] = IGEP2_GPIO_USBH_NRESET,
@@ -699,7 +699,7 @@ static void __init igep2_init(void)
699 platform_add_devices(igep2_devices, ARRAY_SIZE(igep2_devices)); 699 platform_add_devices(igep2_devices, ARRAY_SIZE(igep2_devices));
700 omap_serial_init(); 700 omap_serial_init();
701 usb_musb_init(&musb_board_data); 701 usb_musb_init(&musb_board_data);
702 usb_ehci_init(&ehci_pdata); 702 usb_ehci_init(&usbhs_bdata);
703 703
704 igep2_flash_init(); 704 igep2_flash_init();
705 igep2_leds_init(); 705 igep2_leds_init();
diff --git a/arch/arm/mach-omap2/board-igep0030.c b/arch/arm/mach-omap2/board-igep0030.c
index 4dc62a9b9cb2..1b441eafdba7 100644
--- a/arch/arm/mach-omap2/board-igep0030.c
+++ b/arch/arm/mach-omap2/board-igep0030.c
@@ -408,10 +408,10 @@ static void __init igep3_wifi_bt_init(void)
408void __init igep3_wifi_bt_init(void) {} 408void __init igep3_wifi_bt_init(void) {}
409#endif 409#endif
410 410
411static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 411static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
412 .port_mode[0] = EHCI_HCD_OMAP_MODE_UNKNOWN, 412 .port_mode[0] = OMAP_USBHS_PORT_MODE_UNUSED,
413 .port_mode[1] = EHCI_HCD_OMAP_MODE_PHY, 413 .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
414 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 414 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
415 415
416 .phy_reset = true, 416 .phy_reset = true,
417 .reset_gpio_port[0] = -EINVAL, 417 .reset_gpio_port[0] = -EINVAL,
@@ -435,7 +435,7 @@ static void __init igep3_init(void)
435 platform_add_devices(igep3_devices, ARRAY_SIZE(igep3_devices)); 435 platform_add_devices(igep3_devices, ARRAY_SIZE(igep3_devices));
436 omap_serial_init(); 436 omap_serial_init();
437 usb_musb_init(&musb_board_data); 437 usb_musb_init(&musb_board_data);
438 usb_ehci_init(&ehci_pdata); 438 usb_ehci_init(&usbhs_bdata);
439 439
440 igep3_flash_init(); 440 igep3_flash_init();
441 igep3_leds_init(); 441 igep3_leds_init();
diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c
index 46d814ab5656..b84a6418ec1e 100644
--- a/arch/arm/mach-omap2/board-omap3beagle.c
+++ b/arch/arm/mach-omap2/board-omap3beagle.c
@@ -586,11 +586,11 @@ static void __init omap3beagle_flash_init(void)
586 } 586 }
587} 587}
588 588
589static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 589static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
590 590
591 .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, 591 .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
592 .port_mode[1] = EHCI_HCD_OMAP_MODE_PHY, 592 .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
593 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 593 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
594 594
595 .phy_reset = true, 595 .phy_reset = true,
596 .reset_gpio_port[0] = -EINVAL, 596 .reset_gpio_port[0] = -EINVAL,
@@ -625,7 +625,7 @@ static void __init omap3_beagle_init(void)
625 gpio_direction_output(170, true); 625 gpio_direction_output(170, true);
626 626
627 usb_musb_init(&musb_board_data); 627 usb_musb_init(&musb_board_data);
628 usb_ehci_init(&ehci_pdata); 628 usb_ehci_init(&usbhs_bdata);
629 omap3beagle_flash_init(); 629 omap3beagle_flash_init();
630 630
631 /* Ensure SDRC pins are mux'd for self-refresh */ 631 /* Ensure SDRC pins are mux'd for self-refresh */
diff --git a/arch/arm/mach-omap2/board-omap3evm.c b/arch/arm/mach-omap2/board-omap3evm.c
index 323c3809ce39..ed5e4118147d 100644
--- a/arch/arm/mach-omap2/board-omap3evm.c
+++ b/arch/arm/mach-omap2/board-omap3evm.c
@@ -638,11 +638,11 @@ static struct platform_device *omap3_evm_devices[] __initdata = {
638 &omap3_evm_dss_device, 638 &omap3_evm_dss_device,
639}; 639};
640 640
641static struct ehci_hcd_omap_platform_data ehci_pdata __initdata = { 641static struct usbhs_omap_board_data usbhs_bdata __initdata = {
642 642
643 .port_mode[0] = EHCI_HCD_OMAP_MODE_UNKNOWN, 643 .port_mode[0] = OMAP_USBHS_PORT_MODE_UNUSED,
644 .port_mode[1] = EHCI_HCD_OMAP_MODE_PHY, 644 .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
645 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 645 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
646 646
647 .phy_reset = true, 647 .phy_reset = true,
648 /* PHY reset GPIO will be runtime programmed based on EVM version */ 648 /* PHY reset GPIO will be runtime programmed based on EVM version */
@@ -700,7 +700,7 @@ static void __init omap3_evm_init(void)
700 700
701 /* setup EHCI phy reset config */ 701 /* setup EHCI phy reset config */
702 omap_mux_init_gpio(21, OMAP_PIN_INPUT_PULLUP); 702 omap_mux_init_gpio(21, OMAP_PIN_INPUT_PULLUP);
703 ehci_pdata.reset_gpio_port[1] = 21; 703 usbhs_bdata.reset_gpio_port[1] = 21;
704 704
705 /* EVM REV >= E can supply 500mA with EXTVBUS programming */ 705 /* EVM REV >= E can supply 500mA with EXTVBUS programming */
706 musb_board_data.power = 500; 706 musb_board_data.power = 500;
@@ -708,10 +708,10 @@ static void __init omap3_evm_init(void)
708 } else { 708 } else {
709 /* setup EHCI phy reset on MDC */ 709 /* setup EHCI phy reset on MDC */
710 omap_mux_init_gpio(135, OMAP_PIN_OUTPUT); 710 omap_mux_init_gpio(135, OMAP_PIN_OUTPUT);
711 ehci_pdata.reset_gpio_port[1] = 135; 711 usbhs_bdata.reset_gpio_port[1] = 135;
712 } 712 }
713 usb_musb_init(&musb_board_data); 713 usb_musb_init(&musb_board_data);
714 usb_ehci_init(&ehci_pdata); 714 usb_ehci_init(&usbhs_bdata);
715 ads7846_dev_init(); 715 ads7846_dev_init();
716 omap3evm_init_smsc911x(); 716 omap3evm_init_smsc911x();
717 omap3_evm_display_init(); 717 omap3_evm_display_init();
diff --git a/arch/arm/mach-omap2/board-omap3pandora.c b/arch/arm/mach-omap2/board-omap3pandora.c
index 0b34beded11f..241e632a4662 100644
--- a/arch/arm/mach-omap2/board-omap3pandora.c
+++ b/arch/arm/mach-omap2/board-omap3pandora.c
@@ -681,11 +681,11 @@ static struct platform_device *omap3pandora_devices[] __initdata = {
681 &pandora_vwlan_device, 681 &pandora_vwlan_device,
682}; 682};
683 683
684static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 684static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
685 685
686 .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, 686 .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
687 .port_mode[1] = EHCI_HCD_OMAP_MODE_UNKNOWN, 687 .port_mode[1] = OMAP_USBHS_PORT_MODE_UNUSED,
688 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 688 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
689 689
690 .phy_reset = true, 690 .phy_reset = true,
691 .reset_gpio_port[0] = 16, 691 .reset_gpio_port[0] = 16,
@@ -716,7 +716,7 @@ static void __init omap3pandora_init(void)
716 spi_register_board_info(omap3pandora_spi_board_info, 716 spi_register_board_info(omap3pandora_spi_board_info,
717 ARRAY_SIZE(omap3pandora_spi_board_info)); 717 ARRAY_SIZE(omap3pandora_spi_board_info));
718 omap3pandora_ads7846_init(); 718 omap3pandora_ads7846_init();
719 usb_ehci_init(&ehci_pdata); 719 usb_ehci_init(&usbhs_bdata);
720 usb_musb_init(&musb_board_data); 720 usb_musb_init(&musb_board_data);
721 gpmc_nand_init(&pandora_nand_data); 721 gpmc_nand_init(&pandora_nand_data);
722 722
diff --git a/arch/arm/mach-omap2/board-omap3stalker.c b/arch/arm/mach-omap2/board-omap3stalker.c
index 2a2dad447e86..eaad924b6244 100644
--- a/arch/arm/mach-omap2/board-omap3stalker.c
+++ b/arch/arm/mach-omap2/board-omap3stalker.c
@@ -608,10 +608,10 @@ static struct platform_device *omap3_stalker_devices[] __initdata = {
608 &keys_gpio, 608 &keys_gpio,
609}; 609};
610 610
611static struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 611static struct usbhs_omap_board_data usbhs_bdata __initconst = {
612 .port_mode[0] = EHCI_HCD_OMAP_MODE_UNKNOWN, 612 .port_mode[0] = OMAP_USBHS_PORT_MODE_UNUSED,
613 .port_mode[1] = EHCI_HCD_OMAP_MODE_PHY, 613 .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
614 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 614 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
615 615
616 .phy_reset = true, 616 .phy_reset = true,
617 .reset_gpio_port[0] = -EINVAL, 617 .reset_gpio_port[0] = -EINVAL,
@@ -649,7 +649,7 @@ static void __init omap3_stalker_init(void)
649 649
650 omap_serial_init(); 650 omap_serial_init();
651 usb_musb_init(&musb_board_data); 651 usb_musb_init(&musb_board_data);
652 usb_ehci_init(&ehci_pdata); 652 usb_ehci_init(&usbhs_bdata);
653 ads7846_dev_init(); 653 ads7846_dev_init();
654 654
655 omap_mux_init_gpio(21, OMAP_PIN_OUTPUT); 655 omap_mux_init_gpio(21, OMAP_PIN_OUTPUT);
diff --git a/arch/arm/mach-omap2/board-omap3touchbook.c b/arch/arm/mach-omap2/board-omap3touchbook.c
index db1f74fe6c4f..4e3a1ae2ac96 100644
--- a/arch/arm/mach-omap2/board-omap3touchbook.c
+++ b/arch/arm/mach-omap2/board-omap3touchbook.c
@@ -468,11 +468,11 @@ static void __init omap3touchbook_flash_init(void)
468 } 468 }
469} 469}
470 470
471static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 471static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
472 472
473 .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, 473 .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
474 .port_mode[1] = EHCI_HCD_OMAP_MODE_PHY, 474 .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
475 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 475 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
476 476
477 .phy_reset = true, 477 .phy_reset = true,
478 .reset_gpio_port[0] = -EINVAL, 478 .reset_gpio_port[0] = -EINVAL,
@@ -527,7 +527,7 @@ static void __init omap3_touchbook_init(void)
527 ARRAY_SIZE(omap3_ads7846_spi_board_info)); 527 ARRAY_SIZE(omap3_ads7846_spi_board_info));
528 omap3_ads7846_init(); 528 omap3_ads7846_init();
529 usb_musb_init(&musb_board_data); 529 usb_musb_init(&musb_board_data);
530 usb_ehci_init(&ehci_pdata); 530 usb_ehci_init(&usbhs_bdata);
531 omap3touchbook_flash_init(); 531 omap3touchbook_flash_init();
532 532
533 /* Ensure SDRC pins are mux'd for self-refresh */ 533 /* Ensure SDRC pins are mux'd for self-refresh */
diff --git a/arch/arm/mach-omap2/board-omap4panda.c b/arch/arm/mach-omap2/board-omap4panda.c
index 77748f813667..b88c1909434a 100644
--- a/arch/arm/mach-omap2/board-omap4panda.c
+++ b/arch/arm/mach-omap2/board-omap4panda.c
@@ -83,10 +83,10 @@ static void __init omap4_panda_init_irq(void)
83 gic_init_irq(); 83 gic_init_irq();
84} 84}
85 85
86static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 86static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
87 .port_mode[0] = EHCI_HCD_OMAP_MODE_PHY, 87 .port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
88 .port_mode[1] = EHCI_HCD_OMAP_MODE_UNKNOWN, 88 .port_mode[1] = OMAP_USBHS_PORT_MODE_UNUSED,
89 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 89 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
90 .phy_reset = false, 90 .phy_reset = false,
91 .reset_gpio_port[0] = -EINVAL, 91 .reset_gpio_port[0] = -EINVAL,
92 .reset_gpio_port[1] = -EINVAL, 92 .reset_gpio_port[1] = -EINVAL,
@@ -128,7 +128,7 @@ static void __init omap4_ehci_init(void)
128 gpio_set_value(GPIO_HUB_NRESET, 0); 128 gpio_set_value(GPIO_HUB_NRESET, 0);
129 gpio_set_value(GPIO_HUB_NRESET, 1); 129 gpio_set_value(GPIO_HUB_NRESET, 1);
130 130
131 usb_ehci_init(&ehci_pdata); 131 usb_ehci_init(&usbhs_bdata);
132 132
133 /* enable power to hub */ 133 /* enable power to hub */
134 gpio_set_value(GPIO_HUB_POWER, 1); 134 gpio_set_value(GPIO_HUB_POWER, 1);
diff --git a/arch/arm/mach-omap2/board-overo.c b/arch/arm/mach-omap2/board-overo.c
index cb26e5d8268d..f78b74c369df 100644
--- a/arch/arm/mach-omap2/board-overo.c
+++ b/arch/arm/mach-omap2/board-overo.c
@@ -423,10 +423,10 @@ static struct platform_device *overo_devices[] __initdata = {
423 &overo_lcd_device, 423 &overo_lcd_device,
424}; 424};
425 425
426static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 426static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
427 .port_mode[0] = EHCI_HCD_OMAP_MODE_UNKNOWN, 427 .port_mode[0] = OMAP_USBHS_PORT_MODE_UNUSED,
428 .port_mode[1] = EHCI_HCD_OMAP_MODE_PHY, 428 .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
429 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 429 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
430 430
431 .phy_reset = true, 431 .phy_reset = true,
432 .reset_gpio_port[0] = -EINVAL, 432 .reset_gpio_port[0] = -EINVAL,
@@ -454,7 +454,7 @@ static void __init overo_init(void)
454 omap_serial_init(); 454 omap_serial_init();
455 overo_flash_init(); 455 overo_flash_init();
456 usb_musb_init(&musb_board_data); 456 usb_musb_init(&musb_board_data);
457 usb_ehci_init(&ehci_pdata); 457 usb_ehci_init(&usbhs_bdata);
458 overo_ads7846_init(); 458 overo_ads7846_init();
459 overo_init_smsc911x(); 459 overo_init_smsc911x();
460 460
diff --git a/arch/arm/mach-omap2/board-zoom.c b/arch/arm/mach-omap2/board-zoom.c
index e26754c24ee8..19b99128df76 100644
--- a/arch/arm/mach-omap2/board-zoom.c
+++ b/arch/arm/mach-omap2/board-zoom.c
@@ -106,10 +106,10 @@ static struct mtd_partition zoom_nand_partitions[] = {
106 }, 106 },
107}; 107};
108 108
109static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { 109static const struct usbhs_omap_board_data usbhs_bdata __initconst = {
110 .port_mode[0] = EHCI_HCD_OMAP_MODE_UNKNOWN, 110 .port_mode[0] = OMAP_USBHS_PORT_MODE_UNUSED,
111 .port_mode[1] = EHCI_HCD_OMAP_MODE_PHY, 111 .port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
112 .port_mode[2] = EHCI_HCD_OMAP_MODE_UNKNOWN, 112 .port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
113 .phy_reset = true, 113 .phy_reset = true,
114 .reset_gpio_port[0] = -EINVAL, 114 .reset_gpio_port[0] = -EINVAL,
115 .reset_gpio_port[1] = ZOOM3_EHCI_RESET_GPIO, 115 .reset_gpio_port[1] = ZOOM3_EHCI_RESET_GPIO,
@@ -123,7 +123,7 @@ static void __init omap_zoom_init(void)
123 } else if (machine_is_omap_zoom3()) { 123 } else if (machine_is_omap_zoom3()) {
124 omap3_mux_init(board_mux, OMAP_PACKAGE_CBP); 124 omap3_mux_init(board_mux, OMAP_PACKAGE_CBP);
125 omap_mux_init_gpio(ZOOM3_EHCI_RESET_GPIO, OMAP_PIN_OUTPUT); 125 omap_mux_init_gpio(ZOOM3_EHCI_RESET_GPIO, OMAP_PIN_OUTPUT);
126 usb_ehci_init(&ehci_pdata); 126 usb_ehci_init(&usbhs_bdata);
127 } 127 }
128 128
129 board_nand_init(zoom_nand_partitions, 129 board_nand_init(zoom_nand_partitions,
diff --git a/arch/arm/mach-omap2/usb-host.c b/arch/arm/mach-omap2/usb-host.c
index 45f9b80b6d20..b04ce6f8f013 100644
--- a/arch/arm/mach-omap2/usb-host.c
+++ b/arch/arm/mach-omap2/usb-host.c
@@ -64,10 +64,10 @@ static struct platform_device ehci_device = {
64/* 64/*
65 * setup_ehci_io_mux - initialize IO pad mux for USBHOST 65 * setup_ehci_io_mux - initialize IO pad mux for USBHOST
66 */ 66 */
67static void setup_ehci_io_mux(const enum ehci_hcd_omap_mode *port_mode) 67static void setup_ehci_io_mux(const enum usbhs_omap_port_mode *port_mode)
68{ 68{
69 switch (port_mode[0]) { 69 switch (port_mode[0]) {
70 case EHCI_HCD_OMAP_MODE_PHY: 70 case OMAP_EHCI_PORT_MODE_PHY:
71 omap_mux_init_signal("hsusb1_stp", OMAP_PIN_OUTPUT); 71 omap_mux_init_signal("hsusb1_stp", OMAP_PIN_OUTPUT);
72 omap_mux_init_signal("hsusb1_clk", OMAP_PIN_OUTPUT); 72 omap_mux_init_signal("hsusb1_clk", OMAP_PIN_OUTPUT);
73 omap_mux_init_signal("hsusb1_dir", OMAP_PIN_INPUT_PULLDOWN); 73 omap_mux_init_signal("hsusb1_dir", OMAP_PIN_INPUT_PULLDOWN);
@@ -81,7 +81,7 @@ static void setup_ehci_io_mux(const enum ehci_hcd_omap_mode *port_mode)
81 omap_mux_init_signal("hsusb1_data6", OMAP_PIN_INPUT_PULLDOWN); 81 omap_mux_init_signal("hsusb1_data6", OMAP_PIN_INPUT_PULLDOWN);
82 omap_mux_init_signal("hsusb1_data7", OMAP_PIN_INPUT_PULLDOWN); 82 omap_mux_init_signal("hsusb1_data7", OMAP_PIN_INPUT_PULLDOWN);
83 break; 83 break;
84 case EHCI_HCD_OMAP_MODE_TLL: 84 case OMAP_EHCI_PORT_MODE_TLL:
85 omap_mux_init_signal("hsusb1_tll_stp", 85 omap_mux_init_signal("hsusb1_tll_stp",
86 OMAP_PIN_INPUT_PULLUP); 86 OMAP_PIN_INPUT_PULLUP);
87 omap_mux_init_signal("hsusb1_tll_clk", 87 omap_mux_init_signal("hsusb1_tll_clk",
@@ -107,14 +107,14 @@ static void setup_ehci_io_mux(const enum ehci_hcd_omap_mode *port_mode)
107 omap_mux_init_signal("hsusb1_tll_data7", 107 omap_mux_init_signal("hsusb1_tll_data7",
108 OMAP_PIN_INPUT_PULLDOWN); 108 OMAP_PIN_INPUT_PULLDOWN);
109 break; 109 break;
110 case EHCI_HCD_OMAP_MODE_UNKNOWN: 110 case OMAP_USBHS_PORT_MODE_UNUSED:
111 /* FALLTHROUGH */ 111 /* FALLTHROUGH */
112 default: 112 default:
113 break; 113 break;
114 } 114 }
115 115
116 switch (port_mode[1]) { 116 switch (port_mode[1]) {
117 case EHCI_HCD_OMAP_MODE_PHY: 117 case OMAP_EHCI_PORT_MODE_PHY:
118 omap_mux_init_signal("hsusb2_stp", OMAP_PIN_OUTPUT); 118 omap_mux_init_signal("hsusb2_stp", OMAP_PIN_OUTPUT);
119 omap_mux_init_signal("hsusb2_clk", OMAP_PIN_OUTPUT); 119 omap_mux_init_signal("hsusb2_clk", OMAP_PIN_OUTPUT);
120 omap_mux_init_signal("hsusb2_dir", OMAP_PIN_INPUT_PULLDOWN); 120 omap_mux_init_signal("hsusb2_dir", OMAP_PIN_INPUT_PULLDOWN);
@@ -136,7 +136,7 @@ static void setup_ehci_io_mux(const enum ehci_hcd_omap_mode *port_mode)
136 omap_mux_init_signal("hsusb2_data7", 136 omap_mux_init_signal("hsusb2_data7",
137 OMAP_PIN_INPUT_PULLDOWN); 137 OMAP_PIN_INPUT_PULLDOWN);
138 break; 138 break;
139 case EHCI_HCD_OMAP_MODE_TLL: 139 case OMAP_EHCI_PORT_MODE_TLL:
140 omap_mux_init_signal("hsusb2_tll_stp", 140 omap_mux_init_signal("hsusb2_tll_stp",
141 OMAP_PIN_INPUT_PULLUP); 141 OMAP_PIN_INPUT_PULLUP);
142 omap_mux_init_signal("hsusb2_tll_clk", 142 omap_mux_init_signal("hsusb2_tll_clk",
@@ -162,17 +162,17 @@ static void setup_ehci_io_mux(const enum ehci_hcd_omap_mode *port_mode)
162 omap_mux_init_signal("hsusb2_tll_data7", 162 omap_mux_init_signal("hsusb2_tll_data7",
163 OMAP_PIN_INPUT_PULLDOWN); 163 OMAP_PIN_INPUT_PULLDOWN);
164 break; 164 break;
165 case EHCI_HCD_OMAP_MODE_UNKNOWN: 165 case OMAP_USBHS_PORT_MODE_UNUSED:
166 /* FALLTHROUGH */ 166 /* FALLTHROUGH */
167 default: 167 default:
168 break; 168 break;
169 } 169 }
170 170
171 switch (port_mode[2]) { 171 switch (port_mode[2]) {
172 case EHCI_HCD_OMAP_MODE_PHY: 172 case OMAP_EHCI_PORT_MODE_PHY:
173 printk(KERN_WARNING "Port3 can't be used in PHY mode\n"); 173 printk(KERN_WARNING "Port3 can't be used in PHY mode\n");
174 break; 174 break;
175 case EHCI_HCD_OMAP_MODE_TLL: 175 case OMAP_EHCI_PORT_MODE_TLL:
176 omap_mux_init_signal("hsusb3_tll_stp", 176 omap_mux_init_signal("hsusb3_tll_stp",
177 OMAP_PIN_INPUT_PULLUP); 177 OMAP_PIN_INPUT_PULLUP);
178 omap_mux_init_signal("hsusb3_tll_clk", 178 omap_mux_init_signal("hsusb3_tll_clk",
@@ -198,7 +198,7 @@ static void setup_ehci_io_mux(const enum ehci_hcd_omap_mode *port_mode)
198 omap_mux_init_signal("hsusb3_tll_data7", 198 omap_mux_init_signal("hsusb3_tll_data7",
199 OMAP_PIN_INPUT_PULLDOWN); 199 OMAP_PIN_INPUT_PULLDOWN);
200 break; 200 break;
201 case EHCI_HCD_OMAP_MODE_UNKNOWN: 201 case OMAP_USBHS_PORT_MODE_UNUSED:
202 /* FALLTHROUGH */ 202 /* FALLTHROUGH */
203 default: 203 default:
204 break; 204 break;
@@ -207,10 +207,10 @@ static void setup_ehci_io_mux(const enum ehci_hcd_omap_mode *port_mode)
207 return; 207 return;
208} 208}
209 209
210static void setup_4430ehci_io_mux(const enum ehci_hcd_omap_mode *port_mode) 210static void setup_4430ehci_io_mux(const enum usbhs_omap_port_mode *port_mode)
211{ 211{
212 switch (port_mode[0]) { 212 switch (port_mode[0]) {
213 case EHCI_HCD_OMAP_MODE_PHY: 213 case OMAP_EHCI_PORT_MODE_PHY:
214 omap_mux_init_signal("usbb1_ulpiphy_stp", 214 omap_mux_init_signal("usbb1_ulpiphy_stp",
215 OMAP_PIN_OUTPUT); 215 OMAP_PIN_OUTPUT);
216 omap_mux_init_signal("usbb1_ulpiphy_clk", 216 omap_mux_init_signal("usbb1_ulpiphy_clk",
@@ -236,7 +236,7 @@ static void setup_4430ehci_io_mux(const enum ehci_hcd_omap_mode *port_mode)
236 omap_mux_init_signal("usbb1_ulpiphy_dat7", 236 omap_mux_init_signal("usbb1_ulpiphy_dat7",
237 OMAP_PIN_INPUT_PULLDOWN); 237 OMAP_PIN_INPUT_PULLDOWN);
238 break; 238 break;
239 case EHCI_HCD_OMAP_MODE_TLL: 239 case OMAP_EHCI_PORT_MODE_TLL:
240 omap_mux_init_signal("usbb1_ulpitll_stp", 240 omap_mux_init_signal("usbb1_ulpitll_stp",
241 OMAP_PIN_INPUT_PULLUP); 241 OMAP_PIN_INPUT_PULLUP);
242 omap_mux_init_signal("usbb1_ulpitll_clk", 242 omap_mux_init_signal("usbb1_ulpitll_clk",
@@ -262,12 +262,12 @@ static void setup_4430ehci_io_mux(const enum ehci_hcd_omap_mode *port_mode)
262 omap_mux_init_signal("usbb1_ulpitll_dat7", 262 omap_mux_init_signal("usbb1_ulpitll_dat7",
263 OMAP_PIN_INPUT_PULLDOWN); 263 OMAP_PIN_INPUT_PULLDOWN);
264 break; 264 break;
265 case EHCI_HCD_OMAP_MODE_UNKNOWN: 265 case OMAP_USBHS_PORT_MODE_UNUSED:
266 default: 266 default:
267 break; 267 break;
268 } 268 }
269 switch (port_mode[1]) { 269 switch (port_mode[1]) {
270 case EHCI_HCD_OMAP_MODE_PHY: 270 case OMAP_EHCI_PORT_MODE_PHY:
271 omap_mux_init_signal("usbb2_ulpiphy_stp", 271 omap_mux_init_signal("usbb2_ulpiphy_stp",
272 OMAP_PIN_OUTPUT); 272 OMAP_PIN_OUTPUT);
273 omap_mux_init_signal("usbb2_ulpiphy_clk", 273 omap_mux_init_signal("usbb2_ulpiphy_clk",
@@ -293,7 +293,7 @@ static void setup_4430ehci_io_mux(const enum ehci_hcd_omap_mode *port_mode)
293 omap_mux_init_signal("usbb2_ulpiphy_dat7", 293 omap_mux_init_signal("usbb2_ulpiphy_dat7",
294 OMAP_PIN_INPUT_PULLDOWN); 294 OMAP_PIN_INPUT_PULLDOWN);
295 break; 295 break;
296 case EHCI_HCD_OMAP_MODE_TLL: 296 case OMAP_EHCI_PORT_MODE_TLL:
297 omap_mux_init_signal("usbb2_ulpitll_stp", 297 omap_mux_init_signal("usbb2_ulpitll_stp",
298 OMAP_PIN_INPUT_PULLUP); 298 OMAP_PIN_INPUT_PULLUP);
299 omap_mux_init_signal("usbb2_ulpitll_clk", 299 omap_mux_init_signal("usbb2_ulpitll_clk",
@@ -319,13 +319,13 @@ static void setup_4430ehci_io_mux(const enum ehci_hcd_omap_mode *port_mode)
319 omap_mux_init_signal("usbb2_ulpitll_dat7", 319 omap_mux_init_signal("usbb2_ulpitll_dat7",
320 OMAP_PIN_INPUT_PULLDOWN); 320 OMAP_PIN_INPUT_PULLDOWN);
321 break; 321 break;
322 case EHCI_HCD_OMAP_MODE_UNKNOWN: 322 case OMAP_USBHS_PORT_MODE_UNUSED:
323 default: 323 default:
324 break; 324 break;
325 } 325 }
326} 326}
327 327
328void __init usb_ehci_init(const struct ehci_hcd_omap_platform_data *pdata) 328void __init usb_ehci_init(const struct usbhs_omap_board_data *pdata)
329{ 329{
330 platform_device_add_data(&ehci_device, pdata, sizeof(*pdata)); 330 platform_device_add_data(&ehci_device, pdata, sizeof(*pdata));
331 331
@@ -363,7 +363,7 @@ void __init usb_ehci_init(const struct ehci_hcd_omap_platform_data *pdata)
363 363
364#else 364#else
365 365
366void __init usb_ehci_init(const struct ehci_hcd_omap_platform_data *pdata) 366void __init usb_ehci_init(const struct usbhs_omap_board_data *pdata)
367 367
368{ 368{
369} 369}
@@ -411,7 +411,7 @@ static struct platform_device ohci_device = {
411 .resource = ohci_resources, 411 .resource = ohci_resources,
412}; 412};
413 413
414static void setup_ohci_io_mux(const enum ohci_omap3_port_mode *port_mode) 414static void setup_ohci_io_mux(const enum usbhs_omap_port_mode *port_mode)
415{ 415{
416 switch (port_mode[0]) { 416 switch (port_mode[0]) {
417 case OMAP_OHCI_PORT_MODE_PHY_6PIN_DATSE0: 417 case OMAP_OHCI_PORT_MODE_PHY_6PIN_DATSE0:
@@ -439,7 +439,7 @@ static void setup_ohci_io_mux(const enum ohci_omap3_port_mode *port_mode)
439 omap_mux_init_signal("mm1_txdat", 439 omap_mux_init_signal("mm1_txdat",
440 OMAP_PIN_INPUT_PULLDOWN); 440 OMAP_PIN_INPUT_PULLDOWN);
441 break; 441 break;
442 case OMAP_OHCI_PORT_MODE_UNUSED: 442 case OMAP_USBHS_PORT_MODE_UNUSED:
443 /* FALLTHROUGH */ 443 /* FALLTHROUGH */
444 default: 444 default:
445 break; 445 break;
@@ -470,7 +470,7 @@ static void setup_ohci_io_mux(const enum ohci_omap3_port_mode *port_mode)
470 omap_mux_init_signal("mm2_txdat", 470 omap_mux_init_signal("mm2_txdat",
471 OMAP_PIN_INPUT_PULLDOWN); 471 OMAP_PIN_INPUT_PULLDOWN);
472 break; 472 break;
473 case OMAP_OHCI_PORT_MODE_UNUSED: 473 case OMAP_USBHS_PORT_MODE_UNUSED:
474 /* FALLTHROUGH */ 474 /* FALLTHROUGH */
475 default: 475 default:
476 break; 476 break;
@@ -501,14 +501,14 @@ static void setup_ohci_io_mux(const enum ohci_omap3_port_mode *port_mode)
501 omap_mux_init_signal("mm3_txdat", 501 omap_mux_init_signal("mm3_txdat",
502 OMAP_PIN_INPUT_PULLDOWN); 502 OMAP_PIN_INPUT_PULLDOWN);
503 break; 503 break;
504 case OMAP_OHCI_PORT_MODE_UNUSED: 504 case OMAP_USBHS_PORT_MODE_UNUSED:
505 /* FALLTHROUGH */ 505 /* FALLTHROUGH */
506 default: 506 default:
507 break; 507 break;
508 } 508 }
509} 509}
510 510
511void __init usb_ohci_init(const struct ohci_hcd_omap_platform_data *pdata) 511void __init usb_ohci_init(const struct usbhs_omap_board_data *pdata)
512{ 512{
513 platform_device_add_data(&ohci_device, pdata, sizeof(*pdata)); 513 platform_device_add_data(&ohci_device, pdata, sizeof(*pdata));
514 514
@@ -524,7 +524,7 @@ void __init usb_ohci_init(const struct ohci_hcd_omap_platform_data *pdata)
524 524
525#else 525#else
526 526
527void __init usb_ohci_init(const struct ohci_hcd_omap_platform_data *pdata) 527void __init usb_ohci_init(const struct usbhs_omap_board_data *pdata)
528{ 528{
529} 529}
530 530
diff --git a/arch/arm/plat-omap/include/plat/usb.h b/arch/arm/plat-omap/include/plat/usb.h
index f888e0e57dc8..32dfe08023a4 100644
--- a/arch/arm/plat-omap/include/plat/usb.h
+++ b/arch/arm/plat-omap/include/plat/usb.h
@@ -7,15 +7,12 @@
7#include <plat/board.h> 7#include <plat/board.h>
8 8
9#define OMAP3_HS_USB_PORTS 3 9#define OMAP3_HS_USB_PORTS 3
10enum ehci_hcd_omap_mode {
11 EHCI_HCD_OMAP_MODE_UNKNOWN,
12 EHCI_HCD_OMAP_MODE_PHY,
13 EHCI_HCD_OMAP_MODE_TLL,
14 EHCI_HCD_OMAP_MODE_HSIC,
15};
16 10
17enum ohci_omap3_port_mode { 11enum usbhs_omap_port_mode {
18 OMAP_OHCI_PORT_MODE_UNUSED, 12 OMAP_USBHS_PORT_MODE_UNUSED,
13 OMAP_EHCI_PORT_MODE_PHY,
14 OMAP_EHCI_PORT_MODE_TLL,
15 OMAP_EHCI_PORT_MODE_HSIC,
19 OMAP_OHCI_PORT_MODE_PHY_6PIN_DATSE0, 16 OMAP_OHCI_PORT_MODE_PHY_6PIN_DATSE0,
20 OMAP_OHCI_PORT_MODE_PHY_6PIN_DPDM, 17 OMAP_OHCI_PORT_MODE_PHY_6PIN_DPDM,
21 OMAP_OHCI_PORT_MODE_PHY_3PIN_DATSE0, 18 OMAP_OHCI_PORT_MODE_PHY_3PIN_DATSE0,
@@ -25,24 +22,45 @@ enum ohci_omap3_port_mode {
25 OMAP_OHCI_PORT_MODE_TLL_3PIN_DATSE0, 22 OMAP_OHCI_PORT_MODE_TLL_3PIN_DATSE0,
26 OMAP_OHCI_PORT_MODE_TLL_4PIN_DPDM, 23 OMAP_OHCI_PORT_MODE_TLL_4PIN_DPDM,
27 OMAP_OHCI_PORT_MODE_TLL_2PIN_DATSE0, 24 OMAP_OHCI_PORT_MODE_TLL_2PIN_DATSE0,
28 OMAP_OHCI_PORT_MODE_TLL_2PIN_DPDM, 25 OMAP_OHCI_PORT_MODE_TLL_2PIN_DPDM
29}; 26};
30 27
31struct ehci_hcd_omap_platform_data { 28struct usbhs_omap_board_data {
32 enum ehci_hcd_omap_mode port_mode[OMAP3_HS_USB_PORTS]; 29 enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS];
33 unsigned phy_reset:1;
34 30
35 /* have to be valid if phy_reset is true and portx is in phy mode */ 31 /* have to be valid if phy_reset is true and portx is in phy mode */
36 int reset_gpio_port[OMAP3_HS_USB_PORTS]; 32 int reset_gpio_port[OMAP3_HS_USB_PORTS];
33
34 /* Set this to true for ES2.x silicon */
35 unsigned es2_compatibility:1;
36
37 unsigned phy_reset:1;
38
39 /*
40 * Regulators for USB PHYs.
41 * Each PHY can have a separate regulator.
42 */
43 struct regulator *regulator[OMAP3_HS_USB_PORTS];
37}; 44};
38 45
39struct ohci_hcd_omap_platform_data { 46struct ehci_hcd_omap_platform_data {
40 enum ohci_omap3_port_mode port_mode[OMAP3_HS_USB_PORTS]; 47 enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS];
48 int reset_gpio_port[OMAP3_HS_USB_PORTS];
49 struct regulator *regulator[OMAP3_HS_USB_PORTS];
50 unsigned phy_reset:1;
51};
41 52
42 /* Set this to true for ES2.x silicon */ 53struct ohci_hcd_omap_platform_data {
54 enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS];
43 unsigned es2_compatibility:1; 55 unsigned es2_compatibility:1;
44}; 56};
45 57
58struct usbhs_omap_platform_data {
59 enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS];
60
61 struct ehci_hcd_omap_platform_data *ehci_data;
62 struct ohci_hcd_omap_platform_data *ohci_data;
63};
46/*-------------------------------------------------------------------------*/ 64/*-------------------------------------------------------------------------*/
47 65
48#define OMAP1_OTG_BASE 0xfffb0400 66#define OMAP1_OTG_BASE 0xfffb0400
@@ -80,19 +98,17 @@ enum musb_interface {MUSB_INTERFACE_ULPI, MUSB_INTERFACE_UTMI};
80 98
81extern void usb_musb_init(struct omap_musb_board_data *board_data); 99extern void usb_musb_init(struct omap_musb_board_data *board_data);
82 100
83extern void usb_ehci_init(const struct ehci_hcd_omap_platform_data *pdata); 101extern void usb_ehci_init(const struct usbhs_omap_board_data *pdata);
84 102
85extern void usb_ohci_init(const struct ohci_hcd_omap_platform_data *pdata); 103extern void usb_ohci_init(const struct usbhs_omap_board_data *pdata);
86 104
87extern int omap4430_phy_power(struct device *dev, int ID, int on); 105extern int omap4430_phy_power(struct device *dev, int ID, int on);
88extern int omap4430_phy_set_clk(struct device *dev, int on); 106extern int omap4430_phy_set_clk(struct device *dev, int on);
89extern int omap4430_phy_init(struct device *dev); 107extern int omap4430_phy_init(struct device *dev);
90extern int omap4430_phy_exit(struct device *dev); 108extern int omap4430_phy_exit(struct device *dev);
91extern int omap4430_phy_suspend(struct device *dev, int suspend); 109extern int omap4430_phy_suspend(struct device *dev, int suspend);
92
93#endif 110#endif
94 111
95
96/* 112/*
97 * FIXME correct answer depends on hmc_mode, 113 * FIXME correct answer depends on hmc_mode,
98 * as does (on omap1) any nonzero value for config->otg port number 114 * as does (on omap1) any nonzero value for config->otg port number