summaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/regulator/act8945a-regulator.txt
diff options
context:
space:
mode:
authorPaul Cercueil <paul@crapouillou.net>2022-12-14 16:51:52 +0100
committerMark Brown <broonie@kernel.org>2022-12-26 00:33:41 +0100
commit413ec72963fc297f419a3d5f931bb43921969749 (patch)
tree1491e977d133153f96c877eec229c2713c01b22d /Documentation/devicetree/bindings/regulator/act8945a-regulator.txt
parentLinux 6.2-rc1 (diff)
downloadlinux-413ec72963fc297f419a3d5f931bb43921969749.tar.xz
linux-413ec72963fc297f419a3d5f931bb43921969749.zip
regulator: dt-bindings: Convert active-semi PMIC docs to YAML schemas
Create YAML bindings for the Active-semi PMICs and remove the old text files. The bindings aren't perfect, for instance I couldn't find good descriptions for the vendor properties in the "charger" node of the ACT8945A because I am not familiar with the hardware and these properties were not documented anywhere. The YAML schemas are a bit different than what is described in the old text files, because these were sometimes wrong or had missing information. This is the case for the ACT8600 documentation, which specified the valid node names for the regulators, while the driver was expecting different names. This led to the current situation where we have two different boards using different names for the regulators: - arch/mips/boot/dts/ingenic/ci20.dts uses the names documented in the text file, - arch/mips/boot/dts/ingenic/gcw0.dts uses the names that the driver expects. In theory, the driver should be fixed to follow the documentation, and accept both naming schemes. In practice though, when the PMIC node was added to the ci20.dts board file, the names were already wrong in regards to what the driver expected, so it never really worked correctly and wasn't tested properly. Furthermore, in that board the consumers of the regulators aren't working for various other reasons (invalid GPIOs, etc.). For that reason, for the ACT8600 bindings I decided to only use the node names that the driver expects (and that gcw0.dts uses), instead of accepting both old and new names. A follow-up patch will update the CI20 board to use the new regulator names. Signed-off-by: Paul Cercueil <paul@crapouillou.net> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20221214155152.14349-1-paul@crapouillou.net Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'Documentation/devicetree/bindings/regulator/act8945a-regulator.txt')
-rw-r--r--Documentation/devicetree/bindings/regulator/act8945a-regulator.txt113
1 files changed, 0 insertions, 113 deletions
diff --git a/Documentation/devicetree/bindings/regulator/act8945a-regulator.txt b/Documentation/devicetree/bindings/regulator/act8945a-regulator.txt
deleted file mode 100644
index 4017527619ab..000000000000
--- a/Documentation/devicetree/bindings/regulator/act8945a-regulator.txt
+++ /dev/null
@@ -1,113 +0,0 @@
-Device-Tree bindings for regulators of Active-semi ACT8945A Multi-Function Device
-
-Required properties:
- - compatible: "active-semi,act8945a", please refer to ../mfd/act8945a.txt.
-
-Optional properties:
-- active-semi,vsel-high: Indicates if the VSEL pin is set to logic-high.
- If this property is missing, assume the VSEL pin is set to logic-low.
-
-Optional input supply properties:
- - vp1-supply: The input supply for REG_DCDC1
- - vp2-supply: The input supply for REG_DCDC2
- - vp3-supply: The input supply for REG_DCDC3
- - inl45-supply: The input supply for REG_LDO1 and REG_LDO2
- - inl67-supply: The input supply for REG_LDO3 and REG_LDO4
-
-Any standard regulator properties can be used to configure the single regulator.
-regulator-initial-mode, regulator-allowed-modes and regulator-mode could be
-specified using mode values from dt-bindings/regulator/active-semi,8945a-regulator.h
-file.
-
-The valid names for regulators are:
- REG_DCDC1, REG_DCDC2, REG_DCDC3, REG_LDO1, REG_LDO2, REG_LDO3, REG_LDO4.
-
-Example:
-
-#include <dt-bindings/regulator/active-semi,8945a-regulator.h>
-
- pmic@5b {
- compatible = "active-semi,act8945a";
- reg = <0x5b>;
-
- active-semi,vsel-high;
-
- regulators {
- vdd_1v35_reg: REG_DCDC1 {
- regulator-name = "VDD_1V35";
- regulator-min-microvolt = <1350000>;
- regulator-max-microvolt = <1350000>;
- regulator-always-on;
-
- regulator-allowed-modes = <ACT8945A_REGULATOR_MODE_FIXED>,
- <ACT8945A_REGULATOR_MODE_LOWPOWER>;
- regulator-initial-mode = <ACT8945A_REGULATOR_MODE_FIXED>;
-
- regulator-state-mem {
- regulator-on-in-suspend;
- regulator-suspend-min-microvolt=<1400000>;
- regulator-suspend-max-microvolt=<1400000>;
- regulator-changeable-in-suspend;
- regulator-mode=<ACT8945A_REGULATOR_MODE_LOWPOWER>;
- };
- };
-
- vdd_1v2_reg: REG_DCDC2 {
- regulator-name = "VDD_1V2";
- regulator-min-microvolt = <1100000>;
- regulator-max-microvolt = <1300000>;
- regulator-always-on;
-
- regulator-allowed-modes = <ACT8945A_REGULATOR_MODE_FIXED>,
- <ACT8945A_REGULATOR_MODE_LOWPOWER>;
- regulator-initial-mode = <ACT8945A_REGULATOR_MODE_FIXED>;
-
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- vdd_3v3_reg: REG_DCDC3 {
- regulator-name = "VDD_3V3";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- };
-
- vdd_fuse_reg: REG_LDO1 {
- regulator-name = "VDD_FUSE";
- regulator-min-microvolt = <2500000>;
- regulator-max-microvolt = <2500000>;
- regulator-always-on;
-
- regulator-allowed-modes = <ACT8945A_REGULATOR_MODE_NORMAL>,
- <ACT8945A_REGULATOR_MODE_LOWPOWER>;
- regulator-initial-mode = <ACT8945A_REGULATOR_MODE_NORMAL>;
-
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- vdd_3v3_lp_reg: REG_LDO2 {
- regulator-name = "VDD_3V3_LP";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- };
-
- vdd_led_reg: REG_LDO3 {
- regulator-name = "VDD_LED";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- };
-
- vdd_sdhc_1v8_reg: REG_LDO4 {
- regulator-name = "VDD_SDHC_1V8";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
- };
- };