This series contains fixes and cleanups for the pmi8998 charger driver, as well as introducing support for the newer smb5 charger found in the pm8150b and other newer Qualcomm PMICs..
A bug is fixed where wakeirq enable/disable refcounting wasn't respected when the driver was unloaded and reloaded. Support is added for disabling charging entirely by writing a 0 to the "status" register (as described in the psy documentation). This allows for userspace programs to manage charging, e.g. to stop at 80% capacity. The AICL re-run interval is programmed to a consistent value (3 seconds). The battery property charge-term-current-microamp is now respected, this is used to program the constant charge current limit during the fast charging phase. This also makes it safer to increase the max current limit this driver originally imposed from 1A to ~2A. According to the PMIC docs this is easy to handle without a secondary charger chip (which most but not all phones have). Further increasing the charge current limit would require tighter integration with thermal zones and a mechanism to limit the current when the device gets too warm (e.g. by modelling the power supply as a cooling device). This infrastructure is currently missing from the kernel. --- Casey Connolly (11): dt-bindings: power: supply: qcom,pmi89980-charger: add pm8150b and 7250b arm64: dts: qcom: sdm845-oneplus-*: set constant-charge-current-max-microamp power: supply: qcom_pmi8998_charger: fix wakeirq power: supply: pmi8998_charger: rename to qcom_smbx power: supply: qcom_smbx: allow disabling charging power: supply: qcom_smbx: respect battery charge-term-current-microamp power: supply: qcom_smbx: bump up the max current power: supply: qcom_smbx: remove unused registers power: supply: qcom_smbx: add smb5 support MAINTAINERS: add myself as smbx charger driver maintainer power: supply: qcom_smbx: program aicl rerun time .../power/supply/qcom,pmi8998-charger.yaml | 2 + MAINTAINERS | 7 + .../boot/dts/qcom/sdm845-oneplus-enchilada.dts | 8 + arch/arm64/boot/dts/qcom/sdm845-oneplus-fajita.dts | 8 + drivers/power/supply/Makefile | 2 +- .../supply/{qcom_pmi8998_charger.c => qcom_smbx.c} | 730 ++++++++++++--------- 6 files changed, 430 insertions(+), 327 deletions(-) --- base-commit: bc6e0ba6c9bafa6241b05524b9829808056ac4ad change-id: 20250518-smb2-smb5-support-01685eca6fbb Casey Connolly <casey.conno...@linaro.org>