According to the UART API documentation, implementation must block when the transceiver is full. For CDC ACM UART, TX ringbuffer can be considered as transceiver buffer/FIFO. Blocking when the USB subsystem is not ready is considered highly undesirable behavior. Blocking may also be undesirable when CDC ACM UART is used as a logging backend. Change the behavior of CDC ACM poll out to: - Block if the TX ring buffer is full, hw_flow_control property is enabled, and called from a non-ISR context. - Do not block if the USB subsystem is not ready, poll out implementation is called from an ISR context, or hw_flow_control property is disabled. Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no> |
||
|---|---|---|
| .. | ||
| device | ||
| device_next | ||
| host | ||
| usb_c | ||
| CMakeLists.txt | ||