35 lines
1.4 KiB
C
35 lines
1.4 KiB
C
#include "usb_api.h"
|
|
#include "usb_descriptor_hid.h"
|
|
#include "usb_descriptor_mouse_report.h"
|
|
#include "usb_descriptor_generic_hid_report.h"
|
|
|
|
usb_status_t USB_DeviceGetHidDescriptor(
|
|
usb_device_handle handle, usb_device_get_hid_descriptor_struct_t *hidDescriptor)
|
|
{
|
|
return kStatus_USB_InvalidRequest;
|
|
}
|
|
|
|
usb_status_t USB_DeviceGetHidReportDescriptor(
|
|
usb_device_handle handle, usb_device_get_hid_report_descriptor_struct_t *hidReportDescriptor)
|
|
{
|
|
if (USB_MOUSE_INTERFACE_INDEX == hidReportDescriptor->interfaceNumber) {
|
|
hidReportDescriptor->buffer = UsbMouseReportDescriptor;
|
|
hidReportDescriptor->length = USB_MOUSE_REPORT_DESCRIPTOR_LENGTH;
|
|
} else if (USB_KEYBOARD_INTERFACE_INDEX == hidReportDescriptor->interfaceNumber) {
|
|
hidReportDescriptor->buffer = UsbKeyboardReportDescriptor;
|
|
hidReportDescriptor->length = USB_KEYBOARD_REPORT_DESCRIPTOR_LENGTH;
|
|
} else if (USB_GENERIC_HID_INTERFACE_INDEX == hidReportDescriptor->interfaceNumber) {
|
|
hidReportDescriptor->buffer = UsbGenericHidReportDescriptor;
|
|
hidReportDescriptor->length = USB_GENERIC_HID_REPORT_DESCRIPTOR_LENGTH;
|
|
} else {
|
|
return kStatus_USB_InvalidRequest;
|
|
}
|
|
return kStatus_USB_Success;
|
|
}
|
|
|
|
usb_status_t USB_DeviceGetHidPhysicalDescriptor(
|
|
usb_device_handle handle, usb_device_get_hid_physical_descriptor_struct_t *hidPhysicalDescriptor)
|
|
{
|
|
return kStatus_USB_InvalidRequest;
|
|
}
|