aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hid
diff options
context:
space:
mode:
authorJiri Kosina <jkosina@suse.cz>2008-05-06 10:57:55 -0400
committerJiri Kosina <jkosina@suse.cz>2008-05-06 10:57:55 -0400
commit7022b15e2a9f878fd5184586064c63352c3dd225 (patch)
tree5365c2f5bc82ae1946636ee8d5cd5d3b7e804f1b /drivers/hid
parentaaad2b0c757f3e6e02552cb0bdcd91a5ec0d6305 (diff)
parenta15306365a16380f3bafee9e181ba01231d4acd7 (diff)
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'drivers/hid')
-rw-r--r--drivers/hid/hid-core.c6
-rw-r--r--drivers/hid/usbhid/hid-core.c2
-rw-r--r--drivers/hid/usbhid/hid-quirks.c4
3 files changed, 8 insertions, 4 deletions
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
index e03c67dd3e63..f43d6d3cf2fa 100644
--- a/drivers/hid/hid-core.c
+++ b/drivers/hid/hid-core.c
@@ -606,7 +606,7 @@ static u8 *fetch_item(__u8 *start, __u8 *end, struct hid_item *item)
606 case 2: 606 case 2:
607 if ((end - start) < 2) 607 if ((end - start) < 2)
608 return NULL; 608 return NULL;
609 item->data.u16 = le16_to_cpu(get_unaligned((__le16*)start)); 609 item->data.u16 = get_unaligned_le16(start);
610 start = (__u8 *)((__le16 *)start + 1); 610 start = (__u8 *)((__le16 *)start + 1);
611 return start; 611 return start;
612 612
@@ -614,7 +614,7 @@ static u8 *fetch_item(__u8 *start, __u8 *end, struct hid_item *item)
614 item->size++; 614 item->size++;
615 if ((end - start) < 4) 615 if ((end - start) < 4)
616 return NULL; 616 return NULL;
617 item->data.u32 = le32_to_cpu(get_unaligned((__le32*)start)); 617 item->data.u32 = get_unaligned_le32(start);
618 start = (__u8 *)((__le32 *)start + 1); 618 start = (__u8 *)((__le32 *)start + 1);
619 return start; 619 return start;
620 } 620 }
@@ -765,7 +765,7 @@ static __inline__ __u32 extract(__u8 *report, unsigned offset, unsigned n)
765 765
766 report += offset >> 3; /* adjust byte index */ 766 report += offset >> 3; /* adjust byte index */
767 offset &= 7; /* now only need bit offset into one byte */ 767 offset &= 7; /* now only need bit offset into one byte */
768 x = le64_to_cpu(get_unaligned((__le64 *) report)); 768 x = get_unaligned_le64(report);
769 x = (x >> offset) & ((1ULL << n) - 1); /* extract bit field */ 769 x = (x >> offset) & ((1ULL << n) - 1); /* extract bit field */
770 return (u32) x; 770 return (u32) x;
771} 771}
diff --git a/drivers/hid/usbhid/hid-core.c b/drivers/hid/usbhid/hid-core.c
index e0d805f1b2bf..01427c51c7cc 100644
--- a/drivers/hid/usbhid/hid-core.c
+++ b/drivers/hid/usbhid/hid-core.c
@@ -654,7 +654,7 @@ static int usbhid_output_raw_report(struct hid_device *hid, __u8 *buf, size_t co
654 ret = usb_control_msg(dev, usb_sndctrlpipe(dev, 0), 654 ret = usb_control_msg(dev, usb_sndctrlpipe(dev, 0),
655 HID_REQ_SET_REPORT, 655 HID_REQ_SET_REPORT,
656 USB_DIR_OUT | USB_TYPE_CLASS | USB_RECIP_INTERFACE, 656 USB_DIR_OUT | USB_TYPE_CLASS | USB_RECIP_INTERFACE,
657 cpu_to_le16(((HID_OUTPUT_REPORT + 1) << 8) | *buf), 657 ((HID_OUTPUT_REPORT + 1) << 8) | *buf,
658 interface->desc.bInterfaceNumber, buf + 1, count - 1, 658 interface->desc.bInterfaceNumber, buf + 1, count - 1,
659 USB_CTRL_SET_TIMEOUT); 659 USB_CTRL_SET_TIMEOUT);
660 660
diff --git a/drivers/hid/usbhid/hid-quirks.c b/drivers/hid/usbhid/hid-quirks.c
index 8d2bc93f8161..b93d91371b14 100644
--- a/drivers/hid/usbhid/hid-quirks.c
+++ b/drivers/hid/usbhid/hid-quirks.c
@@ -405,6 +405,9 @@
405#define USB_VENDOR_ID_YEALINK 0x6993 405#define USB_VENDOR_ID_YEALINK 0x6993
406#define USB_DEVICE_ID_YEALINK_P1K_P4K_B2K 0xb001 406#define USB_DEVICE_ID_YEALINK_P1K_P4K_B2K 0xb001
407 407
408#define USB_VENDOR_ID_KYE 0x0458
409#define USB_DEVICE_ID_KYE_GPEN_560 0x5003
410
408/* 411/*
409 * Alphabetically sorted blacklist by quirk type. 412 * Alphabetically sorted blacklist by quirk type.
410 */ 413 */
@@ -698,6 +701,7 @@ static const struct hid_blacklist {
698 { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_HARMONY_63, HID_QUIRK_IGNORE }, 701 { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_HARMONY_63, HID_QUIRK_IGNORE },
699 { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_HARMONY_64, HID_QUIRK_IGNORE }, 702 { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_HARMONY_64, HID_QUIRK_IGNORE },
700 { USB_VENDOR_ID_NATIONAL_SEMICONDUCTOR, USB_DEVICE_ID_N_S_HARMONY, HID_QUIRK_IGNORE }, 703 { USB_VENDOR_ID_NATIONAL_SEMICONDUCTOR, USB_DEVICE_ID_N_S_HARMONY, HID_QUIRK_IGNORE },
704 { USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_GPEN_560, HID_QUIRK_IGNORE },
701 705
702 { 0, 0 } 706 { 0, 0 }
703}; 707};