zephyr/tests/drivers/uart/uart_mix_fifo_poll
Gerard Marull-Paretas e8b79e5b34 tests: drivers: uart: initialize devices at compile time
Initialize devices at compile time. Also fix some ready check problems
(e.g. in async test readiness failure just resulted in a printk, but
test continued...).

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-08-19 11:51:26 +02:00
..
boards
src tests: drivers: uart: initialize devices at compile time 2022-08-19 11:51:26 +02:00
CMakeLists.txt
README.txt
prj.conf
testcase.yaml

README.txt

The purpose of this test is to validate that uart_poll_out call is resilient to
being interrupted by another uart API call. That includes uart_poll_out called
from higher priority context, uart_fifo_fill called from UART interrupt context
and uart_tx called from higher priority context. Preemptions shall not lead to
any bytes being dropped.

This test is establishing 3 context from which uart_poll_out is called:
- main thread
- higher priority thread
- k_timer timeout context

From each context stream of data is being sent. Bytes in streams are encoded as
following: 4 MSB bits contains stream ID, 4 LSB bits are incremented.

Test requires that two pairs of pins are shortened: TX with RX and CTS with RTS.
UART receives loopback data and validates if for each stream (identified by ID)
data is consistent.