PMU Configuration
The atmosic,atmx3-pmu.yaml binding defines PMU configuration related to battery type, battery
level, VDDIO/VSTORE configuration, RF and PV harvesting, external boost options, harvesting
metering, SoC-off wakeup, and 32 kHz crystal load calibration. The atmosic,brownout binding
defines brownout policy and threshold configuration.
regRequired.
interruptsRequired. PMU interrupt (
PMU_IRQn) for brownout, PMU watchdog warning, and energy monitoring events.The PMU driver provides a central handler that dispatches to appropriate sub-handlers based on compile-time configuration:
CONFIG_ATM_BROWNOUTCONFIG_WDT_ATMOSIC_PMU_ENABLE
Battery and supply configuration
batt-typeType:
intThe battery type is specified through OTP and defaults to non-rechargeable. This property can override that default based on the board design.
Valid
batt-typevalues:0: Li-ion1: Rechargeable2: No battery3: Non-rechargeable
If you wish to use Li-ion (
batt-type = <0>), first power the board using a power source that is not lithium-ion, then load a program withbatt-typeset to<0>. This enables the lithium-ion power circuit. You can then disconnect the non-lithium-ion power source, connect the lithium-ion battery, and proceed normally.batt-levelType:
intThe battery level is specified through OTP and defaults to > 1.8 V. This property can override that default.
Valid
batt-levelvalues:0: <= 1.8 V1: > 1.8 V
initial-volt-check-thrType:
intATM34 raw initial voltage-check threshold,
X, used by secure early initialization (CONFIG_ATM_SEC_HW_CFG) on every boot to determine whether software may boot before the runtime brownout detector is active. This check is separate from the runtimebrownout-thr-vbatpolicy. Its formulas are similar to thebrownout-thr-vbatformulas (see the Brownout threshold configuration section below), but include a fixed +0.1 V offset:Rechargeable or non-rechargeable, > 1.8 V:
V = 1.4 V + 0.1 V + 0.05 V * X; rawX: 8 to 31; defaultX: 20Rechargeable or non-rechargeable, <= 1.8 V:
V = 0.9 V + 0.1 V + 0.025 V * X; rawX: 4 to 31; defaultX: 8Li-ion, > 1.8 V:
V = 2.4 V + 0.1 V + 0.05 V * X; rawX: 6 to 31; defaultX: 16Li-ion, <= 1.8 V:
V = 1.9 V + 0.1 V + 0.025 V * X; rawX: 0 to 31; defaultX: 20
Note
Although Devicetree supplies the raw
Xvalue, the hardware selects the voltage formula from the battery configuration programmed in OTP, i.e. it does not use the overlay’sbatt-typeorbatt-levelproperty to select the formula. ChooseXfor the battery type and level programmed in OTP.When MCUboot is used, the
&pmunode overlay must also be passed to the MCUboot image because the secure early initialization and voltage check execute there. Add an MCUboot-specific overlay with-Dmcuboot_EXTRA_DTC_OVERLAY_FILE=<path>.&pmu { initial-volt-check-thr = <20>; };
Verify the effective value in
build/mcuboot/zephyr/zephyr.dts.vddio-typeType:
intThe VDDIO type defaults to Internal and can be overridden through the
vddio-typeproperty based on the board design.Valid
vddio-typevalues:0: Internal1: External
The external VDDIO type is determined by the source on the board, which is commonly assumed to be VBAT. Therefore, it is supported only for > 1.8 V (
batt-level = <1>).vstore-maxType:
intThe VSTORE maximum is specified through OTP and can be overridden through the
vstore-maxproperty.Supported values for
vstore-max:1500 mV to 3000 mV in 50 mV steps
3100 mV
3300 mV (default)
vddpa-srcType:
intSupply source for VDDPA.
Valid
vddpa-srcvalues:0: VDDIOP1: VDDPAP / VSTORE (platform-specific naming)2: None
hsc-modeType:
booleanIndicates whether the design uses a Hybrid Super Cap.
This is valid only for Li-ion (
batt-type = <0>).
Brownout threshold configuration
Enable brownout handling with CONFIG_ATM_BROWNOUT. Configure custom thresholds in an application
Devicetree overlay by adding properties to the &brownout node. When these properties are absent,
the driver selects defaults based on the SoC and battery configuration. The hardware-comparator
threshold properties use raw integer values, X.
Brownout threshold formulas
ATM34
Configuration |
Property |
Formula |
Valid value |
Default value |
|---|---|---|---|---|
Rechargeable or non-rechargeable, > 1.8 V
batt-type = <1 or 3>, batt-level = <1> |
|
|
8 to 311.8 V to 2.95 V
|
142.1 V
|
Rechargeable or non-rechargeable, <= 1.8 V
batt-type = <1 or 3>, batt-level = <0> |
|
|
4 to 311.0 V to 1.675 V
|
41.0 V
|
Li-ion VBATLI, > 1.8 V
batt-type = <0>, batt-level = <1> |
|
|
6 to 312.7 V to 3.95 V
|
102.9 V
|
Li-ion VBATLI, <= 1.8 V
batt-type = <0>, batt-level = <0> |
|
|
0 to 311.9 V to 2.675 V
|
82.1 V
|
ATM5
Configuration |
Property |
Formula |
Valid value |
Default value |
|---|---|---|---|---|
Boost mode |
|
|
3 to 140.95 V to 1.225 V
|
30.95 V
|
Buck mode |
|
|
3 to 141.9 V to 2.45 V
|
31.9 V
|
brownout-thr-vbatType:
intRaw hardware-comparator threshold for the applicable ATM34 or ATM5 configuration. See the platform-specific table above for the formula and valid range.
brownout-thr-vstoreType:
intRaw VSTORE brownout threshold for ATM34 non-VBATLI configurations that monitor VSTORE. See the ATM34 table above for its formula and range. For a rechargeable battery,
brownout-thr-vstoremust be31.brownout-thr-vbat-hysteresis-deltaType:
intRaw value added to
brownout-thr-vbatafter a brownout wakeup to provide hysteresis. The summed raw threshold must be within the applicable platform range; an invalid configuration is rejected at build time. On ATM34, the resulting hysteresis voltage formula includes a fixed +0.1 V offset, the same offset used byinitial-volt-check-thr. The delta must be non-negative, and the sum of this value andbrownout-thr-vbatmust satisfy the same configuration-specific range shown in the table above.An explicit
brownout-thr-vbat-hysteresis-deltaproperty overrides these fallbacks.
Harvesting configuration
nonrf-harvType:
booleanEnables photovoltaic (PV) harvesting. Can be specified with
rf-harvto enable combined harvesting.rf-harvType:
booleanEnables RF harvesting. Can be specified with
nonrf-harvto enable combined harvesting.vharv-rangeType:
intThe harvesting range must be specified when using PV harvesting and needs to match the PV cell operating region.
Valid
vharv-rangevalues:0: 0.4 V - 0.45 V1: 0.45 V - 0.5 V2: 0.525 V - 0.6 V3: 0.6 V - 0.7 V4: 0.675 V - 0.8 V5: 0.75 V - 0.9 V6: 0.825 V - 1.0 V7: 0.9 V - 1.1 V8: 0.975 V - 1.2 V9: 1.05 V - 1.3 V10: 1.175 V - 1.45 V11: 1.3 V - 1.6 V12: 1.5 V - 1.8 V13: 1.7 V - 2.0 V14: 1.95 V - 2.25 V15: 2.2 V - 2.5 V
External boost options
boost-from-vharv-inductorType:
booleanThis option is only available with Li-ion (
batt-type = <0>), PV harvesting enabled, and a validvharv-rangesetting.Refer to the application notes for the applicable scenarios, hardware connections, and performance.
Based on the selected PV cell characteristics, choose the lower or upper level of
vharv-rangeby enabling one of these properties:vharv-llvharv-ul
vharv-llType:
booleanSelect the lower level of the configured
vharv-range.vharv-ulType:
booleanSelect the upper level of the configured
vharv-range.dig-test-out-pinType:
intDigital test output pin. Set when using inductive boost.
boost-io-pinType:
intBoost I/O pin. Set when using two-diode boost.
boost-from-vharv-two-diodeType:
booleanThis option is only available with Li-ion (
batt-type = <0>), PV harvesting enabled, and a validvharv-rangesetting.Refer to the application notes for the applicable scenarios, hardware connections, and performance.
boost-from-vstore-two-diodeType:
booleanThis option is only available with Li-ion (
batt-type = <0>), PV harvesting enabled, and a validvharv-rangesetting.Refer to the application notes for the applicable scenarios, hardware connections, and performance.
Harvesting meter
harv-meterType:
booleanSupported only when MPPT is disabled. The application must call the
pmu_set_harv_meter()API to start or stop the meter.Instantaneous power computation depends on the configured
vharv-rangeand the inductor used.inductor-nhenryType:
intInductor value, in nH, used in the board design for the harvesting meter.
SoC-off wakeup configuration
soc-off-lpcomp-wakeup-pinType:
intLP comparator input pin number for SoC-off wakeup.
Valid values are platform-specific:
ATM33/e, ATM34/e, ATM5/e:
3or4
When this property is defined,
soc-off-lpcomp-ref-levelmust also be defined.soc-off-lpcomp-ref-levelType:
intLP comparator reference voltage level (
1to15).The system wakes when the input voltage crosses this threshold.
This property is required when
soc-off-lpcomp-wakeup-pinis defined.
32 kHz crystal load calibration
xtal-32k-cap-inType:
int32 kHz crystal load value on
XTALI_32K. The value is calculated using calibration tools.xtal-32k-cap-outType:
int32 kHz crystal load value on
XTALO_32K. The value is calculated using calibration tools.