diff options
author | Drashna Jaelre <drashna@live.com> | 2020-02-04 18:28:47 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-02-04 18:28:47 -0800 |
commit | 0010d0c45e4aba8225249e230b3d23337e8378f4 (patch) | |
tree | 1e948e820ede77f6582fec85dc9195acc0fe270f /tmk_core/protocol/chibios/usb_main.c | |
parent | 8a749a7a8e0c47488b19bb92ac5b35bc60f66dd8 (diff) |
Add Midi Endpoint task to ChibiOS main (#8071)
Diffstat (limited to 'tmk_core/protocol/chibios/usb_main.c')
-rw-r--r-- | tmk_core/protocol/chibios/usb_main.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/tmk_core/protocol/chibios/usb_main.c b/tmk_core/protocol/chibios/usb_main.c index dd701f661e..d5eeffcbe4 100644 --- a/tmk_core/protocol/chibios/usb_main.c +++ b/tmk_core/protocol/chibios/usb_main.c @@ -833,7 +833,17 @@ bool recv_midi_packet(MIDI_EventPacket_t *const event) { size_t size = chnReadTimeout(&drivers.midi_driver.driver, (uint8_t *)event, sizeof(MIDI_EventPacket_t), TIME_IMMEDIATE); return size == sizeof(MIDI_EventPacket_t); } - +void midi_ep_task(void) { + uint8_t buffer[MIDI_STREAM_EPSIZE]; + size_t size = 0; + do { + size_t size = chnReadTimeout(&drivers.midi_driver.driver, buffer, sizeof(buffer), TIME_IMMEDIATE); + if (size > 0) { + MIDI_EventPacket_t event; + recv_midi_packet(&event); + } + } while (size > 0); +} #endif #ifdef VIRTSER_ENABLE |