xref: /linux/Documentation/devicetree/bindings/power/supply/sc27xx-fg.yaml (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/power/supply/sc27xx-fg.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Spreadtrum SC27XX PMICs Fuel Gauge Unit Power Supply
8
9maintainers:
10  - Sebastian Reichel <sre@kernel.org>
11
12allOf:
13  - $ref: power-supply.yaml#
14
15properties:
16  compatible:
17    enum:
18      - sprd,sc2720-fgu
19      - sprd,sc2721-fgu
20      - sprd,sc2723-fgu
21      - sprd,sc2730-fgu
22      - sprd,sc2731-fgu
23
24  reg:
25    maxItems: 1
26
27  battery-detect-gpios:
28    maxItems: 1
29
30  interrupts:
31    maxItems: 1
32
33  io-channels:
34    items:
35      - description: Battery Temperature ADC
36      - description: Battery Charge Voltage ADC
37
38  io-channel-names:
39    items:
40      - const: bat-temp
41      - const: charge-vol
42
43  nvmem-cells:
44    maxItems: 1
45    description: Calibration cells provided by eFuse device
46
47  nvmem-cell-names:
48    const: fgu_calib
49
50  sprd,calib-resistance-micro-ohms:
51    description: real resistance of coulomb counter chip in micro Ohms
52
53  monitored-battery: true
54
55required:
56  - compatible
57  - reg
58  - battery-detect-gpios
59  - interrupts
60  - io-channels
61  - io-channel-names
62  - nvmem-cells
63  - nvmem-cell-names
64  - sprd,calib-resistance-micro-ohms
65  - monitored-battery
66
67additionalProperties: false
68
69examples:
70  - |
71    #include <dt-bindings/gpio/gpio.h>
72    bat: battery {
73      compatible = "simple-battery";
74      charge-full-design-microamp-hours = <1900000>;
75      constant-charge-voltage-max-microvolt = <4350000>;
76      ocv-capacity-celsius = <20>;
77      ocv-capacity-table-0 = <4185000 100>, <4113000 95>, <4066000 90>,
78                             <4022000 85>, <3983000 80>, <3949000 75>,
79                             <3917000 70>, <3889000 65>, <3864000 60>,
80                             <3835000 55>, <3805000 50>, <3787000 45>,
81                             <3777000 40>, <3773000 35>, <3770000 30>,
82                             <3765000 25>, <3752000 20>, <3724000 15>,
83                             <3680000 10>, <3605000 5>, <3400000 0>;
84                             // ...
85    };
86
87    pmic {
88      #address-cells = <1>;
89      #size-cells = <0>;
90
91      battery@a00 {
92        compatible = "sprd,sc2731-fgu";
93        reg = <0xa00>;
94        battery-detect-gpios = <&pmic_eic 9 GPIO_ACTIVE_HIGH>;
95        interrupt-parent = <&sc2731_pmic>;
96        interrupts = <4>;
97        io-channels = <&pmic_adc 5>, <&pmic_adc 14>;
98        io-channel-names = "bat-temp", "charge-vol";
99        nvmem-cells = <&fgu_calib>;
100        nvmem-cell-names = "fgu_calib";
101        monitored-battery = <&bat>;
102        sprd,calib-resistance-micro-ohms = <21500>;
103      };
104    };
105