mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-08-20 01:35:23 +00:00
When PPP is muxed, using uart_poll_out resulted in each byte getting wrapped in a muxing header. This led to UART bombardment which can quickly cause some modems to hang and panic. This was observed regularly using a SIMCOM7600E modem. A perfect fix would involve rewriting ppp.c, uart_mux.c and modem_iface_uart.c to all use another UART API, but that would be more invasive by several orders of magnitude than this one, which utilizes the fact that the uart_mux implementation of uart_fifo_fill does NOT require ISR context. Since the Zephyr UART API states that the behavior of uart_fifo_fill outside of ISR context is implementation defined, this should be kosher. Signed-off-by: Benjamin Lindqvist <benjamin.lindqvist@endian.se> |
||
|---|---|---|
| .. | ||
| CMakeLists.txt | ||
| gsm_mux.c | ||
| gsm_mux.h | ||
| ipm_console_receiver.c | ||
| ipm_console_sender.c | ||
| ipm_console.c | ||
| Kconfig | ||
| Kconfig.gsm_mux | ||
| native_posix_console.c | ||
| ram_console.c | ||
| rtt_console.c | ||
| semihost_console.c | ||
| uart_console.c | ||
| uart_mcumgr.c | ||
| uart_mux_internal.h | ||
| uart_mux.c | ||
| uart_pipe.c | ||
| xtensa_sim_console.c | ||