| # 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 |