# Sierra Wireless HL7800 modem driver options

# Copyright (c) 2020 Laird Connectivity
# SPDX-License-Identifier: Apache-2.0

menuconfig MODEM_HL7800
	bool "Sierra Wireless HL7800 modem driver"
	select MODEM_RECEIVER
	select NET_OFFLOAD
	imply GPIO
	help
	  Choose this setting to enable
	  Sierra Wireless HL7800 LTE-M/NB-IoT modem driver.

if MODEM_HL7800

config MODEM_HL7800_FW_UPDATE
	bool "Firmware update"
	select FILE_SYSTEM
	help
	  Enable the ability to update the HL7800 via XMODEM
	  by providing an update file to the update API.

config MODEM_HL7800_RECV_BUF_CNT
	int "The number of allocated network buffers"
	default 30

config MODEM_HL7800_RECV_BUF_SIZE
	int "The size of the network buffers in bytes"
	default 128

config MODEM_HL7800_SET_APN_NAME_ON_STARTUP
	bool "Set APN name during driver init"
	help
	  If APN doesn't match MODEM_HL7800_APN_NAME on startup,
	  then it will be set.

if MODEM_HL7800_SET_APN_NAME_ON_STARTUP

config MODEM_HL7800_APN_NAME
	string "APN name for establishing network connection"
	help
	  This setting is used in the AT+CGDCONT command to set the APN name
	  for the PDP context.

endif # MODEM_HL7800_SET_APN_NAME_ON_STARTUP

choice MODEM_HL7800_RAT
	bool "Radio Access Technology Mode"
	default MODEM_HL7800_RAT_NO_CHANGE

config MODEM_HL7800_RAT_NO_CHANGE
	bool "Don't change the RAT"
	help
	  Leave the HL7800 RAT unchanged during modem init.

config MODEM_HL7800_RAT_M1
	bool "LTE-M1"
	help
	  Enable LTE Cat-M1 mode during modem init.

config MODEM_HL7800_RAT_NB1
	bool "NB-IoT"
	help
	  Enable LTE Cat-NB1 mode during modem init.

endchoice

menuconfig MODEM_HL7800_CONFIGURE_BANDS
	bool "Configure modem bands"
	default "y"
	help
	  Choose this setting to configure which LTE bands the
	  HL7800 modem should use at boot time.

if MODEM_HL7800_CONFIGURE_BANDS

config MODEM_HL7800_BAND_1
	bool "Band 1  (2000MHz)"
	default "y"
	help
	  Enable Band 1 (2000MHz)

config MODEM_HL7800_BAND_2
	bool "Band 2  (1900MHz)"
	default "y"
	help
	  Enable Band 2 (1900MHz)

config MODEM_HL7800_BAND_3
	bool "Band 3  (1800MHz)"
	default "y"
	help
	  Enable Band 3 (1800MHz)

config MODEM_HL7800_BAND_4
	bool "Band 4  (1700MHz)"
	default "y"
	help
	  Enable Band 4 (1700MHz)

config MODEM_HL7800_BAND_5
	bool "Band 5  (850MHz)"
	default "y"
	help
	  Enable Band 5 (850MHz)

config MODEM_HL7800_BAND_8
	bool "Band 8  (900MHz)"
	default "y"
	help
	  Enable Band 8 (900MHz)

config MODEM_HL7800_BAND_9
	bool "Band 9  (1900MHz)"
	help
	  Enable Band 9 (1900MHz)

config MODEM_HL7800_BAND_10
	bool "Band 10 (2100MHz)"
	help
	  Enable Band 10 (2100MHz)

config MODEM_HL7800_BAND_12
	bool "Band 12 (700MHz)"
	default "y"
	help
	  Enable Band 12 (700MHz)

config MODEM_HL7800_BAND_13
	bool "Band 13 (700MHz)"
	default "y"
	help
	  Enable Band 13 (700MHz)

config MODEM_HL7800_BAND_14
	bool "Band 14 (700MHz)"
	help
	  Enable Band 14 (700MHz)

config MODEM_HL7800_BAND_17
	bool "Band 17 (700MHz)"
	help
	  Enable Band 17 (700MHz)

config MODEM_HL7800_BAND_18
	bool "Band 18 (800MHz)"
	help
	  Enable Band 18 (800MHz)

config MODEM_HL7800_BAND_19
	bool "Band 19 (800MHz)"
	help
	  Enable Band 19 (800MHz)

config MODEM_HL7800_BAND_20
	bool "Band 20 (800MHz)"
	default "y"
	help
	  Enable Band 20 (800MHz)

config MODEM_HL7800_BAND_25
	bool "Band 25 (1900MHz)"
	help
	  Enable Band 25 (1900MHz)

config MODEM_HL7800_BAND_26
	bool "Band 26 (800MHz)"
	help
	  Enable Band 26 (800MHz)

config MODEM_HL7800_BAND_27
	bool "Band 27 (800MHz)"
	help
	  Enable Band 27 (800MHz)

config MODEM_HL7800_BAND_28
	bool "Band 28 (700MHz)"
	default "y"
	help
	  Enable Band 28 (700MHz)

config MODEM_HL7800_BAND_66
	bool "Band 66 (1800MHz)"
	help
	  Enable Band 66 (1800MHz)

endif # MODEM_HL7800_CONFIGURE_BAND

menuconfig MODEM_HL7800_LOW_POWER_MODE
	bool "Low power modes"
	help
	  Choose this setting to enable a low power mode for the HL7800 modem

if MODEM_HL7800_LOW_POWER_MODE

choice
	prompt "Low Power Mode"
	default MODEM_HL7800_EDRX

config MODEM_HL7800_EDRX
	bool "eDRX"
	help
	  Enable LTE eDRX

config MODEM_HL7800_PSM
	bool "PSM"
	help
	  Enable Power Save Mode (PSM)
endchoice

if MODEM_HL7800_EDRX

config MODEM_HL7800_EDRX_VALUE
	string "Requested eDRX timer"
	default "0101"
	help
	  Half a byte in a 4-bit format. The eDRX value refers to bit 4 to 1
	  of octet 3 of the Extended DRX parameters information element.
	  Default value is 81.92 seconds.

endif # MODEM_HL7800_EDRX

if MODEM_HL7800_PSM

config MODEM_HL7800_PSM_PERIODIC_TAU
	string "Requested extended periodic TAU timer"
	default "10000010"
	help
	  Requested extended periodic TAU (tracking area update) value (T3412)
	  to be allocated to the UE in E-UTRAN. One byte in an 8-bit format.
	  Default value is 1 minute.

config MODEM_HL7800_PSM_ACTIVE_TIME
	string "Requested active time"
	default "00001111"
	help
	  Requested Active Time value (T3324) to be allocated to the UE.
	  One byte in an 8-bit format. Default value is 30 seconds.

endif # MODEM_HL7800_PSM

choice
	prompt "Default Sleep Level"
	default MODEM_HL7800_SLEEP_LEVEL_HIBERNATE
	help
	  The application can override this setting

config MODEM_HL7800_SLEEP_LEVEL_HIBERNATE
	bool "Hibernate"
	help
	  Lowest power consumption
	  IO state not retained
	  Application subsystem OFF

config MODEM_HL7800_SLEEP_LEVEL_LITE_HIBERNATE
	bool "Lite Hibernate"
	help
	  IO state retained
	  Application subsystem OFF

config MODEM_HL7800_SLEEP_LEVEL_SLEEP
	bool "Sleep"
	help
	  Highest power consumption of modem sleep states
	  IO state retained
	  Application subsystem ON
	  Allows sockets to remain open

endchoice

config MODEM_HL7800_SLEEP_DELAY_AFTER_REBOOT
	int "Delay in seconds before sleep after reboot"
	default 10

endif # MODEM_HL7800_LOW_POWER_MODE

config MODEM_HL7800_RX_STACK_SIZE
	int "Size of the stack for the HL7800 modem driver RX thread"
	default 1536 if MODEM_HL7800_POLTE
	default 1280
	help
	  This stack is used by the HL7800 RX thread.

config MODEM_HL7800_RX_WORKQ_STACK_SIZE
	int "Size of the stack for the HL7800 modem driver work queue"
	default 2048
	help
	  This stack is used by the work queue to pass off net_pkt data
	  to the rest of the network stack, letting the rx thread continue
	  processing data.

config MODEM_HL7800_INIT_PRIORITY
	int "HL7800 driver init priority"
	default 80
	help
	  HL7800 device driver initialization priority.
	  Do not mess with it unless you know what you are doing.
	  Note that the priority needs to be lower than the net stack
	  so that it can start before the networking sub-system.

config MODEM_HL7800_GET_IP_ADDR_INFO_ATTEMPTS
	int "Number of attempts to get IP address info during init"
	default 4

choice
	prompt "Modem Boot Type"
	default MODEM_HL7800_BOOT_NORMAL

config MODEM_HL7800_BOOT_NORMAL
	bool "No Delay"

config MODEM_HL7800_BOOT_DELAY
	bool "Delay secondary initialization of driver and network attach"
	help
	  When true the application must call mdm_hl7800_reset.
	  This mode delays the validity of modem info.

config MODEM_HL7800_BOOT_IN_AIRPLANE_MODE
	bool "Enter airplane mode during init"
	help
	  mdm_hl7800_set_functionality must be used by app to exit
	  airplane mode.

endchoice

config MODEM_HL7800_GPS
	bool "GPS command and handlers"

config MODEM_HL7800_USE_GLONASS
	bool "Use GLONASS in addition to GPS"
	depends on MODEM_HL7800_GPS

config MODEM_HL7800_POLTE
	bool "PoLTE commands and handlers"

choice
	prompt "IP Address family"
	default MODEM_HL7800_ADDRESS_FAMILY_IPV4V6
	help
	  The address family for IP connections.

config MODEM_HL7800_ADDRESS_FAMILY_IPV4
	bool "IPv4"

config MODEM_HL7800_ADDRESS_FAMILY_IPV6
	bool "IPv6"

config MODEM_HL7800_ADDRESS_FAMILY_IPV4V6
	bool "IPv4v6"

endchoice

config MODEM_HL7800_ALLOW_SLEEP_DELAY_MS
	int "Milliseconds to delay before allowing modem to sleep"
	default 5000
	range 5000 3600000
	help
	  This value should be set larger than the network latency. Otherwise
	  the modem can go to sleep before having a chance to receive socket data.

config MODEM_HL7800_RSSI_RATE_SECONDS
	int "Rate to automatically query RSSI"
	default 0 if MODEM_HL7800_LOW_POWER_MODE
	default 30

config MODEM_HL7800_CTS_FILTER_US
	int "CTS signal filter time (microseconds)"
	default 20
	help
	  This value is used to filter the CTS signal from the modem.
	  CTS pulses shorter than this value will be ignored.

endif # MODEM_HL7800
