aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/musb
diff options
context:
space:
mode:
authorFelipe Balbi <felipe.balbi@nokia.com>2010-03-25 07:25:18 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2010-05-20 16:21:35 -0400
commitb0f9da7e02776a8c5ad61b9e24feebf7b12a7243 (patch)
tree6b88155e7e21759ba9cf04f884cb65d75fed8329 /drivers/usb/musb
parente618834ef9608750a36d03d4aa9a9f931aa788d6 (diff)
usb: musb: debugfs: musb_exit_debugfs() can be called on probe
when we fail to probe(), we can call musb_exit_debugfs(). Allow that by removing section annotations. Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/musb')
-rw-r--r--drivers/usb/musb/musb_core.c7
-rw-r--r--drivers/usb/musb/musb_debugfs.c2
2 files changed, 6 insertions, 3 deletions
diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
index 3466cd53e9c8..27aaaa023a1e 100644
--- a/drivers/usb/musb/musb_core.c
+++ b/drivers/usb/musb/musb_core.c
@@ -2056,12 +2056,12 @@ bad_config:
2056 2056
2057 status = musb_init_debugfs(musb); 2057 status = musb_init_debugfs(musb);
2058 if (status < 0) 2058 if (status < 0)
2059 goto fail2; 2059 goto fail4;
2060 2060
2061#ifdef CONFIG_SYSFS 2061#ifdef CONFIG_SYSFS
2062 status = sysfs_create_group(&musb->controller->kobj, &musb_attr_group); 2062 status = sysfs_create_group(&musb->controller->kobj, &musb_attr_group);
2063 if (status) 2063 if (status)
2064 goto fail4; 2064 goto fail5;
2065#endif 2065#endif
2066 2066
2067 dev_info(dev, "USB %s mode controller at %p using %s, IRQ %d\n", 2067 dev_info(dev, "USB %s mode controller at %p using %s, IRQ %d\n",
@@ -2078,6 +2078,9 @@ bad_config:
2078 2078
2079 return 0; 2079 return 0;
2080 2080
2081fail5:
2082 musb_exit_debugfs(musb);
2083
2081fail4: 2084fail4:
2082 if (!is_otg_enabled(musb) && is_host_enabled(musb)) 2085 if (!is_otg_enabled(musb) && is_host_enabled(musb))
2083 usb_remove_hcd(musb_to_hcd(musb)); 2086 usb_remove_hcd(musb_to_hcd(musb));
diff --git a/drivers/usb/musb/musb_debugfs.c b/drivers/usb/musb/musb_debugfs.c
index b6a27bab223a..7768634a7576 100644
--- a/drivers/usb/musb/musb_debugfs.c
+++ b/drivers/usb/musb/musb_debugfs.c
@@ -289,7 +289,7 @@ err0:
289 return ret; 289 return ret;
290} 290}
291 291
292void __exit musb_exit_debugfs(struct musb *musb) 292void /* __init_or_exit */ musb_exit_debugfs(struct musb *musb)
293{ 293{
294 debugfs_remove_recursive(musb_debugfs_root); 294 debugfs_remove_recursive(musb_debugfs_root);
295} 295}