mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v4 00/10] regulator: Add AB8500 and AB8505 buck regulator support
@ 2026-09-14 21:11 Linus Walleij
  2026-09-14 21:11 ` [PATCH v4 01/10] regulator: ab8500: Fix AB8505 VANA voltage selectors Linus Walleij
                   ` (10 more replies)
  0 siblings, 11 replies; 13+ messages in thread
From: Linus Walleij @ 2026-09-14 21:11 UTC (permalink / raw)
  To: Stephan Gerhold, Liam Girdwood, Mark Brown, Axel Lin
  Cc: linux-kernel, Linus Walleij

While working on the Ux500 power domains it became apparent that the
device trees were using the DB8500 power-domain regulator for supplies
which actually come from buck converters in the AB8500 PMIC.

First: fix a bunch of bugs. All of these patches have Fixes: tags.
I do not consider any of them urgent or regressions, they can just
be queued in front of the new functionality.

Move some regulators over to using linear ranges before adding new
stuff since linear ranges are nice.

Add regulator driver support for the six SMPS1, SMPS2, SMPS3, ARM,
APE and MOD buck converters on AB8500. On AB8505, the corresponding
rails are named VSMPSA, VSMPSB, VSAFE, VARM, VSMPSC and VSMPSM.

The driver follows the active hardware selector, including the
additional AB8505 selector banks, and uses the variant-specific VARM
voltage encoding. It provides enable and low-power mode control for the
three peripheral bucks while leaving the SoC-controlled rails
voltage-only.

Compare the OTP-initialized peripheral buck enable state with the DT
boot-on and always-on constraints before applying them. Report any
mismatch at info level and leave the DT constraints in control. Firmware
may have changed the OTP-initialized registers before Linux probes.

Assisted-by: LLM
Signed-off-by: Linus Walleij <linusw@kernel.org>
---
Changes in v4:
- Replace forced preservation of OTP-enabled bucks with an informational
  check against DT boot-on and always-on constraints. Report mismatches
  with dev_info() without overriding the DT configuration.
- Link to v3: https://lore.kernel.org/r/20260914-ux500-dts-snowball-regulator-v3-0-7f92a365628e@kernel.org

Changes in v3:
- Dropped patches applied to the MFD and Ux500 SoC tree.
- Resend just the regulator patches to make things easier for the
  regulator maintainer.
- Link to v2: https://lore.kernel.org/r/20260901-ux500-dts-snowball-regulator-v2-0-fe88b01829bf@kernel.org

Changes in v2:
- Pick up Conor's ACK.
- Fix some terminology and clarify the DT bindings a bit.
- Link to v1: https://lore.kernel.org/r/20260831-ux500-dts-snowball-regulator-v1-0-fe279fff5e18@kernel.org

---
Linus Walleij (10):
      regulator: ab8500: Fix AB8505 VANA voltage selectors
      regulator: ab8500: Add AB8505 VAUX3 3.05 V setting
      regulator: ab8500: Handle AB8505 VINTCORE selector 7
      regulator: ab8500: Treat cut 1.0 VAUX3 as fixed
      regulator: ab8500: Test dedicated enable bits only
      regulator: ab8500: Propagate mode enable read errors
      regulator: ab8500: Use linear ranges for LDO voltages
      regulator: ab8500: Add buck converter support
      regulator: ab8500: Report buck OTP and DT state mismatches
      regulator: ab8500: Use scoped guard for shared mode mutex

 drivers/regulator/ab8500.c | 720 +++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 661 insertions(+), 59 deletions(-)
---
base-commit: cee9395acd8043be0644b25c34bfa86623f2b935
change-id: 20260820-ux500-dts-snowball-regulator-b35d2252bd57

Best regards,
-- 
Linus Walleij <linusw@kernel.org>


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2026-09-15 16:11 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-14 21:11 [PATCH v4 00/10] regulator: Add AB8500 and AB8505 buck regulator support Linus Walleij
2026-09-14 21:11 ` [PATCH v4 01/10] regulator: ab8500: Fix AB8505 VANA voltage selectors Linus Walleij
2026-09-14 21:11 ` [PATCH v4 02/10] regulator: ab8500: Add AB8505 VAUX3 3.05 V setting Linus Walleij
2026-09-14 21:11 ` [PATCH v4 03/10] regulator: ab8500: Handle AB8505 VINTCORE selector 7 Linus Walleij
2026-09-14 21:11 ` [PATCH v4 04/10] regulator: ab8500: Treat cut 1.0 VAUX3 as fixed Linus Walleij
2026-09-14 21:11 ` [PATCH v4 05/10] regulator: ab8500: Test dedicated enable bits only Linus Walleij
2026-09-14 21:11 ` [PATCH v4 06/10] regulator: ab8500: Propagate mode enable read errors Linus Walleij
2026-09-14 21:11 ` [PATCH v4 07/10] regulator: ab8500: Use linear ranges for LDO voltages Linus Walleij
2026-09-14 21:11 ` [PATCH v4 08/10] regulator: ab8500: Add buck converter support Linus Walleij
2026-09-15 15:40   ` Mark Brown
2026-09-14 21:11 ` [PATCH v4 09/10] regulator: ab8500: Report buck OTP and DT state mismatches Linus Walleij
2026-09-14 21:11 ` [PATCH v4 10/10] regulator: ab8500: Use scoped guard for shared mode mutex Linus Walleij
2026-09-15 16:11 ` [PATCH v4 00/10] regulator: Add AB8500 and AB8505 buck regulator support Mark Brown

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®