lkml.org 
[lkml]   [2008]   [Jul]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[patch 10/47] OHCI: Fix problem if SM501 and another platform driver is selected
    2.6.25-stable review patch.  If anyone has any objections, please let us
    know.

    ------------------
    From: Ben Dooks <ben-linux@fluff.org>

    commit 3ee38d8bf46b364b1ca364ddb7c379a4afcd8bbb upstream

    If the SM501 and another platform driver, such as the SM501
    then we end up defining PLATFORM_DRIVER twice. This patch
    seperated the SM501 onto a seperate define of SM501_OHCI_DRIVER
    so that it can be selected without overwriting the original
    definition.

    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
    Acked-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

    ---
    drivers/usb/host/ohci-hcd.c | 15 ++++++++++++++-
    1 file changed, 14 insertions(+), 1 deletion(-)

    --- a/drivers/usb/host/ohci-hcd.c
    +++ b/drivers/usb/host/ohci-hcd.c
    @@ -1054,7 +1054,7 @@ MODULE_LICENSE ("GPL");

    #ifdef CONFIG_MFD_SM501
    #include "ohci-sm501.c"
    -#define PLATFORM_DRIVER ohci_hcd_sm501_driver
    +#define SM501_OHCI_DRIVER ohci_hcd_sm501_driver
    #endif

    #if !defined(PCI_DRIVER) && \
    @@ -1062,6 +1062,7 @@ MODULE_LICENSE ("GPL");
    !defined(OF_PLATFORM_DRIVER) && \
    !defined(SA1111_DRIVER) && \
    !defined(PS3_SYSTEM_BUS_DRIVER) && \
    + !defined(SM501_OHCI_DRIVER) && \
    !defined(SSB_OHCI_DRIVER)
    #error "missing bus glue for ohci-hcd"
    #endif
    @@ -1121,9 +1122,18 @@ static int __init ohci_hcd_mod_init(void
    goto error_ssb;
    #endif

    +#ifdef SM501_OHCI_DRIVER
    + retval = platform_driver_register(&SM501_OHCI_DRIVER);
    + if (retval < 0)
    + goto error_sm501;
    +#endif
    +
    return retval;

    /* Error path */
    +#ifdef SM501_OHCI_DRIVER
    + error_sm501:
    +#endif
    #ifdef SSB_OHCI_DRIVER
    error_ssb:
    #endif
    @@ -1159,6 +1169,9 @@ module_init(ohci_hcd_mod_init);

    static void __exit ohci_hcd_mod_exit(void)
    {
    +#ifdef SM501_OHCI_DRIVER
    + platform_driver_unregister(&SM501_OHCI_DRIVER);
    +#endif
    #ifdef SSB_OHCI_DRIVER
    ssb_driver_unregister(&SSB_OHCI_DRIVER);
    #endif
    --


    \
     
     \ /
      Last update: 2008-07-23 01:23    [W:0.023 / U:1.600 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site