1# Sierra Wireless HL7800 modem driver options 2 3# Copyright (c) 2020 Laird Connectivity 4# SPDX-License-Identifier: Apache-2.0 5 6menuconfig MODEM_HL7800 7 bool "Enable Sierra Wireless HL7800 modem driver" 8 select MODEM_RECEIVER 9 select NET_OFFLOAD 10 imply GPIO 11 help 12 Choose this setting to enable 13 Sierra Wireless HL7800 LTE-M/NB-IoT modem driver. 14 15if MODEM_HL7800 16 17config MODEM_HL7800_FW_UPDATE 18 bool "Enable firmware update" 19 select FILE_SYSTEM 20 help 21 Enable the ability to update the HL7800 via XMODEM 22 by providing an update file to the update API. 23 24config MODEM_HL7800_RECV_BUF_CNT 25 int "The number of allocated network buffers" 26 default 30 27 28config MODEM_HL7800_RECV_BUF_SIZE 29 int "The size of the network buffers in bytes" 30 default 128 31 32config MODEM_HL7800_SET_APN_NAME_ON_STARTUP 33 bool "Set APN name during driver init" 34 help 35 If APN doesn't match MODEM_HL7800_APN_NAME on startup, 36 then it will be set. 37 38if MODEM_HL7800_SET_APN_NAME_ON_STARTUP 39 40config MODEM_HL7800_APN_NAME 41 string "APN name for establishing network connection" 42 help 43 This setting is used in the AT+CGDCONT command to set the APN name 44 for the PDP context. 45 46endif # MODEM_HL7800_SET_APN_NAME_ON_STARTUP 47 48choice MODEM_HL7800_RAT 49 bool "Radio Access Technology Mode" 50 default MODEM_HL7800_RAT_NO_CHANGE 51 52config MODEM_HL7800_RAT_NO_CHANGE 53 bool "Don't change the RAT" 54 help 55 Leave the HL7800 RAT unchanged during modem init. 56 57config MODEM_HL7800_RAT_M1 58 bool "LTE-M1" 59 help 60 Enable LTE Cat-M1 mode during modem init. 61 62config MODEM_HL7800_RAT_NB1 63 bool "NB-IoT" 64 help 65 Enable LTE Cat-NB1 mode during modem init. 66 67endchoice 68 69menuconfig MODEM_HL7800_CONFIGURE_BANDS 70 bool "Configure modem bands" 71 default "y" 72 help 73 Choose this setting to configure which LTE bands the 74 HL7800 modem should use. 75 76if MODEM_HL7800_CONFIGURE_BANDS 77 78config MODEM_HL7800_BAND_1 79 bool "Enable Band 1 (2000MHz)" 80 default "y" 81 help 82 Enable Band 1 (2000MHz) 83 84config MODEM_HL7800_BAND_2 85 bool "Enable Band 2 (1900MHz)" 86 default "y" 87 help 88 Enable Band 2 (1900MHz) 89 90config MODEM_HL7800_BAND_3 91 bool "Enable Band 3 (1800MHz)" 92 default "y" 93 help 94 Enable Band 3 (1800MHz) 95 96config MODEM_HL7800_BAND_4 97 bool "Enable Band 4 (1700MHz)" 98 default "y" 99 help 100 Enable Band 4 (1700MHz) 101 102config MODEM_HL7800_BAND_5 103 bool "Enable Band 5 (850MHz)" 104 default "y" 105 help 106 Enable Band 5 (850MHz) 107 108config MODEM_HL7800_BAND_8 109 bool "Enable Band 8 (900MHz)" 110 default "y" 111 help 112 Enable Band 8 (900MHz) 113 114config MODEM_HL7800_BAND_9 115 bool "Enable Band 9 (1900MHz)" 116 help 117 Enable Band 9 (1900MHz) 118 119config MODEM_HL7800_BAND_10 120 bool "Enable Band 10 (2100MHz)" 121 help 122 Enable Band 10 (2100MHz) 123 124config MODEM_HL7800_BAND_12 125 bool "Enable Band 12 (700MHz)" 126 default "y" 127 help 128 Enable Band 12 (700MHz) 129 130config MODEM_HL7800_BAND_13 131 bool "Enable Band 13 (700MHz)" 132 default "y" 133 help 134 Enable Band 13 (700MHz) 135 136config MODEM_HL7800_BAND_14 137 bool "Enable Band 14 (700MHz)" 138 help 139 Enable Band 14 (700MHz) 140 141config MODEM_HL7800_BAND_17 142 bool "Enable Band 17 (700MHz)" 143 help 144 Enable Band 17 (700MHz) 145 146config MODEM_HL7800_BAND_18 147 bool "Enable Band 18 (800MHz)" 148 help 149 Enable Band 18 (800MHz) 150 151config MODEM_HL7800_BAND_19 152 bool "Enable Band 19 (800MHz)" 153 help 154 Enable Band 19 (800MHz) 155 156config MODEM_HL7800_BAND_20 157 bool "Enable Band 20 (800MHz)" 158 default "y" 159 help 160 Enable Band 20 (800MHz) 161 162config MODEM_HL7800_BAND_25 163 bool "Enable Band 25 (1900MHz)" 164 help 165 Enable Band 25 (1900MHz) 166 167config MODEM_HL7800_BAND_26 168 bool "Enable Band 26 (800MHz)" 169 help 170 Enable Band 26 (800MHz) 171 172config MODEM_HL7800_BAND_27 173 bool "Enable Band 27 (800MHz)" 174 help 175 Enable Band 27 (800MHz) 176 177config MODEM_HL7800_BAND_28 178 bool "Enable Band 28 (700MHz)" 179 default "y" 180 help 181 Enable Band 28 (700MHz) 182 183config MODEM_HL7800_BAND_66 184 bool "Enable Band 66 (1800MHz)" 185 help 186 Enable Band 66 (1800MHz) 187 188endif # MODEM_HL7800_CONFIGURE_BAND 189 190menuconfig MODEM_HL7800_LOW_POWER_MODE 191 bool "Enable low power modes" 192 help 193 Choose this setting to enable a low power mode for the HL7800 modem 194 195if MODEM_HL7800_LOW_POWER_MODE 196 197choice 198 prompt "Low Power Mode" 199 default MODEM_HL7800_EDRX 200 201config MODEM_HL7800_EDRX 202 bool "eDRX" 203 help 204 Enable LTE eDRX 205 206config MODEM_HL7800_PSM 207 bool "PSM" 208 help 209 Enable Power Save Mode (PSM) 210endchoice 211 212if MODEM_HL7800_EDRX 213 214config MODEM_HL7800_EDRX_VALUE 215 string "Requested eDRX timer" 216 default "0101" 217 help 218 Half a byte in a 4-bit format. The eDRX value refers to bit 4 to 1 219 of octet 3 of the Extended DRX parameters information element. 220 Default value is 81.92 seconds. 221 222endif # MODEM_HL7800_EDRX 223 224if MODEM_HL7800_PSM 225 226config MODEM_HL7800_PSM_PERIODIC_TAU 227 string "Requested extended periodic TAU timer" 228 default "10000010" 229 help 230 Requested extended periodic TAU (tracking area update) value (T3412) 231 to be allocated to the UE in E-UTRAN. One byte in an 8-bit format. 232 Default value is 1 minute. 233 234config MODEM_HL7800_PSM_ACTIVE_TIME 235 string "Requested active time" 236 default "00001111" 237 help 238 Requested Active Time value (T3324) to be allocated to the UE. 239 One byte in an 8-bit format. Default value is 30 seconds. 240 241endif # MODEM_HL7800_PSM 242 243endif # MODEM_HL7800_LOW_POWER_MODE 244 245config MODEM_HL7800_RX_STACK_SIZE 246 int "Size of the stack for the HL7800 modem driver RX thread" 247 default 1536 if MODEM_HL7800_POLTE 248 default 1280 249 help 250 This stack is used by the HL7800 RX thread. 251 252config MODEM_HL7800_RX_WORKQ_STACK_SIZE 253 int "Size of the stack for the HL7800 modem driver work queue" 254 default 2048 255 help 256 This stack is used by the work queue to pass off net_pkt data 257 to the rest of the network stack, letting the rx thread continue 258 processing data. 259 260config MODEM_HL7800_INIT_PRIORITY 261 int "HL7800 driver init priority" 262 default 80 263 help 264 HL7800 device driver initialization priority. 265 Do not mess with it unless you know what you are doing. 266 Note that the priority needs to be lower than the net stack 267 so that it can start before the networking sub-system. 268 269config MODEM_HL7800_GET_IP_ADDR_INFO_ATTEMPTS 270 int "Number of attempts to get IP address info during init" 271 default 4 272 273choice 274 prompt "Modem Boot Type" 275 default MODEM_HL7800_BOOT_NORMAL 276 277config MODEM_HL7800_BOOT_NORMAL 278 bool "No Delay" 279 280config MODEM_HL7800_BOOT_DELAY 281 bool "Delay secondary initialization of driver and network attach" 282 help 283 When true the application must call mdm_hl7800_reset. 284 This mode delays the validity of modem info. 285 286config MODEM_HL7800_BOOT_IN_AIRPLANE_MODE 287 bool "Enter airplane mode during init" 288 help 289 mdm_hl7800_set_functionality must be used by app to exit 290 airplane mode. 291 If bands are reconfigured, then this setting is overridden 292 because modem is rebooted into full functionality mode. 293 294endchoice 295 296config MODEM_HL7800_GPS 297 bool "Enable GPS command and handlers" 298 299config MODEM_HL7800_USE_GLONASS 300 bool "Use GLONASS in addition to GPS" 301 depends on MODEM_HL7800_GPS 302 303config MODEM_HL7800_POLTE 304 bool "Enable PoLTE commands and handlers" 305 306choice 307 prompt "IP Address family" 308 default MODEM_HL7800_ADDRESS_FAMILY_IPV4V6 309 help 310 The address family for IP connections. 311 312config MODEM_HL7800_ADDRESS_FAMILY_IPV4 313 bool "IPv4" 314 315config MODEM_HL7800_ADDRESS_FAMILY_IPV6 316 bool "IPv6" 317 318config MODEM_HL7800_ADDRESS_FAMILY_IPV4V6 319 bool "IPv4v6" 320 321endchoice 322 323endif # MODEM_HL7800 324