brintos

brintos / linux-shallow public Read only

0
0
Text · 7.4 KiB · c9574b2 Raw
283 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/mfd/mediatek,mt6370.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: MediaTek MT6370 SubPMIC8 9maintainers:10  - ChiYuan Huang <cy_huang@richtek.com>11 12description: |13  MT6370 is a highly-integrated smart power management IC, which includes a14  single cell Li-Ion/Li-Polymer switching battery charger, a USB Type-C &15  Power Delivery (PD) controller, dual flash LED current sources, a RGB LED16  driver, a backlight WLED driver, a display bias driver and a general LDO for17  portable devices.18 19properties:20  compatible:21    const: mediatek,mt637022 23  reg:24    maxItems: 125 26  wakeup-source: true27 28  interrupts:29    maxItems: 130 31  interrupt-controller: true32 33  "#interrupt-cells":34    const: 135 36  adc:37    type: object38    additionalProperties: false39    description: |40      Provides 9 channels for system monitoring, including VBUSDIV5 (lower41      accuracy, higher measure range), VBUSDIV2 (higher accuracy, lower42      measure range), VBAT, VSYS, CHG_VDDP, TS_BAT, IBUS, IBAT, and TEMP_JC.43 44    properties:45      compatible:46        const: mediatek,mt6370-adc47 48      "#io-channel-cells":49        const: 150 51    required:52      - compatible53      - "#io-channel-cells"54 55  backlight:56    type: object57    $ref: /schemas/leds/backlight/mediatek,mt6370-backlight.yaml#58 59  charger:60    type: object61    $ref: /schemas/power/supply/mediatek,mt6370-charger.yaml#62 63  tcpc:64    type: object65    $ref: /schemas/usb/mediatek,mt6370-tcpc.yaml#66 67  indicator:68    type: object69    $ref: /schemas/leds/mediatek,mt6370-indicator.yaml#70 71  flashlight:72    type: object73    $ref: /schemas/leds/mediatek,mt6370-flashlight.yaml#74 75  regulators:76    type: object77    additionalProperties: false78    description: |79      List all supported regulators, which support the control for DisplayBias80      voltages and one general purpose LDO which commonly used to drive the81      vibrator.82 83    patternProperties:84      "^(dsvbst|vibldo)$":85        $ref: /schemas/regulator/regulator.yaml#86        type: object87        unevaluatedProperties: false88 89      "^(dsvpos|dsvneg)$":90        $ref: /schemas/regulator/regulator.yaml#91        type: object92        unevaluatedProperties: false93 94        properties:95          enable-gpios:96            maxItems: 197 98required:99  - compatible100  - reg101  - interrupts102  - interrupt-controller103  - "#interrupt-cells"104  - regulators105  - adc106  - backlight107  - indicator108  - tcpc109  - charger110  - flashlight111 112additionalProperties: false113 114examples:115  - |116    #include <dt-bindings/interrupt-controller/irq.h>117    #include <dt-bindings/leds/common.h>118    #include <dt-bindings/iio/adc/mediatek,mt6370_adc.h>119    #include <dt-bindings/usb/pd.h>120    i2c {121      #address-cells = <1>;122      #size-cells = <0>;123 124      pmic@34 {125        compatible = "mediatek,mt6370";126        reg = <0x34>;127        wakeup-source;128        interrupts-extended = <&gpio26 3 IRQ_TYPE_LEVEL_LOW>;129        interrupt-controller;130        #interrupt-cells = <1>;131 132        mt6370_adc: adc {133          compatible = "mediatek,mt6370-adc";134          #io-channel-cells = <1>;135        };136 137        backlight {138          compatible = "mediatek,mt6370-backlight";139          mediatek,bled-channel-use = /bits/ 8 <15>;140        };141 142        charger {143          compatible = "mediatek,mt6370-charger";144          interrupts = <68>, <48>, <6>;145          interrupt-names = "uvp_d_evt", "attach_i", "mivr";146          io-channels = <&mt6370_adc MT6370_CHAN_IBUS>;147 148          mt6370_otg_vbus: usb-otg-vbus-regulator {149            regulator-name = "mt6370-usb-otg-vbus";150            regulator-min-microvolt = <4350000>;151            regulator-max-microvolt = <5800000>;152            regulator-min-microamp = <500000>;153            regulator-max-microamp = <3000000>;154          };155        };156 157        indicator {158          compatible = "mediatek,mt6370-indicator";159          #address-cells = <1>;160          #size-cells = <0>;161 162          multi-led@0 {163            reg = <0>;164            function = LED_FUNCTION_INDICATOR;165            color = <LED_COLOR_ID_RGB>;166            led-max-microamp = <24000>;167            #address-cells = <1>;168            #size-cells = <0>;169            led@0 {170              reg = <0>;171              color = <LED_COLOR_ID_RED>;172            };173            led@1 {174              reg = <1>;175              color = <LED_COLOR_ID_GREEN>;176            };177            led@2 {178              reg = <2>;179              color = <LED_COLOR_ID_BLUE>;180            };181          };182          led@3 {183            reg = <3>;184            function = LED_FUNCTION_INDICATOR;185            color = <LED_COLOR_ID_WHITE>;186            led-max-microamp = <6000>;187          };188        };189 190        flashlight {191          compatible = "mediatek,mt6370-flashlight";192          #address-cells = <1>;193          #size-cells = <0>;194          led@0 {195            reg = <0>;196            led-sources = <0>;197            function = LED_FUNCTION_FLASH;198            color = <LED_COLOR_ID_WHITE>;199            function-enumerator = <1>;200            led-max-microamp = <200000>;201            flash-max-microamp = <500000>;202            flash-max-timeout-us = <1248000>;203          };204          led@1 {205            reg = <1>;206            led-sources = <1>;207            function = LED_FUNCTION_FLASH;208            color = <LED_COLOR_ID_WHITE>;209            function-enumerator = <2>;210            led-max-microamp = <200000>;211            flash-max-microamp = <500000>;212            flash-max-timeout-us = <1248000>;213          };214        };215 216        tcpc {217          compatible = "mediatek,mt6370-tcpc";218          interrupts-extended = <&gpio26 4 IRQ_TYPE_LEVEL_LOW>;219 220          connector {221            compatible = "usb-c-connector";222            label = "USB-C";223            vbus-supply = <&mt6370_otg_vbus>;224            data-role = "dual";225            power-role = "dual";226            try-power-role = "sink";227            source-pdos = <PDO_FIXED(5000, 1000, PDO_FIXED_DUAL_ROLE | PDO_FIXED_DATA_SWAP)>;228            sink-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_DUAL_ROLE | PDO_FIXED_DATA_SWAP)>;229            op-sink-microwatt = <10000000>;230 231            ports {232              #address-cells = <1>;233              #size-cells = <0>;234 235              port@0 {236                reg = <0>;237                endpoint {238                  remote-endpoint = <&usb_hs>;239                };240              };241              port@1 {242                reg = <1>;243                endpoint {244                  remote-endpoint = <&usb_ss>;245                };246              };247              port@2 {248                reg = <2>;249                endpoint {250                  remote-endpoint = <&dp_aux>;251                };252              };253            };254          };255        };256 257        regulators {258          dsvbst {259            regulator-name = "mt6370-dsv-vbst";260            regulator-min-microvolt = <4000000>;261            regulator-max-microvolt = <6200000>;262          };263          dsvpos {264            regulator-name = "mt6370-dsv-vpos";265            regulator-min-microvolt = <4000000>;266            regulator-max-microvolt = <6000000>;267            regulator-boot-on;268          };269          dsvneg {270            regulator-name = "mt6370-dsv-vneg";271            regulator-min-microvolt = <4000000>;272            regulator-max-microvolt = <6000000>;273            regulator-boot-on;274          };275          vibldo {276            regulator-name = "mt6370-vib-ldo";277            regulator-min-microvolt = <1600000>;278            regulator-max-microvolt = <4000000>;279          };280        };281      };282    };283