aboutsummaryrefslogtreecommitdiff
path: root/tmk_core/common/report.h
diff options
context:
space:
mode:
authorfredizzimo <fsundvik@gmail.com>2018-02-08 22:07:46 +0200
committerJack Humbert <jack.humb@gmail.com>2018-02-08 15:07:46 -0500
commit53ff8a31b61952d9675558149d927f7942071df9 (patch)
treea57b9e6f7d6494c9ef903f886a660dd43f4e5044 /tmk_core/common/report.h
parent63c16f4b632a2a82a775f51a3ad0cc690cca1fc9 (diff)
downloadqmk_firmware-53ff8a31b61952d9675558149d927f7942071df9.tar.gz
qmk_firmware-53ff8a31b61952d9675558149d927f7942071df9.zip
Merge ChibiOS and LUFA descriptor support (#2362)
* Move lufa descriptor to protocol/usb_descriptor * Try to compile usb_descriptor on ChibiOS * Add lufa_utils for ChibiOS Lufa USB descriptors for ChibiOS * More lufa_util compatibility fixes * First compiling version of shared USB descriptor * Send the usb descriptors * Fix the CONSOLE output on ChibiOS * Add errors for unsupported interfaces * Enable support for vitual serial port USB descriptors * Implement virtual serial port for ChibiOS * Cleanup the lufa_utils Use the default lufa header files * Add raw hid support for ChibiOS This is completely untested * Enable midi compilation on ChibiOS * Move midi functionality out of lufa.c * Don't register sysex callback when not needed * ChibiOS compilation fixes * Update ChibiOS submodule * Fix the Midi USB descriptor It didn't work properly when both Midi and Virtual serial port was enabled. * Add MIDI support for ChibiOS * Fix USB descriptor strings on ChibiOS * Use serial usb driver for raw hid * Generalize the ChibiOS stream like drivers This makes the initialization much more simple and eliminates a lot of the code duplication. * Convert console output to chibios stream driver * Fixes for ChibiOS update * Update the ChibiOS contrib submodule To include the usb data toggle synchronization fixes * Fix duplicate reset enumeration on ChibiOS * Add missing include * Add number of endpoints check for ChibiOS * Enable serial USB driver on all keyboards * Add missing includes when API is enabled withot midi * Add another missing inlcude
Diffstat (limited to 'tmk_core/common/report.h')
-rw-r--r--tmk_core/common/report.h30
1 files changed, 14 insertions, 16 deletions
diff --git a/tmk_core/common/report.h b/tmk_core/common/report.h
index a0811f9a3..6c27eb9dc 100644
--- a/tmk_core/common/report.h
+++ b/tmk_core/common/report.h
@@ -73,22 +73,20 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
73 73
74 74
75/* key report size(NKRO or boot mode) */ 75/* key report size(NKRO or boot mode) */
76#if defined(PROTOCOL_PJRC) && defined(NKRO_ENABLE) 76#if defined(NKRO_ENABLE)
77# include "usb.h" 77 #if defined(PROTOCOL_PJRC)
78# define KEYBOARD_REPORT_SIZE KBD2_SIZE 78 #include "usb.h"
79# define KEYBOARD_REPORT_KEYS (KBD2_SIZE - 2) 79 #define KEYBOARD_REPORT_SIZE KBD2_SIZE
80# define KEYBOARD_REPORT_BITS (KBD2_SIZE - 1) 80 #define KEYBOARD_REPORT_KEYS (KBD2_SIZE - 2)
81 81 #define KEYBOARD_REPORT_BITS (KBD2_SIZE - 1)
82#elif defined(PROTOCOL_LUFA) && defined(NKRO_ENABLE) 82 #elif defined(PROTOCOL_LUFA) || defined(PROTOCOL_CHIBIOS)
83# include "protocol/lufa/descriptor.h" 83 #include "protocol/usb_descriptor.h"
84# define KEYBOARD_REPORT_SIZE NKRO_EPSIZE 84 #define KEYBOARD_REPORT_SIZE NKRO_EPSIZE
85# define KEYBOARD_REPORT_KEYS (NKRO_EPSIZE - 2) 85 #define KEYBOARD_REPORT_KEYS (NKRO_EPSIZE - 2)
86# define KEYBOARD_REPORT_BITS (NKRO_EPSIZE - 1) 86 #define KEYBOARD_REPORT_BITS (NKRO_EPSIZE - 1)
87#elif defined(PROTOCOL_CHIBIOS) && defined(NKRO_ENABLE) 87 #else
88# include "protocol/chibios/usb_main.h" 88 #error "NKRO not supported with this protocol"
89# define KEYBOARD_REPORT_SIZE NKRO_EPSIZE 89#endif
90# define KEYBOARD_REPORT_KEYS (NKRO_EPSIZE - 2)
91# define KEYBOARD_REPORT_BITS (NKRO_EPSIZE - 1)
92 90
93#else 91#else
94# define KEYBOARD_REPORT_SIZE 8 92# define KEYBOARD_REPORT_SIZE 8