| # Copyright (c) 2023 Bjarki Arge Andreasen |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| config MODEM_CELLULAR |
| bool "Generic cellular modem support" |
| select MODEM_MODULES |
| select MODEM_PPP |
| select MODEM_CMUX |
| select MODEM_CHAT |
| select MODEM_PIPE |
| select MODEM_PIPELINK |
| select MODEM_BACKEND_UART |
| select UART_USE_RUNTIME_CONFIGURE |
| select RING_BUFFER |
| select NET_L2_PPP_OPTION_MRU |
| select NET_L2_PPP_PAP |
| select NET_L2_PPP_MGMT |
| depends on (DT_HAS_QUECTEL_BG95_ENABLED || DT_HAS_QUECTEL_BG96_ENABLED || \ |
| DT_HAS_SIMCOM_A76XX_ENABLED || DT_HAS_SIMCOM_SIM7080_ENABLED || \ |
| DT_HAS_U_BLOX_SARA_R4_ENABLED || DT_HAS_U_BLOX_SARA_R5_ENABLED || \ |
| DT_HAS_SWIR_HL7800_ENABLED || DT_HAS_TELIT_ME910G1_ENABLED || \ |
| DT_HAS_TELIT_ME310G1_ENABLED || DT_HAS_QUECTEL_EG25_G_ENABLED || \ |
| DT_HAS_NORDIC_NRF91_SLM_ENABLED || DT_HAS_SQN_GM02S_ENABLED || \ |
| DT_HAS_U_BLOX_LARA_R6_ENABLED || DT_HAS_QUECTEL_EG800Q_ENABLED) |
| select MODEM_CMUX_DEFAULT_MTU_127 if \ |
| (DT_HAS_QUECTEL_BG95_ENABLED || DT_HAS_QUECTEL_BG96_ENABLED || \ |
| DT_HAS_QUECTEL_EG25_G_ENABLED || DT_HAS_SIMCOM_SIM7080_ENABLED || \ |
| DT_HAS_U_BLOX_SARA_R4_ENABLED || DT_HAS_U_BLOX_SARA_R5_ENABLED || \ |
| DT_HAS_SWIR_HL7800_ENABLED || DT_HAS_TELIT_ME910G1_ENABLED || \ |
| DT_HAS_TELIT_ME310G1_ENABLED || DT_HAS_SQN_GM02S_ENABLED || \ |
| DT_HAS_QUECTEL_EG800Q_ENABLED || DT_HAS_SIMCOM_A76XX_ENABLED) |
| help |
| This driver uses the generic 3gpp AT commands, along |
| with the standard protocols CMUX and PPP, to configure |
| cellular modems to establish a point-to-point |
| network connection. It is a template for tailored |
| drivers for the ublox, quectel and other modems, which |
| include power management and more complex device specific |
| features. |
| |
| if MODEM_CELLULAR |
| |
| config MODEM_CELLULAR_APN |
| string "Static APN" |
| default "internet" |
| help |
| If left empty the driver will wait for the application to call |
| cellular_set_apn() before it proceeds to the dial phase. |
| |
| config MODEM_CELLULAR_PERIODIC_SCRIPT_MS |
| int "Periodic script interval in milliseconds" |
| default 2000 |
| |
| config MODEM_CELLULAR_UART_BUFFER_SIZES |
| int "The UART receive and transmit buffer sizes in bytes." |
| default 512 |
| |
| config MODEM_CELLULAR_CHAT_BUFFER_SIZE |
| int "The size of the buffer used for the chat scripts in bytes." |
| default 128 |
| |
| config MODEM_CELLULAR_USER_PIPE_BUFFER_SIZES |
| int "The size of the buffers used for each user pipe in bytes." |
| default 128 |
| |
| config MODEM_CELLULAR_NEW_BAUDRATE |
| int "New baudrate to configure modem to, if supported" |
| range 9600 4000000 |
| default 3000000 if DT_HAS_U_BLOX_LARA_R6_ENABLED |
| default 115200 |
| |
| config MODEM_CELLULAR_NEW_BAUDRATE_DELAY |
| int "Time modem takes to change baudrate, in milliseconds" |
| range 0 1000 |
| default 100 if DT_HAS_U_BLOX_LARA_R6_ENABLED |
| default 300 |
| |
| config MODEM_CELLULAR_RESET_POWER_ON_DELAY_MS |
| int "Delay between de-asserting the reset pin and pulsing the power pin" |
| default 500 |
| |
| if DT_HAS_U_BLOX_LARA_R6_ENABLED |
| |
| choice MODEM_CELLULAR_RAT |
| prompt "Which Radio Access Technology to use" |
| default MODEM_CELLULAR_RAT_4G |
| |
| config MODEM_CELLULAR_RAT_4G |
| bool "Use only 4G" |
| |
| config MODEM_CELLULAR_RAT_4G_3G |
| bool "Use 4G & 3G" |
| |
| config MODEM_CELLULAR_RAT_4G_3G_2G |
| bool "Use 4G, 3G & 2G" |
| |
| endchoice |
| |
| config MODEM_CELLULAR_CLEAR_FORBIDDEN |
| bool "Clear forbidden networks from SIM-card on boot" |
| |
| endif #DT_HAS_U_BLOX_LARA_R6_ENABLED |
| |
| endif #MODEM_CELLULAR |