|
|
@@ -102,7 +102,8 @@ static hidd_class_driver_t const hidd_class_driver[HIDD_NUMBER_OF_SUBCLASS] =
|
|
|
};
|
|
|
|
|
|
// TODO [HID] generic
|
|
|
-TUSB_CFG_ATTR_USBRAM uint8_t m_control_data[ MAX_OF(sizeof(hid_keyboard_report_t), sizeof(hid_mouse_report_t)) ];
|
|
|
+TUSB_CFG_ATTR_USBRAM
|
|
|
+static uint8_t m_control_report[ MAX_OF(sizeof(hid_keyboard_report_t), sizeof(hid_mouse_report_t)) ];
|
|
|
|
|
|
//--------------------------------------------------------------------+
|
|
|
// KEYBOARD APPLICATION API
|
|
|
@@ -228,13 +229,13 @@ tusb_error_t hidd_control_request_subtask(uint8_t coreid, tusb_control_request_t
|
|
|
// wValue = Report Type | Report ID
|
|
|
tusb_error_t error;
|
|
|
|
|
|
- dcd_pipe_control_xfer(coreid, (tusb_direction_t) p_request->bmRequestType_bit.direction, m_control_data, p_request->wLength, true);
|
|
|
+ dcd_pipe_control_xfer(coreid, (tusb_direction_t) p_request->bmRequestType_bit.direction, m_control_report, p_request->wLength, true);
|
|
|
|
|
|
osal_semaphore_wait(usbd_control_xfer_sem_hdl, OSAL_TIMEOUT_NORMAL, &error); // wait for control xfer complete
|
|
|
SUBTASK_ASSERT_STATUS(error);
|
|
|
|
|
|
p_driver->set_report_cb(coreid, (hid_request_report_type_t) u16_high_u8(p_request->wValue),
|
|
|
- m_control_data, p_request->wLength);
|
|
|
+ m_control_report, p_request->wLength);
|
|
|
}
|
|
|
else if (HID_REQUEST_CONTROL_SET_IDLE == p_request->bRequest)
|
|
|
{
|