[PATCH v3 0/4] Add pm8916 VM-BMS and LBC

From: Nikita Travkin
Date: Fri Sep 15 2023 - 01:02:02 EST


This series adds charger and "fuel-gauge" found in Qualcomm pm8916 PMIC.

The LBC - Linear Battery Charger is a simple CC/CV charger, that works
autonomously after the current and voltage limits are set.

The VM-BMS - Voltage Mode BMS is a simple hardware block that provides
average voltage on the battery terminals.

These two hardware blocks are used as the battery charging and
management solution in some old Qualcomm devices.

Signed-off-by: Nikita Travkin <nikita@xxxxxxx>
---
Changes in v3:
- Use device_property_* instead of of_*
- PROP_INPUT_CURRENT_LIMIT -> PROP_CONSTANT_CHARGE_CURRENT in lbc
- Report OCV with timeout in vm-bms
- Link to v2: https://lore.kernel.org/r/20230731-pm8916-bms-lbc-v2-0-82a4ebb39c16@xxxxxxx

Changes in v2:
- Add full interrupt list in the DT bindings. (Conor)
- Link to v1: https://lore.kernel.org/r/20230728-pm8916-bms-lbc-v1-0-56da32467487@xxxxxxx

---
Nikita Travkin (4):
dt-bindings: power: supply: Add pm8916 VM-BMS
dt-bindings: power: supply: Add pm8916 LBC
power: supply: Add pm8916 VM-BMS support
power: supply: Add driver for pm8916 lbc

.../bindings/power/supply/qcom,pm8916-bms-vm.yaml | 83 +++++
.../bindings/power/supply/qcom,pm8916-lbc.yaml | 128 +++++++
drivers/power/supply/Kconfig | 22 ++
drivers/power/supply/Makefile | 2 +
drivers/power/supply/pm8916_bms_vm.c | 305 +++++++++++++++++
drivers/power/supply/pm8916_lbc.c | 381 +++++++++++++++++++++
6 files changed, 921 insertions(+)
---
base-commit: dfa449a58323de195773cf928d99db4130702bf7
change-id: 20230727-pm8916-bms-lbc-3f80305326a2

Best regards,
--
Nikita Travkin <nikita@xxxxxxx>