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

dlg,da9121.yaml (6616B)


      1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
      2%YAML 1.2
      3---
      4$id: http://devicetree.org/schemas/regulator/dlg,da9121.yaml#
      5$schema: http://devicetree.org/meta-schemas/core.yaml#
      6
      7title: Dialog Semiconductor DA9121 voltage regulator
      8
      9maintainers:
     10  - Adam Ward <Adam.Ward.opensource@diasemi.com>
     11
     12description: |
     13  Dialog Semiconductor DA9121 Single-channel 10A double-phase buck converter
     14  Dialog Semiconductor DA9122 Double-channel  5A single-phase buck converter
     15  Dialog Semiconductor DA9220 Double-channel  3A single-phase buck converter
     16  Dialog Semiconductor DA9217 Single-channel  6A double-phase buck converter
     17  Dialog Semiconductor DA9130 Single-channel 10A double-phase buck converter
     18  Dialog Semiconductor DA9131 Double-channel  5A single-phase buck converter
     19  Dialog Semiconductor DA9132 Double-channel  3A single-phase buck converter
     20  Dialog Semiconductor DA9141 Single-channel 40A   quad-phase buck converter
     21  Dialog Semiconductor DA9142 Single-channel 20A double-phase buck converter
     22
     23  Device parameter ranges
     24
     25  The current limits can be set to at/near double the rated current per channel
     26  to allow for transient peaks.
     27  Current limit changes when the output is enabled are not supported, as a
     28  precaution against undefined behaviour.
     29
     30  |----------------------------------------------|
     31  |               | range & reset default value  |
     32  | Device        |------------------------------|
     33  |               | microvolt    | microamp      |
     34  |----------------------------------------------|
     35  | DA9121/DA9130 | Min:  300000 | Min:  7000000 |
     36  |               | Max: 1900000 | Max: 20000000 |
     37  |----------------------------------------------|
     38  | DA9121/DA9131 | Min:  300000 | Min:  3500000 |
     39  |               | Max: 1900000 | Max: 10000000 |
     40  |----------------------------------------------|
     41  | DA9121/DA9131 | Min:  300000 | Min:  3500000 |
     42  |               | Max: 1900000 | Max:  6000000 |
     43  |----------------------------------------------|
     44  | DA9217        | Min:  300000 | Min:  7000000 |
     45  |               | Max: 1900000 | Max: 12000000 |
     46  |----------------------------------------------|
     47  | DA9141        | Min:  300000 | Min: 26000000 |
     48  |               | Max: 1300000 | Max: 78000000 |
     49  |----------------------------------------------|
     50  | DA9142        | Min:  300000 | Min: 13000000 |
     51  |               | Max: 1300000 | Max: 39000000 |
     52  |----------------------------------------------|
     53
     54properties:
     55  $nodename:
     56    pattern: "pmic@[0-9a-f]{1,2}"
     57  compatible:
     58    enum:
     59      - dlg,da9121
     60      - dlg,da9122
     61      - dlg,da9220
     62      - dlg,da9217
     63      - dlg,da9130
     64      - dlg,da9131
     65      - dlg,da9132
     66      - dlg,da9141
     67      - dlg,da9142
     68
     69  reg:
     70    maxItems: 1
     71    description: Specifies the I2C slave address.
     72
     73  interrupts:
     74    maxItems: 1
     75    description: IRQ line information.
     76
     77  dlg,irq-polling-delay-passive-ms:
     78    minimum: 1000
     79    maximum: 10000
     80    description: |
     81      Specify the polling period, measured in milliseconds, between interrupt status
     82      update checks. Range 1000-10000 ms.
     83
     84  regulators:
     85    type: object
     86    description: |
     87      List of regulators provided by the device
     88
     89    patternProperties:
     90      "^buck([1-2])$":
     91        type: object
     92        $ref: regulator.yaml#
     93        description: |
     94          Properties for a single BUCK regulator
     95
     96        properties:
     97          regulator-name:
     98            pattern: "^BUCK([1-2])$"
     99            description: |
    100              BUCK2 present in DA9122, DA9220, DA9131, DA9132 only
    101
    102          regulator-initial-mode:
    103            enum: [ 0, 1, 2, 3 ]
    104            description: Defined in include/dt-bindings/regulator/dlg,da9121-regulator.h
    105
    106          enable-gpios:
    107            maxItems: 1
    108            description: Specify a valid GPIO for platform control of the regulator
    109
    110          dlg,ripple-cancel:
    111            $ref: "/schemas/types.yaml#/definitions/uint32"
    112            enum: [ 0, 1, 2, 3 ]
    113            description: |
    114              Defined in include/dt-bindings/regulator/dlg,da9121-regulator.h
    115              Only present on multi-channel devices (DA9122, DA9220, DA9131, DA9132)
    116
    117        unevaluatedProperties: false
    118
    119required:
    120  - compatible
    121  - reg
    122  - regulators
    123
    124additionalProperties: false
    125
    126examples:
    127  - |
    128    #include <dt-bindings/gpio/gpio.h>
    129    #include <dt-bindings/interrupt-controller/irq.h>
    130    #include <dt-bindings/regulator/dlg,da9121-regulator.h>
    131    i2c {
    132      #address-cells = <1>;
    133      #size-cells = <0>;
    134      pmic@68 {
    135        compatible = "dlg,da9121";
    136        reg = <0x68>;
    137
    138        interrupt-parent = <&gpio6>;
    139        interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
    140
    141        dlg,irq-polling-delay-passive-ms = <2000>;
    142
    143        regulators {
    144          DA9121_BUCK1: buck1 {
    145            regulator-name = "BUCK1";
    146            regulator-min-microvolt = <300000>;
    147            regulator-max-microvolt = <1900000>;
    148            regulator-min-microamp = <7000000>;
    149            regulator-max-microamp = <20000000>;
    150            regulator-boot-on;
    151            regulator-initial-mode = <DA9121_BUCK_MODE_AUTO>;
    152            enable-gpios = <&gpio 1 GPIO_ACTIVE_HIGH>;
    153          };
    154        };
    155      };
    156    };
    157
    158  - |
    159    #include <dt-bindings/gpio/gpio.h>
    160    #include <dt-bindings/interrupt-controller/irq.h>
    161    #include <dt-bindings/regulator/dlg,da9121-regulator.h>
    162    i2c {
    163      #address-cells = <1>;
    164      #size-cells = <0>;
    165      pmic@68 {
    166        compatible = "dlg,da9122";
    167        reg = <0x68>;
    168
    169        interrupt-parent = <&gpio6>;
    170        interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
    171
    172        dlg,irq-polling-delay-passive-ms = <2000>;
    173
    174        regulators {
    175          DA9122_BUCK1: buck1 {
    176            regulator-name = "BUCK1";
    177            regulator-min-microvolt = <300000>;
    178            regulator-max-microvolt = <1900000>;
    179            regulator-min-microamp = <3500000>;
    180            regulator-max-microamp = <10000000>;
    181            regulator-boot-on;
    182            regulator-initial-mode = <DA9121_BUCK_MODE_AUTO>;
    183            enable-gpios = <&gpio6 1 GPIO_ACTIVE_HIGH>;
    184            dlg,ripple-cancel = <DA9121_BUCK_RIPPLE_CANCEL_NONE>;
    185          };
    186          DA9122_BUCK2: buck2 {
    187            regulator-name = "BUCK2";
    188            regulator-min-microvolt = <300000>;
    189            regulator-max-microvolt = <1900000>;
    190            regulator-min-microamp = <3500000>;
    191            regulator-max-microamp = <10000000>;
    192            regulator-boot-on;
    193            regulator-initial-mode = <DA9121_BUCK_MODE_AUTO>;
    194            enable-gpios = <&gpio6 2 GPIO_ACTIVE_HIGH>;
    195            dlg,ripple-cancel = <DA9121_BUCK_RIPPLE_CANCEL_NONE>;
    196          };
    197        };
    198      };
    199    };
    200...