[PATCH v2 0/2] regulator: add support for SGM3804 Dual Output driver

Neil Armstrong
2026-04-30T08:48:51Z

Add support for the SG Micro SGM3804 Single Inductor Dual Output
Buck/Boost Converter used to power LCD panels a provide positive
and negative power rails with configurable voltage and active
discharge function for each output.

The SGM3804 is powered by the enable GPIO pins inputs and only
supports I2C write messages. Thus we can't use the regmap
helpers directly and we need to cache the selector and
rail discharge state then setup the rails once the gpio
is enabled.
In order to add flexibility and simplify the driver, the
regmap cache is enabled and populated with default values.

This regulator is used to provide vsn and vsn power to the
Ayaneo Pocket S2 dual-DSI LCD panel.

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
---
Changes in v2:
- Fixed bindings subject and gpios minItems
- Fixed regulator signed-off order
- Added second MODULE_AUTHOR entry
- Added more comments on how regmap cache is configured to work
- Link to v1: https://patch.msgid.link/20260428-topic-sm8650-ayaneo-pocket-s2-sgm3804-v1-0-1d8dc7620256@linaro.org

---
KancyJoe (1):
regulator: add SGM3804 Dual Output driver

Neil Armstrong (1):
regulator: dt-bindings: document the SGM3804 Dual Output regulator

.../bindings/regulator/sgmicro,sgm3804.yaml | 77 ++++++
drivers/regulator/Kconfig | 6 +
drivers/regulator/Makefile | 1 +
drivers/regulator/sgm3804-regulator.c | 290 +++++++++++++++++++++
4 files changed, 374 insertions(+)
---
base-commit: 39704f00f747aba3144289870b5fd8ac230a9aaf
change-id: 20260428-topic-sm8650-ayaneo-pocket-s2-sgm3804-8764fbb72eb7

Best regards,
--
Neil Armstrong <neil.armstrong@linaro.org>