brintos

brintos / linux-shallow public Read only

0
0
Text · 12.2 KiB · c434277 Raw
415 lines · yaml
1# SPDX-License-Identifier: GPL-2.02%YAML 1.23---4$id: http://devicetree.org/schemas/power/rockchip-io-domain.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Rockchip SRAM for IO Voltage Domains8 9maintainers:10  - Heiko Stuebner <heiko@sntech.de>11 12description: |13  IO domain voltages on some Rockchip SoCs are variable but need to be14  kept in sync between the regulators and the SoC using a special15  register.16 17  A specific example using rk328818    If the regulator hooked up to a pin like SDMMC0_VDD is 3.3V then19    bit 7 of GRF_IO_VSEL needs to be 0. If the regulator hooked up to20    that same pin is 1.8V then bit 7 of GRF_IO_VSEL needs to be 1.21 22  Said another way, this driver simply handles keeping bits in the SoCs23  General Register File (GRF) in sync with the actual value of a voltage24  hooked up to the pins.25 26  Note that this driver specifically does not include27    any logic for deciding what voltage we should set regulators to28    any logic for deciding whether regulators (or internal SoC blocks)29    should have power or not have power30 31  If there were some other software that had the smarts of making32  decisions about regulators, it would work in conjunction with this33  driver. When that other software adjusted a regulators voltage then34  this driver would handle telling the SoC about it. A good example is35  vqmmc for SD. In that case the dw_mmc driver simply is told about a36  regulator. It changes the regulator between 3.3V and 1.8V at the37  right time. This driver notices the change and makes sure that the38  SoC is on the same page.39 40  You specify supplies using the standard regulator bindings by including41  a phandle the relevant regulator. All specified supplies must be able42  to report their voltage. The IO Voltage Domain for any non-specified43  supplies will be not be touched.44 45properties:46  compatible:47    enum:48      - rockchip,px30-io-voltage-domain49      - rockchip,px30-pmu-io-voltage-domain50      - rockchip,rk3188-io-voltage-domain51      - rockchip,rk3228-io-voltage-domain52      - rockchip,rk3288-io-voltage-domain53      - rockchip,rk3308-io-voltage-domain54      - rockchip,rk3328-io-voltage-domain55      - rockchip,rk3368-io-voltage-domain56      - rockchip,rk3368-pmu-io-voltage-domain57      - rockchip,rk3399-io-voltage-domain58      - rockchip,rk3399-pmu-io-voltage-domain59      - rockchip,rk3568-pmu-io-voltage-domain60      - rockchip,rv1108-io-voltage-domain61      - rockchip,rv1108-pmu-io-voltage-domain62      - rockchip,rv1126-pmu-io-voltage-domain63 64required:65  - compatible66 67unevaluatedProperties: false68 69allOf:70  - $ref: "#/$defs/px30"71  - $ref: "#/$defs/px30-pmu"72  - $ref: "#/$defs/rk3188"73  - $ref: "#/$defs/rk3228"74  - $ref: "#/$defs/rk3288"75  - $ref: "#/$defs/rk3308"76  - $ref: "#/$defs/rk3328"77  - $ref: "#/$defs/rk3368"78  - $ref: "#/$defs/rk3368-pmu"79  - $ref: "#/$defs/rk3399"80  - $ref: "#/$defs/rk3399-pmu"81  - $ref: "#/$defs/rk3568-pmu"82  - $ref: "#/$defs/rv1108"83  - $ref: "#/$defs/rv1108-pmu"84  - $ref: "#/$defs/rv1126-pmu"85 86$defs:87  px30:88    if:89      properties:90        compatible:91          contains:92            const: rockchip,px30-io-voltage-domain93 94    then:95      properties:96        vccio1-supply:97          description: The supply connected to VCCIO1.98        vccio2-supply:99          description: The supply connected to VCCIO2.100        vccio3-supply:101          description: The supply connected to VCCIO3.102        vccio4-supply:103          description: The supply connected to VCCIO4.104        vccio5-supply:105          description: The supply connected to VCCIO5.106        vccio6-supply:107          description: The supply connected to VCCIO6.108        vccio-oscgpi-supply:109          description: The supply connected to VCCIO_OSCGPI.110 111  px30-pmu:112    if:113      properties:114        compatible:115          contains:116            const: rockchip,px30-pmu-io-voltage-domain117 118    then:119      properties:120        pmuio1-supply:121          description: The supply connected to PMUIO1.122        pmuio2-supply:123          description: The supply connected to PMUIO2.124 125  rk3188:126    if:127      properties:128        compatible:129          contains:130            const: rockchip,rk3188-io-voltage-domain131 132    then:133      properties:134        ap0-supply:135          description: The supply connected to AP0_VCC.136        ap1-supply:137          description: The supply connected to AP1_VCC.138        cif-supply:139          description: The supply connected to CIF_VCC.140        flash-supply:141          description: The supply connected to FLASH_VCC.142        lcdc0-supply:143          description: The supply connected to LCD0_VCC.144        lcdc1-supply:145          description: The supply connected to LCD1_VCC.146        vccio0-supply:147          description: The supply connected to VCCIO0.148        vccio1-supply:149          description: The supply connected to VCCIO1. Also labeled as VCCIO2.150 151  rk3228:152    if:153      properties:154        compatible:155          contains:156            const: rockchip,rk3228-io-voltage-domain157 158    then:159      properties:160        vccio1-supply:161          description: The supply connected to VCCIO1.162        vccio2-supply:163          description: The supply connected to VCCIO2.164        vccio3-supply:165          description: The supply connected to VCCIO3.166        vccio4-supply:167          description: The supply connected to VCCIO4.168 169  rk3288:170    if:171      properties:172        compatible:173          contains:174            const: rockchip,rk3288-io-voltage-domain175 176    then:177      properties:178        audio-supply:179          description: The supply connected to APIO4_VDD.180        bb-supply:181          description: The supply connected to APIO5_VDD.182        dvp-supply:183          description: The supply connected to DVPIO_VDD.184        flash0-supply:185          description: The supply connected to FLASH0_VDD. Typically for eMMC.186        flash1-supply:187          description: The supply connected to FLASH1_VDD. Also known as SDIO1.188        gpio30-supply:189          description: The supply connected to APIO1_VDD.190        gpio1830-supply:191          description: The supply connected to APIO2_VDD.192        lcdc-supply:193          description: The supply connected to LCDC_VDD.194        sdcard-supply:195          description: The supply connected to SDMMC0_VDD.196        wifi-supply:197          description: The supply connected to APIO3_VDD. Also known as SDIO0.198 199  rk3308:200    if:201      properties:202        compatible:203          contains:204            const: rockchip,rk3308-io-voltage-domain205 206    then:207      properties:208        vccio0-supply:209          description: The supply connected to VCCIO0.210        vccio1-supply:211          description: The supply connected to VCCIO1.212        vccio2-supply:213          description: The supply connected to VCCIO2.214        vccio3-supply:215          description: The supply connected to VCCIO3.216        vccio4-supply:217          description: The supply connected to VCCIO4.218        vccio5-supply:219          description: The supply connected to VCCIO5.220 221  rk3328:222    if:223      properties:224        compatible:225          contains:226            const: rockchip,rk3328-io-voltage-domain227 228    then:229      properties:230        vccio1-supply:231          description: The supply connected to VCCIO1.232        vccio2-supply:233          description: The supply connected to VCCIO2.234        vccio3-supply:235          description: The supply connected to VCCIO3.236        vccio4-supply:237          description: The supply connected to VCCIO4.238        vccio5-supply:239          description: The supply connected to VCCIO5.240        vccio6-supply:241          description: The supply connected to VCCIO6.242        pmuio-supply:243          description: The supply connected to VCCIO_PMU.244 245  rk3368:246    if:247      properties:248        compatible:249          contains:250            const: rockchip,rk3368-io-voltage-domain251 252    then:253      properties:254        audio-supply:255          description: The supply connected to APIO3_VDD.256        dvp-supply:257          description: The supply connected to DVPIO_VDD.258        flash0-supply:259          description: The supply connected to FLASH0_VDD. Typically for eMMC.260        gpio30-supply:261          description: The supply connected to APIO1_VDD.262        gpio1830-supply:263          description: The supply connected to APIO4_VDD.264        sdcard-supply:265          description: The supply connected to SDMMC0_VDD.266        wifi-supply:267          description: The supply connected to APIO2_VDD. Also known as SDIO0.268 269  rk3368-pmu:270    if:271      properties:272        compatible:273          contains:274            const: rockchip,rk3368-pmu-io-voltage-domain275 276    then:277      properties:278        pmu-supply:279          description: The supply connected to PMUIO_VDD.280        vop-supply:281          description: The supply connected to LCDC_VDD.282 283  rk3399:284    if:285      properties:286        compatible:287          contains:288            const: rockchip,rk3399-io-voltage-domain289 290    then:291      properties:292        audio-supply:293          description: The supply connected to APIO5_VDD.294        bt656-supply:295          description: The supply connected to APIO2_VDD.296        gpio1830-supply:297          description: The supply connected to APIO4_VDD.298        sdmmc-supply:299          description: The supply connected to SDMMC0_VDD.300 301  rk3399-pmu:302    if:303      properties:304        compatible:305          contains:306            const: rockchip,rk3399-pmu-io-voltage-domain307 308    then:309      properties:310        pmu1830-supply:311          description: The supply connected to PMUIO2_VDD.312 313  rk3568-pmu:314    if:315      properties:316        compatible:317          contains:318            const: rockchip,rk3568-pmu-io-voltage-domain319 320    then:321      properties:322        pmuio1-supply:323          description: The supply connected to PMUIO1.324        pmuio2-supply:325          description: The supply connected to PMUIO2.326        vccio1-supply:327          description: The supply connected to VCCIO1.328        vccio2-supply:329          description: The supply connected to VCCIO2.330        vccio3-supply:331          description: The supply connected to VCCIO3.332        vccio4-supply:333          description: The supply connected to VCCIO4.334        vccio5-supply:335          description: The supply connected to VCCIO5.336        vccio6-supply:337          description: The supply connected to VCCIO6.338        vccio7-supply:339          description: The supply connected to VCCIO7.340 341  rv1108:342    if:343      properties:344        compatible:345          contains:346            const: rockchip,rv1108-io-voltage-domain347 348    then:349      properties:350        vccio1-supply:351          description: The supply connected to APIO1_VDD.352        vccio2-supply:353          description: The supply connected to APIO2_VDD.354        vccio3-supply:355          description: The supply connected to APIO3_VDD.356        vccio5-supply:357          description: The supply connected to APIO5_VDD.358        vccio6-supply:359          description: The supply connected to APIO6_VDD.360 361  rv1108-pmu:362    if:363      properties:364        compatible:365          contains:366            const: rockchip,rv1108-pmu-io-voltage-domain367 368    then:369      properties:370        pmu-supply:371          description: The supply connected to PMUIO_VDD.372 373  rv1126-pmu:374    if:375      properties:376        compatible:377          contains:378            const: rockchip,rv1126-pmu-io-voltage-domain379 380    then:381      properties:382        vccio1-supply:383          description: The supply connected to VCCIO1.384        vccio2-supply:385          description: The supply connected to VCCIO2.386        vccio3-supply:387          description: The supply connected to VCCIO3.388        vccio4-supply:389          description: The supply connected to VCCIO4.390        vccio5-supply:391          description: The supply connected to VCCIO5.392        vccio6-supply:393          description: The supply connected to VCCIO6.394        vccio7-supply:395          description: The supply connected to VCCIO7.396        pmuio0-supply:397          description: The supply connected to PMUIO0.398        pmuio1-supply:399          description: The supply connected to PMUIO1.400 401examples:402  - |403    io-domains {404      compatible = "rockchip,rk3288-io-voltage-domain";405      audio-supply = <&vcc18_codec>;406      bb-supply = <&vcc33_io>;407      dvp-supply = <&vcc_18>;408      flash0-supply = <&vcc18_flashio>;409      gpio1830-supply = <&vcc33_io>;410      gpio30-supply = <&vcc33_pmuio>;411      lcdc-supply = <&vcc33_lcd>;412      sdcard-supply = <&vccio_sd>;413      wifi-supply = <&vcc18_wl>;414    };415