[RFC PATCH 1/3] dt-bindings: power: supply: add CellWise CW2017 fuel gauge

From: Kupreenko Danila

Date: Thu Oct 29 2026 - 13:59:13 EST


Describe the CW2017 at its fixed I2C address. The battery-specific
profile must match both the battery and its temperature input. Do not
introduce a profile upload property for the read-only monitor.

Add the author's explicitly agreed local maintenance commitment.

Assisted-by: LLM
Signed-off-by: Kupreenko Danila <keckerz@xxxxxxxxx>
---
.../power/supply/cellwise,cw2017.yaml | 52 +++++++++++++++++++
MAINTAINERS | 6 +++
2 files changed, 58 insertions(+)
create mode 100644 Documentation/devicetree/bindings/power/supply/cellwise,cw2017.yaml

diff --git a/Documentation/devicetree/bindings/power/supply/cellwise,cw2017.yaml b/Documentation/devicetree/bindings/power/supply/cellwise,cw2017.yaml
new file mode 100644
index 000000000..a8404f150
--- /dev/null
+++ b/Documentation/devicetree/bindings/power/supply/cellwise,cw2017.yaml
@@ -0,0 +1,52 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/power/supply/cellwise,cw2017.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: CellWise CW2017 battery fuel gauge
+
+maintainers:
+ - Kupreenko Danila <Keckerz@xxxxxxxxx>
+
+description: |
+ The CW2017 estimates the state of charge of a battery using its voltage,
+ temperature and a battery-specific characterization profile. It has a fixed
+ I2C address of 0x63. The CW2017 is not register compatible with the CW2015.
+
+ The battery profile also configures the temperature input. It must match
+ the connected battery and temperature sensing circuit. A profile selecting
+ host-reported temperature requires an external provider to keep that input
+ up to date. The public datasheet does not describe the profile encoding.
+
+ Datasheet:
+ https://uploadcdn.oneyac.com/upload/document/1737612108523_8373.pdf
+
+allOf:
+ - $ref: power-supply.yaml#
+
+properties:
+ compatible:
+ const: cellwise,cw2017
+
+ reg:
+ items:
+ - const: 0x63
+
+required:
+ - compatible
+ - reg
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ fuel-gauge@63 {
+ compatible = "cellwise,cw2017";
+ reg = <0x63>;
+ };
+ };
diff --git a/MAINTAINERS b/MAINTAINERS
index 748ce4d1c..27124fd02 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -6154,6 +6154,12 @@ S: Maintained
F: Documentation/devicetree/bindings/power/supply/cw2015_battery.yaml
F: drivers/power/supply/cw2015_battery.c

+CELLWISE CW2017 BATTERY DRIVER
+M: Kupreenko Danila <Keckerz@xxxxxxxxx>
+L: linux-pm@xxxxxxxxxxxxxxx
+S: Maintained
+F: Documentation/devicetree/bindings/power/supply/cellwise,cw2017.yaml
+
CEPH COMMON CODE (LIBCEPH)
M: Ilya Dryomov <idryomov@xxxxxxxxx>
M: Alex Markuze <amarkuze@xxxxxxxxxx>
--
2.56.0