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

rohm,bd71847-regulator.yaml (5773B)


      1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
      2%YAML 1.2
      3---
      4$id: http://devicetree.org/schemas/regulator/rohm,bd71847-regulator.yaml#
      5$schema: http://devicetree.org/meta-schemas/core.yaml#
      6
      7title: ROHM BD71847 and BD71850 Power Management Integrated Circuit regulators
      8
      9maintainers:
     10  - Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
     11
     12description: |
     13  List of regulators provided by this controller. BD71847 regulators node
     14  should be sub node of the BD71847 MFD node. See BD71847 MFD bindings at
     15  Documentation/devicetree/bindings/mfd/rohm,bd71847-pmic.yaml
     16  Regulator nodes should be named to BUCK_<number> and LDO_<number>. The
     17  definition for each of these nodes is defined using the standard
     18  binding for regulators at
     19  Documentation/devicetree/bindings/regulator/regulator.txt.
     20  Note that if BD71847 starts at RUN state you probably want to use
     21  regulator-boot-on at least for BUCK5. LDO6 is supplied by it and it must
     22  not be disabled by driver at startup. If BUCK5 is disabled at startup the
     23  voltage monitoring for LDO5/LDO6 can cause PMIC to reset.
     24
     25#The valid names for BD71847 regulator nodes are:
     26#BUCK1, BUCK2, BUCK3, BUCK4, BUCK5, BUCK6
     27#LDO1, LDO2, LDO3, LDO4, LDO5, LDO6
     28
     29patternProperties:
     30  "^LDO[1-6]$":
     31    type: object
     32    $ref: regulator.yaml#
     33    description:
     34      Properties for single LDO regulator.
     35
     36    properties:
     37      regulator-name:
     38        pattern: "^ldo[1-6]$"
     39        description:
     40          should be "ldo1", ..., "ldo6"
     41
     42    unevaluatedProperties: false
     43
     44  "^BUCK[1-6]$":
     45    type: object
     46    $ref: regulator.yaml#
     47    description:
     48      Properties for single BUCK regulator.
     49
     50    properties:
     51      regulator-name:
     52        pattern: "^buck[1-6]$"
     53        description:
     54          should be "buck1", ..., "buck6"
     55
     56      rohm,dvs-run-voltage:
     57        $ref: "/schemas/types.yaml#/definitions/uint32"
     58        minimum: 0
     59        maximum: 1300000
     60        description:
     61          PMIC default "RUN" state voltage in uV. See below table for
     62          bucks which support this. 0 means disabled.
     63
     64      rohm,dvs-idle-voltage:
     65        $ref: "/schemas/types.yaml#/definitions/uint32"
     66        minimum: 0
     67        maximum: 1300000
     68        description:
     69          PMIC default "IDLE" state voltage in uV. See below table for
     70          bucks which support this. 0 means disabled.
     71
     72      rohm,dvs-suspend-voltage:
     73        $ref: "/schemas/types.yaml#/definitions/uint32"
     74        minimum: 0
     75        maximum: 1300000
     76        description:
     77          PMIC default "SUSPEND" state voltage in uV. See below table for
     78          bucks which support this. 0 means disabled.
     79
     80        # Supported default DVS states:
     81        #
     82        # BD71847:
     83        # buck | dvs-run-voltage | dvs-idle-voltage | dvs-suspend-voltage
     84        # ----------------------------------------------------------------
     85        # 1    | supported       | supported        | supported
     86        # ----------------------------------------------------------------
     87        # 2    | supported       | supported        | not supported
     88        # ----------------------------------------------------------------
     89        # rest | not supported   | not supported    | not supported
     90
     91      # BD718(47/50) power outputs can either be controlled by the PMIC internal
     92      # hardware state machine or by software. If you need regulators to be
     93      # turned ON/OFF for example based on PMIC_STBY_REQ line (which toggles
     94      # PMIC HW state machine) - then you should set this property.
     95      # Tradeoff is that then SW can't control the ON/OFF state for this
     96      # regulator (other than invoking a PMIC state change).
     97      rohm,no-regulator-enable-control:
     98        description: |
     99          Enable/Disable control of this regulator must be left to the
    100          PMIC hardware state machine.
    101        type: boolean
    102
    103      # Setups where regulator (especially the buck8) output voltage is scaled
    104      # by adding external connection where some other regulator output is
    105      # connected to feedback-pin (over suitable resistors) is getting popular
    106      # amongst users of BD71837. (This allows for example scaling down the
    107      # buck8 voltages to suit lover GPU voltages for projects where buck8 is
    108      # (ab)used to supply power for GPU.
    109      #
    110      # So we allow describing this external connection from DT and scale the
    111      # voltages accordingly. This is what the connection should look like:
    112      #
    113      # |---------------|
    114      # |       buck 8  |-------+----->Vout
    115      # |               |       |
    116      # |---------------|       |
    117      #        |                |
    118      #        |                |
    119      #        +-------+--R2----+
    120      #                |
    121      #                R1
    122      #                |
    123      #        V FB-pull-up
    124      #
    125      # Here the buck output is sifted according to formula:
    126      #
    127      # Vout_o = Vo - (Vpu - Vo)*R2/R1
    128      # Linear_step = step_orig*(R1+R2)/R1
    129      #
    130      # where:
    131      # Vout_o is adjusted voltage output at vsel reg value 0
    132      # Vo is original voltage output at vsel reg value 0
    133      # Vpu is the pull-up voltage V FB-pull-up in the picture
    134      # R1 and R2 are resistor values.
    135
    136      rohm,fb-pull-up-microvolt:
    137        description:
    138          Feedback-pin has pull-up connection to adjust voltage range. This is
    139          the used pull-up voltage before R1.
    140
    141      rohm,feedback-pull-up-r1-ohms:
    142        description:
    143          Feedback-pin has pull-up connection to adjust voltage range. This is
    144          the used R1 resistor.
    145
    146      rohm,feedback-pull-up-r2-ohms:
    147        description:
    148          Feedback-pin has pull-up connection to adjust voltage range. This is
    149          the used R2 resistor.
    150
    151    required:
    152      - regulator-name
    153
    154    unevaluatedProperties: false
    155
    156additionalProperties: false