[PATCH v3 0/5] sy7636a: power the panel only during updates

From: Pablo Mazzini

Date: Sun Nov 08 2026 - 04:36:46 EST


The SY7636A hwmon driver keeps VCOM on from probe, so a display driver
can not power the panel only during updates.

Read the temperature only while the rails are on instead, and bind the
regulator to the I2C device directly, with the hwmon driver as its
auxiliary driver.

v2 patches 1-3 are in regulator for-7.5, so this is based on it.
Patch 3 touches the regulator, hwmon and MFD drivers and removes the
MFD header, so the series should go through the regulator tree, with
acks from Guenter and Lee.

Tested on a PocketBook Verse (B288).

v3:
- drop the applied patches 1-3
- new patch 1: no wait when power good is already high (Mark)
- move the I2C binding before the hwmon read change, so the hwmon driver
only probes once vin is on (Andreas)
- patch 4: explain in a comment why power good gates the read, and its
limitation (Guenter, Andreas)

v2:
- drop the DT patch keeping VCOM always-on (Andreas)
- only wait for power good, VCOM_EN stays as it was (Andreas)
- new patch: fix negative temperatures
- keep the temperature in drivers/hwmon as an auxiliary driver of the
regulator, instead of moving it into the regulator driver (Guenter,
Andreas)
- no VCOM enable at probe, which also removes the probe race
- read power good and the temperature in one transfer (Andreas)

Pablo Mazzini (5):

regulator: sy7636a: don't wait for power good if already on
hwmon: sy7636a: fix negative temperatures
regulator: sy7636a: bind to the I2C device directly
hwmon: sy7636a: read the temperature only while the rails are on
ARM: imx_v6_v7_defconfig: drop the SY7636A MFD option

arch/arm/configs/imx_v6_v7_defconfig | 1 -
drivers/hwmon/Kconfig | 2 +-
drivers/hwmon/sy7636a-hwmon.c | 66 ++++++++++++--------
drivers/mfd/Kconfig | 10 ---
drivers/mfd/simple-mfd-i2c.c | 11 ----
drivers/regulator/Kconfig | 4 +-
drivers/regulator/sy7636a-regulator.c | 90 ++++++++++++++++-----------
include/linux/mfd/sy7636a.h | 34 ----------
8 files changed, 99 insertions(+), 119 deletions(-)
delete mode 100644 include/linux/mfd/sy7636a.h


base-commit: 2a1984b30e9cfcb306a076cb4b9e68d71daeb45c
--
2.52.0