1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-12-25 06:23:53 +01:00

USBUS CDC ACM STDIO: flush stdio buffer upon write

This commit is contained in:
Antonio Galea 2019-10-09 11:20:52 +02:00
parent 9bc600a2e5
commit b0b2ba61c1

View File

@ -52,10 +52,15 @@ ssize_t stdio_read(void* buffer, size_t len)
ssize_t stdio_write(const void* buffer, size_t len)
{
usbus_cdc_acm_submit(&cdcacm, buffer, len);
usbus_cdc_acm_flush(&cdcacm);
/* Use tsrb and flush */
return len;
const char *start = buffer;
do {
size_t n = usbus_cdc_acm_submit(&cdcacm, buffer, len);
usbus_cdc_acm_flush(&cdcacm);
/* Use tsrb and flush */
buffer = (char *)buffer + n;
len -= n;
} while (len);
return start - (char *)buffer;
}
static void _cdc_acm_rx_pipe(usbus_cdcacm_device_t *cdcacm,