Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 968b448b authored by Anand Gadiyar's avatar Anand Gadiyar Committed by Greg Kroah-Hartman
Browse files

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: default avatarAnand Gadiyar <gadiyar@ti.com>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 88ed0c97
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -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)
+29 −2
Original line number Diff line number Diff line
@@ -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: