diff options
-rw-r--r-- | os/hal/src/serial_usb.c | 4 | ||||
-rw-r--r-- | testhal/STM32/USB_CDC/main.c | 3 |
2 files changed, 4 insertions, 3 deletions
diff --git a/os/hal/src/serial_usb.c b/os/hal/src/serial_usb.c index b17669c04..430218edb 100644 --- a/os/hal/src/serial_usb.c +++ b/os/hal/src/serial_usb.c @@ -124,7 +124,7 @@ static void inotify(GenericQueue *qp) { if (n != USB_ENDPOINT_BUSY) {
sdup->iqueue.q_rdptr = sdup->iqueue.q_buffer;
chSemSetCounterI(&sdup->iqueue.q_sem, n);
-// chIOAddFlagsI(sdup, IO_INPUT_AVAILABLE);
+ chIOAddFlagsI(sdup, IO_INPUT_AVAILABLE);
}
}
}
@@ -143,7 +143,7 @@ static void onotify(GenericQueue *qp) { if (n != USB_ENDPOINT_BUSY) {
sdup->oqueue.q_wrptr = sdup->oqueue.q_buffer;
chSemSetCounterI(&sdup->oqueue.q_sem, SERIAL_USB_BUFFERS_SIZE);
-// chIOAddFlagsI(sdup, IO_OUTPUT_EMPTY);
+ chIOAddFlagsI(sdup, IO_OUTPUT_EMPTY);
}
}
diff --git a/testhal/STM32/USB_CDC/main.c b/testhal/STM32/USB_CDC/main.c index 0c2a3ac9d..6af497542 100644 --- a/testhal/STM32/USB_CDC/main.c +++ b/testhal/STM32/USB_CDC/main.c @@ -367,7 +367,8 @@ static msg_t Thread2(void *arg) { uint8_t buffer[0x40];
size_t n = chIQReadTimeout(&sdup->iqueue, buffer,
sizeof(buffer), TIME_IMMEDIATE);
- chOQWriteTimeout(&sdup->oqueue, buffer, n, TIME_IMMEDIATE);
+ if (n > 0)
+ chOQWriteTimeout(&sdup->oqueue, buffer, n, TIME_IMMEDIATE);
}
}
}
|