USB: ohci: Add Kconfig entries for ohci-omap3
On OMAP systems, we have two different OHCI controllers. The legacy one is present in OMAP1/2 chips, and the newer one comes bundled as a companion to the EHCI controller on OMAP3 and newer chips. We may have multi-omap configurations where OMAP2 and OMAP3 support may be enabled in the same kernel, and need a mechanism to keep both drivers around. This patch adds a Kconfig entry for each of these drivers. Signed-off-by: Anand Gadiyar <gadiyar@ti.com> Cc: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
88ed0c97c9
commit
968b448b22
@ -207,6 +207,21 @@ config USB_OHCI_HCD
|
||||
To compile this driver as a module, choose M here: the
|
||||
module will be called ohci-hcd.
|
||||
|
||||
config USB_OHCI_HCD_OMAP1
|
||||
bool "OHCI support for OMAP1/2 chips"
|
||||
depends on USB_OHCI_HCD && (ARCH_OMAP1 || ARCH_OMAP2)
|
||||
default y
|
||||
---help---
|
||||
Enables support for the OHCI controller on OMAP1/2 chips.
|
||||
|
||||
config USB_OHCI_HCD_OMAP3
|
||||
bool "OHCI support for OMAP3 and later chips"
|
||||
depends on USB_OHCI_HCD && (ARCH_OMAP3 || ARCH_OMAP4)
|
||||
default y
|
||||
---help---
|
||||
Enables support for the on-chip OHCI controller on
|
||||
OMAP3 and later chips.
|
||||
|
||||
config USB_OHCI_HCD_PPC_SOC
|
||||
bool "OHCI support for on-chip PPC USB controller"
|
||||
depends on USB_OHCI_HCD && (STB03xxx || PPC_MPC52xx)
|
||||
|
@ -1006,9 +1006,14 @@ MODULE_LICENSE ("GPL");
|
||||
#define PLATFORM_DRIVER ohci_hcd_s3c2410_driver
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_ARCH_OMAP
|
||||
#ifdef CONFIG_USB_OHCI_HCD_OMAP1
|
||||
#include "ohci-omap.c"
|
||||
#define PLATFORM_DRIVER ohci_hcd_omap_driver
|
||||
#define OMAP1_PLATFORM_DRIVER ohci_hcd_omap_driver
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_USB_OHCI_HCD_OMAP3
|
||||
#include "ohci-omap3.c"
|
||||
#define OMAP3_PLATFORM_DRIVER ohci_hcd_omap3_driver
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_ARCH_LH7A404
|
||||
@ -1092,6 +1097,8 @@ MODULE_LICENSE ("GPL");
|
||||
|
||||
#if !defined(PCI_DRIVER) && \
|
||||
!defined(PLATFORM_DRIVER) && \
|
||||
!defined(OMAP1_PLATFORM_DRIVER) && \
|
||||
!defined(OMAP3_PLATFORM_DRIVER) && \
|
||||
!defined(OF_PLATFORM_DRIVER) && \
|
||||
!defined(SA1111_DRIVER) && \
|
||||
!defined(PS3_SYSTEM_BUS_DRIVER) && \
|
||||
@ -1133,6 +1140,18 @@ static int __init ohci_hcd_mod_init(void)
|
||||
goto error_platform;
|
||||
#endif
|
||||
|
||||
#ifdef OMAP1_PLATFORM_DRIVER
|
||||
retval = platform_driver_register(&OMAP1_PLATFORM_DRIVER);
|
||||
if (retval < 0)
|
||||
goto error_omap1_platform;
|
||||
#endif
|
||||
|
||||
#ifdef OMAP3_PLATFORM_DRIVER
|
||||
retval = platform_driver_register(&OMAP3_PLATFORM_DRIVER);
|
||||
if (retval < 0)
|
||||
goto error_omap3_platform;
|
||||
#endif
|
||||
|
||||
#ifdef OF_PLATFORM_DRIVER
|
||||
retval = of_register_platform_driver(&OF_PLATFORM_DRIVER);
|
||||
if (retval < 0)
|
||||
@ -1200,6 +1219,14 @@ static int __init ohci_hcd_mod_init(void)
|
||||
platform_driver_unregister(&PLATFORM_DRIVER);
|
||||
error_platform:
|
||||
#endif
|
||||
#ifdef OMAP1_PLATFORM_DRIVER
|
||||
platform_driver_unregister(&OMAP1_PLATFORM_DRIVER);
|
||||
error_omap1_platform:
|
||||
#endif
|
||||
#ifdef OMAP3_PLATFORM_DRIVER
|
||||
platform_driver_unregister(&OMAP3_PLATFORM_DRIVER);
|
||||
error_omap3_platform:
|
||||
#endif
|
||||
#ifdef PS3_SYSTEM_BUS_DRIVER
|
||||
ps3_ohci_driver_unregister(&PS3_SYSTEM_BUS_DRIVER);
|
||||
error_ps3:
|
||||
|
Loading…
Reference in New Issue
Block a user