cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

rockchip-io-domain.yaml (10825B)


      1# SPDX-License-Identifier: GPL-2.0
      2%YAML 1.2
      3---
      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 Domains
      8
      9maintainers:
     10  - Heiko Stuebner <heiko@sntech.de>
     11
     12description: |
     13  IO domain voltages on some Rockchip SoCs are variable but need to be
     14  kept in sync between the regulators and the SoC using a special
     15  register.
     16
     17  A specific example using rk3288
     18    If the regulator hooked up to a pin like SDMMC0_VDD is 3.3V then
     19    bit 7 of GRF_IO_VSEL needs to be 0. If the regulator hooked up to
     20    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 SoCs
     23  General Register File (GRF) in sync with the actual value of a voltage
     24  hooked up to the pins.
     25
     26  Note that this driver specifically does not include
     27    any logic for deciding what voltage we should set regulators to
     28    any logic for deciding whether regulators (or internal SoC blocks)
     29    should have power or not have power
     30
     31  If there were some other software that had the smarts of making
     32  decisions about regulators, it would work in conjunction with this
     33  driver. When that other software adjusted a regulators voltage then
     34  this driver would handle telling the SoC about it. A good example is
     35  vqmmc for SD. In that case the dw_mmc driver simply is told about a
     36  regulator. It changes the regulator between 3.3V and 1.8V at the
     37  right time. This driver notices the change and makes sure that the
     38  SoC is on the same page.
     39
     40  You specify supplies using the standard regulator bindings by including
     41  a phandle the relevant regulator. All specified supplies must be able
     42  to report their voltage. The IO Voltage Domain for any non-specified
     43  supplies will be not be touched.
     44
     45properties:
     46  compatible:
     47    enum:
     48      - rockchip,px30-io-voltage-domain
     49      - rockchip,px30-pmu-io-voltage-domain
     50      - rockchip,rk3188-io-voltage-domain
     51      - rockchip,rk3228-io-voltage-domain
     52      - rockchip,rk3288-io-voltage-domain
     53      - rockchip,rk3328-io-voltage-domain
     54      - rockchip,rk3368-io-voltage-domain
     55      - rockchip,rk3368-pmu-io-voltage-domain
     56      - rockchip,rk3399-io-voltage-domain
     57      - rockchip,rk3399-pmu-io-voltage-domain
     58      - rockchip,rk3568-pmu-io-voltage-domain
     59      - rockchip,rv1108-io-voltage-domain
     60      - rockchip,rv1108-pmu-io-voltage-domain
     61
     62required:
     63  - compatible
     64
     65unevaluatedProperties: false
     66
     67allOf:
     68  - $ref: "#/$defs/px30"
     69  - $ref: "#/$defs/px30-pmu"
     70  - $ref: "#/$defs/rk3188"
     71  - $ref: "#/$defs/rk3228"
     72  - $ref: "#/$defs/rk3288"
     73  - $ref: "#/$defs/rk3328"
     74  - $ref: "#/$defs/rk3368"
     75  - $ref: "#/$defs/rk3368-pmu"
     76  - $ref: "#/$defs/rk3399"
     77  - $ref: "#/$defs/rk3399-pmu"
     78  - $ref: "#/$defs/rk3568-pmu"
     79  - $ref: "#/$defs/rv1108"
     80  - $ref: "#/$defs/rv1108-pmu"
     81
     82$defs:
     83  px30:
     84    if:
     85      properties:
     86        compatible:
     87          contains:
     88            const: rockchip,px30-io-voltage-domain
     89
     90    then:
     91      properties:
     92        vccio1-supply:
     93          description: The supply connected to VCCIO1.
     94        vccio2-supply:
     95          description: The supply connected to VCCIO2.
     96        vccio3-supply:
     97          description: The supply connected to VCCIO3.
     98        vccio4-supply:
     99          description: The supply connected to VCCIO4.
    100        vccio5-supply:
    101          description: The supply connected to VCCIO5.
    102        vccio6-supply:
    103          description: The supply connected to VCCIO6.
    104        vccio-oscgpi-supply:
    105          description: The supply connected to VCCIO_OSCGPI.
    106
    107  px30-pmu:
    108    if:
    109      properties:
    110        compatible:
    111          contains:
    112            const: rockchip,px30-pmu-io-voltage-domain
    113
    114    then:
    115      properties:
    116        pmuio1-supply:
    117          description: The supply connected to PMUIO1.
    118        pmuio2-supply:
    119          description: The supply connected to PMUIO2.
    120
    121  rk3188:
    122    if:
    123      properties:
    124        compatible:
    125          contains:
    126            const: rockchip,rk3188-io-voltage-domain
    127
    128    then:
    129      properties:
    130        ap0-supply:
    131          description: The supply connected to AP0_VCC.
    132        ap1-supply:
    133          description: The supply connected to AP1_VCC.
    134        cif-supply:
    135          description: The supply connected to CIF_VCC.
    136        flash-supply:
    137          description: The supply connected to FLASH_VCC.
    138        lcdc0-supply:
    139          description: The supply connected to LCD0_VCC.
    140        lcdc1-supply:
    141          description: The supply connected to LCD1_VCC.
    142        vccio0-supply:
    143          description: The supply connected to VCCIO0.
    144        vccio1-supply:
    145          description: The supply connected to VCCIO1. Also labeled as VCCIO2.
    146
    147  rk3228:
    148    if:
    149      properties:
    150        compatible:
    151          contains:
    152            const: rockchip,rk3228-io-voltage-domain
    153
    154    then:
    155      properties:
    156        vccio1-supply:
    157          description: The supply connected to VCCIO1.
    158        vccio2-supply:
    159          description: The supply connected to VCCIO2.
    160        vccio3-supply:
    161          description: The supply connected to VCCIO3.
    162        vccio4-supply:
    163          description: The supply connected to VCCIO4.
    164
    165  rk3288:
    166    if:
    167      properties:
    168        compatible:
    169          contains:
    170            const: rockchip,rk3288-io-voltage-domain
    171
    172    then:
    173      properties:
    174        audio-supply:
    175          description: The supply connected to APIO4_VDD.
    176        bb-supply:
    177          description: The supply connected to APIO5_VDD.
    178        dvp-supply:
    179          description: The supply connected to DVPIO_VDD.
    180        flash0-supply:
    181          description: The supply connected to FLASH0_VDD. Typically for eMMC.
    182        flash1-supply:
    183          description: The supply connected to FLASH1_VDD. Also known as SDIO1.
    184        gpio30-supply:
    185          description: The supply connected to APIO1_VDD.
    186        gpio1830-supply:
    187          description: The supply connected to APIO2_VDD.
    188        lcdc-supply:
    189          description: The supply connected to LCDC_VDD.
    190        sdcard-supply:
    191          description: The supply connected to SDMMC0_VDD.
    192        wifi-supply:
    193          description: The supply connected to APIO3_VDD. Also known as SDIO0.
    194
    195  rk3328:
    196    if:
    197      properties:
    198        compatible:
    199          contains:
    200            const: rockchip,rk3328-io-voltage-domain
    201
    202    then:
    203      properties:
    204        vccio1-supply:
    205          description: The supply connected to VCCIO1.
    206        vccio2-supply:
    207          description: The supply connected to VCCIO2.
    208        vccio3-supply:
    209          description: The supply connected to VCCIO3.
    210        vccio4-supply:
    211          description: The supply connected to VCCIO4.
    212        vccio5-supply:
    213          description: The supply connected to VCCIO5.
    214        vccio6-supply:
    215          description: The supply connected to VCCIO6.
    216        pmuio-supply:
    217          description: The supply connected to VCCIO_PMU.
    218
    219  rk3368:
    220    if:
    221      properties:
    222        compatible:
    223          contains:
    224            const: rockchip,rk3368-io-voltage-domain
    225
    226    then:
    227      properties:
    228        audio-supply:
    229          description: The supply connected to APIO3_VDD.
    230        dvp-supply:
    231          description: The supply connected to DVPIO_VDD.
    232        flash0-supply:
    233          description: The supply connected to FLASH0_VDD. Typically for eMMC.
    234        gpio30-supply:
    235          description: The supply connected to APIO1_VDD.
    236        gpio1830-supply:
    237          description: The supply connected to APIO4_VDD.
    238        sdcard-supply:
    239          description: The supply connected to SDMMC0_VDD.
    240        wifi-supply:
    241          description: The supply connected to APIO2_VDD. Also known as SDIO0.
    242
    243  rk3368-pmu:
    244    if:
    245      properties:
    246        compatible:
    247          contains:
    248            const: rockchip,rk3368-pmu-io-voltage-domain
    249
    250    then:
    251      properties:
    252        pmu-supply:
    253          description: The supply connected to PMUIO_VDD.
    254        vop-supply:
    255          description: The supply connected to LCDC_VDD.
    256
    257  rk3399:
    258    if:
    259      properties:
    260        compatible:
    261          contains:
    262            const: rockchip,rk3399-io-voltage-domain
    263
    264    then:
    265      properties:
    266        audio-supply:
    267          description: The supply connected to APIO5_VDD.
    268        bt656-supply:
    269          description: The supply connected to APIO2_VDD.
    270        gpio1830-supply:
    271          description: The supply connected to APIO4_VDD.
    272        sdmmc-supply:
    273          description: The supply connected to SDMMC0_VDD.
    274
    275  rk3399-pmu:
    276    if:
    277      properties:
    278        compatible:
    279          contains:
    280            const: rockchip,rk3399-pmu-io-voltage-domain
    281
    282    then:
    283      properties:
    284        pmu1830-supply:
    285          description: The supply connected to PMUIO2_VDD.
    286
    287  rk3568-pmu:
    288    if:
    289      properties:
    290        compatible:
    291          contains:
    292            const: rockchip,rk3568-pmu-io-voltage-domain
    293
    294    then:
    295      properties:
    296        pmuio1-supply:
    297          description: The supply connected to PMUIO1.
    298        pmuio2-supply:
    299          description: The supply connected to PMUIO2.
    300        vccio1-supply:
    301          description: The supply connected to VCCIO1.
    302        vccio2-supply:
    303          description: The supply connected to VCCIO2.
    304        vccio3-supply:
    305          description: The supply connected to VCCIO3.
    306        vccio4-supply:
    307          description: The supply connected to VCCIO4.
    308        vccio5-supply:
    309          description: The supply connected to VCCIO5.
    310        vccio6-supply:
    311          description: The supply connected to VCCIO6.
    312        vccio7-supply:
    313          description: The supply connected to VCCIO7.
    314
    315  rv1108:
    316    if:
    317      properties:
    318        compatible:
    319          contains:
    320            const: rockchip,rv1108-io-voltage-domain
    321
    322    then:
    323      properties:
    324        vccio1-supply:
    325          description: The supply connected to APIO1_VDD.
    326        vccio2-supply:
    327          description: The supply connected to APIO2_VDD.
    328        vccio3-supply:
    329          description: The supply connected to APIO3_VDD.
    330        vccio5-supply:
    331          description: The supply connected to APIO5_VDD.
    332        vccio6-supply:
    333          description: The supply connected to APIO6_VDD.
    334
    335  rv1108-pmu:
    336    if:
    337      properties:
    338        compatible:
    339          contains:
    340            const: rockchip,rv1108-pmu-io-voltage-domain
    341
    342    then:
    343      properties:
    344        pmu-supply:
    345          description: The supply connected to PMUIO_VDD.
    346
    347examples:
    348  - |
    349    io-domains {
    350      compatible = "rockchip,rk3288-io-voltage-domain";
    351      audio-supply = <&vcc18_codec>;
    352      bb-supply = <&vcc33_io>;
    353      dvp-supply = <&vcc_18>;
    354      flash0-supply = <&vcc18_flashio>;
    355      gpio1830-supply = <&vcc33_io>;
    356      gpio30-supply = <&vcc33_pmuio>;
    357      lcdc-supply = <&vcc33_lcd>;
    358      sdcard-supply = <&vccio_sd>;
    359      wifi-supply = <&vcc18_wl>;
    360    };