diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-03-01 11:44:20 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-03-01 11:44:20 -0500 |
commit | 15e68a803573974409972e761d8f08f03fce5bdb (patch) | |
tree | 5a7ff8f06da629bd59101718f27b157912c141be /drivers/usb/musb/davinci.c | |
parent | f7c96f59b4af72f51c7835ed073da820bc3786b3 (diff) | |
parent | 39287076e46d2c19aaceaa6f0a44168ae4d257ec (diff) |
Merge tag 'musb-for-v3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-next
USB: MUSB changes for 3.4
Here are a set of changes to the MUSB driver. In summary we have
a patch making modules behave better, there's a fix on debugfs'
error path, a small change removing an unnecessary pm_runtime
call on musb_shutdown() and a fix to relesect the endpoint in
Interrupt context.
This last patch is needed because we must drop musb's lock when
calling request->complete() and that could cause problems if another
thread queues a request and ends up changing MUSB_INDEX register.
Diffstat (limited to 'drivers/usb/musb/davinci.c')
-rw-r--r-- | drivers/usb/musb/davinci.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/usb/musb/davinci.c b/drivers/usb/musb/davinci.c index 7c569f51212a..0ba3e75285cf 100644 --- a/drivers/usb/musb/davinci.c +++ b/drivers/usb/musb/davinci.c | |||
@@ -511,7 +511,7 @@ static const struct musb_platform_ops davinci_ops = { | |||
511 | 511 | ||
512 | static u64 davinci_dmamask = DMA_BIT_MASK(32); | 512 | static u64 davinci_dmamask = DMA_BIT_MASK(32); |
513 | 513 | ||
514 | static int __init davinci_probe(struct platform_device *pdev) | 514 | static int __devinit davinci_probe(struct platform_device *pdev) |
515 | { | 515 | { |
516 | struct musb_hdrc_platform_data *pdata = pdev->dev.platform_data; | 516 | struct musb_hdrc_platform_data *pdata = pdev->dev.platform_data; |
517 | struct platform_device *musb; | 517 | struct platform_device *musb; |
@@ -594,7 +594,7 @@ err0: | |||
594 | return ret; | 594 | return ret; |
595 | } | 595 | } |
596 | 596 | ||
597 | static int __exit davinci_remove(struct platform_device *pdev) | 597 | static int __devexit davinci_remove(struct platform_device *pdev) |
598 | { | 598 | { |
599 | struct davinci_glue *glue = platform_get_drvdata(pdev); | 599 | struct davinci_glue *glue = platform_get_drvdata(pdev); |
600 | 600 | ||
@@ -608,7 +608,8 @@ static int __exit davinci_remove(struct platform_device *pdev) | |||
608 | } | 608 | } |
609 | 609 | ||
610 | static struct platform_driver davinci_driver = { | 610 | static struct platform_driver davinci_driver = { |
611 | .remove = __exit_p(davinci_remove), | 611 | .probe = davinci_probe, |
612 | .remove = __devexit_p(davinci_remove), | ||
612 | .driver = { | 613 | .driver = { |
613 | .name = "musb-davinci", | 614 | .name = "musb-davinci", |
614 | }, | 615 | }, |
@@ -620,9 +621,9 @@ MODULE_LICENSE("GPL v2"); | |||
620 | 621 | ||
621 | static int __init davinci_init(void) | 622 | static int __init davinci_init(void) |
622 | { | 623 | { |
623 | return platform_driver_probe(&davinci_driver, davinci_probe); | 624 | return platform_driver_register(&davinci_driver); |
624 | } | 625 | } |
625 | subsys_initcall(davinci_init); | 626 | module_init(davinci_init); |
626 | 627 | ||
627 | static void __exit davinci_exit(void) | 628 | static void __exit davinci_exit(void) |
628 | { | 629 | { |