aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/feature-removal-schedule.txt7
-rw-r--r--drivers/hid/Kconfig12
-rw-r--r--drivers/hid/Makefile4
-rw-r--r--drivers/hid/hid-a4tech.c2
-rw-r--r--drivers/hid/hid-apple.c2
-rw-r--r--drivers/hid/hid-belkin.c2
-rw-r--r--drivers/hid/hid-cherry.c2
-rw-r--r--drivers/hid/hid-chicony.c2
-rw-r--r--drivers/hid/hid-core.c21
-rw-r--r--drivers/hid/hid-cypress.c2
-rw-r--r--drivers/hid/hid-drff.c2
-rw-r--r--drivers/hid/hid-dummy.c87
-rw-r--r--drivers/hid/hid-ezkey.c2
-rw-r--r--drivers/hid/hid-gaff.c2
-rw-r--r--drivers/hid/hid-gyration.c2
-rw-r--r--drivers/hid/hid-kensington.c2
-rw-r--r--drivers/hid/hid-kye.c2
-rw-r--r--drivers/hid/hid-lg.c2
-rw-r--r--drivers/hid/hid-microsoft.c2
-rw-r--r--drivers/hid/hid-monterey.c2
-rw-r--r--drivers/hid/hid-ntrig.c2
-rw-r--r--drivers/hid/hid-petalynx.c2
-rw-r--r--drivers/hid/hid-pl.c2
-rw-r--r--drivers/hid/hid-samsung.c2
-rw-r--r--drivers/hid/hid-sony.c2
-rw-r--r--drivers/hid/hid-sunplus.c2
-rw-r--r--drivers/hid/hid-tmff.c2
-rw-r--r--drivers/hid/hid-topseed.c2
-rw-r--r--drivers/hid/hid-zpff.c2
-rw-r--r--include/linux/hid.h16
30 files changed, 0 insertions, 195 deletions
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt
index 1135996bec8b..fc5e85a5901c 100644
--- a/Documentation/feature-removal-schedule.txt
+++ b/Documentation/feature-removal-schedule.txt
@@ -273,13 +273,6 @@ Who: Glauber Costa <gcosta@redhat.com>
273 273
274--------------------------- 274---------------------------
275 275
276What: remove HID compat support
277When: 2.6.29
278Why: needed only as a temporary solution until distros fix themselves up
279Who: Jiri Slaby <jirislaby@gmail.com>
280
281---------------------------
282
283What: print_fn_descriptor_symbol() 276What: print_fn_descriptor_symbol()
284When: October 2009 277When: October 2009
285Why: The %pF vsprintf format provides the same functionality in a 278Why: The %pF vsprintf format provides the same functionality in a
diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig
index 88e16ef93247..63a2564f0f81 100644
--- a/drivers/hid/Kconfig
+++ b/drivers/hid/Kconfig
@@ -70,18 +70,6 @@ source "drivers/hid/usbhid/Kconfig"
70menu "Special HID drivers" 70menu "Special HID drivers"
71 depends on HID 71 depends on HID
72 72
73config HID_COMPAT
74 bool "Load all HID drivers on hid core load"
75 default y
76 ---help---
77 Compatible option for older userspace. If you have system without udev
78 support of module loading through aliases and also old
79 module-init-tools which can't handle hid bus, choose Y here. Otherwise
80 say N. If you say N and your userspace is old enough, the only
81 functionality you lose is modules autoloading.
82
83 If unsure, say Y.
84
85config HID_A4TECH 73config HID_A4TECH
86 tristate "A4 tech" if EMBEDDED 74 tristate "A4 tech" if EMBEDDED
87 depends on USB_HID 75 depends on USB_HID
diff --git a/drivers/hid/Makefile b/drivers/hid/Makefile
index e6b72ed0d70a..1f7cb0fd4505 100644
--- a/drivers/hid/Makefile
+++ b/drivers/hid/Makefile
@@ -8,10 +8,6 @@ obj-$(CONFIG_HID) += hid.o
8hid-$(CONFIG_HID_DEBUG) += hid-debug.o 8hid-$(CONFIG_HID_DEBUG) += hid-debug.o
9hid-$(CONFIG_HIDRAW) += hidraw.o 9hid-$(CONFIG_HIDRAW) += hidraw.o
10 10
11ifdef CONFIG_HID_COMPAT
12obj-m += hid-dummy.o
13endif
14
15hid-logitech-objs := hid-lg.o 11hid-logitech-objs := hid-lg.o
16ifdef CONFIG_LOGITECH_FF 12ifdef CONFIG_LOGITECH_FF
17 hid-logitech-objs += hid-lgff.o 13 hid-logitech-objs += hid-lgff.o
diff --git a/drivers/hid/hid-a4tech.c b/drivers/hid/hid-a4tech.c
index ebca00e6c103..42ea359e94cf 100644
--- a/drivers/hid/hid-a4tech.c
+++ b/drivers/hid/hid-a4tech.c
@@ -158,5 +158,3 @@ static void a4_exit(void)
158module_init(a4_init); 158module_init(a4_init);
159module_exit(a4_exit); 159module_exit(a4_exit);
160MODULE_LICENSE("GPL"); 160MODULE_LICENSE("GPL");
161
162HID_COMPAT_LOAD_DRIVER(a4tech);
diff --git a/drivers/hid/hid-apple.c b/drivers/hid/hid-apple.c
index cab3be7ef0ab..7359d9d88e46 100644
--- a/drivers/hid/hid-apple.c
+++ b/drivers/hid/hid-apple.c
@@ -474,5 +474,3 @@ static void apple_exit(void)
474module_init(apple_init); 474module_init(apple_init);
475module_exit(apple_exit); 475module_exit(apple_exit);
476MODULE_LICENSE("GPL"); 476MODULE_LICENSE("GPL");
477
478HID_COMPAT_LOAD_DRIVER(apple);
diff --git a/drivers/hid/hid-belkin.c b/drivers/hid/hid-belkin.c
index 12c8a9ba6ed6..2f6723133a4b 100644
--- a/drivers/hid/hid-belkin.c
+++ b/drivers/hid/hid-belkin.c
@@ -101,5 +101,3 @@ static void belkin_exit(void)
101module_init(belkin_init); 101module_init(belkin_init);
102module_exit(belkin_exit); 102module_exit(belkin_exit);
103MODULE_LICENSE("GPL"); 103MODULE_LICENSE("GPL");
104
105HID_COMPAT_LOAD_DRIVER(belkin);
diff --git a/drivers/hid/hid-cherry.c b/drivers/hid/hid-cherry.c
index b833b9769aba..ab8209e7e45c 100644
--- a/drivers/hid/hid-cherry.c
+++ b/drivers/hid/hid-cherry.c
@@ -83,5 +83,3 @@ static void ch_exit(void)
83module_init(ch_init); 83module_init(ch_init);
84module_exit(ch_exit); 84module_exit(ch_exit);
85MODULE_LICENSE("GPL"); 85MODULE_LICENSE("GPL");
86
87HID_COMPAT_LOAD_DRIVER(cherry);
diff --git a/drivers/hid/hid-chicony.c b/drivers/hid/hid-chicony.c
index a54d4096e0f7..7f91076d8493 100644
--- a/drivers/hid/hid-chicony.c
+++ b/drivers/hid/hid-chicony.c
@@ -76,5 +76,3 @@ static void ch_exit(void)
76module_init(ch_init); 76module_init(ch_init);
77module_exit(ch_exit); 77module_exit(ch_exit);
78MODULE_LICENSE("GPL"); 78MODULE_LICENSE("GPL");
79
80HID_COMPAT_LOAD_DRIVER(chicony);
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
index b96fbd5dab55..e56f8d5d3a50 100644
--- a/drivers/hid/hid-core.c
+++ b/drivers/hid/hid-core.c
@@ -1819,15 +1819,6 @@ void hid_unregister_driver(struct hid_driver *hdrv)
1819} 1819}
1820EXPORT_SYMBOL_GPL(hid_unregister_driver); 1820EXPORT_SYMBOL_GPL(hid_unregister_driver);
1821 1821
1822#ifdef CONFIG_HID_COMPAT
1823static void hid_compat_load(struct work_struct *ws)
1824{
1825 request_module("hid-dummy");
1826}
1827static DECLARE_WORK(hid_compat_work, hid_compat_load);
1828static struct workqueue_struct *hid_compat_wq;
1829#endif
1830
1831static int __init hid_init(void) 1822static int __init hid_init(void)
1832{ 1823{
1833 int ret; 1824 int ret;
@@ -1842,15 +1833,6 @@ static int __init hid_init(void)
1842 if (ret) 1833 if (ret)
1843 goto err_bus; 1834 goto err_bus;
1844 1835
1845#ifdef CONFIG_HID_COMPAT
1846 hid_compat_wq = create_singlethread_workqueue("hid_compat");
1847 if (!hid_compat_wq) {
1848 hidraw_exit();
1849 goto err;
1850 }
1851 queue_work(hid_compat_wq, &hid_compat_work);
1852#endif
1853
1854 return 0; 1836 return 0;
1855err_bus: 1837err_bus:
1856 bus_unregister(&hid_bus_type); 1838 bus_unregister(&hid_bus_type);
@@ -1860,9 +1842,6 @@ err:
1860 1842
1861static void __exit hid_exit(void) 1843static void __exit hid_exit(void)
1862{ 1844{
1863#ifdef CONFIG_HID_COMPAT
1864 destroy_workqueue(hid_compat_wq);
1865#endif
1866 hidraw_exit(); 1845 hidraw_exit();
1867 bus_unregister(&hid_bus_type); 1846 bus_unregister(&hid_bus_type);
1868} 1847}
diff --git a/drivers/hid/hid-cypress.c b/drivers/hid/hid-cypress.c
index 5d69d27b935d..9d6d3b91773b 100644
--- a/drivers/hid/hid-cypress.c
+++ b/drivers/hid/hid-cypress.c
@@ -154,5 +154,3 @@ static void cp_exit(void)
154module_init(cp_init); 154module_init(cp_init);
155module_exit(cp_exit); 155module_exit(cp_exit);
156MODULE_LICENSE("GPL"); 156MODULE_LICENSE("GPL");
157
158HID_COMPAT_LOAD_DRIVER(cypress);
diff --git a/drivers/hid/hid-drff.c b/drivers/hid/hid-drff.c
index 785d2492b5ef..34f3eb65100b 100644
--- a/drivers/hid/hid-drff.c
+++ b/drivers/hid/hid-drff.c
@@ -186,5 +186,3 @@ static void __exit dr_exit(void)
186module_init(dr_init); 186module_init(dr_init);
187module_exit(dr_exit); 187module_exit(dr_exit);
188MODULE_LICENSE("GPL"); 188MODULE_LICENSE("GPL");
189
190HID_COMPAT_LOAD_DRIVER(dragonrise);
diff --git a/drivers/hid/hid-dummy.c b/drivers/hid/hid-dummy.c
deleted file mode 100644
index 74d765f38624..000000000000
--- a/drivers/hid/hid-dummy.c
+++ /dev/null
@@ -1,87 +0,0 @@
1#include <linux/autoconf.h>
2#include <linux/module.h>
3#include <linux/hid.h>
4
5static int __init hid_dummy_init(void)
6{
7#ifdef CONFIG_HID_A4TECH_MODULE
8 HID_COMPAT_CALL_DRIVER(a4tech);
9#endif
10#ifdef CONFIG_HID_APPLE_MODULE
11 HID_COMPAT_CALL_DRIVER(apple);
12#endif
13#ifdef CONFIG_HID_BELKIN_MODULE
14 HID_COMPAT_CALL_DRIVER(belkin);
15#endif
16#ifdef CONFIG_HID_BRIGHT_MODULE
17 HID_COMPAT_CALL_DRIVER(bright);
18#endif
19#ifdef CONFIG_HID_CHERRY_MODULE
20 HID_COMPAT_CALL_DRIVER(cherry);
21#endif
22#ifdef CONFIG_HID_CHICONY_MODULE
23 HID_COMPAT_CALL_DRIVER(chicony);
24#endif
25#ifdef CONFIG_HID_CYPRESS_MODULE
26 HID_COMPAT_CALL_DRIVER(cypress);
27#endif
28#ifdef CONFIG_HID_DELL_MODULE
29 HID_COMPAT_CALL_DRIVER(dell);
30#endif
31#ifdef CONFIG_DRAGONRISE_FF_MODULE
32 HID_COMPAT_CALL_DRIVER(dragonrise);
33#endif
34#ifdef CONFIG_HID_EZKEY_MODULE
35 HID_COMPAT_CALL_DRIVER(ezkey);
36#endif
37#ifdef CONFIG_HID_KYE_MODULE
38 HID_COMPAT_CALL_DRIVER(kye);
39#endif
40#ifdef CONFIG_HID_GYRATION_MODULE
41 HID_COMPAT_CALL_DRIVER(gyration);
42#endif
43#ifdef CONFIG_HID_KENSINGTON_MODULE
44 HID_COMPAT_CALL_DRIVER(kensington);
45#endif
46#ifdef CONFIG_HID_LOGITECH_MODULE
47 HID_COMPAT_CALL_DRIVER(logitech);
48#endif
49#ifdef CONFIG_HID_MICROSOFT_MODULE
50 HID_COMPAT_CALL_DRIVER(microsoft);
51#endif
52#ifdef CONFIG_HID_MONTEREY_MODULE
53 HID_COMPAT_CALL_DRIVER(monterey);
54#endif
55#ifdef CONFIG_HID_NTRIG_MODULE
56 HID_COMPAT_CALL_DRIVER(ntrig);
57#endif
58#ifdef CONFIG_HID_PANTHERLORD_MODULE
59 HID_COMPAT_CALL_DRIVER(pantherlord);
60#endif
61#ifdef CONFIG_HID_PETALYNX_MODULE
62 HID_COMPAT_CALL_DRIVER(petalynx);
63#endif
64#ifdef CONFIG_HID_SAMSUNG_MODULE
65 HID_COMPAT_CALL_DRIVER(samsung);
66#endif
67#ifdef CONFIG_HID_SONY_MODULE
68 HID_COMPAT_CALL_DRIVER(sony);
69#endif
70#ifdef CONFIG_HID_SUNPLUS_MODULE
71 HID_COMPAT_CALL_DRIVER(sunplus);
72#endif
73#ifdef CONFIG_GREENASIA_FF_MODULE
74 HID_COMPAT_CALL_DRIVER(greenasia);
75#endif
76#ifdef CONFIG_THRUSTMASTER_FF_MODULE
77 HID_COMPAT_CALL_DRIVER(thrustmaster);
78#endif
79#ifdef CONFIG_ZEROPLUS_FF_MODULE
80 HID_COMPAT_CALL_DRIVER(zeroplus);
81#endif
82
83 return -EIO;
84}
85module_init(hid_dummy_init);
86
87MODULE_LICENSE("GPL");
diff --git a/drivers/hid/hid-ezkey.c b/drivers/hid/hid-ezkey.c
index deb42f931b7e..0a1fe054799b 100644
--- a/drivers/hid/hid-ezkey.c
+++ b/drivers/hid/hid-ezkey.c
@@ -91,5 +91,3 @@ static void ez_exit(void)
91module_init(ez_init); 91module_init(ez_init);
92module_exit(ez_exit); 92module_exit(ez_exit);
93MODULE_LICENSE("GPL"); 93MODULE_LICENSE("GPL");
94
95HID_COMPAT_LOAD_DRIVER(ezkey);
diff --git a/drivers/hid/hid-gaff.c b/drivers/hid/hid-gaff.c
index 71211f6a4f02..510ad3ab8d33 100644
--- a/drivers/hid/hid-gaff.c
+++ b/drivers/hid/hid-gaff.c
@@ -181,5 +181,3 @@ static void __exit ga_exit(void)
181module_init(ga_init); 181module_init(ga_init);
182module_exit(ga_exit); 182module_exit(ga_exit);
183MODULE_LICENSE("GPL"); 183MODULE_LICENSE("GPL");
184
185HID_COMPAT_LOAD_DRIVER(greenasia);
diff --git a/drivers/hid/hid-gyration.c b/drivers/hid/hid-gyration.c
index 04a0afec52ac..d42d222097a8 100644
--- a/drivers/hid/hid-gyration.c
+++ b/drivers/hid/hid-gyration.c
@@ -94,5 +94,3 @@ static void gyration_exit(void)
94module_init(gyration_init); 94module_init(gyration_init);
95module_exit(gyration_exit); 95module_exit(gyration_exit);
96MODULE_LICENSE("GPL"); 96MODULE_LICENSE("GPL");
97
98HID_COMPAT_LOAD_DRIVER(gyration);
diff --git a/drivers/hid/hid-kensington.c b/drivers/hid/hid-kensington.c
index 747fee5b2a73..7353bd79cbe9 100644
--- a/drivers/hid/hid-kensington.c
+++ b/drivers/hid/hid-kensington.c
@@ -61,5 +61,3 @@ static void ks_exit(void)
61module_init(ks_init); 61module_init(ks_init);
62module_exit(ks_exit); 62module_exit(ks_exit);
63MODULE_LICENSE("GPL"); 63MODULE_LICENSE("GPL");
64
65HID_COMPAT_LOAD_DRIVER(kensington);
diff --git a/drivers/hid/hid-kye.c b/drivers/hid/hid-kye.c
index ea7f412e31a9..72ee3fec56d9 100644
--- a/drivers/hid/hid-kye.c
+++ b/drivers/hid/hid-kye.c
@@ -67,5 +67,3 @@ static void kye_exit(void)
67module_init(kye_init); 67module_init(kye_init);
68module_exit(kye_exit); 68module_exit(kye_exit);
69MODULE_LICENSE("GPL"); 69MODULE_LICENSE("GPL");
70
71HID_COMPAT_LOAD_DRIVER(kye);
diff --git a/drivers/hid/hid-lg.c b/drivers/hid/hid-lg.c
index 83e07c9f4144..7b80cb694982 100644
--- a/drivers/hid/hid-lg.c
+++ b/drivers/hid/hid-lg.c
@@ -326,5 +326,3 @@ static void lg_exit(void)
326module_init(lg_init); 326module_init(lg_init);
327module_exit(lg_exit); 327module_exit(lg_exit);
328MODULE_LICENSE("GPL"); 328MODULE_LICENSE("GPL");
329
330HID_COMPAT_LOAD_DRIVER(logitech);
diff --git a/drivers/hid/hid-microsoft.c b/drivers/hid/hid-microsoft.c
index 25b10dcad90d..5e9e37a0506d 100644
--- a/drivers/hid/hid-microsoft.c
+++ b/drivers/hid/hid-microsoft.c
@@ -210,5 +210,3 @@ static void ms_exit(void)
210module_init(ms_init); 210module_init(ms_init);
211module_exit(ms_exit); 211module_exit(ms_exit);
212MODULE_LICENSE("GPL"); 212MODULE_LICENSE("GPL");
213
214HID_COMPAT_LOAD_DRIVER(microsoft);
diff --git a/drivers/hid/hid-monterey.c b/drivers/hid/hid-monterey.c
index f3a85a065f18..240f87618be6 100644
--- a/drivers/hid/hid-monterey.c
+++ b/drivers/hid/hid-monterey.c
@@ -78,5 +78,3 @@ static void mr_exit(void)
78module_init(mr_init); 78module_init(mr_init);
79module_exit(mr_exit); 79module_exit(mr_exit);
80MODULE_LICENSE("GPL"); 80MODULE_LICENSE("GPL");
81
82HID_COMPAT_LOAD_DRIVER(monterey);
diff --git a/drivers/hid/hid-ntrig.c b/drivers/hid/hid-ntrig.c
index db44fbd7bdf6..c5b252be9c21 100644
--- a/drivers/hid/hid-ntrig.c
+++ b/drivers/hid/hid-ntrig.c
@@ -78,5 +78,3 @@ static void ntrig_exit(void)
78module_init(ntrig_init); 78module_init(ntrig_init);
79module_exit(ntrig_exit); 79module_exit(ntrig_exit);
80MODULE_LICENSE("GPL"); 80MODULE_LICENSE("GPL");
81
82HID_COMPAT_LOAD_DRIVER(ntrig);
diff --git a/drivers/hid/hid-petalynx.c b/drivers/hid/hid-petalynx.c
index 10945fe12d50..2e83e8ff891a 100644
--- a/drivers/hid/hid-petalynx.c
+++ b/drivers/hid/hid-petalynx.c
@@ -118,5 +118,3 @@ static void pl_exit(void)
118module_init(pl_init); 118module_init(pl_init);
119module_exit(pl_exit); 119module_exit(pl_exit);
120MODULE_LICENSE("GPL"); 120MODULE_LICENSE("GPL");
121
122HID_COMPAT_LOAD_DRIVER(petalynx);
diff --git a/drivers/hid/hid-pl.c b/drivers/hid/hid-pl.c
index 9ad76bf71186..4db9a3483760 100644
--- a/drivers/hid/hid-pl.c
+++ b/drivers/hid/hid-pl.c
@@ -230,5 +230,3 @@ static void pl_exit(void)
230module_init(pl_init); 230module_init(pl_init);
231module_exit(pl_exit); 231module_exit(pl_exit);
232MODULE_LICENSE("GPL"); 232MODULE_LICENSE("GPL");
233
234HID_COMPAT_LOAD_DRIVER(pantherlord);
diff --git a/drivers/hid/hid-samsung.c b/drivers/hid/hid-samsung.c
index 15f3c0492450..07083aa6c19a 100644
--- a/drivers/hid/hid-samsung.c
+++ b/drivers/hid/hid-samsung.c
@@ -96,5 +96,3 @@ static void samsung_exit(void)
96module_init(samsung_init); 96module_init(samsung_init);
97module_exit(samsung_exit); 97module_exit(samsung_exit);
98MODULE_LICENSE("GPL"); 98MODULE_LICENSE("GPL");
99
100HID_COMPAT_LOAD_DRIVER(samsung);
diff --git a/drivers/hid/hid-sony.c b/drivers/hid/hid-sony.c
index dd5a3979a4de..c2599388a350 100644
--- a/drivers/hid/hid-sony.c
+++ b/drivers/hid/hid-sony.c
@@ -148,5 +148,3 @@ static void sony_exit(void)
148module_init(sony_init); 148module_init(sony_init);
149module_exit(sony_exit); 149module_exit(sony_exit);
150MODULE_LICENSE("GPL"); 150MODULE_LICENSE("GPL");
151
152HID_COMPAT_LOAD_DRIVER(sony);
diff --git a/drivers/hid/hid-sunplus.c b/drivers/hid/hid-sunplus.c
index 5ba68f7dbb78..e0a8fd36a85b 100644
--- a/drivers/hid/hid-sunplus.c
+++ b/drivers/hid/hid-sunplus.c
@@ -78,5 +78,3 @@ static void sp_exit(void)
78module_init(sp_init); 78module_init(sp_init);
79module_exit(sp_exit); 79module_exit(sp_exit);
80MODULE_LICENSE("GPL"); 80MODULE_LICENSE("GPL");
81
82HID_COMPAT_LOAD_DRIVER(sunplus);
diff --git a/drivers/hid/hid-tmff.c b/drivers/hid/hid-tmff.c
index 1b7cba0f7e1f..7c1f7b50330c 100644
--- a/drivers/hid/hid-tmff.c
+++ b/drivers/hid/hid-tmff.c
@@ -265,5 +265,3 @@ static void tm_exit(void)
265module_init(tm_init); 265module_init(tm_init);
266module_exit(tm_exit); 266module_exit(tm_exit);
267MODULE_LICENSE("GPL"); 267MODULE_LICENSE("GPL");
268
269HID_COMPAT_LOAD_DRIVER(thrustmaster);
diff --git a/drivers/hid/hid-topseed.c b/drivers/hid/hid-topseed.c
index cca64a0564a9..152ccfabeba5 100644
--- a/drivers/hid/hid-topseed.c
+++ b/drivers/hid/hid-topseed.c
@@ -73,5 +73,3 @@ static void ts_exit(void)
73module_init(ts_init); 73module_init(ts_init);
74module_exit(ts_exit); 74module_exit(ts_exit);
75MODULE_LICENSE("GPL"); 75MODULE_LICENSE("GPL");
76
77HID_COMPAT_LOAD_DRIVER(topseed);
diff --git a/drivers/hid/hid-zpff.c b/drivers/hid/hid-zpff.c
index ea82f3718b21..85a198a18537 100644
--- a/drivers/hid/hid-zpff.c
+++ b/drivers/hid/hid-zpff.c
@@ -158,5 +158,3 @@ static void zp_exit(void)
158module_init(zp_init); 158module_init(zp_init);
159module_exit(zp_exit); 159module_exit(zp_exit);
160MODULE_LICENSE("GPL"); 160MODULE_LICENSE("GPL");
161
162HID_COMPAT_LOAD_DRIVER(zeroplus);
diff --git a/include/linux/hid.h b/include/linux/hid.h
index a46cda488695..a46cbea71d65 100644
--- a/include/linux/hid.h
+++ b/include/linux/hid.h
@@ -792,21 +792,5 @@ dbg_hid(const char *fmt, ...)
792 __FILE__ , ## arg) 792 __FILE__ , ## arg)
793#endif /* HID_FF */ 793#endif /* HID_FF */
794 794
795#ifdef __KERNEL__
796#ifdef CONFIG_HID_COMPAT
797#define HID_COMPAT_LOAD_DRIVER(name) \
798/* prototype to avoid sparse warning */ \
799extern void hid_compat_##name(void); \
800void hid_compat_##name(void) { } \
801EXPORT_SYMBOL(hid_compat_##name)
802#else
803#define HID_COMPAT_LOAD_DRIVER(name)
804#endif /* HID_COMPAT */
805#define HID_COMPAT_CALL_DRIVER(name) do { \
806 extern void hid_compat_##name(void); \
807 hid_compat_##name(); \
808} while (0)
809#endif /* __KERNEL__ */
810
811#endif 795#endif
812 796