16e357f57SMacpaul Lin# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 26e357f57SMacpaul Lin%YAML 1.2 36e357f57SMacpaul Lin--- 46e357f57SMacpaul Lin$id: http://devicetree.org/schemas/mfd/mediatek,mt6397.yaml# 56e357f57SMacpaul Lin$schema: http://devicetree.org/meta-schemas/core.yaml# 66e357f57SMacpaul Lin 76e357f57SMacpaul Lintitle: MediaTek MT6397/MT6323 PMIC 86e357f57SMacpaul Lin 96e357f57SMacpaul Linmaintainers: 106e357f57SMacpaul Lin - Sen Chu <sen.chu@mediatek.com> 116e357f57SMacpaul Lin - Macpaul Lin <macpaul.lin@mediatek.com> 126e357f57SMacpaul Lin 136e357f57SMacpaul Lindescription: | 146e357f57SMacpaul Lin MT6397/MT6323 is a power management system chip. 156e357f57SMacpaul Lin Please see the sub-modules below for supported features. 166e357f57SMacpaul Lin 176e357f57SMacpaul Lin MT6397/MT6323 is a multifunction device with the following sub modules: 186e357f57SMacpaul Lin - Regulators 196e357f57SMacpaul Lin - RTC 205bcecfcaSMacpaul Lin - ADC 216e357f57SMacpaul Lin - Audio codec 226e357f57SMacpaul Lin - GPIO 236e357f57SMacpaul Lin - Clock 246e357f57SMacpaul Lin - LED 256e357f57SMacpaul Lin - Keys 266e357f57SMacpaul Lin - Power controller 276e357f57SMacpaul Lin 286e357f57SMacpaul Lin It is interfaced to host controller using SPI interface by a proprietary hardware 296e357f57SMacpaul Lin called PMIC wrapper or pwrap. MT6397/MT6323 PMIC is a child device of pwrap. 306e357f57SMacpaul Lin See the following for pwrap node definitions: 316e357f57SMacpaul Lin Documentation/devicetree/bindings/soc/mediatek/mediatek,pwrap.yaml 326e357f57SMacpaul Lin 336e357f57SMacpaul Linproperties: 346e357f57SMacpaul Lin compatible: 356e357f57SMacpaul Lin oneOf: 366e357f57SMacpaul Lin - enum: 376e357f57SMacpaul Lin - mediatek,mt6323 386e357f57SMacpaul Lin - mediatek,mt6331 # "mediatek,mt6331" for PMIC MT6331 and MT6332. 39*5b0417b8SYassine Oudjana - mediatek,mt6328 406e357f57SMacpaul Lin - mediatek,mt6358 416e357f57SMacpaul Lin - mediatek,mt6359 426e357f57SMacpaul Lin - mediatek,mt6397 436e357f57SMacpaul Lin - items: 446e357f57SMacpaul Lin - enum: 456e357f57SMacpaul Lin - mediatek,mt6366 466e357f57SMacpaul Lin - const: mediatek,mt6358 476e357f57SMacpaul Lin 486e357f57SMacpaul Lin interrupts: 496e357f57SMacpaul Lin maxItems: 1 506e357f57SMacpaul Lin 516e357f57SMacpaul Lin interrupt-controller: true 526e357f57SMacpaul Lin 536e357f57SMacpaul Lin "#interrupt-cells": 546e357f57SMacpaul Lin const: 2 556e357f57SMacpaul Lin 566e357f57SMacpaul Lin rtc: 576e357f57SMacpaul Lin type: object 586e357f57SMacpaul Lin $ref: /schemas/rtc/rtc.yaml# 596e357f57SMacpaul Lin unevaluatedProperties: false 606e357f57SMacpaul Lin description: 616e357f57SMacpaul Lin MT6397 Real Time Clock. 626e357f57SMacpaul Lin 636e357f57SMacpaul Lin properties: 646e357f57SMacpaul Lin compatible: 656e357f57SMacpaul Lin oneOf: 666e357f57SMacpaul Lin - enum: 676e357f57SMacpaul Lin - mediatek,mt6323-rtc 686e357f57SMacpaul Lin - mediatek,mt6331-rtc 696e357f57SMacpaul Lin - mediatek,mt6358-rtc 706e357f57SMacpaul Lin - mediatek,mt6397-rtc 716e357f57SMacpaul Lin - items: 726e357f57SMacpaul Lin - enum: 736e357f57SMacpaul Lin - mediatek,mt6366-rtc 746e357f57SMacpaul Lin - const: mediatek,mt6358-rtc 756e357f57SMacpaul Lin 760a98b711SAngeloGioacchino Del Regno start-year: true 770a98b711SAngeloGioacchino Del Regno 786e357f57SMacpaul Lin required: 796e357f57SMacpaul Lin - compatible 806e357f57SMacpaul Lin 816e357f57SMacpaul Lin regulators: 826e357f57SMacpaul Lin type: object 836e357f57SMacpaul Lin description: 846e357f57SMacpaul Lin List of child nodes that specify the regulators. 856e357f57SMacpaul Lin additionalProperties: true 866e357f57SMacpaul Lin 876e357f57SMacpaul Lin properties: 886e357f57SMacpaul Lin compatible: 896e357f57SMacpaul Lin oneOf: 906e357f57SMacpaul Lin - enum: 916e357f57SMacpaul Lin - mediatek,mt6323-regulator 92*5b0417b8SYassine Oudjana - mediatek,mt6328-regulator 936e357f57SMacpaul Lin - mediatek,mt6358-regulator 945bcecfcaSMacpaul Lin - mediatek,mt6359-regulator 956e357f57SMacpaul Lin - mediatek,mt6397-regulator 966e357f57SMacpaul Lin - items: 976e357f57SMacpaul Lin - enum: 986e357f57SMacpaul Lin - mediatek,mt6366-regulator 996e357f57SMacpaul Lin - const: mediatek,mt6358-regulator 1006e357f57SMacpaul Lin 1016e357f57SMacpaul Lin required: 1026e357f57SMacpaul Lin - compatible 1036e357f57SMacpaul Lin 1045bcecfcaSMacpaul Lin adc: 1055bcecfcaSMacpaul Lin type: object 1065bcecfcaSMacpaul Lin $ref: /schemas/iio/adc/mediatek,mt6359-auxadc.yaml# 1075bcecfcaSMacpaul Lin unevaluatedProperties: false 1085bcecfcaSMacpaul Lin 1096e357f57SMacpaul Lin audio-codec: 1106e357f57SMacpaul Lin type: object 1116e357f57SMacpaul Lin description: 1126e357f57SMacpaul Lin Audio codec support with MT6358 and MT6397. 1136e357f57SMacpaul Lin additionalProperties: true 1146e357f57SMacpaul Lin 1156e357f57SMacpaul Lin properties: 1166e357f57SMacpaul Lin compatible: 1176e357f57SMacpaul Lin oneOf: 1186e357f57SMacpaul Lin - enum: 1196e357f57SMacpaul Lin - mediatek,mt6358-sound 1205bcecfcaSMacpaul Lin - mediatek,mt6359-codec 1216e357f57SMacpaul Lin - mediatek,mt6397-codec 1226e357f57SMacpaul Lin - items: 1236e357f57SMacpaul Lin - enum: 1246e357f57SMacpaul Lin - mediatek,mt6366-sound 1256e357f57SMacpaul Lin - const: mediatek,mt6358-sound 1266e357f57SMacpaul Lin 1276e357f57SMacpaul Lin required: 1286e357f57SMacpaul Lin - compatible 1296e357f57SMacpaul Lin 1306e357f57SMacpaul Lin clocks: 1316e357f57SMacpaul Lin type: object 1326e357f57SMacpaul Lin additionalProperties: false 1336e357f57SMacpaul Lin description: 1346e357f57SMacpaul Lin This is a clock buffer node for mt6397. However, there are no sub nodes 1356e357f57SMacpaul Lin or any public document exposed in public. 1366e357f57SMacpaul Lin 1376e357f57SMacpaul Lin properties: 1386e357f57SMacpaul Lin compatible: 1396e357f57SMacpaul Lin const: mediatek,mt6397-clk 1406e357f57SMacpaul Lin 1416e357f57SMacpaul Lin '#clock-cells': 1426e357f57SMacpaul Lin const: 1 1436e357f57SMacpaul Lin 1446e357f57SMacpaul Lin required: 1456e357f57SMacpaul Lin - compatible 1466e357f57SMacpaul Lin 1476e357f57SMacpaul Lin leds: 1486e357f57SMacpaul Lin type: object 1496e357f57SMacpaul Lin additionalProperties: false 1506e357f57SMacpaul Lin description: | 1516e357f57SMacpaul Lin MT6323 LED controller is subfunction provided by MT6323 PMIC, so the LED 1526e357f57SMacpaul Lin controllers are defined as the subnode of the function node provided by MT6323 1536e357f57SMacpaul Lin PMIC controller that is being defined as one kind of Muti-Function Device (MFD) 1546e357f57SMacpaul Lin using shared bus called PMIC wrapper for each subfunction to access remote 1556e357f57SMacpaul Lin MT6323 PMIC hardware. 1566e357f57SMacpaul Lin 1576e357f57SMacpaul Lin Each led is represented as a child node of the mediatek,mt6323-led that 1586e357f57SMacpaul Lin describes the initial behavior for each LED physically and currently only four 1596e357f57SMacpaul Lin LED child nodes can be supported. 1606e357f57SMacpaul Lin 1616e357f57SMacpaul Lin properties: 1626e357f57SMacpaul Lin compatible: 1636e357f57SMacpaul Lin enum: 1646e357f57SMacpaul Lin - mediatek,mt6323-led 1656e357f57SMacpaul Lin - mediatek,mt6331-led 1666e357f57SMacpaul Lin - mediatek,mt6332-led 1676e357f57SMacpaul Lin 1686e357f57SMacpaul Lin reg: 1696e357f57SMacpaul Lin maxItems: 1 1706e357f57SMacpaul Lin 1716e357f57SMacpaul Lin "#address-cells": 1726e357f57SMacpaul Lin const: 1 1736e357f57SMacpaul Lin 1746e357f57SMacpaul Lin "#size-cells": 1756e357f57SMacpaul Lin const: 0 1766e357f57SMacpaul Lin 1776e357f57SMacpaul Lin patternProperties: 1786e357f57SMacpaul Lin "^led@[0-3]$": 1796e357f57SMacpaul Lin type: object 1806e357f57SMacpaul Lin $ref: /schemas/leds/common.yaml# 1816e357f57SMacpaul Lin unevaluatedProperties: false 1826e357f57SMacpaul Lin 1836e357f57SMacpaul Lin properties: 1846e357f57SMacpaul Lin reg: 1856e357f57SMacpaul Lin description: 1866e357f57SMacpaul Lin LED channel number (0..3) 1876e357f57SMacpaul Lin minimum: 0 1886e357f57SMacpaul Lin maximum: 3 1896e357f57SMacpaul Lin 1906e357f57SMacpaul Lin required: 1916e357f57SMacpaul Lin - reg 1926e357f57SMacpaul Lin 1936e357f57SMacpaul Lin required: 1946e357f57SMacpaul Lin - compatible 1956e357f57SMacpaul Lin - "#address-cells" 1966e357f57SMacpaul Lin - "#size-cells" 1976e357f57SMacpaul Lin 1986e357f57SMacpaul Lin keys: 1996e357f57SMacpaul Lin type: object 2006e357f57SMacpaul Lin $ref: /schemas/input/mediatek,pmic-keys.yaml 2016e357f57SMacpaul Lin unevaluatedProperties: false 2026e357f57SMacpaul Lin description: 2036e357f57SMacpaul Lin Power and Home keys. 2046e357f57SMacpaul Lin 2056e357f57SMacpaul Lin power-controller: 2066e357f57SMacpaul Lin type: object 2076e357f57SMacpaul Lin additionalProperties: false 2086e357f57SMacpaul Lin description: 2096e357f57SMacpaul Lin The power controller which could be found on PMIC is responsible for 2106e357f57SMacpaul Lin externally powering off or on the remote MediaTek SoC through the 2116e357f57SMacpaul Lin circuit BBPU (baseband power up). 2126e357f57SMacpaul Lin 2136e357f57SMacpaul Lin properties: 2146e357f57SMacpaul Lin compatible: 2156e357f57SMacpaul Lin const: mediatek,mt6323-pwrc 2166e357f57SMacpaul Lin 2176e357f57SMacpaul Lin '#power-domain-cells': 2186e357f57SMacpaul Lin const: 0 2196e357f57SMacpaul Lin 2206e357f57SMacpaul Lin pinctrl: 2216e357f57SMacpaul Lin type: object 2226e357f57SMacpaul Lin $ref: /schemas/pinctrl/mediatek,mt65xx-pinctrl.yaml 2236e357f57SMacpaul Lin unevaluatedProperties: false 2246e357f57SMacpaul Lin description: 2256e357f57SMacpaul Lin Pin controller 2266e357f57SMacpaul Lin 2276e357f57SMacpaul Linrequired: 2286e357f57SMacpaul Lin - compatible 2296e357f57SMacpaul Lin - regulators 2306e357f57SMacpaul Lin 2316e357f57SMacpaul LinadditionalProperties: false 2326e357f57SMacpaul Lin 2336e357f57SMacpaul Linexamples: 2346e357f57SMacpaul Lin - | 2356e357f57SMacpaul Lin #include <dt-bindings/interrupt-controller/arm-gic.h> 2366e357f57SMacpaul Lin #include <dt-bindings/leds/common.h> 2376e357f57SMacpaul Lin 2386e357f57SMacpaul Lin pmic { 2396e357f57SMacpaul Lin compatible = "mediatek,mt6323"; 2406e357f57SMacpaul Lin interrupt-parent = <&pio>; 2416e357f57SMacpaul Lin interrupts = <150 IRQ_TYPE_LEVEL_HIGH>; 2426e357f57SMacpaul Lin interrupt-controller; 2436e357f57SMacpaul Lin #interrupt-cells = <2>; 2446e357f57SMacpaul Lin 2456e357f57SMacpaul Lin leds { 2466e357f57SMacpaul Lin compatible = "mediatek,mt6323-led"; 2476e357f57SMacpaul Lin #address-cells = <1>; 2486e357f57SMacpaul Lin #size-cells = <0>; 2496e357f57SMacpaul Lin }; 2506e357f57SMacpaul Lin 2516e357f57SMacpaul Lin regulators { 2526e357f57SMacpaul Lin compatible = "mediatek,mt6323-regulator"; 2536e357f57SMacpaul Lin 2546e357f57SMacpaul Lin buck_vproc { 2556e357f57SMacpaul Lin regulator-name = "vproc"; 2566e357f57SMacpaul Lin regulator-min-microvolt = < 700000>; 2576e357f57SMacpaul Lin regulator-max-microvolt = <1350000>; 2586e357f57SMacpaul Lin regulator-ramp-delay = <12500>; 2596e357f57SMacpaul Lin regulator-always-on; 2606e357f57SMacpaul Lin regulator-boot-on; 2616e357f57SMacpaul Lin }; 2626e357f57SMacpaul Lin 2636e357f57SMacpaul Lin buck_vsys { 2646e357f57SMacpaul Lin regulator-name = "vsys"; 2656e357f57SMacpaul Lin regulator-min-microvolt = <1400000>; 2666e357f57SMacpaul Lin regulator-max-microvolt = <2987500>; 2676e357f57SMacpaul Lin regulator-ramp-delay = <25000>; 2686e357f57SMacpaul Lin regulator-always-on; 2696e357f57SMacpaul Lin regulator-boot-on; 2706e357f57SMacpaul Lin }; 2716e357f57SMacpaul Lin 2726e357f57SMacpaul Lin buck_vpa { 2736e357f57SMacpaul Lin regulator-name = "vpa"; 2746e357f57SMacpaul Lin regulator-min-microvolt = < 500000>; 2756e357f57SMacpaul Lin regulator-max-microvolt = <3650000>; 2766e357f57SMacpaul Lin }; 2776e357f57SMacpaul Lin 2786e357f57SMacpaul Lin ldo_vtcxo { 2796e357f57SMacpaul Lin regulator-name = "vtcxo"; 2806e357f57SMacpaul Lin regulator-min-microvolt = <2800000>; 2816e357f57SMacpaul Lin regulator-max-microvolt = <2800000>; 2826e357f57SMacpaul Lin regulator-enable-ramp-delay = <90>; 2836e357f57SMacpaul Lin regulator-always-on; 2846e357f57SMacpaul Lin regulator-boot-on; 2856e357f57SMacpaul Lin }; 2866e357f57SMacpaul Lin 2876e357f57SMacpaul Lin ldo_vcn28 { 2886e357f57SMacpaul Lin regulator-name = "vcn28"; 2896e357f57SMacpaul Lin regulator-min-microvolt = <2800000>; 2906e357f57SMacpaul Lin regulator-max-microvolt = <2800000>; 2916e357f57SMacpaul Lin regulator-enable-ramp-delay = <185>; 2926e357f57SMacpaul Lin }; 2936e357f57SMacpaul Lin 2946e357f57SMacpaul Lin ldo_vcn33_bt { 2956e357f57SMacpaul Lin regulator-name = "vcn33_bt"; 2966e357f57SMacpaul Lin regulator-min-microvolt = <3300000>; 2976e357f57SMacpaul Lin regulator-max-microvolt = <3600000>; 2986e357f57SMacpaul Lin regulator-enable-ramp-delay = <185>; 2996e357f57SMacpaul Lin }; 3006e357f57SMacpaul Lin 3016e357f57SMacpaul Lin ldo_vcn33_wifi { 3026e357f57SMacpaul Lin regulator-name = "vcn33_wifi"; 3036e357f57SMacpaul Lin regulator-min-microvolt = <3300000>; 3046e357f57SMacpaul Lin regulator-max-microvolt = <3600000>; 3056e357f57SMacpaul Lin regulator-enable-ramp-delay = <185>; 3066e357f57SMacpaul Lin }; 3076e357f57SMacpaul Lin 3086e357f57SMacpaul Lin ldo_va { 3096e357f57SMacpaul Lin regulator-name = "va"; 3106e357f57SMacpaul Lin regulator-min-microvolt = <2800000>; 3116e357f57SMacpaul Lin regulator-max-microvolt = <2800000>; 3126e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 3136e357f57SMacpaul Lin regulator-always-on; 3146e357f57SMacpaul Lin regulator-boot-on; 3156e357f57SMacpaul Lin }; 3166e357f57SMacpaul Lin 3176e357f57SMacpaul Lin ldo_vcama { 3186e357f57SMacpaul Lin regulator-name = "vcama"; 3196e357f57SMacpaul Lin regulator-min-microvolt = <1500000>; 3206e357f57SMacpaul Lin regulator-max-microvolt = <2800000>; 3216e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 3226e357f57SMacpaul Lin }; 3236e357f57SMacpaul Lin 3246e357f57SMacpaul Lin ldo_vio28 { 3256e357f57SMacpaul Lin regulator-name = "vio28"; 3266e357f57SMacpaul Lin regulator-min-microvolt = <2800000>; 3276e357f57SMacpaul Lin regulator-max-microvolt = <2800000>; 3286e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 3296e357f57SMacpaul Lin regulator-always-on; 3306e357f57SMacpaul Lin regulator-boot-on; 3316e357f57SMacpaul Lin }; 3326e357f57SMacpaul Lin 3336e357f57SMacpaul Lin ldo_vusb { 3346e357f57SMacpaul Lin regulator-name = "vusb"; 3356e357f57SMacpaul Lin regulator-min-microvolt = <3300000>; 3366e357f57SMacpaul Lin regulator-max-microvolt = <3300000>; 3376e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 3386e357f57SMacpaul Lin regulator-boot-on; 3396e357f57SMacpaul Lin }; 3406e357f57SMacpaul Lin 3416e357f57SMacpaul Lin ldo_vmc { 3426e357f57SMacpaul Lin regulator-name = "vmc"; 3436e357f57SMacpaul Lin regulator-min-microvolt = <1800000>; 3446e357f57SMacpaul Lin regulator-max-microvolt = <3300000>; 3456e357f57SMacpaul Lin regulator-enable-ramp-delay = <36>; 3466e357f57SMacpaul Lin regulator-boot-on; 3476e357f57SMacpaul Lin }; 3486e357f57SMacpaul Lin 3496e357f57SMacpaul Lin ldo_vmch { 3506e357f57SMacpaul Lin regulator-name = "vmch"; 3516e357f57SMacpaul Lin regulator-min-microvolt = <3000000>; 3526e357f57SMacpaul Lin regulator-max-microvolt = <3300000>; 3536e357f57SMacpaul Lin regulator-enable-ramp-delay = <36>; 3546e357f57SMacpaul Lin regulator-boot-on; 3556e357f57SMacpaul Lin }; 3566e357f57SMacpaul Lin 3576e357f57SMacpaul Lin ldo_vemc3v3 { 3586e357f57SMacpaul Lin regulator-name = "vemc3v3"; 3596e357f57SMacpaul Lin regulator-min-microvolt = <3000000>; 3606e357f57SMacpaul Lin regulator-max-microvolt = <3300000>; 3616e357f57SMacpaul Lin regulator-enable-ramp-delay = <36>; 3626e357f57SMacpaul Lin regulator-boot-on; 3636e357f57SMacpaul Lin }; 3646e357f57SMacpaul Lin 3656e357f57SMacpaul Lin ldo_vgp1 { 3666e357f57SMacpaul Lin regulator-name = "vgp1"; 3676e357f57SMacpaul Lin regulator-min-microvolt = <1200000>; 3686e357f57SMacpaul Lin regulator-max-microvolt = <3300000>; 3696e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 3706e357f57SMacpaul Lin }; 3716e357f57SMacpaul Lin 3726e357f57SMacpaul Lin ldo_vgp2 { 3736e357f57SMacpaul Lin regulator-name = "vgp2"; 3746e357f57SMacpaul Lin regulator-min-microvolt = <1200000>; 3756e357f57SMacpaul Lin regulator-max-microvolt = <3000000>; 3766e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 3776e357f57SMacpaul Lin }; 3786e357f57SMacpaul Lin 3796e357f57SMacpaul Lin ldo_vgp3 { 3806e357f57SMacpaul Lin regulator-name = "vgp3"; 3816e357f57SMacpaul Lin regulator-min-microvolt = <1200000>; 3826e357f57SMacpaul Lin regulator-max-microvolt = <1800000>; 3836e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 3846e357f57SMacpaul Lin }; 3856e357f57SMacpaul Lin 3866e357f57SMacpaul Lin ldo_vcn18 { 3876e357f57SMacpaul Lin regulator-name = "vcn18"; 3886e357f57SMacpaul Lin regulator-min-microvolt = <1800000>; 3896e357f57SMacpaul Lin regulator-max-microvolt = <1800000>; 3906e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 3916e357f57SMacpaul Lin }; 3926e357f57SMacpaul Lin 3936e357f57SMacpaul Lin ldo_vsim1 { 3946e357f57SMacpaul Lin regulator-name = "vsim1"; 3956e357f57SMacpaul Lin regulator-min-microvolt = <1800000>; 3966e357f57SMacpaul Lin regulator-max-microvolt = <3000000>; 3976e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 3986e357f57SMacpaul Lin }; 3996e357f57SMacpaul Lin 4006e357f57SMacpaul Lin ldo_vsim2 { 4016e357f57SMacpaul Lin regulator-name = "vsim2"; 4026e357f57SMacpaul Lin regulator-min-microvolt = <1800000>; 4036e357f57SMacpaul Lin regulator-max-microvolt = <3000000>; 4046e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 4056e357f57SMacpaul Lin }; 4066e357f57SMacpaul Lin 4076e357f57SMacpaul Lin ldo_vrtc { 4086e357f57SMacpaul Lin regulator-name = "vrtc"; 4096e357f57SMacpaul Lin regulator-min-microvolt = <2800000>; 4106e357f57SMacpaul Lin regulator-max-microvolt = <2800000>; 4116e357f57SMacpaul Lin regulator-always-on; 4126e357f57SMacpaul Lin regulator-boot-on; 4136e357f57SMacpaul Lin }; 4146e357f57SMacpaul Lin 4156e357f57SMacpaul Lin ldo_vcamaf { 4166e357f57SMacpaul Lin regulator-name = "vcamaf"; 4176e357f57SMacpaul Lin regulator-min-microvolt = <1200000>; 4186e357f57SMacpaul Lin regulator-max-microvolt = <3300000>; 4196e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 4206e357f57SMacpaul Lin }; 4216e357f57SMacpaul Lin 4226e357f57SMacpaul Lin ldo_vibr { 4236e357f57SMacpaul Lin regulator-name = "vibr"; 4246e357f57SMacpaul Lin regulator-min-microvolt = <1200000>; 4256e357f57SMacpaul Lin regulator-max-microvolt = <3300000>; 4266e357f57SMacpaul Lin regulator-enable-ramp-delay = <36>; 4276e357f57SMacpaul Lin }; 4286e357f57SMacpaul Lin 4296e357f57SMacpaul Lin ldo_vrf18 { 4306e357f57SMacpaul Lin regulator-name = "vrf18"; 4316e357f57SMacpaul Lin regulator-min-microvolt = <1825000>; 4326e357f57SMacpaul Lin regulator-max-microvolt = <1825000>; 4336e357f57SMacpaul Lin regulator-enable-ramp-delay = <187>; 4346e357f57SMacpaul Lin }; 4356e357f57SMacpaul Lin 4366e357f57SMacpaul Lin ldo_vm { 4376e357f57SMacpaul Lin regulator-name = "vm"; 4386e357f57SMacpaul Lin regulator-min-microvolt = <1200000>; 4396e357f57SMacpaul Lin regulator-max-microvolt = <1800000>; 4406e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 4416e357f57SMacpaul Lin regulator-always-on; 4426e357f57SMacpaul Lin regulator-boot-on; 4436e357f57SMacpaul Lin }; 4446e357f57SMacpaul Lin 4456e357f57SMacpaul Lin ldo_vio18 { 4466e357f57SMacpaul Lin regulator-name = "vio18"; 4476e357f57SMacpaul Lin regulator-min-microvolt = <1800000>; 4486e357f57SMacpaul Lin regulator-max-microvolt = <1800000>; 4496e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 4506e357f57SMacpaul Lin regulator-always-on; 4516e357f57SMacpaul Lin regulator-boot-on; 4526e357f57SMacpaul Lin }; 4536e357f57SMacpaul Lin 4546e357f57SMacpaul Lin ldo_vcamd { 4556e357f57SMacpaul Lin regulator-name = "vcamd"; 4566e357f57SMacpaul Lin regulator-min-microvolt = <1200000>; 4576e357f57SMacpaul Lin regulator-max-microvolt = <1800000>; 4586e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 4596e357f57SMacpaul Lin }; 4606e357f57SMacpaul Lin 4616e357f57SMacpaul Lin ldo_vcamio { 4626e357f57SMacpaul Lin regulator-name = "vcamio"; 4636e357f57SMacpaul Lin regulator-min-microvolt = <1800000>; 4646e357f57SMacpaul Lin regulator-max-microvolt = <1800000>; 4656e357f57SMacpaul Lin regulator-enable-ramp-delay = <216>; 4666e357f57SMacpaul Lin }; 4676e357f57SMacpaul Lin }; 4686e357f57SMacpaul Lin 4696e357f57SMacpaul Lin keys { 4706e357f57SMacpaul Lin compatible = "mediatek,mt6323-keys"; 4716e357f57SMacpaul Lin mediatek,long-press-mode = <1>; 4726e357f57SMacpaul Lin power-off-time-sec = <0>; 4736e357f57SMacpaul Lin 4746e357f57SMacpaul Lin power { 4756e357f57SMacpaul Lin linux,keycodes = <116>; 4766e357f57SMacpaul Lin wakeup-source; 4776e357f57SMacpaul Lin }; 4786e357f57SMacpaul Lin 4796e357f57SMacpaul Lin home { 4806e357f57SMacpaul Lin linux,keycodes = <114>; 4816e357f57SMacpaul Lin }; 4826e357f57SMacpaul Lin }; 4836e357f57SMacpaul Lin 4846e357f57SMacpaul Lin power-controller { 4856e357f57SMacpaul Lin compatible = "mediatek,mt6323-pwrc"; 4866e357f57SMacpaul Lin #power-domain-cells = <0>; 4876e357f57SMacpaul Lin }; 4886e357f57SMacpaul Lin 4896e357f57SMacpaul Lin rtc { 4906e357f57SMacpaul Lin compatible = "mediatek,mt6323-rtc"; 4916e357f57SMacpaul Lin }; 4926e357f57SMacpaul Lin }; 4936e357f57SMacpaul Lin 4946e357f57SMacpaul Lin - | 4956e357f57SMacpaul Lin #include <dt-bindings/input/input.h> 4966e357f57SMacpaul Lin #include <dt-bindings/interrupt-controller/arm-gic.h> 4976e357f57SMacpaul Lin 4986e357f57SMacpaul Lin pmic { 4996e357f57SMacpaul Lin compatible = "mediatek,mt6358"; 5006e357f57SMacpaul Lin interrupt-controller; 5016e357f57SMacpaul Lin #interrupt-cells = <2>; 5026e357f57SMacpaul Lin 5036e357f57SMacpaul Lin audio-codec { 5046e357f57SMacpaul Lin compatible = "mediatek,mt6358-sound"; 5056e357f57SMacpaul Lin Avdd-supply = <&mt6358_vaud28_reg>; 5066e357f57SMacpaul Lin mediatek,dmic-mode = <0>; 5076e357f57SMacpaul Lin }; 5086e357f57SMacpaul Lin 5096e357f57SMacpaul Lin regulators { 5106e357f57SMacpaul Lin compatible = "mediatek,mt6358-regulator"; 5116e357f57SMacpaul Lin 5126e357f57SMacpaul Lin buck_vdram1 { 5136e357f57SMacpaul Lin regulator-name = "vdram1"; 5146e357f57SMacpaul Lin regulator-min-microvolt = <500000>; 5156e357f57SMacpaul Lin regulator-max-microvolt = <2087500>; 5166e357f57SMacpaul Lin regulator-ramp-delay = <12500>; 5176e357f57SMacpaul Lin regulator-enable-ramp-delay = <0>; 5186e357f57SMacpaul Lin regulator-always-on; 5196e357f57SMacpaul Lin regulator-allowed-modes = <0 1>; 5206e357f57SMacpaul Lin }; 5216e357f57SMacpaul Lin 5226e357f57SMacpaul Lin // ... 5236e357f57SMacpaul Lin 5246e357f57SMacpaul Lin ldo_vsim2 { 5256e357f57SMacpaul Lin regulator-name = "vsim2"; 5266e357f57SMacpaul Lin regulator-min-microvolt = <1700000>; 5276e357f57SMacpaul Lin regulator-max-microvolt = <3100000>; 5286e357f57SMacpaul Lin regulator-enable-ramp-delay = <540>; 5296e357f57SMacpaul Lin }; 5306e357f57SMacpaul Lin }; 5316e357f57SMacpaul Lin 5326e357f57SMacpaul Lin rtc { 5336e357f57SMacpaul Lin compatible = "mediatek,mt6358-rtc"; 5346e357f57SMacpaul Lin }; 5356e357f57SMacpaul Lin 5366e357f57SMacpaul Lin keys { 5376e357f57SMacpaul Lin compatible = "mediatek,mt6358-keys"; 5386e357f57SMacpaul Lin 5396e357f57SMacpaul Lin power { 5406e357f57SMacpaul Lin linux,keycodes = <KEY_POWER>; 5416e357f57SMacpaul Lin wakeup-source; 5426e357f57SMacpaul Lin }; 5436e357f57SMacpaul Lin 5446e357f57SMacpaul Lin home { 5456e357f57SMacpaul Lin linux,keycodes = <KEY_HOME>; 5466e357f57SMacpaul Lin }; 5476e357f57SMacpaul Lin }; 5486e357f57SMacpaul Lin }; 5496e357f57SMacpaul Lin 5506e357f57SMacpaul Lin - | 5516e357f57SMacpaul Lin #include <dt-bindings/interrupt-controller/arm-gic.h> 5526e357f57SMacpaul Lin 5536e357f57SMacpaul Lin pmic { 5546e357f57SMacpaul Lin compatible = "mediatek,mt6397"; 5556e357f57SMacpaul Lin 5566e357f57SMacpaul Lin interrupt-parent = <&pio>; 5576e357f57SMacpaul Lin interrupts-extended = <&pio 222 IRQ_TYPE_LEVEL_HIGH>; 5586e357f57SMacpaul Lin interrupt-controller; 5596e357f57SMacpaul Lin #interrupt-cells = <2>; 5606e357f57SMacpaul Lin 5616e357f57SMacpaul Lin audio-codec { 5626e357f57SMacpaul Lin compatible = "mediatek,mt6397-codec"; 5636e357f57SMacpaul Lin }; 5646e357f57SMacpaul Lin 5656e357f57SMacpaul Lin clocks { 5666e357f57SMacpaul Lin compatible = "mediatek,mt6397-clk"; 5676e357f57SMacpaul Lin #clock-cells = <1>; 5686e357f57SMacpaul Lin }; 5696e357f57SMacpaul Lin 5706e357f57SMacpaul Lin pinctrl { 5716e357f57SMacpaul Lin compatible = "mediatek,mt6397-pinctrl"; 5726e357f57SMacpaul Lin gpio-controller; 5736e357f57SMacpaul Lin #gpio-cells = <2>; 5746e357f57SMacpaul Lin }; 5756e357f57SMacpaul Lin 5766e357f57SMacpaul Lin regulators { 5776e357f57SMacpaul Lin compatible = "mediatek,mt6397-regulator"; 5786e357f57SMacpaul Lin 5796e357f57SMacpaul Lin buck_vpca15 { 5806e357f57SMacpaul Lin regulator-name = "vpca15"; 5816e357f57SMacpaul Lin regulator-min-microvolt = < 850000>; 5826e357f57SMacpaul Lin regulator-max-microvolt = <1350000>; 5836e357f57SMacpaul Lin regulator-ramp-delay = <12500>; 5846e357f57SMacpaul Lin regulator-enable-ramp-delay = <200>; 5856e357f57SMacpaul Lin }; 5866e357f57SMacpaul Lin 5876e357f57SMacpaul Lin // ... 5886e357f57SMacpaul Lin 5896e357f57SMacpaul Lin ldo_vibr { 5906e357f57SMacpaul Lin regulator-name = "vibr"; 5916e357f57SMacpaul Lin regulator-min-microvolt = <1200000>; 5926e357f57SMacpaul Lin regulator-max-microvolt = <3300000>; 5936e357f57SMacpaul Lin regulator-enable-ramp-delay = <218>; 5946e357f57SMacpaul Lin }; 5956e357f57SMacpaul Lin }; 5966e357f57SMacpaul Lin 5976e357f57SMacpaul Lin rtc { 5986e357f57SMacpaul Lin compatible = "mediatek,mt6397-rtc"; 5996e357f57SMacpaul Lin }; 6006e357f57SMacpaul Lin }; 601