compat-wireless: add support for CONFIG_HID_GENERIC
authorLuis R. Rodriguez <mcgrof@frijolero.org>
Mon, 7 May 2012 03:32:32 +0000 (20:32 -0700)
committerLuis R. Rodriguez <mcgrof@frijolero.org>
Mon, 7 May 2012 03:32:32 +0000 (20:32 -0700)
The HID driver code was moved to a separate module under
CONFIG_HID_GENERIC. We remove the old code that had patched
support for it given that ifdef'd code around calls to
hid_register_driver() and friends given that this was only
available on kernels >= 2.6.28. We simply only compile the
code in question on newer kernels.

Signed-off-by: Luis R. Rodriguez <mcgrof@frijolero.org>
config.mk
patches/16-bluetooth.patch

index e8ee33382acc204f22e1a6941b73485cd103a284..3caebc4c9952fd530fd820bbbeebb28a5ca23fdf 100644 (file)
--- a/config.mk
+++ b/config.mk
@@ -101,6 +101,7 @@ ifeq ($(CONFIG_BT),y)
 else
  export CONFIG_COMPAT_BLUETOOTH=y
  export CONFIG_COMPAT_BLUETOOTH_MODULES=m
+ export CONFIG_HID_GENERIC=m
 endif
 endif #CONFIG_COMPAT_KERNEL_2_6_27
 
index 62281268ffb82b187f36e782b59ee38d7355c454..e8d29c01e21fa5497e5e46fc5d2c3bdcd34d8c38 100644 (file)
@@ -367,54 +367,6 @@ here still, but for now we keep this here.
        kfree(session);
        return err;
  }
-@@ -1195,6 +1329,7 @@ int hidp_get_conninfo(struct hidp_connin
-       return err;
- }
-+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,27))
- static const struct hid_device_id hidp_table[] = {
-       { HID_BLUETOOTH_DEVICE(HID_ANY_ID, HID_ANY_ID) },
-       { }
-@@ -1204,6 +1339,7 @@ static struct hid_driver hidp_driver = {
-       .name = "generic-bluetooth",
-       .id_table = hidp_table,
- };
-+#endif
- static int __init hidp_init(void)
- {
-@@ -1211,11 +1347,14 @@ static int __init hidp_init(void)
-       BT_INFO("HIDP (Human Interface Emulation) ver %s", VERSION);
-+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,27))
-       ret = hid_register_driver(&hidp_driver);
-       if (ret)
-               goto err;
-+#endif
-       ret = hidp_init_sockets();
-+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,27))
-       if (ret)
-               goto err_drv;
-@@ -1223,13 +1362,16 @@ static int __init hidp_init(void)
- err_drv:
-       hid_unregister_driver(&hidp_driver);
- err:
-+#endif
-       return ret;
- }
- static void __exit hidp_exit(void)
- {
-       hidp_cleanup_sockets();
-+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,27))
-       hid_unregister_driver(&hidp_driver);
-+#endif
- }
- module_init(hidp_init);
 --- a/net/bluetooth/rfcomm/sock.c
 +++ b/net/bluetooth/rfcomm/sock.c
 @@ -324,8 +324,13 @@ static struct sock *rfcomm_sock_alloc(st