162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/power/supply/cw2015_battery.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: Battery driver for CW2015 shuntless fuel gauge by CellWise.
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Tobias Schramm <t.schramm@manjaro.org>
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_cidescription: |
1362306a36Sopenharmony_ci  The driver can utilize information from a simple-battery linked via a
1462306a36Sopenharmony_ci  phandle in monitored-battery. If specified the driver uses the
1562306a36Sopenharmony_ci  charge-full-design-microamp-hours property of the battery.
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ciallOf:
1862306a36Sopenharmony_ci  - $ref: power-supply.yaml#
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ciproperties:
2162306a36Sopenharmony_ci  compatible:
2262306a36Sopenharmony_ci    const: cellwise,cw2015
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ci  reg:
2562306a36Sopenharmony_ci    maxItems: 1
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_ci  cellwise,battery-profile:
2862306a36Sopenharmony_ci    description: |
2962306a36Sopenharmony_ci      This property specifies characteristics of the battery used. The format
3062306a36Sopenharmony_ci      of this binary blob is kept secret by CellWise. The only way to obtain
3162306a36Sopenharmony_ci      it is to mail two batteries to a test facility of CellWise and receive
3262306a36Sopenharmony_ci      back a test report with the binary blob.
3362306a36Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/uint8-array
3462306a36Sopenharmony_ci    minItems: 64
3562306a36Sopenharmony_ci    maxItems: 64
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ci  cellwise,monitor-interval-ms:
3862306a36Sopenharmony_ci    description:
3962306a36Sopenharmony_ci      Specifies the interval in milliseconds gauge values are polled at
4062306a36Sopenharmony_ci    minimum: 250
4162306a36Sopenharmony_ci
4262306a36Sopenharmony_ci  power-supplies:
4362306a36Sopenharmony_ci    minItems: 1
4462306a36Sopenharmony_ci    maxItems: 8 # Should be enough
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ci  monitored-battery:
4762306a36Sopenharmony_ci    description:
4862306a36Sopenharmony_ci      Specifies the phandle of a simple-battery connected to this gauge
4962306a36Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/phandle
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_cirequired:
5262306a36Sopenharmony_ci  - compatible
5362306a36Sopenharmony_ci  - reg
5462306a36Sopenharmony_ci
5562306a36Sopenharmony_ciadditionalProperties: false
5662306a36Sopenharmony_ci
5762306a36Sopenharmony_ciexamples:
5862306a36Sopenharmony_ci  - |
5962306a36Sopenharmony_ci    i2c {
6062306a36Sopenharmony_ci        #address-cells = <1>;
6162306a36Sopenharmony_ci        #size-cells = <0>;
6262306a36Sopenharmony_ci
6362306a36Sopenharmony_ci        cw2015@62 {
6462306a36Sopenharmony_ci            compatible = "cellwise,cw2015";
6562306a36Sopenharmony_ci            reg = <0x62>;
6662306a36Sopenharmony_ci            cellwise,battery-profile = /bits/ 8 <
6762306a36Sopenharmony_ci                0x17 0x67 0x80 0x73 0x6E 0x6C 0x6B 0x63
6862306a36Sopenharmony_ci                0x77 0x51 0x5C 0x58 0x50 0x4C 0x48 0x36
6962306a36Sopenharmony_ci                0x15 0x0C 0x0C 0x19 0x5B 0x7D 0x6F 0x69
7062306a36Sopenharmony_ci                0x69 0x5B 0x0C 0x29 0x20 0x40 0x52 0x59
7162306a36Sopenharmony_ci                0x57 0x56 0x54 0x4F 0x3B 0x1F 0x7F 0x17
7262306a36Sopenharmony_ci                0x06 0x1A 0x30 0x5A 0x85 0x93 0x96 0x2D
7362306a36Sopenharmony_ci                0x48 0x77 0x9C 0xB3 0x80 0x52 0x94 0xCB
7462306a36Sopenharmony_ci                0x2F 0x00 0x64 0xA5 0xB5 0x11 0xF0 0x11
7562306a36Sopenharmony_ci           >;
7662306a36Sopenharmony_ci           cellwise,monitor-interval-ms = <5000>;
7762306a36Sopenharmony_ci           monitored-battery = <&bat>;
7862306a36Sopenharmony_ci           power-supplies = <&mains_charger>, <&usb_charger>;
7962306a36Sopenharmony_ci       };
8062306a36Sopenharmony_ci    };
81