Jump to content

Mainline:Broadcom Kona/BCM590xx/Regulators

From dissonant.dev wiki
Revision as of 21:46, 15 September 2025 by Knuxify (talk | contribs) (Created page with "{{hatnote|Relevant downstream drivers: {{downstream|baffinlite|drivers/regulator/bcmpmu59xxx-regulator.c}}; {{downstream|baffinlite|bcmpmu-regulator.c}}; {{downstream|baffinlite|drivers/regulator/bcm590xx-regulator.c}} and {{downstream|baffinlite|drivers/regulator/bcm59055_regulator.c}} for BCM59055.}} The BCM590xx PMUs have configurable voltage regulators. == Regulator types == There are two types of regulators: '''LDO''' (low dropout) and '''SR''' (switcher). Regula...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

The BCM590xx PMUs have configurable voltage regulators.

Regulator types

There are two types of regulators: LDO (low dropout) and SR (switcher). Regulator names are suffixed with these shortcuts to indicate their type (e.g. LVLDO1 is an LDO, CSR is an SR).

Operating modes

The operating modes for each regulator are stored in PMMODE registers. These registers are used to store operating modes for various PC (pin control) configurations. The mode that ends up being used is determined based on the state of PC1 and PC2 pins (and optionally the GPIO1 pin, if it's configured to the PC3 function in GPIOCTRL).

LDOs have 2-bit modes. The available modes are ON (0), LPM (low power mode; 1) and OFF (2). Mode 3 is presumably invalid, but hasn't been tested.

SRs have 3-bit modes. The exact function of each mode is unknown; the vendor kernel does not bother with the distinction and applies the LDO modes described above.

LDOs get 2 PMMODE registers each; SRs get 4 PMMODE registers. This is to accomodate the different mode sizes.

There is no known way to query the state of PC pins from the BCM590xx itself; instead, the SoC's pinmux interface could be used.

See also