zephyr/drivers/modem
Jordan Yates 95d8deb572 modem: modem_iface_uart_async: added
Adds a communications backend based on the asynchronous UART API,
instead of the interrupt-driven UART API. The primary advantage of this
backend is an improved robustness to dropping bytes under high interrupt
or critical section loads.

Under all loads system efficiency is improved by:
 * Reducing the time spent writing out individual bytes.
 * Reducing the number of UART interrupts fired.
 * Waking up the RX thread much less often.

When utilising this backend over `nordic,nrf-uarte` on a nRF52840, the
baudrate of an esp-at modem could be pushed to at least 921600 without
dropping bytes, compared to a maximum of 230400 with the interrupt API.

Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
2022-05-10 10:44:04 +02:00
..
CMakeLists.txt modem: modem_iface_uart_async: added 2022-05-10 10:44:04 +02:00
Kconfig modem: modem_iface_uart_async: added 2022-05-10 10:44:04 +02:00
Kconfig.gsm
Kconfig.hl7800
Kconfig.quectel-bg9x
Kconfig.simcom-sim7080
Kconfig.ublox-sara-r4
Kconfig.wncm14a2a
gsm_ppp.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
hl7800.c modem: hl7800: fix UART shutdown 2022-05-06 20:17:23 +02:00
modem_cmd_handler.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
modem_cmd_handler.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
modem_context.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
modem_context.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
modem_iface_uart.h modem: modem_iface_uart_async: added 2022-05-10 10:44:04 +02:00
modem_iface_uart_async.c modem: modem_iface_uart_async: added 2022-05-10 10:44:04 +02:00
modem_iface_uart_interrupt.c modem: choice symbol for UART backend 2022-05-10 10:44:04 +02:00
modem_pin.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
modem_receiver.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
modem_receiver.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
modem_shell.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
modem_socket.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
modem_socket.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
quectel-bg9x.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
quectel-bg9x.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
simcom-sim7080.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
simcom-sim7080.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ublox-sara-r4.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
wncm14a2a.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00