linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/11] power: supply: pmi8998 charger improvements and smb5 support
@ 2025-06-19 14:55 Casey Connolly
  2025-06-19 14:55 ` [PATCH 01/11] dt-bindings: power: supply: qcom,pmi89980-charger: add pm8150b and 7250b Casey Connolly
                   ` (12 more replies)
  0 siblings, 13 replies; 32+ messages in thread
From: Casey Connolly @ 2025-06-19 14:55 UTC (permalink / raw)
  To: Sebastian Reichel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Bjorn Andersson, Konrad Dybcio, Kees Cook, Gustavo A. R. Silva
  Cc: linux-arm-msm, linux-pm, devicetree, linux-kernel,
	Sebastian Reichel, linux-hardening, Casey Connolly

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.connolly@linaro.org>


^ permalink raw reply	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2025-08-24  2:56 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-19 14:55 [PATCH 00/11] power: supply: pmi8998 charger improvements and smb5 support Casey Connolly
2025-06-19 14:55 ` [PATCH 01/11] dt-bindings: power: supply: qcom,pmi89980-charger: add pm8150b and 7250b Casey Connolly
2025-06-27 19:40   ` Rob Herring (Arm)
2025-06-19 14:55 ` [PATCH 02/11] arm64: dts: qcom: sdm845-oneplus-*: set constant-charge-current-max-microamp Casey Connolly
2025-06-19 14:55 ` [PATCH 03/11] power: supply: qcom_pmi8998_charger: fix wakeirq Casey Connolly
2025-06-20 21:44   ` Dmitry Baryshkov
2025-06-19 14:55 ` [PATCH 04/11] power: supply: pmi8998_charger: rename to qcom_smbx Casey Connolly
2025-06-20  8:51   ` Luca Weiss
2025-06-19 14:55 ` [PATCH 05/11] power: supply: qcom_smbx: allow disabling charging Casey Connolly
2025-06-20 16:54   ` Konrad Dybcio
2025-06-22 19:13   ` Sebastian Reichel
2025-06-19 14:55 ` [PATCH 06/11] power: supply: qcom_smbx: respect battery charge-term-current-microamp Casey Connolly
2025-06-20 16:57   ` Konrad Dybcio
2025-06-22 18:28   ` Sebastian Reichel
2025-06-19 14:55 ` [PATCH 07/11] power: supply: qcom_smbx: bump up the max current Casey Connolly
2025-06-20 17:07   ` Konrad Dybcio
2025-06-19 14:55 ` [PATCH 08/11] power: supply: qcom_smbx: remove unused registers Casey Connolly
2025-06-19 14:55 ` [PATCH 09/11] power: supply: qcom_smbx: add smb5 support Casey Connolly
2025-06-20  3:32   ` kernel test robot
2025-06-20  8:39   ` Luca Weiss
2025-06-20  9:01   ` Luca Weiss
2025-06-24  1:06   ` Dmitry Baryshkov
2025-06-29 23:06     ` Caleb Connolly
2025-06-29 23:14       ` Dmitry Baryshkov
2025-06-19 14:55 ` [PATCH 10/11] MAINTAINERS: add myself as smbx charger driver maintainer Casey Connolly
2025-06-20  8:40   ` Luca Weiss
2025-06-19 14:55 ` [PATCH 11/11] power: supply: qcom_smbx: program aicl rerun time Casey Connolly
2025-06-20 17:00   ` Konrad Dybcio
2025-06-23 16:33     ` Casey Connolly
2025-06-23 16:40       ` Konrad Dybcio
2025-06-22 19:13 ` (subset) [PATCH 00/11] power: supply: pmi8998 charger improvements and smb5 support Sebastian Reichel
2025-08-24  2:55 ` Bjorn Andersson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).