1# Copyright (c) 2023 Bjarki Arge Andreasen
2# SPDX-License-Identifier: Apache-2.0
3
4config MODEM_CELLULAR
5	bool "Generic cellular modem support"
6	select MODEM_MODULES
7	select MODEM_PPP
8	select MODEM_CMUX
9	select MODEM_CHAT
10	select MODEM_PIPE
11	select MODEM_PIPELINK
12	select MODEM_BACKEND_UART
13	select RING_BUFFER
14	select NET_L2_PPP_OPTION_MRU
15	select NET_L2_PPP_PAP
16	depends on (DT_HAS_QUECTEL_BG95_ENABLED || \
17		    DT_HAS_SIMCOM_SIM7080_ENABLED || DT_HAS_U_BLOX_SARA_R4_ENABLED || \
18		    DT_HAS_U_BLOX_SARA_R5_ENABLED || DT_HAS_SWIR_HL7800_ENABLED || \
19		    DT_HAS_TELIT_ME910G1_ENABLED || DT_HAS_QUECTEL_EG25_G_ENABLED || \
20		    DT_HAS_NORDIC_NRF91_SLM_ENABLED || DT_HAS_SQN_GM02S_ENABLED)
21	help
22	  This driver uses the generic 3gpp AT commands, along
23	  with the standard protocols CMUX and PPP, to configure
24	  cellular modems to establish a point-to-point
25	  network connection. It is a template for tailored
26	  drivers for the ublox, quectel and other modems, which
27	  include power management and more complex device specific
28	  features.
29
30if MODEM_CELLULAR
31
32config MODEM_CELLULAR_APN
33	string "APN"
34	default "internet"
35
36config MODEM_CELLULAR_PERIODIC_SCRIPT_MS
37	int "Periodic script interval in milliseconds"
38	default 2000
39
40config MODEM_CELLULAR_UART_BUFFER_SIZES
41	int "The UART receive and transmit buffer sizes in bytes."
42	default 512
43
44config MODEM_CELLULAR_CMUX_MAX_FRAME_SIZE
45	int "The maximum CMUX frame size in bytes."
46	default 128
47	help
48	  This value affects the size of buffers used to receive and transmit CMUX frames.
49
50config MODEM_CELLULAR_CHAT_BUFFER_SIZES
51	int "The size of the buffers used for the chat scripts in bytes."
52	default 128
53
54config MODEM_CELLULAR_USER_PIPE_BUFFER_SIZES
55	int "The size of the buffers used for each user pipe in bytes."
56	default 128
57
58endif
59