Lines Matching refs:rdesc
362 static __u8 *kye_consumer_control_fixup(struct hid_device *hdev, __u8 *rdesc, in kye_consumer_control_fixup() argument
372 rdesc[offset] == 0x05 && rdesc[offset + 1] == 0x0c && in kye_consumer_control_fixup()
374 rdesc[offset + 2] == 0x09 && rdesc[offset + 3] == 0x01 && in kye_consumer_control_fixup()
376 rdesc[offset + 10] == 0x2a && rdesc[offset + 12] > 0x2f) { in kye_consumer_control_fixup()
378 rdesc[offset + 12] = 0x2f; in kye_consumer_control_fixup()
380 return rdesc; in kye_consumer_control_fixup()
402 static __u8 *kye_tablet_fixup(struct hid_device *hdev, __u8 *rdesc, unsigned int *rsize) in kye_tablet_fixup() argument
410 return rdesc; in kye_tablet_fixup()
420 return rdesc; in kye_tablet_fixup()
424 memcpy(rdesc, kye_tablet_rdesc, newsize); in kye_tablet_fixup()
426 put_unaligned_le32(info->x_logical_maximum, rdesc + 66); in kye_tablet_fixup()
427 put_unaligned_le32(info->x_physical_maximum, rdesc + 72); in kye_tablet_fixup()
428 rdesc[77] = info->unit; in kye_tablet_fixup()
429 rdesc[79] = info->unit_exponent; in kye_tablet_fixup()
430 put_unaligned_le32(info->y_logical_maximum, rdesc + 87); in kye_tablet_fixup()
431 put_unaligned_le32(info->y_physical_maximum, rdesc + 92); in kye_tablet_fixup()
432 put_unaligned_le32(info->pressure_logical_maximum, rdesc + 104); in kye_tablet_fixup()
435 put_unaligned_le32(info->x_logical_maximum, rdesc + 156); in kye_tablet_fixup()
436 put_unaligned_le32(info->x_physical_maximum, rdesc + 162); in kye_tablet_fixup()
437 rdesc[167] = info->unit; in kye_tablet_fixup()
438 rdesc[169] = info->unit_exponent; in kye_tablet_fixup()
439 put_unaligned_le32(info->y_logical_maximum, rdesc + 177); in kye_tablet_fixup()
440 put_unaligned_le32(info->y_physical_maximum, rdesc + 182); in kye_tablet_fixup()
447 memcpy(rdesc + newsize, info->control_rdesc, info->control_rsize); in kye_tablet_fixup()
453 return rdesc; in kye_tablet_fixup()
456 static __u8 *kye_report_fixup(struct hid_device *hdev, __u8 *rdesc, in kye_report_fixup() argument
469 rdesc[61] == 0x05 && rdesc[62] == 0x08 && in kye_report_fixup()
470 rdesc[63] == 0x19 && rdesc[64] == 0x08 && in kye_report_fixup()
471 rdesc[65] == 0x29 && rdesc[66] == 0x0f && in kye_report_fixup()
472 rdesc[71] == 0x75 && rdesc[72] == 0x08 && in kye_report_fixup()
473 rdesc[73] == 0x95 && rdesc[74] == 0x01) { in kye_report_fixup()
477 rdesc[62] = 0x09; in kye_report_fixup()
478 rdesc[64] = 0x04; in kye_report_fixup()
479 rdesc[66] = 0x07; in kye_report_fixup()
480 rdesc[72] = 0x01; in kye_report_fixup()
481 rdesc[74] = 0x08; in kye_report_fixup()
485 rdesc = kye_consumer_control_fixup(hdev, rdesc, rsize, 104, in kye_report_fixup()
489 rdesc = kye_consumer_control_fixup(hdev, rdesc, rsize, 104, in kye_report_fixup()
493 rdesc = kye_consumer_control_fixup(hdev, rdesc, rsize, 83, in kye_report_fixup()
509 rdesc = kye_tablet_fixup(hdev, rdesc, rsize); in kye_report_fixup()
512 return rdesc; in kye_report_fixup()