summaryrefslogtreecommitdiffstats
path: root/drivers/usb/core/usb.c
diff options
context:
space:
mode:
authorKai-Heng Feng <kai.heng.feng@canonical.com>2018-03-20 00:26:06 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-03-20 10:16:09 +0100
commit027bd6cafd9a1e3a109b5e5682c85ac84e804a8d (patch)
tree7449e31c4a729b72cfae81c977f786869b55d542 /drivers/usb/core/usb.c
parentca5a2e9a774b0a18815f23cd9cbb923966a2d8bc (diff)
downloadlinux-027bd6cafd9a1e3a109b5e5682c85ac84e804a8d.tar.gz
linux-027bd6cafd9a1e3a109b5e5682c85ac84e804a8d.tar.bz2
linux-027bd6cafd9a1e3a109b5e5682c85ac84e804a8d.zip
usb: core: Add "quirks" parameter for usbcore
Trying quirks in usbcore needs to rebuild the driver or the entire kernel if it's builtin. It can save a lot of time if usbcore has similar ability like "usbhid.quirks=" and "usb-storage.quirks=". Rename the original quirk detection function to "static" as we introduce this new "dynamic" function. Now users can use "usbcore.quirks=" as short term workaround before the next kernel release. Also, the quirk parameter can XOR the builtin quirks for debugging purpose. This is inspired by usbhid and usb-storage. Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/core/usb.c')
-rw-r--r--drivers/usb/core/usb.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/usb/core/usb.c b/drivers/usb/core/usb.c
index 2f5fbc56a9dd..0adb6345ff2e 100644
--- a/drivers/usb/core/usb.c
+++ b/drivers/usb/core/usb.c
@@ -1259,6 +1259,7 @@ static void __exit usb_exit(void)
if (usb_disabled())
return;
+ usb_release_quirk_list();
usb_deregister_device_driver(&usb_generic_driver);
usb_major_cleanup();
usb_deregister(&usbfs_driver);