Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/mfd/rockchip,rk805.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: RK805 Power Management Integrated Circuit
0008 
0009 maintainers:
0010   - Chris Zhong <zyw@rock-chips.com>
0011   - Zhang Qing <zhangqing@rock-chips.com>
0012 
0013 description: |
0014   Rockchip RK805 series PMIC. This device consists of an i2c controlled MFD
0015   that includes multiple switchable regulators.
0016 
0017 properties:
0018   compatible:
0019     enum:
0020       - rockchip,rk805
0021 
0022   reg:
0023     maxItems: 1
0024 
0025   interrupts:
0026     maxItems: 1
0027 
0028   '#clock-cells':
0029     description:
0030       See <dt-bindings/clock/rockchip,rk808.h> for clock IDs.
0031     minimum: 0
0032     maximum: 1
0033 
0034   clock-output-names:
0035     description:
0036       From common clock binding to override the default output clock name.
0037 
0038   gpio-controller: true
0039 
0040   '#gpio-cells':
0041     const: 2
0042 
0043   rockchip,system-power-controller:
0044     type: boolean
0045     description:
0046       Telling whether or not this PMIC is controlling the system power.
0047 
0048   wakeup-source:
0049     type: boolean
0050     description:
0051       Device can be used as a wakeup source.
0052 
0053   vcc1-supply:
0054     description:
0055       The input supply for DCDC_REG1.
0056 
0057   vcc2-supply:
0058     description:
0059       The input supply for DCDC_REG2.
0060 
0061   vcc3-supply:
0062     description:
0063       The input supply for DCDC_REG3.
0064 
0065   vcc4-supply:
0066     description:
0067       The input supply for DCDC_REG4.
0068 
0069   vcc5-supply:
0070     description:
0071       The input supply for LDO_REG1 and LDO_REG2.
0072 
0073   vcc6-supply:
0074     description:
0075       The input supply for LDO_REG3.
0076 
0077   regulators:
0078     type: object
0079     patternProperties:
0080       "^(DCDC_REG[1-4]|LDO_REG[1-3])$":
0081         type: object
0082         $ref: ../regulator/regulator.yaml#
0083     unevaluatedProperties: false
0084 
0085 allOf:
0086   - if:
0087       properties:
0088         '#clock-cells':
0089           const: 0
0090 
0091     then:
0092       properties:
0093         clock-output-names:
0094           maxItems: 1
0095 
0096     else:
0097       properties:
0098         clock-output-names:
0099           maxItems: 2
0100 
0101 required:
0102   - compatible
0103   - reg
0104   - interrupts
0105   - "#clock-cells"
0106 
0107 additionalProperties: false
0108 
0109 examples:
0110   - |
0111     #include <dt-bindings/pinctrl/rockchip.h>
0112     #include <dt-bindings/interrupt-controller/irq.h>
0113     #include <dt-bindings/gpio/gpio.h>
0114     i2c {
0115         #address-cells = <1>;
0116         #size-cells = <0>;
0117 
0118         pmic@18 {
0119             compatible = "rockchip,rk805";
0120             reg = <0x18>;
0121             interrupt-parent = <&gpio2>;
0122             interrupts = <RK_PA6 IRQ_TYPE_LEVEL_LOW>;
0123             pinctrl-names = "default";
0124             pinctrl-0 = <&pmic_int_l>;
0125             rockchip,system-power-controller;
0126             wakeup-source;
0127             #clock-cells = <0>;
0128 
0129             vcc1-supply = <&vcc_sys>;
0130             vcc2-supply = <&vcc_sys>;
0131             vcc3-supply = <&vcc_sys>;
0132             vcc4-supply = <&vcc_sys>;
0133             vcc5-supply = <&vcc_io>;
0134             vcc6-supply = <&vcc_io>;
0135 
0136             regulators {
0137                 vdd_logic: DCDC_REG1 {
0138                     regulator-name = "vdd_logic";
0139                     regulator-min-microvolt = <700000>;
0140                     regulator-max-microvolt = <1350000>;
0141                     regulator-always-on;
0142                     regulator-boot-on;
0143                     regulator-state-mem {
0144                         regulator-on-in-suspend;
0145                         regulator-suspend-microvolt = <1000000>;
0146                     };
0147                 };
0148 
0149                 vdd_arm: DCDC_REG2 {
0150                     regulator-name = "vdd_arm";
0151                     regulator-min-microvolt = <700000>;
0152                     regulator-max-microvolt = <1350000>;
0153                     regulator-always-on;
0154                     regulator-boot-on;
0155                     regulator-state-mem {
0156                         regulator-on-in-suspend;
0157                         regulator-suspend-microvolt = <950000>;
0158                     };
0159                 };
0160 
0161                 vcc_ddr: DCDC_REG3 {
0162                     regulator-name = "vcc_ddr";
0163                     regulator-always-on;
0164                     regulator-boot-on;
0165                     regulator-state-mem {
0166                         regulator-on-in-suspend;
0167                     };
0168                 };
0169 
0170                 vcc_io: DCDC_REG4 {
0171                     regulator-name = "vcc_io";
0172                     regulator-min-microvolt = <3300000>;
0173                     regulator-max-microvolt = <3300000>;
0174                     regulator-always-on;
0175                     regulator-boot-on;
0176                     regulator-state-mem {
0177                         regulator-on-in-suspend;
0178                         regulator-suspend-microvolt = <3300000>;
0179                     };
0180                 };
0181 
0182                 vdd_18: LDO_REG1 {
0183                     regulator-name = "vdd_18";
0184                     regulator-min-microvolt = <1800000>;
0185                     regulator-max-microvolt = <1800000>;
0186                     regulator-always-on;
0187                     regulator-boot-on;
0188                     regulator-state-mem {
0189                         regulator-on-in-suspend;
0190                         regulator-suspend-microvolt = <1800000>;
0191                     };
0192                 };
0193 
0194                 vcc18_emmc: LDO_REG2 {
0195                     regulator-name = "vcc_18emmc";
0196                     regulator-min-microvolt = <1800000>;
0197                     regulator-max-microvolt = <1800000>;
0198                     regulator-always-on;
0199                     regulator-boot-on;
0200                     regulator-state-mem {
0201                         regulator-on-in-suspend;
0202                         regulator-suspend-microvolt = <1800000>;
0203                     };
0204                 };
0205 
0206                 vdd_11: LDO_REG3 {
0207                     regulator-name = "vdd_11";
0208                     regulator-min-microvolt = <1100000>;
0209                     regulator-max-microvolt = <1100000>;
0210                     regulator-always-on;
0211                     regulator-boot-on;
0212                     regulator-state-mem {
0213                         regulator-on-in-suspend;
0214                         regulator-suspend-microvolt = <1100000>;
0215                     };
0216                 };
0217             };
0218         };
0219     };