[PATCHv3 00/14] Introduce RK806 Support

From: Sebastian Reichel
Date: Fri Sep 09 2022 - 13:55:44 EST


Hi,

The Rockchip RK3588 Evaluation Boards use SPI connected RK806
PMICs. Downstream this is handled by a new driver, but apart
from being SPI connected this chip is quite similar to the
ther Rockchip PMICs (also RK806 is promoted to also support
I2C). Thus this series instead updates RK808.

Changelog since PATCHv2:
* https://lore.kernel.org/all/20220908003107.220143-1-sebastian.reichel@xxxxxxxxxxxxx/
* Change DT binding to not allow nldo-reg6
* Fix DT binding to check for [np]ldo-reg instead of [np]ldo_reg
* remove rk806_get_voltage_sel_regmap in favour of regulator_get_voltage_sel_regmap
* drop rk806_set_voltage in favour of regulator_set_voltage_sel_regmap
* use regulator_set_ramp_delay_regmap
* drop possibly incorrect printing of chip id register address in case of errors

Changelog since PATCHv1:
* https://lore.kernel.org/all/20220831215437.117880-1-sebastian.reichel@xxxxxxxxxxxxx/
* Collect Acked-by
* Avoid if/else checks for regulator id in rk806 regulator driver
* Fix indentation in DTS example section of the rk806 binding
* Use absolute path for regulator.yaml referencing in the rk806 binding
* Reduce pattern for DCDC regulators to only allow 1-10
* replace uppercase name with lowercase ones in regulator names
* replace _ with - in regulator names

-- Sebastian

Sebastian Reichel (14):
mfd: rk808: convert to device managed resources
mfd: rk808: use dev_err_probe
clk: RK808: reduce 'struct rk808' usage
regulator: rk808: reduce 'struct rk808' usage
rtc: rk808: reduce 'struct rk808' usage
mfd: rk808: replace 'struct i2c_client' with 'struct device'
mfd: rk808: split into core and i2c
dt-bindings: mfd: add rk806 binding
mfd: rk8xx: add rk806 support
pinctrl: rk805: add rk806 pinctrl support
regulator: rk808: Use dev_err_probe
regulator: expose regmap_find_closest_bigger
regulator: rk808: add rk806 support
ASoC: rk817: Remove 'select REGMAP_I2C'

.../bindings/mfd/rockchip,rk806.yaml | 388 ++++++++++++++++
drivers/clk/clk-rk808.c | 34 +-
drivers/mfd/Kconfig | 19 +
drivers/mfd/Makefile | 4 +-
drivers/mfd/{rk808.c => rk8xx-core.c} | 343 +++++---------
drivers/mfd/rk8xx-i2c.c | 203 +++++++++
drivers/mfd/rk8xx-spi.c | 128 ++++++
drivers/pinctrl/pinctrl-rk805.c | 189 +++++++-
drivers/regulator/helpers.c | 20 +-
drivers/regulator/rk808-regulator.c | 410 ++++++++++++++++-
drivers/rtc/rtc-rk808.c | 47 +-
include/linux/mfd/rk808.h | 417 +++++++++++++++++-
include/linux/regulator/driver.h | 2 +
sound/soc/codecs/Kconfig | 1 -
14 files changed, 1895 insertions(+), 310 deletions(-)
create mode 100644 Documentation/devicetree/bindings/mfd/rockchip,rk806.yaml
rename drivers/mfd/{rk808.c => rk8xx-core.c} (71%)
create mode 100644 drivers/mfd/rk8xx-i2c.c
create mode 100644 drivers/mfd/rk8xx-spi.c

--
2.35.1