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,rk818.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: RK818 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 RK818 series PMIC. This device consists of an i2c controlled MFD
0015   that includes regulators, an RTC, and a power button.
0016 
0017 properties:
0018   compatible:
0019     enum:
0020       - rockchip,rk818
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     const: 1
0032 
0033   clock-output-names:
0034     description:
0035       From common clock binding to override the default output clock name.
0036     maxItems: 2
0037 
0038   rockchip,system-power-controller:
0039     type: boolean
0040     description:
0041       Telling whether or not this PMIC is controlling the system power.
0042 
0043   wakeup-source:
0044     type: boolean
0045     description:
0046       Device can be used as a wakeup source.
0047 
0048   vcc1-supply:
0049     description:
0050       The input supply for DCDC_REG1.
0051 
0052   vcc2-supply:
0053     description:
0054       The input supply for DCDC_REG2.
0055 
0056   vcc3-supply:
0057     description:
0058       The input supply for DCDC_REG3.
0059 
0060   vcc4-supply:
0061     description:
0062       The input supply for DCDC_REG4.
0063 
0064   boost-supply:
0065     description:
0066       The input supply for DCDC_BOOST
0067 
0068   vcc6-supply:
0069     description:
0070       The input supply for LDO_REG1 and LDO_REG2.
0071 
0072   vcc7-supply:
0073     description:
0074       The input supply for LDO_REG3, LDO_REG5, and LDO_REG7.
0075 
0076   vcc8-supply:
0077     description:
0078       The input supply for LDO_REG4, LDO_REG6, and LDO_REG8.
0079 
0080   vcc9-supply:
0081     description:
0082       The input supply for LDO_REG9 and SWITCH_REG.
0083 
0084   vddio-supply:
0085     description:
0086       The input supply for digital IO.
0087 
0088   h_5v-supply:
0089     description:
0090       The input supply for HDMI_SWITCH.
0091 
0092   usb-supply:
0093     description:
0094       The input supply for OTG_SWITCH.
0095 
0096   regulators:
0097     type: object
0098     patternProperties:
0099       "^(DCDC_REG[1-4]|DCDC_BOOST|LDO_REG[1-9]|SWITCH_REG|HDMI_SWITCH|OTG_SWITCH)$":
0100         type: object
0101         $ref: ../regulator/regulator.yaml#
0102     unevaluatedProperties: false
0103 
0104 required:
0105   - compatible
0106   - reg
0107   - interrupts
0108   - "#clock-cells"
0109 
0110 additionalProperties: false
0111 
0112 examples:
0113   - |
0114     #include <dt-bindings/clock/px30-cru.h>
0115     #include <dt-bindings/pinctrl/rockchip.h>
0116     #include <dt-bindings/interrupt-controller/irq.h>
0117     #include <dt-bindings/gpio/gpio.h>
0118     i2c {
0119         #address-cells = <1>;
0120         #size-cells = <0>;
0121 
0122         rk818: pmic@1c {
0123             compatible = "rockchip,rk818";
0124             reg = <0x1c>;
0125             interrupt-parent = <&gpio0>;
0126             interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
0127             pinctrl-names = "default";
0128             pinctrl-0 = <&pmic_int>;
0129             rockchip,system-power-controller;
0130             wakeup-source;
0131             #clock-cells = <1>;
0132 
0133             vcc1-supply = <&vdd_sys>;
0134             vcc2-supply = <&vdd_sys>;
0135             vcc3-supply = <&vdd_sys>;
0136             vcc4-supply = <&vdd_sys>;
0137             boost-supply = <&vdd_in_otg_out>;
0138             vcc6-supply = <&vdd_sys>;
0139             vcc7-supply = <&vdd_misc_1v8>;
0140             vcc8-supply = <&vdd_misc_1v8>;
0141             vcc9-supply = <&vdd_3v3_io>;
0142             vddio-supply = <&vdd_3v3_io>;
0143 
0144             regulators {
0145                 vdd_log: DCDC_REG1 {
0146                     regulator-name = "vdd_log";
0147                     regulator-always-on;
0148                     regulator-boot-on;
0149                     regulator-min-microvolt = <1100000>;
0150                     regulator-max-microvolt = <1100000>;
0151                     regulator-state-mem {
0152                         regulator-off-in-suspend;
0153                     };
0154                 };
0155 
0156                 vdd_gpu: DCDC_REG2 {
0157                     regulator-name = "vdd_gpu";
0158                     regulator-always-on;
0159                     regulator-boot-on;
0160                     regulator-min-microvolt = <800000>;
0161                     regulator-max-microvolt = <1250000>;
0162                     regulator-state-mem {
0163                         regulator-on-in-suspend;
0164                         regulator-suspend-microvolt = <1000000>;
0165                     };
0166                 };
0167 
0168                 vcc_ddr: DCDC_REG3 {
0169                     regulator-name = "vcc_ddr";
0170                     regulator-always-on;
0171                     regulator-boot-on;
0172                     regulator-state-mem {
0173                         regulator-on-in-suspend;
0174                     };
0175                 };
0176 
0177                 vdd_3v3_io: DCDC_REG4 {
0178                     regulator-name = "vdd_3v3_io";
0179                     regulator-always-on;
0180                     regulator-boot-on;
0181                     regulator-min-microvolt = <3300000>;
0182                     regulator-max-microvolt = <3300000>;
0183                     regulator-state-mem {
0184                         regulator-on-in-suspend;
0185                         regulator-suspend-microvolt = <3300000>;
0186                     };
0187                 };
0188 
0189                 vdd_sys: DCDC_BOOST {
0190                     regulator-name = "vdd_sys";
0191                     regulator-always-on;
0192                     regulator-boot-on;
0193                     regulator-min-microvolt = <5000000>;
0194                     regulator-max-microvolt = <5000000>;
0195                     regulator-state-mem {
0196                         regulator-on-in-suspend;
0197                         regulator-suspend-microvolt = <5000000>;
0198                     };
0199                 };
0200 
0201                 vdd_sd: SWITCH_REG {
0202                     regulator-name = "vdd_sd";
0203                     regulator-always-on;
0204                     regulator-boot-on;
0205                     regulator-state-mem {
0206                         regulator-off-in-suspend;
0207                     };
0208                 };
0209 
0210                 vdd_eth_2v5: LDO_REG2 {
0211                     regulator-name = "vdd_eth_2v5";
0212                     regulator-always-on;
0213                     regulator-boot-on;
0214                     regulator-min-microvolt = <2500000>;
0215                     regulator-max-microvolt = <2500000>;
0216                     regulator-state-mem {
0217                         regulator-on-in-suspend;
0218                         regulator-suspend-microvolt = <2500000>;
0219                     };
0220                 };
0221 
0222                 vdd_1v0: LDO_REG3 {
0223                     regulator-name = "vdd_1v0";
0224                     regulator-always-on;
0225                     regulator-boot-on;
0226                     regulator-min-microvolt = <1000000>;
0227                     regulator-max-microvolt = <1000000>;
0228                     regulator-state-mem {
0229                         regulator-on-in-suspend;
0230                         regulator-suspend-microvolt = <1000000>;
0231                     };
0232                 };
0233 
0234                 vdd_1v8_lcd_ldo: LDO_REG4 {
0235                     regulator-name = "vdd_1v8_lcd_ldo";
0236                     regulator-always-on;
0237                     regulator-boot-on;
0238                     regulator-min-microvolt = <1800000>;
0239                     regulator-max-microvolt = <1800000>;
0240                     regulator-state-mem {
0241                         regulator-on-in-suspend;
0242                         regulator-suspend-microvolt = <1800000>;
0243                     };
0244                 };
0245 
0246                 vdd_1v0_lcd: LDO_REG6 {
0247                     regulator-name = "vdd_1v0_lcd";
0248                     regulator-always-on;
0249                     regulator-boot-on;
0250                     regulator-min-microvolt = <1000000>;
0251                     regulator-max-microvolt = <1000000>;
0252                     regulator-state-mem {
0253                         regulator-on-in-suspend;
0254                         regulator-suspend-microvolt = <1000000>;
0255                     };
0256                 };
0257 
0258                 vdd_1v8_ldo: LDO_REG7 {
0259                     regulator-name = "vdd_1v8_ldo";
0260                     regulator-always-on;
0261                     regulator-boot-on;
0262                     regulator-min-microvolt = <1800000>;
0263                     regulator-max-microvolt = <1800000>;
0264                     regulator-state-mem {
0265                         regulator-off-in-suspend;
0266                         regulator-suspend-microvolt = <1800000>;
0267                     };
0268                 };
0269 
0270                 vdd_io_sd: LDO_REG9 {
0271                     regulator-name = "vdd_io_sd";
0272                     regulator-always-on;
0273                     regulator-boot-on;
0274                     regulator-min-microvolt = <1800000>;
0275                     regulator-max-microvolt = <3300000>;
0276                     regulator-state-mem {
0277                         regulator-off-in-suspend;
0278                     };
0279                 };
0280             };
0281         };
0282     };