This series port the IO-domain driver for RK3568 from linux. It is necessary for the IO-domain setting of the SoC to match the voltage supplied by the regulators.
The driver auto probe after bind and configures IO-domain based on the voltage reported by the regulators. This fixes issues observed while working on a gmac driver for RK3568 devices. The IO-domain setting default to 3v3, however some vccio domains may be supplied by 1v8. I skipped a patch that fixes rk809 switch regulators to report voltage due to a discrepancy between dt-binding and reference schematics. In mfd/rockchip,rk809.yaml: vcc8-supply: The input supply for SWITCH_REG1. vcc9-supply: The input supply for DCDC_REG5 and SWITCH_REG2. In reference schematics: VCC8: Switch2 VCC9: Switch1 and BUCK5 Vendor U-Boot use the input supply based on schematics to report voltage. The IO-domain driver will just continue to next IO-domain when a regulator is reporting 0 uV. Patch 1 fixes rk8xx buck regulator driver to report correct voltage. Patch 2 adds protection so that regulator autoset only happens one time. Patch 3 adds the IO-domain driver. This series can also be found at [1] [1] https://github.com/Kwiboo/u-boot-rockchip/commits/rk3568-io-domain-v1 Jonas Karlman (2): power: regulator: Only run autoset once for each regulator rockchip: Port IO-domain driver for RK3568 from linux Joseph Chen (1): regulator: rk8xx: Return correct voltage for buck converters drivers/misc/Kconfig | 9 ++ drivers/misc/Makefile | 1 + drivers/misc/rockchip-io-domain.c | 157 +++++++++++++++++++++ drivers/power/regulator/regulator-uclass.c | 18 ++- drivers/power/regulator/rk8xx.c | 98 ++++++++----- include/power/regulator.h | 1 + 6 files changed, 242 insertions(+), 42 deletions(-) create mode 100644 drivers/misc/rockchip-io-domain.c -- 2.41.0