aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/hid.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/hid.h')
-rw-r--r--include/linux/hid.h17
1 files changed, 13 insertions, 4 deletions
diff --git a/include/linux/hid.h b/include/linux/hid.h
index 773bcb1d4044..834e6461a690 100644
--- a/include/linux/hid.h
+++ b/include/linux/hid.h
@@ -190,6 +190,12 @@ struct hid_item {
190 * http://www.usb.org/developers/hidpage/HUTRR40RadioHIDUsagesFinal.pdf 190 * http://www.usb.org/developers/hidpage/HUTRR40RadioHIDUsagesFinal.pdf
191 */ 191 */
192#define HID_GD_WIRELESS_RADIO_CTLS 0x0001000c 192#define HID_GD_WIRELESS_RADIO_CTLS 0x0001000c
193/*
194 * System Multi-Axis, see:
195 * http://www.usb.org/developers/hidpage/HUTRR62_-_Generic_Desktop_CA_for_System_Multi-Axis_Controllers.txt
196 */
197#define HID_GD_SYSTEM_MULTIAXIS 0x0001000e
198
193#define HID_GD_X 0x00010030 199#define HID_GD_X 0x00010030
194#define HID_GD_Y 0x00010031 200#define HID_GD_Y 0x00010031
195#define HID_GD_Z 0x00010032 201#define HID_GD_Z 0x00010032
@@ -638,12 +644,13 @@ static inline void hid_set_drvdata(struct hid_device *hdev, void *data)
638struct hid_parser { 644struct hid_parser {
639 struct hid_global global; 645 struct hid_global global;
640 struct hid_global global_stack[HID_GLOBAL_STACK_SIZE]; 646 struct hid_global global_stack[HID_GLOBAL_STACK_SIZE];
641 unsigned global_stack_ptr; 647 unsigned int global_stack_ptr;
642 struct hid_local local; 648 struct hid_local local;
643 unsigned collection_stack[HID_COLLECTION_STACK_SIZE]; 649 unsigned int *collection_stack;
644 unsigned collection_stack_ptr; 650 unsigned int collection_stack_ptr;
651 unsigned int collection_stack_size;
645 struct hid_device *device; 652 struct hid_device *device;
646 unsigned scan_flags; 653 unsigned int scan_flags;
647}; 654};
648 655
649struct hid_class_descriptor { 656struct hid_class_descriptor {
@@ -894,6 +901,8 @@ const struct hid_device_id *hid_match_id(const struct hid_device *hdev,
894 const struct hid_device_id *id); 901 const struct hid_device_id *id);
895const struct hid_device_id *hid_match_device(struct hid_device *hdev, 902const struct hid_device_id *hid_match_device(struct hid_device *hdev,
896 struct hid_driver *hdrv); 903 struct hid_driver *hdrv);
904bool hid_compare_device_paths(struct hid_device *hdev_a,
905 struct hid_device *hdev_b, char separator);
897s32 hid_snto32(__u32 value, unsigned n); 906s32 hid_snto32(__u32 value, unsigned n);
898__u32 hid_field_extract(const struct hid_device *hid, __u8 *report, 907__u32 hid_field_extract(const struct hid_device *hid, __u8 *report,
899 unsigned offset, unsigned n); 908 unsigned offset, unsigned n);