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

qcom,rpmh-regulator.yaml (11322B)


      1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
      2%YAML 1.2
      3---
      4$id: http://devicetree.org/schemas/regulator/qcom,rpmh-regulator.yaml#
      5$schema: http://devicetree.org/meta-schemas/core.yaml#
      6
      7title: Qualcomm Technologies, Inc. RPMh Regulators
      8
      9maintainers:
     10  - Bjorn Andersson <bjorn.andersson@linaro.org>
     11  - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
     12
     13description: |
     14    rpmh-regulator devices support PMIC regulator management via the Voltage
     15    Regulator Manager (VRM) and Oscillator Buffer (XOB) RPMh accelerators.
     16    The APPS processor communicates with these hardware blocks via a
     17    Resource State Coordinator (RSC) using command packets.  The VRM allows
     18    changing three parameters for a given regulator, enable state, output
     19    voltage, and operating mode.  The XOB allows changing only a single
     20    parameter for a given regulator, its enable state.  Despite its name,
     21    the XOB is capable of controlling the enable state of any PMIC peripheral.
     22    It is used for clock buffers, low-voltage switches, and LDO/SMPS regulators
     23    which have a fixed voltage and mode.
     24
     25    =======================
     26    Required Node Structure
     27    =======================
     28
     29    RPMh regulators must be described in two levels of device nodes.  The first
     30    level describes the PMIC containing the regulators and must reside within an
     31    RPMh device node.  The second level describes each regulator within the PMIC
     32    which is to be used on the board.  Each of these regulators maps to a single
     33    RPMh resource.
     34
     35    The names used for regulator nodes must match those supported by a given
     36    PMIC. Supported regulator node names are
     37      For PM6150, smps1 - smps5, ldo1 - ldo19
     38      For PM6150L, smps1 - smps8, ldo1 - ldo11, bob
     39      For PM6350, smps1 - smps5, ldo1 - ldo22
     40      For PM7325, smps1 - smps8, ldo1 - ldo19
     41      For PM8005, smps1 - smps4
     42      For PM8009, smps1 - smps2, ldo1 - ldo7
     43      For PM8150, smps1 - smps10, ldo1 - ldo18
     44      For PM8150L, smps1 - smps8, ldo1 - ldo11, bob, flash, rgb
     45      For PM8350, smps1 - smps12, ldo1 - ldo10
     46      For PM8350C, smps1 - smps10, ldo1 - ldo13, bob
     47      For PM8450, smps1 - smps6, ldo1 - ldo4
     48      For PM8998, smps1 - smps13, ldo1 - ldo28, lvs1 - lvs2
     49      For PMI8998, bob
     50      For PMR735A, smps1 - smps3, ldo1 - ldo7
     51      For PMX55, smps1 - smps7, ldo1 - ldo16
     52      For PMX65, smps1 - smps8, ldo1 - ldo21
     53
     54properties:
     55  compatible:
     56    enum:
     57      - qcom,pm6150-rpmh-regulators
     58      - qcom,pm6150l-rpmh-regulators
     59      - qcom,pm6350-rpmh-regulators
     60      - qcom,pm7325-rpmh-regulators
     61      - qcom,pm8005-rpmh-regulators
     62      - qcom,pm8009-rpmh-regulators
     63      - qcom,pm8009-1-rpmh-regulators
     64      - qcom,pm8150-rpmh-regulators
     65      - qcom,pm8150l-rpmh-regulators
     66      - qcom,pm8350-rpmh-regulators
     67      - qcom,pm8350c-rpmh-regulators
     68      - qcom,pm8450-rpmh-regulators
     69      - qcom,pm8998-rpmh-regulators
     70      - qcom,pmg1110-rpmh-regulators
     71      - qcom,pmi8998-rpmh-regulators
     72      - qcom,pmm8155au-rpmh-regulators
     73      - qcom,pmr735a-rpmh-regulators
     74      - qcom,pmx55-rpmh-regulators
     75      - qcom,pmx65-rpmh-regulators
     76
     77  qcom,pmic-id:
     78    description: |
     79        RPMh resource name suffix used for the regulators found
     80        on this PMIC.
     81    $ref: /schemas/types.yaml#/definitions/string
     82    enum: [a, b, c, d, e, f, h, k]
     83
     84  qcom,always-wait-for-ack:
     85    description: |
     86        Boolean flag which indicates that the application processor
     87        must wait for an ACK or a NACK from RPMh for every request
     88        sent for this regulator including those which are for a
     89        strictly lower power state.
     90    $ref: /schemas/types.yaml#/definitions/flag
     91
     92  vdd-flash-supply:
     93    description: Input supply phandle of flash.
     94
     95  vdd-rgb-supply:
     96    description: Input supply phandle of rgb.
     97
     98  bob:
     99    type: object
    100    $ref: "regulator.yaml#"
    101    description: BOB regulator node.
    102
    103patternProperties:
    104  "^(smps|ldo|lvs)[0-9]+$":
    105    type: object
    106    $ref: "regulator.yaml#"
    107    description: smps/ldo regulator nodes(s).
    108
    109required:
    110  - compatible
    111  - qcom,pmic-id
    112
    113allOf:
    114  - if:
    115      properties:
    116        compatible:
    117          enum:
    118            - qcom,pm6150-rpmh-regulators
    119    then:
    120      properties:
    121        vdd-l2-l3-supply: true
    122        vdd-l4-l7-l8-supply: true
    123        vdd-l5-l16-l17-l18-l19-supply: true
    124        vdd-l10-l14-l15-supply: true
    125        vdd-l11-l12-l13-supply: true
    126      patternProperties:
    127        "^vdd-l[169]-supply$": true
    128        "^vdd-s[1-5]-supply$": true
    129
    130  - if:
    131      properties:
    132        compatible:
    133          enum:
    134            - qcom,pm6150l-rpmh-regulators
    135    then:
    136      properties:
    137        vdd-bob-supply:
    138          description: BOB regulator parent supply phandle.
    139        vdd-l1-l8-supply: true
    140        vdd-l2-l3-supply: true
    141        vdd-l4-l5-l6-supply: true
    142        vdd-l7-l11-supply: true
    143        vdd-l9-l10-supply: true
    144      patternProperties:
    145        "^vdd-s[1-8]-supply$": true
    146
    147  - if:
    148      properties:
    149        compatible:
    150          enum:
    151            - qcom,pm7325-rpmh-regulators
    152    then:
    153      properties:
    154        vdd-l1-l4-l12-l15-supply: true
    155        vdd-l2-l7-supply: true
    156        vdd-l6-l9-l10-supply: true
    157        vdd-l11-l17-l18-l19-supply: true
    158        vdd-l13-supply: true
    159        vdd-l14-l16-supply: true
    160      patternProperties:
    161        "^vdd-l[358]-supply$": true
    162        "^vdd-s[1-8]-supply$": true
    163
    164  - if:
    165      properties:
    166        compatible:
    167          enum:
    168            - qcom,pm8005-rpmh-regulators
    169    then:
    170      patternProperties:
    171        "^vdd-s[1-4]-supply$": true
    172
    173  - if:
    174      properties:
    175        compatible:
    176          enum:
    177            - qcom,pm8009-rpmh-regulators
    178            - qcom,pm8009-1-rpmh-regulators
    179    then:
    180      properties:
    181        vdd-l5-l6-supply: true
    182      patternProperties:
    183        "^vdd-l[1-47]-supply$": true
    184        "^vdd-s[1-2]-supply$": true
    185
    186  - if:
    187      properties:
    188        compatible:
    189          enum:
    190            - qcom,pm8150-rpmh-regulators
    191            - qcom,pmm8155au-rpmh-regulators
    192    then:
    193      properties:
    194        vdd-l1-l8-l11-supply: true
    195        vdd-l2-l10-supply: true
    196        vdd-l3-l4-l5-l18-supply: true
    197        vdd-l6-l9-supply: true
    198        vdd-l7-l12-l14-l15-supply: true
    199        vdd-l13-l16-l17-supply: true
    200      patternProperties:
    201        "^vdd-s([1-9]|10)-supply$": true
    202
    203  - if:
    204      properties:
    205        compatible:
    206          enum:
    207            - qcom,pm8150l-rpmh-regulators
    208    then:
    209      properties:
    210        vdd-bob-supply:
    211          description: BOB regulator parent supply phandle.
    212        vdd-l1-l8-supply: true
    213        vdd-l2-l3-supply: true
    214        vdd-l4-l5-l6-supply: true
    215        vdd-l7-l11-supply: true
    216        vdd-l9-l10-supply: true
    217      patternProperties:
    218        "^vdd-s[1-8]-supply$": true
    219
    220  - if:
    221      properties:
    222        compatible:
    223          enum:
    224            - qcom,pm8350-rpmh-regulators
    225    then:
    226      properties:
    227        vdd-l1-l4-supply: true
    228        vdd-l2-l7-supply: true
    229        vdd-l3-l5-supply: true
    230        vdd-l6-l9-l10-supply: true
    231        vdd-l8-supply: true
    232      patternProperties:
    233        "^vdd-s([1-9]|1[0-2])-supply$": true
    234
    235  - if:
    236      properties:
    237        compatible:
    238          enum:
    239            - qcom,pm8350c-rpmh-regulators
    240    then:
    241      properties:
    242        vdd-bob-supply:
    243          description: BOB regulator parent supply phandle.
    244        vdd-l1-l12-supply: true
    245        vdd-l2-l8-supply: true
    246        vdd-l3-l4-l5-l7-l13-supply: true
    247        vdd-l6-l9-l11-supply: true
    248        vdd-l10-supply: true
    249      patternProperties:
    250        "^vdd-s([1-9]|10)-supply$": true
    251
    252  - if:
    253      properties:
    254        compatible:
    255          enum:
    256            - qcom,pm8450-rpmh-regulators
    257    then:
    258      patternProperties:
    259        "^vdd-l[1-4]-supply$": true
    260        "^vdd-s[1-6]-supply$": true
    261
    262  - if:
    263      properties:
    264        compatible:
    265          enum:
    266            - qcom,pm8998-rpmh-regulators
    267    then:
    268      properties:
    269        vdd-l1-l27-supply: true
    270        vdd-l2-l8-l17-supply: true
    271        vdd-l3-l11-supply: true
    272        vdd-l4-l5-supply: true
    273        vdd-l6-supply: true
    274        vdd-l7-l12-l14-l15-supply: true
    275        vdd-l9-supply: true
    276        vdd-l10-l23-l25-supply: true
    277        vdd-l13-l19-l21-supply: true
    278        vdd-l16-l28-supply: true
    279        vdd-l18-l22-supply: true
    280        vdd-l20-l24-supply: true
    281        vdd-l26-supply: true
    282        vin-lvs-1-2-supply: true
    283      patternProperties:
    284        "^vdd-s([1-9]|1[0-3])-supply$": true
    285
    286  - if:
    287      properties:
    288        compatible:
    289          enum:
    290            - qcom,pmg1110-rpmh-regulators
    291    then:
    292      properties:
    293        vdd-s1-supply: true
    294
    295  - if:
    296      properties:
    297        compatible:
    298          enum:
    299            - qcom,pmi8998-rpmh-regulators
    300    then:
    301      properties:
    302        vdd-bob-supply:
    303          description: BOB regulator parent supply phandle.
    304
    305  - if:
    306      properties:
    307        compatible:
    308          enum:
    309            - qcom,pmr735a-rpmh-regulators
    310    then:
    311      properties:
    312        vdd-l1-l2-supply: true
    313        vdd-l3-supply: true
    314        vdd-l4-supply: true
    315        vdd-l5-l6-supply: true
    316        vdd-l7-bob-supply: true
    317      patternProperties:
    318        "^vdd-s[1-3]-supply$": true
    319
    320  - if:
    321      properties:
    322        compatible:
    323          enum:
    324            - qcom,pmx55-rpmh-regulators
    325    then:
    326      properties:
    327        vdd-l1-l2-supply: true
    328        vdd-l3-l9-supply: true
    329        vdd-l4-l12-supply: true
    330        vdd-l5-l6-supply: true
    331        vdd-l7-l8-supply: true
    332        vdd-l10-l11-l13-supply: true
    333      patternProperties:
    334        "^vdd-l1[4-6]-supply$": true
    335        "^vdd-s[1-7]-supply$": true
    336
    337  - if:
    338      properties:
    339        compatible:
    340          enum:
    341            - qcom,pmx65-rpmh-regulators
    342    then:
    343      properties:
    344        vdd-l2-l18-supply: true
    345        vdd-l5-l6-l16-supply: true
    346        vdd-l8-l9-supply: true
    347        vdd-l11-l13-supply: true
    348      patternProperties:
    349        "^vdd-l[1347]-supply$": true
    350        "^vdd-l1[0245789]-supply$": true
    351        "^vdd-l2[01]-supply$": true
    352        "^vdd-s[1-8]-supply$": true
    353
    354unevaluatedProperties: false
    355
    356examples:
    357  - |
    358    #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
    359
    360    pm8998-rpmh-regulators {
    361        compatible = "qcom,pm8998-rpmh-regulators";
    362        qcom,pmic-id = "a";
    363
    364        vdd-l7-l12-l14-l15-supply = <&pm8998_s5>;
    365
    366        smps2 {
    367            regulator-min-microvolt = <1100000>;
    368            regulator-max-microvolt = <1100000>;
    369        };
    370
    371        ldo7 {
    372            regulator-min-microvolt = <1800000>;
    373            regulator-max-microvolt = <1800000>;
    374            regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    375            regulator-allowed-modes =
    376                <RPMH_REGULATOR_MODE_LPM
    377                 RPMH_REGULATOR_MODE_HPM>;
    378            regulator-allow-set-load;
    379        };
    380
    381        lvs1 {
    382            regulator-min-microvolt = <1800000>;
    383            regulator-max-microvolt = <1800000>;
    384        };
    385    };
    386
    387    pmi8998-rpmh-regulators {
    388        compatible = "qcom,pmi8998-rpmh-regulators";
    389        qcom,pmic-id = "b";
    390
    391        bob {
    392            regulator-min-microvolt = <3312000>;
    393            regulator-max-microvolt = <3600000>;
    394            regulator-allowed-modes =
    395                <RPMH_REGULATOR_MODE_AUTO
    396                 RPMH_REGULATOR_MODE_HPM>;
    397            regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
    398        };
    399    };
    400...