diff --git a/tmk_core/protocol/vusb/usbconfig.h b/tmk_core/protocol/vusb/usbconfig.h index f15616351..f118dc8ed 100644 --- a/tmk_core/protocol/vusb/usbconfig.h +++ b/tmk_core/protocol/vusb/usbconfig.h @@ -41,15 +41,6 @@ section at the end of this file). * interrupt, the USB interrupt will also be triggered at Start-Of-Frame * markers every millisecond.] */ -#define USB_CFG_CLOCK_KHZ (F_CPU/1000) -/* Clock rate of the AVR in kHz. Legal values are 12000, 12800, 15000, 16000, - * 16500, 18000 and 20000. The 12.8 MHz and 16.5 MHz versions of the code - * require no crystal, they tolerate +/- 1% deviation from the nominal - * frequency. All other rates require a precision of 2000 ppm and thus a - * crystal! - * Since F_CPU should be defined to your actual clock rate anyway, you should - * not need to modify this setting. - */ #define USB_CFG_CHECK_CRC 0 /* Define this to 1 if you want that the driver checks integrity of incoming * data packets (CRC checks). CRC checks cost quite a bit of code size and are @@ -227,19 +218,6 @@ section at the end of this file). * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * the implications! */ -#define USB_CFG_DEVICE_CLASS 0 -#define USB_CFG_DEVICE_SUBCLASS 0 -/* See USB specification if you want to conform to an existing device class. - * Class 0xff is "vendor specific". - */ -#define USB_CFG_INTERFACE_CLASS 3 /* HID */ -#define USB_CFG_INTERFACE_SUBCLASS 1 /* Boot */ -#define USB_CFG_INTERFACE_PROTOCOL 1 /* Keyboard */ -/* See USB specification if you want to conform to an existing device class or - * protocol. The following classes must be set at interface level: - * HID class is 3, no subclass and protocol required (but may be useful!) - * CDC class is 2, use subclass 2 and protocol 1 for ACM - */ #define USB_CFG_HID_REPORT_DESCRIPTOR_LENGTH 0 /* Define this to the length of the HID report descriptor, if you implement * an HID device. Otherwise don't define it or define it to 0. diff --git a/tmk_core/protocol/vusb/vusb.c b/tmk_core/protocol/vusb/vusb.c index 470d29ba3..c4baf5ab0 100644 --- a/tmk_core/protocol/vusb/vusb.c +++ b/tmk_core/protocol/vusb/vusb.c @@ -28,7 +28,7 @@ along with this program. If not, see . #include "vusb.h" #include -#if defined(RAW_ENABLE) +#ifdef RAW_ENABLE # include "raw_hid.h" #endif @@ -158,7 +158,7 @@ typedef struct { } __attribute__((packed)) vusb_mouse_report_t; static void send_mouse(report_mouse_t *report) { -#if defined(MOUSE_ENABLE) +#ifdef MOUSE_ENABLE vusb_mouse_report_t r = {.report_id = REPORT_ID_MOUSE, .report = *report}; if (usbInterruptIsReady3()) { usbSetInterrupt3((void *)&r, sizeof(vusb_mouse_report_t)); @@ -410,7 +410,7 @@ const PROGMEM uchar mouse_extra_hid_report[] = { }; #endif -#if defined(RAW_ENABLE) +#ifdef RAW_ENABLE const PROGMEM uchar raw_hid_report[] = { 0x06, 0x60, 0xFF, // Usage Page (Vendor Defined) 0x09, 0x61, // Usage (Vendor Defined) @@ -479,7 +479,6 @@ const PROGMEM usbStringDescriptor_t usbStringDescriptorSerial = { .bString = LSTR(SERIAL_NUMBER) }; -#if USB_CFG_DESCR_PROPS_DEVICE /* * Device descriptor */ @@ -489,8 +488,8 @@ const PROGMEM usbDeviceDescriptor_t usbDeviceDescriptor = { .bDescriptorType = USBDESCR_DEVICE }, .bcdUSB = 0x0110, - .bDeviceClass = USB_CFG_DEVICE_CLASS, - .bDeviceSubClass = USB_CFG_DEVICE_SUBCLASS, + .bDeviceClass = 0x00, + .bDeviceSubClass = 0x00, .bDeviceProtocol = 0x00, .bMaxPacketSize0 = 8, .idVendor = VENDOR_ID, @@ -501,9 +500,7 @@ const PROGMEM usbDeviceDescriptor_t usbDeviceDescriptor = { .iSerialNumber = 0x03, .bNumConfigurations = 1 }; -#endif -#if USB_CFG_DESCR_PROPS_CONFIGURATION /* * Configuration descriptors */ @@ -535,10 +532,10 @@ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = { }, .bInterfaceNumber = 0, .bAlternateSetting = 0x00, - .bNumEndpoints = USB_CFG_HAVE_INTRIN_ENDPOINT, - .bInterfaceClass = USB_CFG_INTERFACE_CLASS, - .bInterfaceSubClass = USB_CFG_INTERFACE_SUBCLASS, - .bInterfaceProtocol = USB_CFG_INTERFACE_PROTOCOL, + .bNumEndpoints = 1, + .bInterfaceClass = 0x03, + .bInterfaceSubClass = 0x01, + .bInterfaceProtocol = 0x01, .iInterface = 0x00 }, .keyboardHID = { @@ -552,7 +549,6 @@ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = { .bDescriptorType = USBDESCR_HID_REPORT, .wDescriptorLength = sizeof(keyboard_hid_report) }, -# ifdef USB_CFG_HAVE_INTRIN_ENDPOINT .keyboardINEndpoint = { .header = { .bLength = sizeof(usbEndpointDescriptor_t), @@ -563,7 +559,6 @@ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = { .wMaxPacketSize = 8, .bInterval = USB_POLLING_INTERVAL_MS }, -# endif # if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE) /* @@ -576,7 +571,7 @@ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = { }, .bInterfaceNumber = 1, .bAlternateSetting = 0x00, - .bNumEndpoints = USB_CFG_HAVE_INTRIN_ENDPOINT3, + .bNumEndpoints = 1, .bInterfaceClass = 0x03, .bInterfaceSubClass = 0x00, .bInterfaceProtocol = 0x00, @@ -593,7 +588,6 @@ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = { .bDescriptorType = USBDESCR_HID_REPORT, .wDescriptorLength = sizeof(mouse_extra_hid_report) }, -# if USB_CFG_HAVE_INTRIN_ENDPOINT3 .mouseExtraINEndpoint = { .header = { .bLength = sizeof(usbEndpointDescriptor_t), @@ -604,7 +598,6 @@ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = { .wMaxPacketSize = 8, .bInterval = USB_POLLING_INTERVAL_MS } -# endif # elif defined(RAW_ENABLE) .rawInterface = { .header = { @@ -630,7 +623,6 @@ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = { .bDescriptorType = USBDESCR_HID_REPORT, .wDescriptorLength = sizeof(raw_hid_report) }, -# if USB_CFG_HAVE_INTRIN_ENDPOINT3 .rawINEndpoint = { .header = { .bLength = sizeof(usbEndpointDescriptor_t), @@ -651,10 +643,8 @@ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = { .wMaxPacketSize = RAW_EPSIZE, .bInterval = USB_POLLING_INTERVAL_MS } -# endif # endif }; -#endif // clang-format on @@ -670,18 +660,14 @@ USB_PUBLIC usbMsgLen_t usbFunctionDescriptor(struct usbRequest *rq) { debug_hex16(rq->wLength.word); debug("\n"); */ switch (rq->wValue.bytes[1]) { -#if USB_CFG_DESCR_PROPS_DEVICE case USBDESCR_DEVICE: usbMsgPtr = (unsigned char *)&usbDeviceDescriptor; len = sizeof(usbDeviceDescriptor_t); break; -#endif -#if USB_CFG_DESCR_PROPS_CONFIGURATION case USBDESCR_CONFIG: usbMsgPtr = (unsigned char *)&usbConfigurationDescriptor; len = sizeof(usbConfigurationDescriptor_t); break; -#endif case USBDESCR_STRING: switch (rq->wValue.bytes[0]) { case 0: diff --git a/tmk_core/protocol/vusb/vusb.h b/tmk_core/protocol/vusb/vusb.h index 6d491266d..bb2a1726e 100644 --- a/tmk_core/protocol/vusb/vusb.h +++ b/tmk_core/protocol/vusb/vusb.h @@ -87,23 +87,17 @@ typedef struct usbConfigurationDescriptor { usbConfigurationDescriptorHeader_t header; usbInterfaceDescriptor_t keyboardInterface; usbHIDDescriptor_t keyboardHID; -#ifdef USB_CFG_HAVE_INTRIN_ENDPOINT usbEndpointDescriptor_t keyboardINEndpoint; -#endif #if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE) usbInterfaceDescriptor_t mouseExtraInterface; usbHIDDescriptor_t mouseExtraHID; -# ifdef USB_CFG_HAVE_INTRIN_ENDPOINT3 usbEndpointDescriptor_t mouseExtraINEndpoint; -# endif #elif defined(RAW_ENABLE) usbInterfaceDescriptor_t rawInterface; usbHIDDescriptor_t rawHID; -# ifdef USB_CFG_HAVE_INTRIN_ENDPOINT3 usbEndpointDescriptor_t rawINEndpoint; usbEndpointDescriptor_t rawOUTEndpoint; -# endif #endif } __attribute__((packed)) usbConfigurationDescriptor_t; @@ -112,6 +106,6 @@ typedef struct usbConfigurationDescriptor { host_driver_t *vusb_driver(void); void vusb_transfer_keyboard(void); -#if defined(RAW_ENABLE) +#ifdef RAW_ENABLE void raw_hid_task(void); #endif