Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

regulator: dt-bindings: Clean-up active-semi,act8945a duplication

The active-semi,act8945a binding is documented in multiple places. The
charger child node is documented in regulator/active-semi,act8945a.yaml
and power/supply/active-semi,act8945a-charger.yaml. An old text binding
is in mfd/act8945a.txt.

Update the regulator/active-semi,act8945a.yaml with the additional
descriptions and constraints from
power/supply/active-semi,act8945a-charger.yaml, and then remove it and
mfd/act8945a.txt.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://patch.msgid.link/20250807214459.4173892-1-robh@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Rob Herring (Arm) and committed by
Mark Brown
a54ef141 bb244140

+19 -164
-82
Documentation/devicetree/bindings/mfd/act8945a.txt
··· 1 - Device-Tree bindings for Active-semi ACT8945A MFD driver 2 - 3 - Required properties: 4 - - compatible: "active-semi,act8945a". 5 - - reg: the I2C slave address for the ACT8945A chip 6 - 7 - The chip exposes two subdevices: 8 - - a regulators: see ../regulator/act8945a-regulator.txt 9 - - a charger: see ../power/act8945a-charger.txt 10 - 11 - Example: 12 - pmic@5b { 13 - compatible = "active-semi,act8945a"; 14 - reg = <0x5b>; 15 - 16 - active-semi,vsel-high; 17 - 18 - regulators { 19 - vdd_1v35_reg: REG_DCDC1 { 20 - regulator-name = "VDD_1V35"; 21 - regulator-min-microvolt = <1350000>; 22 - regulator-max-microvolt = <1350000>; 23 - regulator-always-on; 24 - }; 25 - 26 - vdd_1v2_reg: REG_DCDC2 { 27 - regulator-name = "VDD_1V2"; 28 - regulator-min-microvolt = <1100000>; 29 - regulator-max-microvolt = <1300000>; 30 - regulator-always-on; 31 - }; 32 - 33 - vdd_3v3_reg: REG_DCDC3 { 34 - regulator-name = "VDD_3V3"; 35 - regulator-min-microvolt = <3300000>; 36 - regulator-max-microvolt = <3300000>; 37 - regulator-always-on; 38 - }; 39 - 40 - vdd_fuse_reg: REG_LDO1 { 41 - regulator-name = "VDD_FUSE"; 42 - regulator-min-microvolt = <2500000>; 43 - regulator-max-microvolt = <2500000>; 44 - regulator-always-on; 45 - }; 46 - 47 - vdd_3v3_lp_reg: REG_LDO2 { 48 - regulator-name = "VDD_3V3_LP"; 49 - regulator-min-microvolt = <3300000>; 50 - regulator-max-microvolt = <3300000>; 51 - regulator-always-on; 52 - }; 53 - 54 - vdd_led_reg: REG_LDO3 { 55 - regulator-name = "VDD_LED"; 56 - regulator-min-microvolt = <3300000>; 57 - regulator-max-microvolt = <3300000>; 58 - regulator-always-on; 59 - }; 60 - 61 - vdd_sdhc_1v8_reg: REG_LDO4 { 62 - regulator-name = "VDD_SDHC_1V8"; 63 - regulator-min-microvolt = <1800000>; 64 - regulator-max-microvolt = <1800000>; 65 - regulator-always-on; 66 - }; 67 - }; 68 - 69 - charger { 70 - compatible = "active-semi,act8945a-charger"; 71 - pinctrl-names = "default"; 72 - pinctrl-0 = <&pinctrl_charger_chglev &pinctrl_charger_lbo &pinctrl_charger_irq>; 73 - interrupt-parent = <&pioA>; 74 - interrupts = <45 IRQ_TYPE_LEVEL_LOW>; 75 - 76 - active-semi,chglev-gpios = <&pioA 12 GPIO_ACTIVE_HIGH>; 77 - active-semi,lbo-gpios = <&pioA 72 GPIO_ACTIVE_LOW>; 78 - active-semi,input-voltage-threshold-microvolt = <6600>; 79 - active-semi,precondition-timeout = <40>; 80 - active-semi,total-timeout = <3>; 81 - }; 82 - };
-76
Documentation/devicetree/bindings/power/supply/active-semi,act8945a-charger.yaml
··· 1 - # SPDX-License-Identifier: GPL-2.0 2 - %YAML 1.2 3 - --- 4 - $id: http://devicetree.org/schemas/power/supply/active-semi,act8945a-charger.yaml# 5 - $schema: http://devicetree.org/meta-schemas/core.yaml# 6 - 7 - title: Active-semi ACT8945A Charger Function 8 - 9 - maintainers: 10 - - Sebastian Reichel <sre@kernel.org> 11 - 12 - allOf: 13 - - $ref: power-supply.yaml# 14 - 15 - properties: 16 - compatible: 17 - const: active-semi,act8945a-charger 18 - 19 - interrupts: 20 - maxItems: 1 21 - 22 - active-semi,chglev-gpios: 23 - maxItems: 1 24 - description: charge current level GPIO 25 - 26 - active-semi,lbo-gpios: 27 - maxItems: 1 28 - description: low battery voltage detect GPIO 29 - 30 - active-semi,input-voltage-threshold-microvolt: 31 - description: | 32 - Specifies the charger's input over-voltage threshold value. 33 - Despite the name, specified values are in millivolt (mV). 34 - Defaults to 6.6 V 35 - enum: [ 6600, 7000, 7500, 8000 ] 36 - 37 - active-semi,precondition-timeout: 38 - $ref: /schemas/types.yaml#/definitions/uint32 39 - description: | 40 - Specifies the charger's PRECONDITION safety timer setting value in minutes. 41 - If 0, it means to disable this timer. 42 - Defaults to 40 minutes. 43 - enum: [ 0, 40, 60, 80 ] 44 - 45 - active-semi,total-timeout: 46 - $ref: /schemas/types.yaml#/definitions/uint32 47 - description: | 48 - Specifies the charger's total safety timer setting value in hours; 49 - If 0, it means to disable this timer; 50 - Defaults to 3 hours. 51 - enum: [ 0, 3, 4, 5 ] 52 - 53 - required: 54 - - compatible 55 - - interrupts 56 - - active-semi,chglev-gpios 57 - - active-semi,lbo-gpios 58 - 59 - additionalProperties: false 60 - 61 - examples: 62 - - | 63 - #include <dt-bindings/gpio/gpio.h> 64 - #include <dt-bindings/interrupt-controller/irq.h> 65 - pmic { 66 - charger { 67 - compatible = "active-semi,act8945a-charger"; 68 - interrupt-parent = <&pioA>; 69 - interrupts = <45 IRQ_TYPE_LEVEL_LOW>; 70 - active-semi,chglev-gpios = <&pioA 12 GPIO_ACTIVE_HIGH>; 71 - active-semi,lbo-gpios = <&pioA 72 GPIO_ACTIVE_LOW>; 72 - active-semi,input-voltage-threshold-microvolt = <6600>; 73 - active-semi,precondition-timeout = <40>; 74 - active-semi,total-timeout = <3>; 75 - }; 76 - };
+19 -6
Documentation/devicetree/bindings/regulator/active-semi,act8945a.yaml
··· 91 91 maxItems: 1 92 92 93 93 active-semi,chglev-gpios: 94 - description: CGHLEV GPIO 94 + description: charge current level GPIO 95 95 maxItems: 1 96 96 97 97 active-semi,lbo-gpios: 98 - description: LBO GPIO 98 + description: low battery voltage detect GPIO 99 99 maxItems: 1 100 100 101 101 active-semi,input-voltage-threshold-microvolt: 102 - description: Input voltage threshold 103 - maxItems: 1 102 + description: 103 + Specifies the charger's input over-voltage threshold value. Despite 104 + the name, specified values are in millivolt (mV). 105 + enum: [ 6600, 7000, 7500, 8000 ] 106 + default: 6600 104 107 105 108 active-semi,precondition-timeout: 106 - description: Precondition timeout 109 + description: 110 + Specifies the charger's PRECONDITION safety timer setting value in 111 + minutes. If 0, it means to disable this timer. 112 + enum: [ 0, 40, 60, 80 ] 113 + default: 40 107 114 $ref: /schemas/types.yaml#/definitions/uint32 108 115 109 116 active-semi,total-timeout: 110 - description: Total timeout 117 + description: 118 + Specifies the charger's total safety timer setting value in hours; If 119 + 0, it means to disable this timer; 120 + enum: [ 0, 3, 4, 5 ] 121 + default: 3 111 122 $ref: /schemas/types.yaml#/definitions/uint32 112 123 113 124 required: 114 125 - compatible 115 126 - interrupts 127 + - active-semi,chglev-gpios 128 + - active-semi,lbo-gpios 116 129 117 130 additionalProperties: false 118 131