File tree Expand file tree Collapse file tree 11 files changed +777
-21
lines changed
Expand file tree Collapse file tree 11 files changed +777
-21
lines changed Original file line number Diff line number Diff line change 8383 clocks {
8484 hfxo: hfxo {
8585 compatible = "fixed-clock";
86+ status = "disabled";
87+ #clock-cells = <0>;
88+ clock-frequency = <DT_FREQ_M(64)>;
89+ };
90+
91+ lfxo: lfxo {
92+ compatible = "nordic,nrf54h-lfxo";
93+ status = "disabled";
8694 #clock-cells = <0>;
87- clock-frequency = <DT_FREQ_M(32) >;
95+ clock-frequency = <32768 >;
8896 };
8997
9098 fll16m: fll16m {
91- compatible = "fixed-clock ";
99+ compatible = "nordic,nrf-fll16m ";
92100 #clock-cells = <0>;
93101 clock-frequency = <DT_FREQ_M(16)>;
102+ open-loop-accuracy-ppm = <20000>;
103+ open-loop-startup-time-us = <200>; /* To be measured */
104+ clocks = <&hfxo>, <&lfxo>;
105+ clock-names = "hfxo", "lfxo";
94106 };
95107
96108 hsfll120: hsfll120 {
103115 256000000
104116 320000000>;
105117 };
118+
119+ lfclk: lfclk {
120+ compatible = "nordic,nrf-lfclk";
121+ #clock-cells = <0>;
122+ clock-frequency = <32768>;
123+ status = "okay";
124+ lfrc-accuracy-ppm = <500>;
125+ lflprc-accuracy-ppm = <1000>;
126+ lfrc-startup-time-us = <200>; /* To be measured */
127+ lflprc-startup-time-us = <200>; /* To be measured */
128+ clocks = <&hfxo>, <&lfxo>;
129+ clock-names = "hfxo", "lfxo";
130+ };
106131 };
107132
108133 soc {
758783 reg = <0x99c000 0x1000>;
759784 status = "disabled";
760785 cc-num = <16>;
786+ clocks = <&lfclk>, <&fll16m>;
787+ clock-names = "lfclock", "hfclock";
761788 };
762789
763790 dppic133: dppic@9a1000 {
Original file line number Diff line number Diff line change 99
1010#if defined(CONFIG_SOC_SERIES_NRF51X ) || defined(CONFIG_SOC_SERIES_NRF52X )
1111#include <hal/nrf_power.h>
12- #elif defined(CONFIG_SOC_SERIES_NRF54HX )
12+ #elif defined(CONFIG_SOC_SERIES_NRF54HX ) || defined( CONFIG_SOC_SERIES_NRF92X )
1313#include <power.h>
1414#else
1515#include <hal/nrf_regulators.h>
@@ -72,7 +72,7 @@ void z_sys_poweroff(void)
7272#endif
7373#if defined(CONFIG_SOC_SERIES_NRF51X ) || defined(CONFIG_SOC_SERIES_NRF52X )
7474 nrf_power_system_off (NRF_POWER );
75- #elif defined(CONFIG_SOC_SERIES_NRF54HX )
75+ #elif defined(CONFIG_SOC_SERIES_NRF54HX ) || defined( CONFIG_SOC_SERIES_NRF92X )
7676 nrf_poweroff ();
7777#else
7878 nrf_regulators_system_off (NRF_REGULATORS );
Original file line number Diff line number Diff line change 33
44if (CONFIG_ARM)
55 zephyr_library_sources(soc.c)
6+ if (CONFIG_PM OR CONFIG_POWEROFF)
7+ zephyr_library_sources(power.c)
8+ zephyr_code_relocate(
9+ FILES power.c
10+ FILTER ".*\\ .cache_retain_and_sleep"
11+ LOCATION PMLocalRamfunc_TEXT
12+ )
13+ endif ()
614endif ()
715
16+ zephyr_library_sources_ifdef(CONFIG_PM_S2RAM pm_s2ram.c)
17+
818zephyr_include_directories(.)
919
1020# Ensure that image size aligns with 16 bytes so that MRAMC finalizes all writes
Original file line number Diff line number Diff line change @@ -29,6 +29,9 @@ config SOC_NRF9230_ENGB_CPUAPP
2929 select NRFS_HAS_TEMP_SERVICE
3030 select NRFS_HAS_VBUS_DETECTOR_SERVICE
3131 select NRFS_TEMP_SERVICE_HAS_SUBSCRIPTION_SERVICE
32+ select HAS_PM
33+ select HAS_PM_S2RAM_CUSTOM_MARKING
34+ select HAS_POWEROFF
3235
3336config SOC_NRF9230_ENGB_CPURAD
3437 select ARM
@@ -48,6 +51,8 @@ config SOC_NRF9230_ENGB_CPURAD
4851 select NRFS_HAS_PMIC_SERVICE
4952 select NRFS_HAS_TEMP_SERVICE
5053 select NRFS_TEMP_SERVICE_HAS_SUBSCRIPTION_SERVICE
54+ select HAS_PM
55+ select HAS_POWEROFF
5156
5257config SOC_NRF9230_ENGB_CPUPPR
5358 select RISCV_CORE_NORDIC_VPR
Original file line number Diff line number Diff line change @@ -38,6 +38,33 @@ config SPI_DW_HSSI
3838config SPI_DW_ACCESS_WORD_ONLY
3939 default y if SPI_DW
4040
41+ if PM
42+
43+ config PM_DEVICE
44+ default y
45+
46+ if LOG
47+
48+ config LOG_PROCESS_THREAD_STACK_SIZE
49+ default 1536
50+
51+ endif # LOG
52+
53+ endif # PM
54+
55+ if PM_DEVICE
56+
57+ config PM_DEVICE_RUNTIME
58+ default y
59+
60+ config DEVICE_DEPS
61+ default y
62+
63+ config PM_DEVICE_POWER_DOMAIN
64+ default y
65+
66+ endif # PM_DEVICE
67+
4168config SYS_CLOCK_HW_CYCLES_PER_SEC
4269 default $(dt_nodelabel_int_prop,grtc,clock-frequency) if NRF_GRTC_TIMER
4370
You can’t perform that action at this time.
0 commit comments