From 5341109845d4216a8776e1f3ed096c2df54cffd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A1szl=C3=B3=20Monda?= Date: Mon, 4 Dec 2017 19:41:51 +0100 Subject: [PATCH] Merge the substructures of UsbMediaKeyboardClass into a single structure. --- .../usb_interface_basic_keyboard.c | 3 +- .../usb_interface_media_keyboard.c | 60 ++++++++----------- 2 files changed, 26 insertions(+), 37 deletions(-) diff --git a/right/src/usb_interfaces/usb_interface_basic_keyboard.c b/right/src/usb_interfaces/usb_interface_basic_keyboard.c index 26ed4ee..17bc9cf 100644 --- a/right/src/usb_interfaces/usb_interface_basic_keyboard.c +++ b/right/src/usb_interfaces/usb_interface_basic_keyboard.c @@ -15,7 +15,8 @@ usb_device_class_struct_t UsbBasicKeyboardClass = { .alternateSetting = USB_INTERFACE_ALTERNATE_SETTING_NONE, .classSpecific = NULL, .endpointList = { - USB_BASIC_KEYBOARD_ENDPOINT_COUNT, (usb_device_endpoint_struct_t[USB_BASIC_KEYBOARD_ENDPOINT_COUNT]) {{ + USB_BASIC_KEYBOARD_ENDPOINT_COUNT, + (usb_device_endpoint_struct_t[USB_BASIC_KEYBOARD_ENDPOINT_COUNT]) {{ .endpointAddress = USB_BASIC_KEYBOARD_ENDPOINT_INDEX | (USB_IN << USB_DESCRIPTOR_ENDPOINT_ADDRESS_DIRECTION_SHIFT), .transferType = USB_ENDPOINT_INTERRUPT, .maxPacketSize = USB_BASIC_KEYBOARD_INTERRUPT_IN_PACKET_SIZE, diff --git a/right/src/usb_interfaces/usb_interface_media_keyboard.c b/right/src/usb_interfaces/usb_interface_media_keyboard.c index e3b7ef2..7d6429a 100644 --- a/right/src/usb_interfaces/usb_interface_media_keyboard.c +++ b/right/src/usb_interfaces/usb_interface_media_keyboard.c @@ -1,42 +1,30 @@ -#include "key_action.h" -#include "fsl_port.h" -#include "usb_api.h" #include "usb_composite_device.h" -#include "peripherals/test_led.h" -#include "fsl_i2c.h" -#include "i2c.h" -#include "i2c_addresses.h" - -static usb_device_endpoint_struct_t UsbMediaKeyboardEndpoints[USB_MEDIA_KEYBOARD_ENDPOINT_COUNT] = {{ - USB_MEDIA_KEYBOARD_ENDPOINT_INDEX | (USB_IN << USB_DESCRIPTOR_ENDPOINT_ADDRESS_DIRECTION_SHIFT), - USB_ENDPOINT_INTERRUPT, - USB_MEDIA_KEYBOARD_INTERRUPT_IN_PACKET_SIZE, -}}; - -static usb_device_interface_struct_t UsbMediaKeyboardInterface[] = {{ - USB_INTERFACE_ALTERNATE_SETTING_NONE, - {USB_MEDIA_KEYBOARD_ENDPOINT_COUNT, UsbMediaKeyboardEndpoints}, - NULL, -}}; - -static usb_device_interfaces_struct_t UsbMediaKeyboardInterfaces[USB_MEDIA_KEYBOARD_INTERFACE_COUNT] = {{ - USB_CLASS_HID, - USB_HID_SUBCLASS_BOOT, - USB_HID_PROTOCOL_KEYBOARD, - USB_MEDIA_KEYBOARD_INTERFACE_INDEX, - UsbMediaKeyboardInterface, - sizeof(UsbMediaKeyboardInterface) / sizeof(usb_device_interfaces_struct_t), -}}; - -static usb_device_interface_list_t UsbMediaKeyboardInterfaceList[USB_DEVICE_CONFIGURATION_COUNT] = {{ - USB_MEDIA_KEYBOARD_INTERFACE_COUNT, - UsbMediaKeyboardInterfaces, -}}; usb_device_class_struct_t UsbMediaKeyboardClass = { - UsbMediaKeyboardInterfaceList, - kUSB_DeviceClassTypeHid, - USB_DEVICE_CONFIGURATION_COUNT, + .type = kUSB_DeviceClassTypeHid, + .configurations = USB_DEVICE_CONFIGURATION_COUNT, + .interfaceList = (usb_device_interface_list_t[USB_DEVICE_CONFIGURATION_COUNT]) {{ + .count = USB_MEDIA_KEYBOARD_INTERFACE_COUNT, + .interfaces = (usb_device_interfaces_struct_t[USB_MEDIA_KEYBOARD_INTERFACE_COUNT]) {{ + .classCode = USB_CLASS_HID, + .subclassCode = USB_HID_SUBCLASS_BOOT, + .protocolCode = USB_HID_PROTOCOL_KEYBOARD, + .interfaceNumber = USB_MEDIA_KEYBOARD_INTERFACE_INDEX, + .count = 1, + .interface = (usb_device_interface_struct_t[]) {{ + .alternateSetting = USB_INTERFACE_ALTERNATE_SETTING_NONE, + .classSpecific = NULL, + .endpointList = { + USB_MEDIA_KEYBOARD_ENDPOINT_COUNT, + (usb_device_endpoint_struct_t[USB_MEDIA_KEYBOARD_ENDPOINT_COUNT]) {{ + .endpointAddress = USB_MEDIA_KEYBOARD_ENDPOINT_INDEX | (USB_IN << USB_DESCRIPTOR_ENDPOINT_ADDRESS_DIRECTION_SHIFT), + .transferType = USB_ENDPOINT_INTERRUPT, + .maxPacketSize = USB_MEDIA_KEYBOARD_INTERRUPT_IN_PACKET_SIZE, + }} + } + }} + }} + }} }; uint32_t UsbMediaKeyboardActionCounter;