1
- # Sierra Wireless HL78XX driver driver options
1
+ #Sierra Wireless HL78XX driver driver options
2
2
3
- # Copyright (c) 2025 Netfeasa Ltd.
4
- # SPDX- License- Identifier: Apache- 2.0
3
+ #Copyright(c) 2025 Netfeasa Ltd.
4
+ #SPDX - License - Identifier : Apache - 2.0
5
5
6
6
config MODEM_HL78XX
7
7
bool "HL78XX modem driver"
@@ -492,27 +492,48 @@ config MODEM_HL78XX_PSM
492
492
help
493
493
Enable Power Save Mode (PSM)
494
494
495
+ if !MODEM_HL78XX_EDRX && !MODEM_HL78XX_PSM
496
+
497
+ config MODEM_HL78XX_POWER_DOWN
498
+ bool "Turn OFF"
499
+ depends on MODEM_HL78XX_LOW_POWER_MODE
500
+ help
501
+ Power off modem
502
+
503
+ endif # If eDRX or PSM is enabled, the modem will not power down.
504
+
495
505
if MODEM_HL78XX_EDRX
496
506
497
507
config MODEM_HL78XX_EDRX_VALUE
498
- string "Requested eDRX timer"
499
- default "0101"
508
+ int "Requested eDRX timer"
509
+ default 5
510
+ range 0 15
500
511
help
501
512
Half a byte in a 4-bit format. The eDRX value refers to bit 4 to 1
502
513
of octet 3 of the Extended DRX parameters information element.
503
- Default value is 81.92 seconds.
514
+ Default value is 5 (81.92) seconds.
515
+ refer to Requested_eDRX_value
516
+
517
+ config MODEM_HL78XX_PTW_VALUE
518
+ int "Requested eDRX Paging Time Window (PTW) timer"
519
+ default 0
520
+ help
521
+ The PTW value refers to bits 8 to 5 of octet 3 of the Extended DRX
522
+ parameters information element
523
+ · CAT-M1 - actual PTW length = 1.28 sec x (1 + PTW)
524
+ · NB-IoT - actual PTW length = 2.56 sec x (1 + PTW)
504
525
505
526
endif # MODEM_HL78XX_EDRX
506
527
507
528
if MODEM_HL78XX_PSM
508
529
509
530
config MODEM_HL78XX_PSM_PERIODIC_TAU
510
531
string "Requested extended periodic TAU timer"
511
- default "10000010 "
532
+ default "10101111 "
512
533
help
513
534
Requested extended periodic TAU (tracking area update) value (T3412)
514
535
to be allocated to the UE in E-UTRAN. One byte in an 8-bit format.
515
- Default value is 1 minute.
536
+ Default value is 15 minute.
516
537
517
538
config MODEM_HL78XX_PSM_ACTIVE_TIME
518
539
string "Requested active time"
@@ -523,6 +544,62 @@ config MODEM_HL78XX_PSM_ACTIVE_TIME
523
544
524
545
endif # MODEM_HL78XX_PSM
525
546
547
+ if MODEM_HL78XX_POWER_DOWN
548
+
549
+ choice MODEM_HL78XX_POWER_DOWN_MODE
550
+ prompt "Power Down Mode"
551
+ default MODEM_HL78XX_USE_DELAY_BASED_POWER_DOWN
552
+ help
553
+ Choose the logic used to determine when the HL78XX modem powers down.
554
+ Only one method can be selected:
555
+ - 'Use delay after last data activity'
556
+ - 'Use active time after RRC connection'
557
+
558
+ config MODEM_HL78XX_USE_DELAY_BASED_POWER_DOWN
559
+ bool "Use delay after last data activity"
560
+ help
561
+ Power down the modem after a specified delay (MODEM_HL78XX_POWER_DOWN_DELAY)
562
+ following the last socket closure or data transmission.
563
+
564
+ config MODEM_HL78XX_USE_ACTIVE_TIME_BASED_POWER_DOWN
565
+ bool "Use active time after RRC connection"
566
+ help
567
+ Power down the modem based on a PSM-like active time (MODEM_HL78XX_POWER_DOWN_ACTIVE_TIME)
568
+ starting after establishing an RRC connection.
569
+ * This timer is reset only when a new RRC connection is established.
570
+
571
+ endchoice
572
+
573
+ if MODEM_HL78XX_USE_DELAY_BASED_POWER_DOWN
574
+
575
+ config MODEM_HL78XX_POWER_DOWN_DELAY
576
+ int "Delay in seconds before power down"
577
+ default 15
578
+ range 10 600
579
+ help
580
+ Delay in seconds before powering down the modem after the last
581
+ data transfer.
582
+
583
+ endif # MODEM_HL78XX_USE_DELAY_BASED_POWER_DOWN
584
+
585
+ if MODEM_HL78XX_USE_ACTIVE_TIME_BASED_POWER_DOWN
586
+
587
+ config MODEM_HL78XX_POWER_DOWN_ACTIVE_TIME
588
+ int "Modem active time before power down"
589
+ default 30
590
+ range 20 600
591
+ help
592
+ The active time value to be allocated to the UE before
593
+ powering down the modem. One byte in an 8-bit format.
594
+ Default value is 30 seconds.
595
+ This setting is used to keep the modem active for a short period
596
+ before powering it down.
597
+
598
+ endif # MODEM_HL78XX_USE_ACTIVE_TIME_BASED_POWER_DOWN
599
+ endif # MODEM_HL78XX_POWER_DOWN
600
+
601
+ if !MODEM_HL78XX_POWER_DOWN
602
+
526
603
choice MODEM_DEFAULT_SLEEP_LEVEL
527
604
prompt "Default Sleep Level"
528
605
default MODEM_HL78XX_SLEEP_LEVEL_HIBERNATE
@@ -555,9 +632,111 @@ endchoice
555
632
config MODEM_HL78XX_SLEEP_DELAY_AFTER_REBOOT
556
633
int "Delay in seconds before sleep after reboot"
557
634
default 10
558
-
635
+ endif # !MODEM_HL78XX_POWER_DOWN
559
636
endif # MODEM_HL78XX_LOW_POWER_MODE
560
637
638
+ choice MODEM_HL78XX_NETWORK_REG_STATUS_REPORT_CFG
639
+ prompt "Network Registration Status Report Configuration"
640
+ default MODEM_HL78XX_ENABLE_NETWORK_STATUS_URC_REPORT_WITH_PSM_AND_CAUSE
641
+ help
642
+ · 0 — Disable network registration unsolicited result code.
643
+ · 1 — Enable network registration unsolicited result code +CEREG: <stat>
644
+ · 2 — Enable network registration and location information unsolicited result
645
+ code:
646
+ +CEREG: <stat>[,[<tac>],[<ci>],[<AcT>]]
647
+ · 3 — Enable network registration, location information and EMM cause value
648
+ information unsolicited result code:
649
+ +CEREG: <stat>[,[<tac>],[<ci>],[<AcT>][,<cause_type>, <reject_cause>]]
650
+ · 4 — For a UE that wants to apply PSM, enable network registration and
651
+ location information unsolicited result code:
652
+ +CEREG: <stat>[,[<tac>],[<ci>],[<AcT>][,,[,[<Active- Time>],[<PeriodicTAU>]]]]
653
+ · 5 — For a UE that wants to apply PSM, enable network registration, location
654
+ information and EMM cause value information unsolicited result code:
655
+ +CEREG: <stat>[,[<tac>],[<ci>],[<AcT>][,[<cause_type>],[<reject_-
656
+ cause>][,[<Active-Time>] [<Periodic-TAU>]]]]
657
+
658
+ config MODEM_HL78XX_DISABLE_NETWORK_STATUS_URC_REPORT
659
+ bool "Disable network status URC report"
660
+ help
661
+ Disable network registration unsolicited result code.
662
+
663
+ config MODEM_HL78XX_ENABLE_NETWORK_STATUS_URC_REPORT
664
+ bool "Network status URC report"
665
+ help
666
+ Enable network registration unsolicited result code +CEREG: <stat>
667
+
668
+ config MODEM_HL78XX_ENABLE_NETWORK_STATUS_URC_REPORT_WITH_LOCATION
669
+ bool "Network status URC report with location"
670
+ help
671
+ Enable network registration and location information unsolicited result
672
+ +CEREG: <stat>[,[<tac>],[<ci>],[<AcT>]]
673
+
674
+ config MODEM_HL78XX_ENABLE_NETWORK_STATUS_URC_REPORT_WITH_LOCATION_AND_CAUSE
675
+ bool "Network status URC report with location and cause"
676
+ help
677
+ Enable network registration, location information and EMM cause value
678
+ information unsolicited result code:
679
+ +CEREG: <stat>[,[<tac>],[<ci>],[<AcT>][,<cause_type>, <reject_cause>]]
680
+
681
+ config MODEM_HL78XX_ENABLE_NETWORK_STATUS_URC_REPORT_WITH_PSM
682
+ bool "Network status URC report with PSM"
683
+ help
684
+ For a UE that wants to apply PSM, enable network registration and
685
+ location information unsolicited result code:
686
+ +CEREG: <stat>[,[<tac>],[<ci>],[<AcT>][,,[,[<Active- Time>],[<PeriodicTAU>]]]]
687
+
688
+ config MODEM_HL78XX_ENABLE_NETWORK_STATUS_URC_REPORT_WITH_PSM_AND_CAUSE
689
+ bool "Network status URC report with PSM and cause"
690
+ help
691
+ For a UE that wants to apply PSM, enable network registration, location
692
+ information and EMM cause value information unsolicited result code:
693
+ +CEREG: <stat>[,[<tac>],[<ci>],[<AcT>][,[<cause_type>],[<reject_-
694
+ cause>][,[<Active-Time>] [<Periodic-TAU>]]]]
695
+
696
+ endchoice
697
+
698
+ config MODEM_HL78XX_NETWORK_REG_STATUS_REPORT_CFG_CODE
699
+ string
700
+ default "5" if MODEM_HL78XX_ENABLE_NETWORK_STATUS_URC_REPORT_WITH_PSM_AND_CAUSE
701
+ default "4" if MODEM_HL78XX_ENABLE_NETWORK_STATUS_URC_REPORT_WITH_PSM
702
+ default "3" if MODEM_HL78XX_ENABLE_NETWORK_STATUS_URC_REPORT_WITH_LOCATION_AND_CAUSE
703
+ default "2" if MODEM_HL78XX_ENABLE_NETWORK_STATUS_URC_REPORT_WITH_LOCATION
704
+ default "1" if MODEM_HL78XX_ENABLE_NETWORK_STATUS_URC_REPORT
705
+ default "0" if MODEM_HL78XX_DISABLE_NETWORK_STATUS_URC_REPORT
706
+ help
707
+ This setting is used to configure the network registration status report
708
+ configuration code. It is used in the AT+CREG/CEREG command to set the network
709
+ registration status report configuration.
710
+
711
+ config MODEM_MIN_ALLOWED_SIGNAL_STRENGTH
712
+ int "Minimum allowed RSRP signal strength (dBm)"
713
+ default -140
714
+ range -140 0
715
+ help
716
+ The average power received from a single Reference signal,
717
+ and Its typical range is around -44dbm (good) to -140dbm(bad).
718
+ Note: (Anything < - 115 dBm unusable/unreliable)
719
+ EXCELLENT_SIGNAL_STRENGTH
720
+ bool ">= -80(dBm)"
721
+ default -80
722
+ range - 80 0
723
+ GOOD_SIGNAL_STRENGTH
724
+ bool ">= -90(dBm)"
725
+ default -90
726
+ range - 90 0
727
+ MID_CELL_SIGNAL_STRENGTH
728
+ bool ">= -100(dBm)"
729
+ default -100
730
+ range - 100 0
731
+ CELL_EDGE_SIGNAL_STRENGTH
732
+ bool "<= -100(dBm)"
733
+ default -110
734
+ range - 110 0
735
+ POOR_SIGNAL_STRENGTH
736
+ bool ">= -140(dBm)"
737
+ default -140
738
+ range - 140 0
739
+
561
740
config MODEM_HL78XX_ADVANCED_SOCKET_CONFIG
562
741
bool "Advanced socket configuration"
563
742
help
@@ -603,6 +782,34 @@ bool "Verbose debug output in the HL78xx"
603
782
Enabling this setting will turn on VERY heavy debugging from the
604
783
modem. Do NOT leave on for production.
605
784
785
+ config MODEM_HL78XX_DEV_POWER_PULSE_DURATION
786
+ int "Duration of the power-on pulse in milliseconds."
787
+ default 1500
788
+ help
789
+ Trigger a power-on sequence by setting a power on GPIO pin high
790
+ for a specific amount of time.
791
+
792
+ config MODEM_HL78XX_DEV_RESET_PULSE_DURATION
793
+ int "Duration of the power-reset pulse in milliseconds."
794
+ default 100
795
+ help
796
+ Trigger a power-reset sequence by setting a reset GPIO pin high
797
+ for a specific amount of time.
798
+
799
+ config MODEM_HL78XX_DEV_STARTUP_TIME
800
+ int "Wait before assuming the device is ready."
801
+ default 1000
802
+ help
803
+ The expected time (in milliseconds) the modem needs to fully power on
804
+ and become operational.
805
+
806
+ config MODEM_HL78XX_DEV_SHUTDOWN_TIME
807
+ int "Wait before assuming the device is completely off."
808
+ default 1000
809
+ help
810
+ The amount of time (in milliseconds) the system should wait for the modem
811
+ to fully shut down
812
+
606
813
config MODEM_HL78XX_DEV_INIT_PRIORITY
607
814
int "Sierra Wireless HL78XX device driver init priority"
608
815
default 80
0 commit comments