Add a driver for the Qualcomm PMI8998/SDM660 Switch-Mode Battery Charger "2". This replaces the previous SMBB hardware found in older PMICs. This driver provides basic support for initialising the hardware, configuring the USB input current limit and reporting information about the state of the charger. Features like type-c dual role support and OTG switching will be added in future patches. This patch series depends on my previous series adding support for the Round Robin ADC which is used for reading the USB voltage and current, it can be found here: https://lore.kernel.org/linux-arm-msm/20220323162820.110806-1-caleb@xxxxxxxxxxxxx/ --- Caleb Connolly (6): power: supply: add Qualcomm SMB2 driver arm64: dts: qcom: pmi8998: add smb2 node arm64: dts: sdm845-oneplus: enable smb2 arm64: dts: qcom: sdm845-db845c: enable smb2 arm64: dts: qcom: sdm845-xiaomi-beryllium enable smb2 dt-bindings: power: supply: qcom,smb2: add bindings for smb2 driver .../bindings/power/supply/qcom,smb2.yaml | 68 ++ arch/arm64/boot/dts/qcom/pmi8998.dtsi | 15 + arch/arm64/boot/dts/qcom/sdm845-db845c.dts | 18 + .../boot/dts/qcom/sdm845-oneplus-common.dtsi | 4 + .../dts/qcom/sdm845-oneplus-enchilada.dts | 4 + .../boot/dts/qcom/sdm845-oneplus-fajita.dts | 4 + .../boot/dts/qcom/sdm845-xiaomi-beryllium.dts | 14 + drivers/power/supply/Kconfig | 9 + drivers/power/supply/Makefile | 1 + drivers/power/supply/qcom_smb2.c | 930 ++++++++++++++++++ 10 files changed, 1067 insertions(+) create mode 100644 Documentation/devicetree/bindings/power/supply/qcom,smb2.yaml create mode 100644 drivers/power/supply/qcom_smb2.c -- 2.35.1