| # Copyright (c) 2020 Intel Corporation | 
 | # SPDX-License-Identifier: Apache-2.0 | 
 |  | 
 | config GSM_MUX | 
 | 	bool "Enable GSM 07.10 muxing protocol" | 
 | 	help | 
 | 	  Enable GSM 07.10 muxing protocol defined in | 
 | 	  https://www.etsi.org/deliver/etsi_ts/101300_101399/101369/07.01.00_60/ts_101369v070100p.pdf | 
 | 	  The muxing protocol allows GSM modem to share the same UART for both | 
 | 	  the PPP data and AT commands. | 
 |  | 
 | config GSM_MUX_MAX | 
 | 	int "Max number of GSM mux instances" | 
 | 	default 1 | 
 | 	depends on GSM_MUX | 
 | 	help | 
 | 	  Usually we only need one GSM mux instance. You need to increase | 
 | 	  this if you have more than one GSM modems. | 
 |  | 
 | config GSM_MUX_DLCI_MAX | 
 | 	int "Max number of GSM data link connection (DLC) instances" | 
 | 	default 3 | 
 | 	range 1 64 | 
 | 	depends on GSM_MUX | 
 | 	help | 
 | 	  For our purposes we will manage with 3 DLCI (control, ppp, and AT | 
 | 	  commands) so making it the default value. If GSM modem also provides | 
 | 	  GNSS (location) services and you want to create a DLCI for it, then | 
 | 	  you need to increase this to 4. | 
 |  | 
 | config GSM_MUX_DLCI_AT | 
 | 	int "DLCI id of the AT commands channel" | 
 | 	default 2 if MODEM_GSM_SIMCOM | 
 | 	default 1 | 
 | 	range 1 63 | 
 | 	depends on GSM_MUX | 
 | 	help | 
 | 	  Channel number for the AT commands to the modem. | 
 |  | 
 | config GSM_MUX_DLCI_PPP | 
 | 	int "DLCI id of the PPP connection channel" | 
 | 	default 1 if MODEM_GSM_SIMCOM | 
 | 	default 2 | 
 | 	range 1 63 | 
 | 	depends on GSM_MUX | 
 | 	help | 
 | 	  Channel number for the PPP connection to the modem. | 
 | 	  SIMCOM modem has 16kb buffer for DLCI 1 so the manual recommends | 
 | 	  it for PPP traffic. For other DLCIs in that modem, the buffer size | 
 | 	  is only 1kb. | 
 |  | 
 | config GSM_MUX_PENDING_CMD_MAX | 
 | 	int "Max number of pending GSM mux commands" | 
 | 	default 2 | 
 | 	range 1 8 | 
 | 	depends on GSM_MUX | 
 | 	help | 
 | 	  How many pending GSM mux commands can exists. | 
 |  | 
 | config GSM_MUX_MRU_DEFAULT_LEN | 
 | 	int "Default size of received user data (MRU)" | 
 | 	default 127 if MODEM_GSM_SIMCOM | 
 | 	default 127 if MODEM_GSM_QUECTEL | 
 | 	default 31 | 
 | 	range 1 1509 | 
 | 	depends on GSM_MUX | 
 | 	help | 
 | 	  Default MRU (Maximum Receive Unit) data size. The default | 
 | 	  value for Basic mode is 31 bytes. The 1509 limit comes from | 
 | 	  ublox-sara modem and it means we can transfer full Ethernet sized | 
 | 	  frame and muxing headers. | 
 |  | 
 | config GSM_MUX_MRU_MAX_LEN | 
 | 	int "Max size of received user data (MRU)" | 
 | 	default 255 if MODEM_GSM_SIMCOM | 
 | 	default 128 | 
 | 	range 1 1509 | 
 | 	depends on GSM_MUX | 
 | 	help | 
 | 	  Max MRU (Maximum Receive Unit) data size. The default max | 
 | 	  value for Basic mode is 128 bytes. | 
 |  | 
 | config GSM_MUX_INITIATOR | 
 | 	bool "Are we the initiator of the connection" | 
 | 	default y | 
 | 	depends on GSM_MUX | 
 | 	help | 
 | 	  Default value when deciding whether we are the initiator of the | 
 | 	  connection attempt. Normally this should be enabled. | 
 |  | 
 | config GSM_MUX_T1_TIMEOUT | 
 | 	int "T1 timeout in ms" | 
 | 	default 0 | 
 | 	range 0 5000 | 
 | 	depends on GSM_MUX | 
 | 	help | 
 | 	  T1 timeout is initial command timeout when establishing | 
 | 	  the connection. The value is in milliseconds. Zero value | 
 | 	  means that default (100 ms) specified in the code is used. | 
 |  | 
 | if GSM_MUX | 
 |  | 
 | module = GSM_MUX | 
 | module-dep = LOG | 
 | module-str = Log level for GSM 07.10 Mux driver | 
 | module-help = Sets log level for GSM 07.10 Mux Device Driver. | 
 | source "subsys/net/Kconfig.template.log_config.net" | 
 |  | 
 | config GSM_MUX_VERBOSE_DEBUG | 
 | 	bool "Print hexdump of sent and received packets" | 
 | 	depends on GSM_MUX_LOG_LEVEL_DBG | 
 | 	help | 
 | 	  As there might be lot of debug output printed, only enable | 
 | 	  this if really needed. | 
 |  | 
 | endif |