19bd9e0deSMauro Carvalho Chehab# SPDX-License-Identifier: GPL-2.0
29bd9e0deSMauro Carvalho Chehab%YAML 1.2
39bd9e0deSMauro Carvalho Chehab---
49bd9e0deSMauro Carvalho Chehab$id: http://devicetree.org/schemas/mfd/hisilicon,hi6421-spmi-pmic.yaml#
59bd9e0deSMauro Carvalho Chehab$schema: http://devicetree.org/meta-schemas/core.yaml#
69bd9e0deSMauro Carvalho Chehab
79bd9e0deSMauro Carvalho Chehabtitle: HiSilicon 6421v600 SPMI PMIC
89bd9e0deSMauro Carvalho Chehab
99bd9e0deSMauro Carvalho Chehabmaintainers:
109bd9e0deSMauro Carvalho Chehab  - Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
119bd9e0deSMauro Carvalho Chehab
129bd9e0deSMauro Carvalho Chehabdescription: |
139bd9e0deSMauro Carvalho Chehab  HiSilicon 6421v600 should be connected inside a MIPI System Power Management
149bd9e0deSMauro Carvalho Chehab  (SPMI) bus. It provides interrupts and power supply.
159bd9e0deSMauro Carvalho Chehab
169bd9e0deSMauro Carvalho Chehab  The GPIO and interrupt settings are represented as part of the top-level PMIC
179bd9e0deSMauro Carvalho Chehab  node.
189bd9e0deSMauro Carvalho Chehab
199bd9e0deSMauro Carvalho Chehab  The SPMI controller part is provided by
209bd9e0deSMauro Carvalho Chehab  Documentation/devicetree/bindings/mfd/hisilicon,hi6421-spmi-pmic.yaml
219bd9e0deSMauro Carvalho Chehab
229bd9e0deSMauro Carvalho Chehabproperties:
239bd9e0deSMauro Carvalho Chehab  $nodename:
249bd9e0deSMauro Carvalho Chehab    pattern: "pmic@[0-9a-f]"
259bd9e0deSMauro Carvalho Chehab
269bd9e0deSMauro Carvalho Chehab  compatible:
279bd9e0deSMauro Carvalho Chehab    const: hisilicon,hi6421v600-spmi
289bd9e0deSMauro Carvalho Chehab
299bd9e0deSMauro Carvalho Chehab  reg:
309bd9e0deSMauro Carvalho Chehab    maxItems: 1
319bd9e0deSMauro Carvalho Chehab
329bd9e0deSMauro Carvalho Chehab  '#interrupt-cells':
339bd9e0deSMauro Carvalho Chehab    const: 2
349bd9e0deSMauro Carvalho Chehab
359bd9e0deSMauro Carvalho Chehab  interrupt-controller: true
369bd9e0deSMauro Carvalho Chehab
375c872e1dSMauro Carvalho Chehab  interrupts:
385c872e1dSMauro Carvalho Chehab    maxItems: 1
399bd9e0deSMauro Carvalho Chehab
409bd9e0deSMauro Carvalho Chehab  regulators:
419bd9e0deSMauro Carvalho Chehab    type: object
429bd9e0deSMauro Carvalho Chehab
439bd9e0deSMauro Carvalho Chehab    additionalProperties: false
449bd9e0deSMauro Carvalho Chehab
459bd9e0deSMauro Carvalho Chehab    properties:
469bd9e0deSMauro Carvalho Chehab      '#address-cells':
479bd9e0deSMauro Carvalho Chehab        const: 1
489bd9e0deSMauro Carvalho Chehab
499bd9e0deSMauro Carvalho Chehab      '#size-cells':
509bd9e0deSMauro Carvalho Chehab        const: 0
519bd9e0deSMauro Carvalho Chehab
529bd9e0deSMauro Carvalho Chehab    patternProperties:
535c872e1dSMauro Carvalho Chehab      '^ldo[0-9]+$':
549bd9e0deSMauro Carvalho Chehab        type: object
559bd9e0deSMauro Carvalho Chehab
56*9896a19cSRob Herring        $ref: /schemas/regulator/regulator.yaml#
579bd9e0deSMauro Carvalho Chehab
589bd9e0deSMauro Carvalho Chehab        unevaluatedProperties: false
599bd9e0deSMauro Carvalho Chehab
609bd9e0deSMauro Carvalho Chehabrequired:
619bd9e0deSMauro Carvalho Chehab  - compatible
629bd9e0deSMauro Carvalho Chehab  - reg
639bd9e0deSMauro Carvalho Chehab  - regulators
649bd9e0deSMauro Carvalho Chehab
659bd9e0deSMauro Carvalho ChehabadditionalProperties: false
669bd9e0deSMauro Carvalho Chehab
679bd9e0deSMauro Carvalho Chehabexamples:
689bd9e0deSMauro Carvalho Chehab  - |
699bd9e0deSMauro Carvalho Chehab
709bd9e0deSMauro Carvalho Chehab    pmic: pmic@0 {
719bd9e0deSMauro Carvalho Chehab      compatible = "hisilicon,hi6421v600-spmi";
729bd9e0deSMauro Carvalho Chehab      reg = <0 0>;
739bd9e0deSMauro Carvalho Chehab
749bd9e0deSMauro Carvalho Chehab      #interrupt-cells = <2>;
759bd9e0deSMauro Carvalho Chehab      interrupt-controller;
769bd9e0deSMauro Carvalho Chehab      interrupt-parent = <&gpio28>;
779bd9e0deSMauro Carvalho Chehab      interrupts = <0 0>;
789bd9e0deSMauro Carvalho Chehab
799bd9e0deSMauro Carvalho Chehab      regulators {
809bd9e0deSMauro Carvalho Chehab        #address-cells = <1>;
819bd9e0deSMauro Carvalho Chehab        #size-cells = <0>;
829bd9e0deSMauro Carvalho Chehab
835c872e1dSMauro Carvalho Chehab        ldo3: ldo3 {
849bd9e0deSMauro Carvalho Chehab          regulator-name = "ldo3";
859bd9e0deSMauro Carvalho Chehab          regulator-min-microvolt = <1500000>;
869bd9e0deSMauro Carvalho Chehab          regulator-max-microvolt = <2000000>;
879bd9e0deSMauro Carvalho Chehab          regulator-boot-on;
889bd9e0deSMauro Carvalho Chehab        };
899bd9e0deSMauro Carvalho Chehab
905c872e1dSMauro Carvalho Chehab        ldo4: ldo4 {
919bd9e0deSMauro Carvalho Chehab          regulator-name = "ldo4";
929bd9e0deSMauro Carvalho Chehab          regulator-min-microvolt = <1725000>;
939bd9e0deSMauro Carvalho Chehab          regulator-max-microvolt = <1900000>;
949bd9e0deSMauro Carvalho Chehab          regulator-boot-on;
959bd9e0deSMauro Carvalho Chehab        };
969bd9e0deSMauro Carvalho Chehab
975c872e1dSMauro Carvalho Chehab        ldo9: ldo9 {
989bd9e0deSMauro Carvalho Chehab          regulator-name = "ldo9";
999bd9e0deSMauro Carvalho Chehab          regulator-min-microvolt = <1750000>;
1009bd9e0deSMauro Carvalho Chehab          regulator-max-microvolt = <3300000>;
1019bd9e0deSMauro Carvalho Chehab          regulator-boot-on;
1029bd9e0deSMauro Carvalho Chehab        };
1039bd9e0deSMauro Carvalho Chehab
1045c872e1dSMauro Carvalho Chehab        ldo15: ldo15 {
1059bd9e0deSMauro Carvalho Chehab          regulator-name = "ldo15";
1069bd9e0deSMauro Carvalho Chehab          regulator-min-microvolt = <1800000>;
1079bd9e0deSMauro Carvalho Chehab          regulator-max-microvolt = <3000000>;
1089bd9e0deSMauro Carvalho Chehab          regulator-always-on;
1099bd9e0deSMauro Carvalho Chehab        };
1109bd9e0deSMauro Carvalho Chehab
1115c872e1dSMauro Carvalho Chehab        ldo16: ldo16 {
1129bd9e0deSMauro Carvalho Chehab          regulator-name = "ldo16";
1139bd9e0deSMauro Carvalho Chehab          regulator-min-microvolt = <1800000>;
1149bd9e0deSMauro Carvalho Chehab          regulator-max-microvolt = <3000000>;
1159bd9e0deSMauro Carvalho Chehab          regulator-boot-on;
1169bd9e0deSMauro Carvalho Chehab        };
1179bd9e0deSMauro Carvalho Chehab
1185c872e1dSMauro Carvalho Chehab        ldo17: ldo17 {
1199bd9e0deSMauro Carvalho Chehab          regulator-name = "ldo17";
1209bd9e0deSMauro Carvalho Chehab          regulator-min-microvolt = <2500000>;
1219bd9e0deSMauro Carvalho Chehab          regulator-max-microvolt = <3300000>;
1229bd9e0deSMauro Carvalho Chehab        };
1239bd9e0deSMauro Carvalho Chehab
1245c872e1dSMauro Carvalho Chehab        ldo33: ldo33 {
1259bd9e0deSMauro Carvalho Chehab          regulator-name = "ldo33";
1269bd9e0deSMauro Carvalho Chehab          regulator-min-microvolt = <2500000>;
1279bd9e0deSMauro Carvalho Chehab          regulator-max-microvolt = <3300000>;
1289bd9e0deSMauro Carvalho Chehab          regulator-boot-on;
1299bd9e0deSMauro Carvalho Chehab        };
1309bd9e0deSMauro Carvalho Chehab
1315c872e1dSMauro Carvalho Chehab        ldo34: ldo34 {
1329bd9e0deSMauro Carvalho Chehab          regulator-name = "ldo34";
1339bd9e0deSMauro Carvalho Chehab          regulator-min-microvolt = <2600000>;
1349bd9e0deSMauro Carvalho Chehab          regulator-max-microvolt = <3300000>;
1359bd9e0deSMauro Carvalho Chehab        };
1369bd9e0deSMauro Carvalho Chehab      };
1379bd9e0deSMauro Carvalho Chehab    };
138