usb: fix ehci_hcd build failure when both generic-OF and xilinx is selected
This patch fixes the driver to allow both CONFIG_USB_EHCI_HCD_PPC_OF and CONFIG_USB_ECHI_HCD_XILINX to be selected. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> CC: John Linn <john.linn@xilinx.com> CC: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
c2572b78aa
commit
1f23b2d98c
@@ -1135,7 +1135,7 @@ MODULE_LICENSE ("GPL");
|
|||||||
|
|
||||||
#ifdef CONFIG_XPS_USB_HCD_XILINX
|
#ifdef CONFIG_XPS_USB_HCD_XILINX
|
||||||
#include "ehci-xilinx-of.c"
|
#include "ehci-xilinx-of.c"
|
||||||
#define OF_PLATFORM_DRIVER ehci_hcd_xilinx_of_driver
|
#define XILINX_OF_PLATFORM_DRIVER ehci_hcd_xilinx_of_driver
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef CONFIG_PLAT_ORION
|
#ifdef CONFIG_PLAT_ORION
|
||||||
@@ -1159,7 +1159,8 @@ MODULE_LICENSE ("GPL");
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !defined(PCI_DRIVER) && !defined(PLATFORM_DRIVER) && \
|
#if !defined(PCI_DRIVER) && !defined(PLATFORM_DRIVER) && \
|
||||||
!defined(PS3_SYSTEM_BUS_DRIVER) && !defined(OF_PLATFORM_DRIVER)
|
!defined(PS3_SYSTEM_BUS_DRIVER) && !defined(OF_PLATFORM_DRIVER) && \
|
||||||
|
!defined(XILINX_OF_PLATFORM_DRIVER)
|
||||||
#error "missing bus glue for ehci-hcd"
|
#error "missing bus glue for ehci-hcd"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -1213,10 +1214,20 @@ static int __init ehci_hcd_init(void)
|
|||||||
if (retval < 0)
|
if (retval < 0)
|
||||||
goto clean3;
|
goto clean3;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef XILINX_OF_PLATFORM_DRIVER
|
||||||
|
retval = of_register_platform_driver(&XILINX_OF_PLATFORM_DRIVER);
|
||||||
|
if (retval < 0)
|
||||||
|
goto clean4;
|
||||||
|
#endif
|
||||||
return retval;
|
return retval;
|
||||||
|
|
||||||
|
#ifdef XILINX_OF_PLATFORM_DRIVER
|
||||||
|
/* of_unregister_platform_driver(&XILINX_OF_PLATFORM_DRIVER); */
|
||||||
|
clean4:
|
||||||
|
#endif
|
||||||
#ifdef OF_PLATFORM_DRIVER
|
#ifdef OF_PLATFORM_DRIVER
|
||||||
/* of_unregister_platform_driver(&OF_PLATFORM_DRIVER); */
|
of_unregister_platform_driver(&OF_PLATFORM_DRIVER);
|
||||||
clean3:
|
clean3:
|
||||||
#endif
|
#endif
|
||||||
#ifdef PS3_SYSTEM_BUS_DRIVER
|
#ifdef PS3_SYSTEM_BUS_DRIVER
|
||||||
@@ -1243,6 +1254,9 @@ module_init(ehci_hcd_init);
|
|||||||
|
|
||||||
static void __exit ehci_hcd_cleanup(void)
|
static void __exit ehci_hcd_cleanup(void)
|
||||||
{
|
{
|
||||||
|
#ifdef XILINX_OF_PLATFORM_DRIVER
|
||||||
|
of_unregister_platform_driver(&XILINX_OF_PLATFORM_DRIVER);
|
||||||
|
#endif
|
||||||
#ifdef OF_PLATFORM_DRIVER
|
#ifdef OF_PLATFORM_DRIVER
|
||||||
of_unregister_platform_driver(&OF_PLATFORM_DRIVER);
|
of_unregister_platform_driver(&OF_PLATFORM_DRIVER);
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user