diff options
-rw-r--r-- | arch/arm/mach-omap1/usb.c | 3 | ||||
-rw-r--r-- | arch/arm/plat-omap/include/plat/board.h | 2 | ||||
-rw-r--r-- | drivers/usb/host/ohci-omap.c | 5 |
3 files changed, 8 insertions, 2 deletions
diff --git a/arch/arm/mach-omap1/usb.c b/arch/arm/mach-omap1/usb.c index 19de03b074e3..e61afd922766 100644 --- a/arch/arm/mach-omap1/usb.c +++ b/arch/arm/mach-omap1/usb.c | |||
@@ -29,6 +29,8 @@ | |||
29 | #include <plat/mux.h> | 29 | #include <plat/mux.h> |
30 | #include <plat/usb.h> | 30 | #include <plat/usb.h> |
31 | 31 | ||
32 | #include "common.h" | ||
33 | |||
32 | /* These routines should handle the standard chip-specific modes | 34 | /* These routines should handle the standard chip-specific modes |
33 | * for usb0/1/2 ports, covering basic mux and transceiver setup. | 35 | * for usb0/1/2 ports, covering basic mux and transceiver setup. |
34 | * | 36 | * |
@@ -138,6 +140,7 @@ static inline void ohci_device_init(struct omap_usb_config *pdata) | |||
138 | if (cpu_is_omap7xx()) | 140 | if (cpu_is_omap7xx()) |
139 | ohci_resources[1].start = INT_7XX_USB_HHC_1; | 141 | ohci_resources[1].start = INT_7XX_USB_HHC_1; |
140 | pdata->ohci_device = &ohci_device; | 142 | pdata->ohci_device = &ohci_device; |
143 | pdata->ocpi_enable = &ocpi_enable; | ||
141 | } | 144 | } |
142 | 145 | ||
143 | #else | 146 | #else |
diff --git a/arch/arm/plat-omap/include/plat/board.h b/arch/arm/plat-omap/include/plat/board.h index d5eb4c87db9d..4814c5b65306 100644 --- a/arch/arm/plat-omap/include/plat/board.h +++ b/arch/arm/plat-omap/include/plat/board.h | |||
@@ -91,6 +91,8 @@ struct omap_usb_config { | |||
91 | u32 (*usb0_init)(unsigned nwires, unsigned is_device); | 91 | u32 (*usb0_init)(unsigned nwires, unsigned is_device); |
92 | u32 (*usb1_init)(unsigned nwires); | 92 | u32 (*usb1_init)(unsigned nwires); |
93 | u32 (*usb2_init)(unsigned nwires, unsigned alt_pingroup); | 93 | u32 (*usb2_init)(unsigned nwires, unsigned alt_pingroup); |
94 | |||
95 | int (*ocpi_enable)(void); | ||
94 | }; | 96 | }; |
95 | 97 | ||
96 | struct omap_lcd_config { | 98 | struct omap_lcd_config { |
diff --git a/drivers/usb/host/ohci-omap.c b/drivers/usb/host/ohci-omap.c index 96451e41ee8a..71229cb97e3e 100644 --- a/drivers/usb/host/ohci-omap.c +++ b/drivers/usb/host/ohci-omap.c | |||
@@ -205,8 +205,9 @@ static int ohci_omap_init(struct usb_hcd *hcd) | |||
205 | need_transceiver = need_transceiver | 205 | need_transceiver = need_transceiver |
206 | || machine_is_omap_h2() || machine_is_omap_h3(); | 206 | || machine_is_omap_h2() || machine_is_omap_h3(); |
207 | 207 | ||
208 | if (cpu_is_omap16xx()) | 208 | /* XXX OMAP16xx only */ |
209 | ocpi_enable(); | 209 | if (config->ocpi_enable) |
210 | config->ocpi_enable(); | ||
210 | 211 | ||
211 | #ifdef CONFIG_USB_OTG | 212 | #ifdef CONFIG_USB_OTG |
212 | if (need_transceiver) { | 213 | if (need_transceiver) { |