Lines Matching refs:hid

22 #include <linux/hid.h>
56 hiddev_lookup_report(struct hid_device *hid, struct hiddev_report_info *rinfo)
68 report_enum = hid->report_enum +
109 hiddev_lookup_usage(struct hid_device *hid, struct hiddev_usage_ref *uref)
120 report_enum = hid->report_enum +
127 if (field->usage[j].hid == uref->usage_code) {
140 static void hiddev_send_event(struct hid_device *hid,
143 struct hiddev *hiddev = hid->hiddev;
163 * This is where hid.c calls into hiddev to pass an event that occurred over
166 void hiddev_hid_event(struct hid_device *hid, struct hid_field *field,
179 uref.usage_code = usage->hid;
182 hiddev_send_event(hid, &uref);
186 void hiddev_report_event(struct hid_device *hid, struct hid_report *report)
199 hiddev_send_event(hid, &uref);
228 hid_hw_close(list->hiddev->hid);
229 hid_hw_power(list->hiddev->hid, PM_HINT_NORMAL);
259 error = hid_hw_power(hiddev->hid, PM_HINT_FULLON);
263 error = hid_hw_open(hiddev->hid);
277 hid_hw_power(hiddev->hid, PM_HINT_NORMAL);
290 struct hid_device *hid;
298 hid = usb_get_intfdata(intf);
299 hiddev = hid->hiddev;
380 event.hid = list->buffer[list->tail].usage_code;
429 struct hid_device *hid = hiddev->hid;
454 if ((report = hiddev_lookup_report(hid, &rinfo)) == NULL)
468 uref->usage_code = field->usage[uref->usage_index].hid;
482 field = hiddev_lookup_usage(hid, uref);
488 if ((report = hiddev_lookup_report(hid, &rinfo)) == NULL)
568 struct hid_device *hid = hiddev->hid;
569 struct usb_device *dev = hid_to_usb_dev(hid);
598 struct hid_device *hid;
616 hid = hiddev->hid;
626 if (arg >= hid->maxapplication)
629 for (i = 0; i < hid->maxcollection; i++)
630 if (hid->collection[i].type ==
634 if (i < hid->maxcollection)
635 r = hid->collection[i].usage;
640 struct usb_device *dev = hid_to_usb_dev(hid);
641 struct usbhid_device *usbhid = hid->driver_data;
652 dinfo.num_applications = hid->maxapplication;
689 usbhid_init_reports(hid);
703 report = hiddev_lookup_report(hid, &rinfo);
707 hid_hw_request(hid, report, HID_REQ_GET_REPORT);
708 hid_hw_wait(hid);
722 report = hiddev_lookup_report(hid, &rinfo);
726 hid_hw_request(hid, report, HID_REQ_SET_REPORT);
727 hid_hw_wait(hid);
738 report = hiddev_lookup_report(hid, &rinfo);
757 report = hiddev_lookup_report(hid, &rinfo);
794 usbhid_init_reports(hid);
806 if (cinfo.index >= hid->maxcollection)
809 hid->maxcollection);
811 cinfo.type = hid->collection[cinfo.index].type;
812 cinfo.usage = hid->collection[cinfo.index].usage;
813 cinfo.level = hid->collection[cinfo.index].level;
824 int len = strlen(hid->name) + 1;
827 r = copy_to_user(user_arg, hid->name, len) ?
833 int len = strlen(hid->phys) + 1;
836 r = copy_to_user(user_arg, hid->phys, len) ?
873 * This is where hid.c calls us to connect a hid device to the hiddev driver
875 int hiddev_connect(struct hid_device *hid, unsigned int force)
878 struct usbhid_device *usbhid = hid->driver_data;
883 for (i = 0; i < hid->maxcollection; i++)
884 if (hid->collection[i].type ==
886 !IS_INPUT_APPLICATION(hid->collection[i].usage))
889 if (i == hid->maxcollection)
900 hid->hiddev = hiddev;
901 hiddev->hid = hid;
905 hid_err(hid, "Not able to get a minor for this device\n");
906 hid->hiddev = NULL;
915 hiddev->initialized = hid->quirks & HID_QUIRK_NO_INIT_REPORTS;
923 * This is where hid.c calls us to disconnect a hiddev device from the
924 * corresponding hid device (usually because the usb device has disconnected)
927 void hiddev_disconnect(struct hid_device *hid)
929 struct hiddev *hiddev = hid->hiddev;
930 struct usbhid_device *usbhid = hid->driver_data;
938 hid_hw_close(hiddev->hid);