Fix NKRO and Mouse Emulation on arm_atsam (#23945)
This commit is contained in:
parent
45397a44e3
commit
40f2575b56
1 changed files with 17 additions and 1 deletions
|
@ -88,7 +88,13 @@ void send_nkro(report_nkro_t *report) {
|
|||
__disable_irq();
|
||||
__DMB();
|
||||
|
||||
memcpy(udi_hid_nkro_report, report, UDI_HID_NKRO_REPORT_SIZE);
|
||||
/*
|
||||
Skipping ahead `sizeof(report->report_id)` bytes
|
||||
since `report_id` is not used by this driver
|
||||
*/
|
||||
void *report_no_report_id = (void *)((char *)report + sizeof(report->report_id));
|
||||
|
||||
memcpy(udi_hid_nkro_report, report_no_report_id, UDI_HID_NKRO_REPORT_SIZE);
|
||||
udi_hid_nkro_b_report_valid = 1;
|
||||
udi_hid_nkro_send_report();
|
||||
|
||||
|
@ -105,7 +111,17 @@ void send_mouse(report_mouse_t *report) {
|
|||
__disable_irq();
|
||||
__DMB();
|
||||
|
||||
# ifdef MOUSE_SHARED_EP
|
||||
/*
|
||||
Skipping ahead `sizeof(report->report_id)` bytes
|
||||
since `report_id` is not used by this driver
|
||||
*/
|
||||
void *report_no_report_id = (void *)((char *)report + sizeof(report->report_id));
|
||||
|
||||
memcpy(udi_hid_mou_report, report_no_report_id, UDI_HID_MOU_REPORT_SIZE);
|
||||
# else
|
||||
memcpy(udi_hid_mou_report, report, UDI_HID_MOU_REPORT_SIZE);
|
||||
# endif
|
||||
udi_hid_mou_b_report_valid = 1;
|
||||
udi_hid_mou_send_report();
|
||||
|
||||
|
|
Loading…
Reference in a new issue