From 910c204a59bab3447671f4d34534f6b15126ea81 Mon Sep 17 00:00:00 2001 From: tmk Date: Thu, 4 Jan 2018 16:49:24 +0900 Subject: [PATCH] core: lufa: Fix checking num of endpoints for 32u2(again) --- tmk_core/protocol/lufa/descriptor.h | 6 ++++-- tmk_core/protocol/lufa/lufa.c | 4 ++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/tmk_core/protocol/lufa/descriptor.h b/tmk_core/protocol/lufa/descriptor.h index 4af872b7..63491117 100644 --- a/tmk_core/protocol/lufa/descriptor.h +++ b/tmk_core/protocol/lufa/descriptor.h @@ -138,17 +138,19 @@ typedef struct #ifdef CONSOLE_ENABLE # define CONSOLE_IN_EPNUM (EXTRAKEY_IN_EPNUM + 1) # define CONSOLE_OUT_EPNUM (EXTRAKEY_IN_EPNUM + 1) -//# define CONSOLE_OUT_EPNUM (EXTRAKEY_IN_EPNUM + 2) #else # define CONSOLE_OUT_EPNUM EXTRAKEY_IN_EPNUM #endif #ifdef NKRO_ENABLE # define NKRO_IN_EPNUM (CONSOLE_OUT_EPNUM + 1) +#else +# define NKRO_IN_EPNUM CONSOLE_OUT_EPNUM #endif +/* Check number of endpoints. ATmega32u2 has only four except for control endpoint. */ #if defined(__AVR_ATmega32U2__) && NKRO_IN_EPNUM > 4 -# error "Endpoints are not available enough to support all functions. Remove some in Makefile.(MOUSEKEY, EXTRAKEY, CONSOLE, NKRO)" +# error "Endpoints are not available enough to support all functions. Disable some of build options in Makefile.(MOUSEKEY, EXTRAKEY, CONSOLE, NKRO)" #endif diff --git a/tmk_core/protocol/lufa/lufa.c b/tmk_core/protocol/lufa/lufa.c index 076c8c8d..1fd6eb34 100644 --- a/tmk_core/protocol/lufa/lufa.c +++ b/tmk_core/protocol/lufa/lufa.c @@ -482,6 +482,7 @@ static void send_mouse(report_mouse_t *report) static void send_system(uint16_t data) { +#ifdef EXTRAKEY_ENABLE uint8_t timeout = 255; if (USB_DeviceState != DEVICE_STATE_Configured) @@ -499,10 +500,12 @@ static void send_system(uint16_t data) Endpoint_Write_Stream_LE(&r, sizeof(report_extra_t), NULL); Endpoint_ClearIN(); +#endif } static void send_consumer(uint16_t data) { +#ifdef EXTRAKEY_ENABLE uint8_t timeout = 255; if (USB_DeviceState != DEVICE_STATE_Configured) @@ -520,6 +523,7 @@ static void send_consumer(uint16_t data) Endpoint_Write_Stream_LE(&r, sizeof(report_extra_t), NULL); Endpoint_ClearIN(); +#endif } -- 2.46.2