summaryrefslogtreecommitdiffstats
path: root/drivers/usb/renesas_usbhs/common.c
diff options
context:
space:
mode:
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>2011-04-21 07:10:16 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2011-04-30 02:24:32 +0200
commitaf32fe511374f17feb137d7fbfe2f4c73a8f531c (patch)
treecc60eb666cc945a39ce5e0ca4c7399aa8460af9b /drivers/usb/renesas_usbhs/common.c
parentusb: renesas_usbhs: return error if wrong recip request (diff)
downloadlinux-af32fe511374f17feb137d7fbfe2f4c73a8f531c.tar.xz
linux-af32fe511374f17feb137d7fbfe2f4c73a8f531c.zip
usb: renesas_usbhs: remove callback when module removed.
The callback function which is called from platform must be removed if module removed. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/renesas_usbhs/common.c')
-rw-r--r--drivers/usb/renesas_usbhs/common.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/usb/renesas_usbhs/common.c b/drivers/usb/renesas_usbhs/common.c
index d9ad60d1c156..fda586d1f7d8 100644
--- a/drivers/usb/renesas_usbhs/common.c
+++ b/drivers/usb/renesas_usbhs/common.c
@@ -352,9 +352,13 @@ probe_end_kfree:
static int __devexit usbhs_remove(struct platform_device *pdev)
{
struct usbhs_priv *priv = usbhsc_pdev_to_priv(pdev);
+ struct renesas_usbhs_platform_info *info = pdev->dev.platform_data;
+ struct renesas_usbhs_driver_callback *dfunc = &info->driver_callback;
dev_dbg(&pdev->dev, "usb remove\n");
+ dfunc->notify_hotplug = NULL;
+
pm_runtime_disable(&pdev->dev);
usbhsc_bus_ctrl(priv, 0);