diff options
author | Henrik Rydberg <rydberg@euromail.se> | 2012-04-23 06:07:07 -0400 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2012-05-01 06:54:55 -0400 |
commit | 8215d557e5f3a70e50e07c857d35c250fee62a73 (patch) | |
tree | 1ba7ffa5bddacacc9bff64a049e0ca091d43b65d /drivers/hid/usbhid | |
parent | 4fa3a5837b8427faab9b064b1948795eb77b9f8d (diff) |
HID: Create a common generic driver
Move the hid drivers of the bus drivers to a common generic hid
driver, and make it a proper module. This ought to simplify device
handling moving forward.
Cc: Gustavo Padovan <gustavo@padovan.org>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/hid/usbhid')
-rw-r--r-- | drivers/hid/usbhid/hid-core.c | 16 |
1 files changed, 0 insertions, 16 deletions
diff --git a/drivers/hid/usbhid/hid-core.c b/drivers/hid/usbhid/hid-core.c index 9abf718318ca..9cba5006b5ed 100644 --- a/drivers/hid/usbhid/hid-core.c +++ b/drivers/hid/usbhid/hid-core.c | |||
@@ -1504,28 +1504,15 @@ static struct usb_driver hid_driver = { | |||
1504 | .supports_autosuspend = 1, | 1504 | .supports_autosuspend = 1, |
1505 | }; | 1505 | }; |
1506 | 1506 | ||
1507 | static const struct hid_device_id hid_usb_table[] = { | ||
1508 | { HID_DEVICE(BUS_USB, HID_GROUP_GENERIC, HID_ANY_ID, HID_ANY_ID) }, | ||
1509 | { } | ||
1510 | }; | ||
1511 | |||
1512 | struct usb_interface *usbhid_find_interface(int minor) | 1507 | struct usb_interface *usbhid_find_interface(int minor) |
1513 | { | 1508 | { |
1514 | return usb_find_interface(&hid_driver, minor); | 1509 | return usb_find_interface(&hid_driver, minor); |
1515 | } | 1510 | } |
1516 | 1511 | ||
1517 | static struct hid_driver hid_usb_driver = { | ||
1518 | .name = "generic-usb", | ||
1519 | .id_table = hid_usb_table, | ||
1520 | }; | ||
1521 | |||
1522 | static int __init hid_init(void) | 1512 | static int __init hid_init(void) |
1523 | { | 1513 | { |
1524 | int retval = -ENOMEM; | 1514 | int retval = -ENOMEM; |
1525 | 1515 | ||
1526 | retval = hid_register_driver(&hid_usb_driver); | ||
1527 | if (retval) | ||
1528 | goto hid_register_fail; | ||
1529 | retval = usbhid_quirks_init(quirks_param); | 1516 | retval = usbhid_quirks_init(quirks_param); |
1530 | if (retval) | 1517 | if (retval) |
1531 | goto usbhid_quirks_init_fail; | 1518 | goto usbhid_quirks_init_fail; |
@@ -1538,8 +1525,6 @@ static int __init hid_init(void) | |||
1538 | usb_register_fail: | 1525 | usb_register_fail: |
1539 | usbhid_quirks_exit(); | 1526 | usbhid_quirks_exit(); |
1540 | usbhid_quirks_init_fail: | 1527 | usbhid_quirks_init_fail: |
1541 | hid_unregister_driver(&hid_usb_driver); | ||
1542 | hid_register_fail: | ||
1543 | return retval; | 1528 | return retval; |
1544 | } | 1529 | } |
1545 | 1530 | ||
@@ -1547,7 +1532,6 @@ static void __exit hid_exit(void) | |||
1547 | { | 1532 | { |
1548 | usb_deregister(&hid_driver); | 1533 | usb_deregister(&hid_driver); |
1549 | usbhid_quirks_exit(); | 1534 | usbhid_quirks_exit(); |
1550 | hid_unregister_driver(&hid_usb_driver); | ||
1551 | } | 1535 | } |
1552 | 1536 | ||
1553 | module_init(hid_init); | 1537 | module_init(hid_init); |