diff --git a/drivers/modem/CMakeLists.txt b/drivers/modem/CMakeLists.txt index a83890fc216..730aad5f0be 100644 --- a/drivers/modem/CMakeLists.txt +++ b/drivers/modem/CMakeLists.txt @@ -10,7 +10,7 @@ zephyr_library_sources_ifdef(CONFIG_MODEM_CONTEXT modem_pin.c ) -zephyr_library_sources_ifdef(CONFIG_MODEM_IFACE_UART modem_iface_uart.c) +zephyr_library_sources_ifdef(CONFIG_MODEM_IFACE_UART_INTERRUPT modem_iface_uart_interrupt.c) zephyr_library_sources_ifdef(CONFIG_MODEM_CMD_HANDLER modem_cmd_handler.c) zephyr_library_sources_ifdef(CONFIG_MODEM_SOCKET modem_socket.c) diff --git a/drivers/modem/Kconfig b/drivers/modem/Kconfig index 5989c2204fb..453fa41f0e0 100644 --- a/drivers/modem/Kconfig +++ b/drivers/modem/Kconfig @@ -64,8 +64,6 @@ config MODEM_CONTEXT_VERBOSE_DEBUG config MODEM_IFACE_UART bool "UART-based modem interface" - depends on SERIAL_SUPPORT_INTERRUPT - select UART_INTERRUPT_DRIVEN select RING_BUFFER help To configure this layer for use, create a modem_iface_uart_data @@ -73,6 +71,21 @@ config MODEM_IFACE_UART along with the modem_iface reference from your modem_context object and the UART device name. +if MODEM_IFACE_UART + +choice MODEM_IFACE_UART_BACKEND + prompt "UART backend to use for modem interface" + default MODEM_IFACE_UART_INTERRUPT + +config MODEM_IFACE_UART_INTERRUPT + bool "UART-based modem interface using interrupt API" + depends on SERIAL_SUPPORT_INTERRUPT + select UART_INTERRUPT_DRIVEN + +endchoice + +endif # MODEM_IFACE_UART + config MODEM_CMD_HANDLER bool "Generic modem command handler" select NET_BUF diff --git a/drivers/modem/modem_iface_uart.c b/drivers/modem/modem_iface_uart_interrupt.c similarity index 100% rename from drivers/modem/modem_iface_uart.c rename to drivers/modem/modem_iface_uart_interrupt.c