Message ID | 20240321143911.90210-2-knaerzche@gmail.com (mailing list archive) |
---|---|
Headers | show |
Series | Add RK816 PMIC support | expand |
Hello Alex, On 2024-03-21 15:39, Alex Bee wrote: > This series aims to add support for Rockchip RK816 PMIC series. As per > datasheet it's targeted for RK3126/RK3128 (RK816-1), RK1108 (RK816-2) > and > PX3-SE (RK816-3) but might be used for other SoCs as well. The mfd > consists > of an integrated RTC, a GPIO controller, two 32k clock outputs, a power > key > (output), 4 buck- and 5 ldo regulators, 3 regulator-switches, and > charger > with integrated fuel gauge. Charger and fuel gauge are not part of this > series. Two of the switches (otg/boost) are part of the binding, but > not of > the driver. They must only ever by enabled if no battery charging is > happening, but it will be enabled automatically if a battery is > attached. > Thus they need some incorporation of a yet to be added charger driver. > Integration in the existing rk8xx-infrastructure was pretty > straightforward > and only needed very little tweaking. In order to not further bloat the > driver(s) too much with additional definitions I tried to re-use > existing > ones wherever possible. > > The patches are loosely based on the vendor's implementation, verified > against the datasheet and tested/measured on RK3126 board. As they are > touching several subsystems I'm sending them (very) early for the > 6.10-cycle. I went quickly through all patches in the series except the one that adds the bindings, and I've spotted no glaring issues. My main focus was on ensuring there should be no regressions. Thus, not worth a Reviewed-by tag, but still counting as a review. > Alex Bee (5): > dt-bindings: mfd: Add rk816 binding > mfd: rk8xx: Add RK816 support > pinctrl: rk805: Add rk816 pinctrl support > regulator: rk808: Support apply_bit for > rk808_set_suspend_voltage_range > regulator: rk808: Add RK816 support > > .../bindings/mfd/rockchip,rk816.yaml | 259 ++++++++++++++++++ > drivers/mfd/Kconfig | 4 +- > drivers/mfd/rk8xx-core.c | 103 +++++++ > drivers/mfd/rk8xx-i2c.c | 45 ++- > drivers/pinctrl/pinctrl-rk805.c | 68 +++++ > drivers/regulator/rk808-regulator.c | 218 ++++++++++++++- > include/linux/mfd/rk808.h | 141 ++++++++++ > 7 files changed, 831 insertions(+), 7 deletions(-) > create mode 100644 > Documentation/devicetree/bindings/mfd/rockchip,rk816.yaml