zephyr/drivers/serial
Krzysztof Chruscinski 520ba93f5d drivers: serial: nrfx_uarte: Fix race condition in async isr
RXTO event is generated always after ENDRX and driver relies
on assumption that ENDRX event is handled before RXTO. However,
when interrupt is preempted after ENDRX check returned false
and RXTO event is already set handling order would be swapped.

Added addtional check to handle RXTO event only if ENDRX is not
set. If ENDRX is set, it means that it is not yet handled. RXTO
event is not cleared and interrupt will be triggered again and
ENDRX event will be handled first.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2021-06-29 11:31:31 -04:00
..
CMakeLists.txt drivers: serial: add Renesas R-Car driver 2021-05-07 13:08:48 +02:00
Kconfig serial: introduce CONFIG_UART_USE_RUNTIME_CONFIGURE 2021-06-07 12:09:01 +02:00
Kconfig.altera_jtag
Kconfig.apbuart
Kconfig.cc13xx_cc26xx
Kconfig.cc32xx
Kconfig.cmsdk_apb
Kconfig.esp32
Kconfig.gecko
Kconfig.imx
Kconfig.leuart_gecko
Kconfig.litex
Kconfig.lpc11u6x
Kconfig.mcux
Kconfig.mcux_flexcomm
Kconfig.mcux_iuart
Kconfig.mcux_lpsci
Kconfig.mcux_lpuart
Kconfig.miv drivers: serial: uart_miv: Fix build errors 2021-05-10 13:15:50 -05:00
Kconfig.msp432p4xx
Kconfig.native_posix drivers: serial: native_posix: Convert 2nd UART to be devicetree based 2021-02-18 09:06:21 +01:00
Kconfig.npcx
Kconfig.nrfx drivers: serial: nrf_uarte: Conditionally call PPI driver 2021-05-07 12:11:32 +02:00
Kconfig.ns16550 drivers: uart_ns16550: Remove CMake-based templating 2021-04-22 15:30:24 -05:00
Kconfig.nuvoton
Kconfig.pl011 drivers: pl011: add SBSA mode 2021-01-24 13:59:55 -05:00
Kconfig.psoc6 drivers: serial: psoc6: Add interrupts support 2021-04-27 09:27:45 -05:00
Kconfig.rcar drivers: serial: add Renesas R-Car driver 2021-05-07 13:08:48 +02:00
Kconfig.rtt tracing: fix conflict with RTT locking 2021-05-25 07:36:38 -05:00
Kconfig.rv32m1_lpuart
Kconfig.sam0
Kconfig.sifive drivers: serial: sifive: use interrupt-cell to set IRQ priority 2021-01-16 17:22:08 -05:00
Kconfig.stellaris
Kconfig.stm32 drivers: serial: implement stm32 uart async api 2021-01-18 19:07:29 +01:00
Kconfig.uart_sam
Kconfig.usart_sam
Kconfig.xlnx
Kconfig.xmc4xxx
leuart_gecko.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_altera_jtag_hal.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_apbuart.c serial: introduce CONFIG_UART_USE_RUNTIME_CONFIGURE 2021-06-07 12:09:01 +02:00
uart_cc13xx_cc26xx.c serial: introduce CONFIG_UART_USE_RUNTIME_CONFIGURE 2021-06-07 12:09:01 +02:00
uart_cc32xx.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_cmsdk_apb.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_esp32.c serial: introduce CONFIG_UART_USE_RUNTIME_CONFIGURE 2021-06-07 12:09:01 +02:00
uart_gecko.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_handlers.c
uart_imx.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_liteuart.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_lpc11u6x.c serial: introduce CONFIG_UART_USE_RUNTIME_CONFIGURE 2021-06-07 12:09:01 +02:00
uart_lpc11u6x.h
uart_mcux_flexcomm.c driver/uart: add enum parity element on devicetree bindings 2021-06-11 08:53:10 -05:00
uart_mcux_iuart.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_mcux_lpsci.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_mcux_lpuart.c serial: introduce CONFIG_UART_USE_RUNTIME_CONFIGURE 2021-06-07 12:09:01 +02:00
uart_mcux.c serial: introduce CONFIG_UART_USE_RUNTIME_CONFIGURE 2021-06-07 12:09:01 +02:00
uart_miv.c drivers: serial: uart_miv: Fix build errors 2021-05-10 13:15:50 -05:00
uart_msp432p4xx.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_native_posix.c drivers: Fix missing auto_attach_cmd 2021-06-09 16:18:17 +02:00
uart_npcx.c driver: uart: npcx: Fix building of kernel.timer.tickless 2021-06-28 20:11:25 -04:00
uart_nrfx_uart.c drivers: serial: nrfx: Add pullups to RXD and CTS 2021-06-18 23:49:36 +02:00
uart_nrfx_uarte.c drivers: serial: nrfx_uarte: Fix race condition in async isr 2021-06-29 11:31:31 -04:00
uart_ns16550.c serial: introduce CONFIG_UART_USE_RUNTIME_CONFIGURE 2021-06-07 12:09:01 +02:00
uart_ns16550.h
uart_nuvoton.c serial: introduce CONFIG_UART_USE_RUNTIME_CONFIGURE 2021-06-07 12:09:01 +02:00
uart_pl011.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_psoc6.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_rcar.c drivers: uart: rcar: Fix typo in conf phase 2021-06-15 20:13:55 -05:00
uart_rtt.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_rv32m1_lpuart.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_sam0.c serial: introduce CONFIG_UART_USE_RUNTIME_CONFIGURE 2021-06-07 12:09:01 +02:00
uart_sam.c soc: atmel_sam: Add _INST to ATMEL_SAM_DT_PIN* macros 2021-06-14 09:50:41 -05:00
uart_sifive.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_stellaris.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_stm32.c driver/uart: add enum parity element on devicetree bindings 2021-06-11 08:53:10 -05:00
uart_stm32.h drivers: serial: uart_stm32 converted to use the new kwork API. 2021-04-14 18:21:33 +02:00
uart_xlnx_ps.c serial: introduce CONFIG_UART_USE_RUNTIME_CONFIGURE 2021-06-07 12:09:01 +02:00
uart_xlnx_uartlite.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
uart_xmc4xxx.c drivers: serial: remove usage of device_pm_control_nop 2021-04-28 12:25:39 -04:00
usart_sam.c soc: atmel_sam: Add _INST to ATMEL_SAM_DT_PIN* macros 2021-06-14 09:50:41 -05:00