brintos

brintos / linux-shallow public Read only

0
0
Text · 6.1 KiB · efee3de Raw
174 lines · yaml
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause2%YAML 1.23---4$id: http://devicetree.org/schemas/mfd/rohm,bd96801-pmic.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: ROHM BD96801 Scalable Power Management Integrated Circuit8 9maintainers:10  - Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>11 12description:13  BD96801 is an automotive grade single-chip power management IC.14  It integrates 4 buck converters and 3 LDOs with safety features like15  over-/under voltage and over current detection and a watchdog.16 17properties:18  compatible:19    const: rohm,bd9680120 21  reg:22    maxItems: 123 24  interrupts:25    description:26      The PMIC provides intb and errb IRQ lines. The errb IRQ line is used27      for fatal IRQs which will cause the PMIC to shut down power outputs.28      In many systems this will shut down the SoC controlling the PMIC and29      connecting/handling the errb can be omitted. However, there are cases30      where the SoC is not powered by the PMIC or has a short time backup31      energy to handle shutdown of critical hardware. In that case it may be32      useful to connect the errb and handle errb events.33    minItems: 134    maxItems: 235 36  interrupt-names:37    minItems: 138    items:39      - enum: [intb, errb]40      - const: errb41 42  rohm,hw-timeout-ms:43    description:44      Watchdog timeout value(s). First walue is timeout limit. Second value is45      optional value for 'too early' watchdog ping if window timeout mode is46      to be used.47    minItems: 148    maxItems: 249 50  rohm,wdg-action:51    description:52      Whether the watchdog failure must turn off the regulator power outputs or53      just toggle the INTB line.54    enum:55      - prstb56      - intb-only57 58  timeout-sec:59    maxItems: 260 61  regulators:62    $ref: /schemas/regulator/rohm,bd96801-regulator.yaml63    description:64      List of child nodes that specify the regulators.65 66required:67  - compatible68  - reg69  - interrupts70  - interrupt-names71  - regulators72 73additionalProperties: false74 75examples:76  - |77    #include <dt-bindings/interrupt-controller/irq.h>78    #include <dt-bindings/leds/common.h>79    i2c {80        #address-cells = <1>;81        #size-cells = <0>;82        pmic: pmic@60 {83            reg = <0x60>;84            compatible = "rohm,bd96801";85            interrupt-parent = <&gpio1>;86            interrupts = <29 IRQ_TYPE_LEVEL_LOW>, <6 IRQ_TYPE_LEVEL_LOW>;87            interrupt-names = "intb", "errb";88 89            regulators {90                buck1 {91                    regulator-name = "buck1";92                    regulator-ramp-delay = <1250>;93                    /* 0.5V min INITIAL - 150 mV tune */94                    regulator-min-microvolt = <350000>;95                    /* 3.3V + 150mV tune */96                    regulator-max-microvolt = <3450000>;97 98                    /* These can be set only when PMIC is in STBY */99                    rohm,initial-voltage-microvolt = <500000>;100                    regulator-ov-error-microvolt = <230000>;101                    regulator-uv-error-microvolt = <230000>;102                    regulator-temp-protection-kelvin = <1>;103                    regulator-temp-warn-kelvin = <0>;104                };105                buck2 {106                    regulator-name = "buck2";107                    regulator-min-microvolt = <350000>;108                    regulator-max-microvolt = <3450000>;109 110                    rohm,initial-voltage-microvolt = <3000000>;111                    regulator-ov-error-microvolt = <18000>;112                    regulator-uv-error-microvolt = <18000>;113                    regulator-temp-protection-kelvin = <1>;114                    regulator-temp-warn-kelvin = <1>;115                };116                buck3 {117                    regulator-name = "buck3";118                    regulator-min-microvolt = <350000>;119                    regulator-max-microvolt = <3450000>;120 121                    rohm,initial-voltage-microvolt = <600000>;122                    regulator-ov-warn-microvolt = <18000>;123                    regulator-uv-warn-microvolt = <18000>;124                    regulator-temp-protection-kelvin = <1>;125                    regulator-temp-error-kelvin = <0>;126                };127                buck4 {128                    regulator-name = "buck4";129                    regulator-min-microvolt = <350000>;130                    regulator-max-microvolt = <3450000>;131 132                    rohm,initial-voltage-microvolt = <600000>;133                    regulator-ov-warn-microvolt = <18000>;134                    regulator-uv-warn-microvolt = <18000>;135                    regulator-temp-protection-kelvin = <1>;136                    regulator-temp-error-kelvin = <0>;137                };138                ldo5 {139                    regulator-name = "ldo5";140                    regulator-min-microvolt = <300000>;141                    regulator-max-microvolt = <3300000>;142 143                    rohm,initial-voltage-microvolt = <500000>;144                    regulator-ov-error-microvolt = <36000>;145                    regulator-uv-error-microvolt = <34000>;146                    regulator-temp-protection-kelvin = <1>;147                    regulator-temp-warn-kelvin = <0>;148                };149                ldo6 {150                    regulator-name = "ldo6";151                    regulator-min-microvolt = <300000>;152                    regulator-max-microvolt = <3300000>;153 154                    rohm,initial-voltage-microvolt = <300000>;155                    regulator-ov-error-microvolt = <36000>;156                    regulator-uv-error-microvolt = <34000>;157                    regulator-temp-protection-kelvin = <1>;158                    regulator-temp-warn-kelvin = <0>;159                };160                ldo7 {161                    regulator-name = "ldo7";162                    regulator-min-microvolt = <300000>;163                    regulator-max-microvolt = <3300000>;164 165                    rohm,initial-voltage-microvolt = <500000>;166                    regulator-ov-error-microvolt = <36000>;167                    regulator-uv-error-microvolt = <34000>;168                    regulator-temp-protection-kelvin = <1>;169                    regulator-temp-warn-kelvin = <0>;170                };171            };172        };173    };174