diff options
author | Dmitry Torokhov <dtor_core@ameritech.net> | 2005-06-30 01:49:08 -0400 |
---|---|---|
committer | Dmitry Torokhov <dtor_core@ameritech.net> | 2005-06-30 01:49:08 -0400 |
commit | 16a334c0de5a94b1d10a1ac9a33f4dedac89a075 (patch) | |
tree | bb01b1185d806994cd318a7af68a438a9e57c2a2 /drivers/usb/input | |
parent | c27a748225fe5c7e485ea471178c26e43f9f7fbe (diff) |
Input: introduce usb_to_input_id() to uniformly produce
struct input_id for USB input devices.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/usb/input')
-rw-r--r-- | drivers/usb/input/acecad.c | 6 | ||||
-rw-r--r-- | drivers/usb/input/aiptek.c | 6 | ||||
-rw-r--r-- | drivers/usb/input/ati_remote.c | 8 | ||||
-rw-r--r-- | drivers/usb/input/hid-input.c | 6 | ||||
-rw-r--r-- | drivers/usb/input/itmtouch.c | 6 | ||||
-rw-r--r-- | drivers/usb/input/kbtab.c | 6 | ||||
-rw-r--r-- | drivers/usb/input/mtouchusb.c | 6 | ||||
-rw-r--r-- | drivers/usb/input/powermate.c | 6 | ||||
-rw-r--r-- | drivers/usb/input/touchkitusb.c | 7 | ||||
-rw-r--r-- | drivers/usb/input/usbkbd.c | 6 | ||||
-rw-r--r-- | drivers/usb/input/usbmouse.c | 6 | ||||
-rw-r--r-- | drivers/usb/input/wacom.c | 6 | ||||
-rw-r--r-- | drivers/usb/input/xpad.c | 6 |
13 files changed, 27 insertions, 54 deletions
diff --git a/drivers/usb/input/acecad.c b/drivers/usb/input/acecad.c index 68039b04af3b..13532f3e3efc 100644 --- a/drivers/usb/input/acecad.c +++ b/drivers/usb/input/acecad.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/module.h> | 31 | #include <linux/module.h> |
32 | #include <linux/init.h> | 32 | #include <linux/init.h> |
33 | #include <linux/usb.h> | 33 | #include <linux/usb.h> |
34 | #include <linux/usb_input.h> | ||
34 | 35 | ||
35 | /* | 36 | /* |
36 | * Version Information | 37 | * Version Information |
@@ -212,10 +213,7 @@ static int usb_acecad_probe(struct usb_interface *intf, const struct usb_device_ | |||
212 | 213 | ||
213 | acecad->dev.name = acecad->name; | 214 | acecad->dev.name = acecad->name; |
214 | acecad->dev.phys = acecad->phys; | 215 | acecad->dev.phys = acecad->phys; |
215 | acecad->dev.id.bustype = BUS_USB; | 216 | usb_to_input_id(dev, &acecad->dev.id); |
216 | acecad->dev.id.vendor = le16_to_cpu(dev->descriptor.idVendor); | ||
217 | acecad->dev.id.product = le16_to_cpu(dev->descriptor.idProduct); | ||
218 | acecad->dev.id.version = le16_to_cpu(dev->descriptor.bcdDevice); | ||
219 | acecad->dev.dev = &intf->dev; | 217 | acecad->dev.dev = &intf->dev; |
220 | 218 | ||
221 | usb_fill_int_urb(acecad->irq, dev, pipe, | 219 | usb_fill_int_urb(acecad->irq, dev, pipe, |
diff --git a/drivers/usb/input/aiptek.c b/drivers/usb/input/aiptek.c index 6bb0f25e8e93..cd0cbfe20723 100644 --- a/drivers/usb/input/aiptek.c +++ b/drivers/usb/input/aiptek.c | |||
@@ -77,6 +77,7 @@ | |||
77 | #include <linux/module.h> | 77 | #include <linux/module.h> |
78 | #include <linux/init.h> | 78 | #include <linux/init.h> |
79 | #include <linux/usb.h> | 79 | #include <linux/usb.h> |
80 | #include <linux/usb_input.h> | ||
80 | #include <linux/sched.h> | 81 | #include <linux/sched.h> |
81 | #include <asm/uaccess.h> | 82 | #include <asm/uaccess.h> |
82 | #include <asm/unaligned.h> | 83 | #include <asm/unaligned.h> |
@@ -2125,10 +2126,7 @@ aiptek_probe(struct usb_interface *intf, const struct usb_device_id *id) | |||
2125 | aiptek->inputdev.absflat[ABS_WHEEL] = 0; | 2126 | aiptek->inputdev.absflat[ABS_WHEEL] = 0; |
2126 | aiptek->inputdev.name = "Aiptek"; | 2127 | aiptek->inputdev.name = "Aiptek"; |
2127 | aiptek->inputdev.phys = aiptek->features.usbPath; | 2128 | aiptek->inputdev.phys = aiptek->features.usbPath; |
2128 | aiptek->inputdev.id.bustype = BUS_USB; | 2129 | usb_to_input_id(usbdev, &aiptek->inputdev.id); |
2129 | aiptek->inputdev.id.vendor = le16_to_cpu(usbdev->descriptor.idVendor); | ||
2130 | aiptek->inputdev.id.product = le16_to_cpu(usbdev->descriptor.idProduct); | ||
2131 | aiptek->inputdev.id.version = le16_to_cpu(usbdev->descriptor.bcdDevice); | ||
2132 | aiptek->inputdev.dev = &intf->dev; | 2130 | aiptek->inputdev.dev = &intf->dev; |
2133 | 2131 | ||
2134 | aiptek->usbdev = usbdev; | 2132 | aiptek->usbdev = usbdev; |
diff --git a/drivers/usb/input/ati_remote.c b/drivers/usb/input/ati_remote.c index 654ac454744d..fd99681ee483 100644 --- a/drivers/usb/input/ati_remote.c +++ b/drivers/usb/input/ati_remote.c | |||
@@ -94,6 +94,7 @@ | |||
94 | #include <linux/moduleparam.h> | 94 | #include <linux/moduleparam.h> |
95 | #include <linux/input.h> | 95 | #include <linux/input.h> |
96 | #include <linux/usb.h> | 96 | #include <linux/usb.h> |
97 | #include <linux/usb_input.h> | ||
97 | #include <linux/wait.h> | 98 | #include <linux/wait.h> |
98 | 99 | ||
99 | /* | 100 | /* |
@@ -635,11 +636,8 @@ static void ati_remote_input_init(struct ati_remote *ati_remote) | |||
635 | idev->name = ati_remote->name; | 636 | idev->name = ati_remote->name; |
636 | idev->phys = ati_remote->phys; | 637 | idev->phys = ati_remote->phys; |
637 | 638 | ||
638 | idev->id.bustype = BUS_USB; | 639 | usb_to_input_id(ati_remote->udev, &idev->id); |
639 | idev->id.vendor = le16_to_cpu(ati_remote->udev->descriptor.idVendor); | 640 | idev->dev = &ati_remote->udev->dev; |
640 | idev->id.product = le16_to_cpu(ati_remote->udev->descriptor.idProduct); | ||
641 | idev->id.version = le16_to_cpu(ati_remote->udev->descriptor.bcdDevice); | ||
642 | idev->dev = &(ati_remote->udev->dev); | ||
643 | } | 641 | } |
644 | 642 | ||
645 | static int ati_remote_initialize(struct ati_remote *ati_remote) | 643 | static int ati_remote_initialize(struct ati_remote *ati_remote) |
diff --git a/drivers/usb/input/hid-input.c b/drivers/usb/input/hid-input.c index 9ac1e9095334..e071c8eeccee 100644 --- a/drivers/usb/input/hid-input.c +++ b/drivers/usb/input/hid-input.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/kernel.h> | 31 | #include <linux/kernel.h> |
32 | #include <linux/input.h> | 32 | #include <linux/input.h> |
33 | #include <linux/usb.h> | 33 | #include <linux/usb.h> |
34 | #include <linux/usb_input.h> | ||
34 | 35 | ||
35 | #undef DEBUG | 36 | #undef DEBUG |
36 | 37 | ||
@@ -581,10 +582,7 @@ int hidinput_connect(struct hid_device *hid) | |||
581 | hidinput->input.name = hid->name; | 582 | hidinput->input.name = hid->name; |
582 | hidinput->input.phys = hid->phys; | 583 | hidinput->input.phys = hid->phys; |
583 | hidinput->input.uniq = hid->uniq; | 584 | hidinput->input.uniq = hid->uniq; |
584 | hidinput->input.id.bustype = BUS_USB; | 585 | usb_to_input_id(dev, &hidinput->input.id); |
585 | hidinput->input.id.vendor = le16_to_cpu(dev->descriptor.idVendor); | ||
586 | hidinput->input.id.product = le16_to_cpu(dev->descriptor.idProduct); | ||
587 | hidinput->input.id.version = le16_to_cpu(dev->descriptor.bcdDevice); | ||
588 | hidinput->input.dev = &hid->intf->dev; | 586 | hidinput->input.dev = &hid->intf->dev; |
589 | } | 587 | } |
590 | 588 | ||
diff --git a/drivers/usb/input/itmtouch.c b/drivers/usb/input/itmtouch.c index 47dec6a1b344..0dc439f10823 100644 --- a/drivers/usb/input/itmtouch.c +++ b/drivers/usb/input/itmtouch.c | |||
@@ -53,6 +53,7 @@ | |||
53 | #include <linux/module.h> | 53 | #include <linux/module.h> |
54 | #include <linux/init.h> | 54 | #include <linux/init.h> |
55 | #include <linux/usb.h> | 55 | #include <linux/usb.h> |
56 | #include <linux/usb_input.h> | ||
56 | 57 | ||
57 | /* only an 8 byte buffer necessary for a single packet */ | 58 | /* only an 8 byte buffer necessary for a single packet */ |
58 | #define ITM_BUFSIZE 8 | 59 | #define ITM_BUFSIZE 8 |
@@ -184,10 +185,7 @@ static int itmtouch_probe(struct usb_interface *intf, const struct usb_device_id | |||
184 | 185 | ||
185 | itmtouch->inputdev.name = itmtouch->name; | 186 | itmtouch->inputdev.name = itmtouch->name; |
186 | itmtouch->inputdev.phys = itmtouch->phys; | 187 | itmtouch->inputdev.phys = itmtouch->phys; |
187 | itmtouch->inputdev.id.bustype = BUS_USB; | 188 | usb_to_input_id(udev, &itmtouch->inputdev.id); |
188 | itmtouch->inputdev.id.vendor = udev->descriptor.idVendor; | ||
189 | itmtouch->inputdev.id.product = udev->descriptor.idProduct; | ||
190 | itmtouch->inputdev.id.version = udev->descriptor.bcdDevice; | ||
191 | itmtouch->inputdev.dev = &intf->dev; | 189 | itmtouch->inputdev.dev = &intf->dev; |
192 | 190 | ||
193 | if (!strlen(itmtouch->name)) | 191 | if (!strlen(itmtouch->name)) |
diff --git a/drivers/usb/input/kbtab.c b/drivers/usb/input/kbtab.c index d2f0f90a9bcd..b6f6ac8d9c2f 100644 --- a/drivers/usb/input/kbtab.c +++ b/drivers/usb/input/kbtab.c | |||
@@ -4,6 +4,7 @@ | |||
4 | #include <linux/module.h> | 4 | #include <linux/module.h> |
5 | #include <linux/init.h> | 5 | #include <linux/init.h> |
6 | #include <linux/usb.h> | 6 | #include <linux/usb.h> |
7 | #include <linux/usb_input.h> | ||
7 | #include <asm/unaligned.h> | 8 | #include <asm/unaligned.h> |
8 | #include <asm/byteorder.h> | 9 | #include <asm/byteorder.h> |
9 | 10 | ||
@@ -167,10 +168,7 @@ static int kbtab_probe(struct usb_interface *intf, const struct usb_device_id *i | |||
167 | 168 | ||
168 | kbtab->dev.name = "KB Gear Tablet"; | 169 | kbtab->dev.name = "KB Gear Tablet"; |
169 | kbtab->dev.phys = kbtab->phys; | 170 | kbtab->dev.phys = kbtab->phys; |
170 | kbtab->dev.id.bustype = BUS_USB; | 171 | usb_to_input_id(dev, &kbtab->dev.id); |
171 | kbtab->dev.id.vendor = le16_to_cpu(dev->descriptor.idVendor); | ||
172 | kbtab->dev.id.product = le16_to_cpu(dev->descriptor.idProduct); | ||
173 | kbtab->dev.id.version = le16_to_cpu(dev->descriptor.bcdDevice); | ||
174 | kbtab->dev.dev = &intf->dev; | 172 | kbtab->dev.dev = &intf->dev; |
175 | kbtab->usbdev = dev; | 173 | kbtab->usbdev = dev; |
176 | 174 | ||
diff --git a/drivers/usb/input/mtouchusb.c b/drivers/usb/input/mtouchusb.c index 09b5cc7c66de..ff9275057a18 100644 --- a/drivers/usb/input/mtouchusb.c +++ b/drivers/usb/input/mtouchusb.c | |||
@@ -53,6 +53,7 @@ | |||
53 | #include <linux/module.h> | 53 | #include <linux/module.h> |
54 | #include <linux/init.h> | 54 | #include <linux/init.h> |
55 | #include <linux/usb.h> | 55 | #include <linux/usb.h> |
56 | #include <linux/usb_input.h> | ||
56 | 57 | ||
57 | #define MTOUCHUSB_MIN_XC 0x0 | 58 | #define MTOUCHUSB_MIN_XC 0x0 |
58 | #define MTOUCHUSB_MAX_RAW_XC 0x4000 | 59 | #define MTOUCHUSB_MAX_RAW_XC 0x4000 |
@@ -232,10 +233,7 @@ static int mtouchusb_probe(struct usb_interface *intf, const struct usb_device_i | |||
232 | 233 | ||
233 | mtouch->input.name = mtouch->name; | 234 | mtouch->input.name = mtouch->name; |
234 | mtouch->input.phys = mtouch->phys; | 235 | mtouch->input.phys = mtouch->phys; |
235 | mtouch->input.id.bustype = BUS_USB; | 236 | usb_to_input_id(udev, &mtouch->input.id); |
236 | mtouch->input.id.vendor = le16_to_cpu(udev->descriptor.idVendor); | ||
237 | mtouch->input.id.product = le16_to_cpu(udev->descriptor.idProduct); | ||
238 | mtouch->input.id.version = le16_to_cpu(udev->descriptor.bcdDevice); | ||
239 | mtouch->input.dev = &intf->dev; | 237 | mtouch->input.dev = &intf->dev; |
240 | 238 | ||
241 | mtouch->input.evbit[0] = BIT(EV_KEY) | BIT(EV_ABS); | 239 | mtouch->input.evbit[0] = BIT(EV_KEY) | BIT(EV_ABS); |
diff --git a/drivers/usb/input/powermate.c b/drivers/usb/input/powermate.c index 3975b309d55f..ad4afe7e5897 100644 --- a/drivers/usb/input/powermate.c +++ b/drivers/usb/input/powermate.c | |||
@@ -35,6 +35,7 @@ | |||
35 | #include <linux/init.h> | 35 | #include <linux/init.h> |
36 | #include <linux/spinlock.h> | 36 | #include <linux/spinlock.h> |
37 | #include <linux/usb.h> | 37 | #include <linux/usb.h> |
38 | #include <linux/usb_input.h> | ||
38 | 39 | ||
39 | #define POWERMATE_VENDOR 0x077d /* Griffin Technology, Inc. */ | 40 | #define POWERMATE_VENDOR 0x077d /* Griffin Technology, Inc. */ |
40 | #define POWERMATE_PRODUCT_NEW 0x0410 /* Griffin PowerMate */ | 41 | #define POWERMATE_PRODUCT_NEW 0x0410 /* Griffin PowerMate */ |
@@ -389,10 +390,7 @@ static int powermate_probe(struct usb_interface *intf, const struct usb_device_i | |||
389 | pm->input.keybit[LONG(BTN_0)] = BIT(BTN_0); | 390 | pm->input.keybit[LONG(BTN_0)] = BIT(BTN_0); |
390 | pm->input.relbit[LONG(REL_DIAL)] = BIT(REL_DIAL); | 391 | pm->input.relbit[LONG(REL_DIAL)] = BIT(REL_DIAL); |
391 | pm->input.mscbit[LONG(MSC_PULSELED)] = BIT(MSC_PULSELED); | 392 | pm->input.mscbit[LONG(MSC_PULSELED)] = BIT(MSC_PULSELED); |
392 | pm->input.id.bustype = BUS_USB; | 393 | usb_to_input_id(udev, &pm->input.id); |
393 | pm->input.id.vendor = le16_to_cpu(udev->descriptor.idVendor); | ||
394 | pm->input.id.product = le16_to_cpu(udev->descriptor.idProduct); | ||
395 | pm->input.id.version = le16_to_cpu(udev->descriptor.bcdDevice); | ||
396 | pm->input.event = powermate_input_event; | 394 | pm->input.event = powermate_input_event; |
397 | pm->input.dev = &intf->dev; | 395 | pm->input.dev = &intf->dev; |
398 | pm->input.phys = pm->phys; | 396 | pm->input.phys = pm->phys; |
diff --git a/drivers/usb/input/touchkitusb.c b/drivers/usb/input/touchkitusb.c index 386595ee21c0..4276c24a5080 100644 --- a/drivers/usb/input/touchkitusb.c +++ b/drivers/usb/input/touchkitusb.c | |||
@@ -35,7 +35,7 @@ | |||
35 | #define DEBUG | 35 | #define DEBUG |
36 | #endif | 36 | #endif |
37 | #include <linux/usb.h> | 37 | #include <linux/usb.h> |
38 | 38 | #include <linux/usb_input.h> | |
39 | 39 | ||
40 | #define TOUCHKIT_MIN_XC 0x0 | 40 | #define TOUCHKIT_MIN_XC 0x0 |
41 | #define TOUCHKIT_MAX_XC 0x07ff | 41 | #define TOUCHKIT_MAX_XC 0x07ff |
@@ -202,10 +202,7 @@ static int touchkit_probe(struct usb_interface *intf, | |||
202 | 202 | ||
203 | touchkit->input.name = touchkit->name; | 203 | touchkit->input.name = touchkit->name; |
204 | touchkit->input.phys = touchkit->phys; | 204 | touchkit->input.phys = touchkit->phys; |
205 | touchkit->input.id.bustype = BUS_USB; | 205 | usb_to_input_id(udev, &touchkit->input.id); |
206 | touchkit->input.id.vendor = le16_to_cpu(udev->descriptor.idVendor); | ||
207 | touchkit->input.id.product = le16_to_cpu(udev->descriptor.idProduct); | ||
208 | touchkit->input.id.version = le16_to_cpu(udev->descriptor.bcdDevice); | ||
209 | touchkit->input.dev = &intf->dev; | 206 | touchkit->input.dev = &intf->dev; |
210 | 207 | ||
211 | touchkit->input.evbit[0] = BIT(EV_KEY) | BIT(EV_ABS); | 208 | touchkit->input.evbit[0] = BIT(EV_KEY) | BIT(EV_ABS); |
diff --git a/drivers/usb/input/usbkbd.c b/drivers/usb/input/usbkbd.c index f35db1974c42..28987f15eeee 100644 --- a/drivers/usb/input/usbkbd.c +++ b/drivers/usb/input/usbkbd.c | |||
@@ -32,6 +32,7 @@ | |||
32 | #include <linux/input.h> | 32 | #include <linux/input.h> |
33 | #include <linux/init.h> | 33 | #include <linux/init.h> |
34 | #include <linux/usb.h> | 34 | #include <linux/usb.h> |
35 | #include <linux/usb_input.h> | ||
35 | 36 | ||
36 | /* | 37 | /* |
37 | * Version Information | 38 | * Version Information |
@@ -288,10 +289,7 @@ static int usb_kbd_probe(struct usb_interface *iface, | |||
288 | 289 | ||
289 | kbd->dev.name = kbd->name; | 290 | kbd->dev.name = kbd->name; |
290 | kbd->dev.phys = kbd->phys; | 291 | kbd->dev.phys = kbd->phys; |
291 | kbd->dev.id.bustype = BUS_USB; | 292 | usb_to_input_id(dev, &kbd->dev.id); |
292 | kbd->dev.id.vendor = le16_to_cpu(dev->descriptor.idVendor); | ||
293 | kbd->dev.id.product = le16_to_cpu(dev->descriptor.idProduct); | ||
294 | kbd->dev.id.version = le16_to_cpu(dev->descriptor.bcdDevice); | ||
295 | kbd->dev.dev = &iface->dev; | 293 | kbd->dev.dev = &iface->dev; |
296 | 294 | ||
297 | if (dev->manufacturer) | 295 | if (dev->manufacturer) |
diff --git a/drivers/usb/input/usbmouse.c b/drivers/usb/input/usbmouse.c index 1ec41b5effe6..4104dec847fb 100644 --- a/drivers/usb/input/usbmouse.c +++ b/drivers/usb/input/usbmouse.c | |||
@@ -32,6 +32,7 @@ | |||
32 | #include <linux/module.h> | 32 | #include <linux/module.h> |
33 | #include <linux/init.h> | 33 | #include <linux/init.h> |
34 | #include <linux/usb.h> | 34 | #include <linux/usb.h> |
35 | #include <linux/usb_input.h> | ||
35 | 36 | ||
36 | /* | 37 | /* |
37 | * Version Information | 38 | * Version Information |
@@ -171,10 +172,7 @@ static int usb_mouse_probe(struct usb_interface * intf, const struct usb_device_ | |||
171 | 172 | ||
172 | mouse->dev.name = mouse->name; | 173 | mouse->dev.name = mouse->name; |
173 | mouse->dev.phys = mouse->phys; | 174 | mouse->dev.phys = mouse->phys; |
174 | mouse->dev.id.bustype = BUS_USB; | 175 | usb_to_input_id(dev, &mouse->dev.id); |
175 | mouse->dev.id.vendor = le16_to_cpu(dev->descriptor.idVendor); | ||
176 | mouse->dev.id.product = le16_to_cpu(dev->descriptor.idProduct); | ||
177 | mouse->dev.id.version = le16_to_cpu(dev->descriptor.bcdDevice); | ||
178 | mouse->dev.dev = &intf->dev; | 176 | mouse->dev.dev = &intf->dev; |
179 | 177 | ||
180 | if (dev->manufacturer) | 178 | if (dev->manufacturer) |
diff --git a/drivers/usb/input/wacom.c b/drivers/usb/input/wacom.c index f6b34af66b3d..02412e31a46b 100644 --- a/drivers/usb/input/wacom.c +++ b/drivers/usb/input/wacom.c | |||
@@ -69,6 +69,7 @@ | |||
69 | #include <linux/module.h> | 69 | #include <linux/module.h> |
70 | #include <linux/init.h> | 70 | #include <linux/init.h> |
71 | #include <linux/usb.h> | 71 | #include <linux/usb.h> |
72 | #include <linux/usb_input.h> | ||
72 | #include <asm/unaligned.h> | 73 | #include <asm/unaligned.h> |
73 | #include <asm/byteorder.h> | 74 | #include <asm/byteorder.h> |
74 | 75 | ||
@@ -823,10 +824,7 @@ static int wacom_probe(struct usb_interface *intf, const struct usb_device_id *i | |||
823 | 824 | ||
824 | wacom->dev.name = wacom->features->name; | 825 | wacom->dev.name = wacom->features->name; |
825 | wacom->dev.phys = wacom->phys; | 826 | wacom->dev.phys = wacom->phys; |
826 | wacom->dev.id.bustype = BUS_USB; | 827 | usb_to_input_id(dev, &wacom->dev.id); |
827 | wacom->dev.id.vendor = le16_to_cpu(dev->descriptor.idVendor); | ||
828 | wacom->dev.id.product = le16_to_cpu(dev->descriptor.idProduct); | ||
829 | wacom->dev.id.version = le16_to_cpu(dev->descriptor.bcdDevice); | ||
830 | wacom->dev.dev = &intf->dev; | 828 | wacom->dev.dev = &intf->dev; |
831 | wacom->usbdev = dev; | 829 | wacom->usbdev = dev; |
832 | 830 | ||
diff --git a/drivers/usb/input/xpad.c b/drivers/usb/input/xpad.c index a7fa1b17dcfe..18125e0bffa2 100644 --- a/drivers/usb/input/xpad.c +++ b/drivers/usb/input/xpad.c | |||
@@ -62,6 +62,7 @@ | |||
62 | #include <linux/module.h> | 62 | #include <linux/module.h> |
63 | #include <linux/smp_lock.h> | 63 | #include <linux/smp_lock.h> |
64 | #include <linux/usb.h> | 64 | #include <linux/usb.h> |
65 | #include <linux/usb_input.h> | ||
65 | 66 | ||
66 | #define DRIVER_VERSION "v0.0.5" | 67 | #define DRIVER_VERSION "v0.0.5" |
67 | #define DRIVER_AUTHOR "Marko Friedemann <mfr@bmx-chemnitz.de>" | 68 | #define DRIVER_AUTHOR "Marko Friedemann <mfr@bmx-chemnitz.de>" |
@@ -256,10 +257,7 @@ static int xpad_probe(struct usb_interface *intf, const struct usb_device_id *id | |||
256 | 257 | ||
257 | xpad->udev = udev; | 258 | xpad->udev = udev; |
258 | 259 | ||
259 | xpad->dev.id.bustype = BUS_USB; | 260 | usb_to_input_id(udev, &xpad->dev.id); |
260 | xpad->dev.id.vendor = le16_to_cpu(udev->descriptor.idVendor); | ||
261 | xpad->dev.id.product = le16_to_cpu(udev->descriptor.idProduct); | ||
262 | xpad->dev.id.version = le16_to_cpu(udev->descriptor.bcdDevice); | ||
263 | xpad->dev.dev = &intf->dev; | 261 | xpad->dev.dev = &intf->dev; |
264 | xpad->dev.private = xpad; | 262 | xpad->dev.private = xpad; |
265 | xpad->dev.name = xpad_device[i].name; | 263 | xpad->dev.name = xpad_device[i].name; |