0001 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
0002 /*
0003 * Copyright (c) 2020 MediaTek Inc.
0004 */
0005 #include <dt-bindings/input/input.h>
0006
0007 &pwrap {
0008 pmic: mt6358 {
0009 compatible = "mediatek,mt6358";
0010 interrupt-controller;
0011 interrupt-parent = <&pio>;
0012 interrupts = <182 IRQ_TYPE_LEVEL_HIGH>;
0013 #interrupt-cells = <2>;
0014
0015 mt6358codec: mt6358codec {
0016 compatible = "mediatek,mt6358-sound";
0017 mediatek,dmic-mode = <0>; /* two-wires */
0018 };
0019
0020 mt6358regulator: mt6358regulator {
0021 compatible = "mediatek,mt6358-regulator";
0022
0023 mt6358_vdram1_reg: buck_vdram1 {
0024 regulator-name = "vdram1";
0025 regulator-min-microvolt = <500000>;
0026 regulator-max-microvolt = <2087500>;
0027 regulator-ramp-delay = <12500>;
0028 regulator-enable-ramp-delay = <0>;
0029 regulator-always-on;
0030 regulator-allowed-modes = <0 1>;
0031 };
0032
0033 mt6358_vcore_reg: buck_vcore {
0034 regulator-name = "vcore";
0035 regulator-min-microvolt = <500000>;
0036 regulator-max-microvolt = <1293750>;
0037 regulator-ramp-delay = <6250>;
0038 regulator-enable-ramp-delay = <200>;
0039 regulator-always-on;
0040 regulator-allowed-modes = <0 1>;
0041 };
0042
0043 mt6358_vpa_reg: buck_vpa {
0044 regulator-name = "vpa";
0045 regulator-min-microvolt = <500000>;
0046 regulator-max-microvolt = <3650000>;
0047 regulator-ramp-delay = <50000>;
0048 regulator-enable-ramp-delay = <250>;
0049 regulator-allowed-modes = <0 1>;
0050 };
0051
0052 mt6358_vproc11_reg: buck_vproc11 {
0053 regulator-name = "vproc11";
0054 regulator-min-microvolt = <500000>;
0055 regulator-max-microvolt = <1293750>;
0056 regulator-ramp-delay = <6250>;
0057 regulator-enable-ramp-delay = <200>;
0058 regulator-always-on;
0059 regulator-allowed-modes = <0 1>;
0060 };
0061
0062 mt6358_vproc12_reg: buck_vproc12 {
0063 regulator-name = "vproc12";
0064 regulator-min-microvolt = <500000>;
0065 regulator-max-microvolt = <1293750>;
0066 regulator-ramp-delay = <6250>;
0067 regulator-enable-ramp-delay = <200>;
0068 regulator-always-on;
0069 regulator-allowed-modes = <0 1>;
0070 };
0071
0072 mt6358_vgpu_reg: buck_vgpu {
0073 regulator-name = "vgpu";
0074 regulator-min-microvolt = <500000>;
0075 regulator-max-microvolt = <1293750>;
0076 regulator-ramp-delay = <6250>;
0077 regulator-enable-ramp-delay = <200>;
0078 regulator-allowed-modes = <0 1>;
0079 };
0080
0081 mt6358_vs2_reg: buck_vs2 {
0082 regulator-name = "vs2";
0083 regulator-min-microvolt = <500000>;
0084 regulator-max-microvolt = <2087500>;
0085 regulator-ramp-delay = <12500>;
0086 regulator-enable-ramp-delay = <0>;
0087 regulator-always-on;
0088 };
0089
0090 mt6358_vmodem_reg: buck_vmodem {
0091 regulator-name = "vmodem";
0092 regulator-min-microvolt = <500000>;
0093 regulator-max-microvolt = <1293750>;
0094 regulator-ramp-delay = <6250>;
0095 regulator-enable-ramp-delay = <900>;
0096 regulator-always-on;
0097 regulator-allowed-modes = <0 1>;
0098 };
0099
0100 mt6358_vs1_reg: buck_vs1 {
0101 regulator-name = "vs1";
0102 regulator-min-microvolt = <1000000>;
0103 regulator-max-microvolt = <2587500>;
0104 regulator-ramp-delay = <12500>;
0105 regulator-enable-ramp-delay = <0>;
0106 regulator-always-on;
0107 };
0108
0109 mt6358_vdram2_reg: ldo_vdram2 {
0110 regulator-name = "vdram2";
0111 regulator-min-microvolt = <600000>;
0112 regulator-max-microvolt = <1800000>;
0113 regulator-enable-ramp-delay = <3300>;
0114 };
0115
0116 mt6358_vsim1_reg: ldo_vsim1 {
0117 regulator-name = "vsim1";
0118 regulator-min-microvolt = <1700000>;
0119 regulator-max-microvolt = <3100000>;
0120 regulator-enable-ramp-delay = <540>;
0121 };
0122
0123 mt6358_vibr_reg: ldo_vibr {
0124 regulator-name = "vibr";
0125 regulator-min-microvolt = <1200000>;
0126 regulator-max-microvolt = <3300000>;
0127 regulator-enable-ramp-delay = <60>;
0128 };
0129
0130 mt6358_vrf12_reg: ldo_vrf12 {
0131 compatible = "regulator-fixed";
0132 regulator-name = "vrf12";
0133 regulator-min-microvolt = <1200000>;
0134 regulator-max-microvolt = <1200000>;
0135 regulator-enable-ramp-delay = <120>;
0136 };
0137
0138 mt6358_vio18_reg: ldo_vio18 {
0139 compatible = "regulator-fixed";
0140 regulator-name = "vio18";
0141 regulator-min-microvolt = <1800000>;
0142 regulator-max-microvolt = <1800000>;
0143 regulator-enable-ramp-delay = <2700>;
0144 regulator-always-on;
0145 };
0146
0147 mt6358_vusb_reg: ldo_vusb {
0148 regulator-name = "vusb";
0149 regulator-min-microvolt = <3000000>;
0150 regulator-max-microvolt = <3100000>;
0151 regulator-enable-ramp-delay = <270>;
0152 regulator-always-on;
0153 };
0154
0155 mt6358_vcamio_reg: ldo_vcamio {
0156 compatible = "regulator-fixed";
0157 regulator-name = "vcamio";
0158 regulator-min-microvolt = <1800000>;
0159 regulator-max-microvolt = <1800000>;
0160 regulator-enable-ramp-delay = <325>;
0161 };
0162
0163 mt6358_vcamd_reg: ldo_vcamd {
0164 regulator-name = "vcamd";
0165 regulator-min-microvolt = <900000>;
0166 regulator-max-microvolt = <1800000>;
0167 regulator-enable-ramp-delay = <325>;
0168 };
0169
0170 mt6358_vcn18_reg: ldo_vcn18 {
0171 compatible = "regulator-fixed";
0172 regulator-name = "vcn18";
0173 regulator-min-microvolt = <1800000>;
0174 regulator-max-microvolt = <1800000>;
0175 regulator-enable-ramp-delay = <270>;
0176 };
0177
0178 mt6358_vfe28_reg: ldo_vfe28 {
0179 compatible = "regulator-fixed";
0180 regulator-name = "vfe28";
0181 regulator-min-microvolt = <2800000>;
0182 regulator-max-microvolt = <2800000>;
0183 regulator-enable-ramp-delay = <270>;
0184 };
0185
0186 mt6358_vsram_proc11_reg: ldo_vsram_proc11 {
0187 regulator-name = "vsram_proc11";
0188 regulator-min-microvolt = <500000>;
0189 regulator-max-microvolt = <1293750>;
0190 regulator-ramp-delay = <6250>;
0191 regulator-enable-ramp-delay = <240>;
0192 regulator-always-on;
0193 };
0194
0195 mt6358_vcn28_reg: ldo_vcn28 {
0196 compatible = "regulator-fixed";
0197 regulator-name = "vcn28";
0198 regulator-min-microvolt = <2800000>;
0199 regulator-max-microvolt = <2800000>;
0200 regulator-enable-ramp-delay = <270>;
0201 };
0202
0203 mt6358_vsram_others_reg: ldo_vsram_others {
0204 regulator-name = "vsram_others";
0205 regulator-min-microvolt = <500000>;
0206 regulator-max-microvolt = <1293750>;
0207 regulator-ramp-delay = <6250>;
0208 regulator-enable-ramp-delay = <240>;
0209 regulator-always-on;
0210 };
0211
0212 mt6358_vsram_gpu_reg: ldo_vsram_gpu {
0213 regulator-name = "vsram_gpu";
0214 regulator-min-microvolt = <500000>;
0215 regulator-max-microvolt = <1293750>;
0216 regulator-ramp-delay = <6250>;
0217 regulator-enable-ramp-delay = <240>;
0218 };
0219
0220 mt6358_vxo22_reg: ldo_vxo22 {
0221 compatible = "regulator-fixed";
0222 regulator-name = "vxo22";
0223 regulator-min-microvolt = <2200000>;
0224 regulator-max-microvolt = <2200000>;
0225 regulator-enable-ramp-delay = <120>;
0226 regulator-always-on;
0227 };
0228
0229 mt6358_vefuse_reg: ldo_vefuse {
0230 regulator-name = "vefuse";
0231 regulator-min-microvolt = <1700000>;
0232 regulator-max-microvolt = <1900000>;
0233 regulator-enable-ramp-delay = <270>;
0234 };
0235
0236 mt6358_vaux18_reg: ldo_vaux18 {
0237 compatible = "regulator-fixed";
0238 regulator-name = "vaux18";
0239 regulator-min-microvolt = <1800000>;
0240 regulator-max-microvolt = <1800000>;
0241 regulator-enable-ramp-delay = <270>;
0242 };
0243
0244 mt6358_vmch_reg: ldo_vmch {
0245 regulator-name = "vmch";
0246 regulator-min-microvolt = <2900000>;
0247 regulator-max-microvolt = <3300000>;
0248 regulator-enable-ramp-delay = <60>;
0249 };
0250
0251 mt6358_vbif28_reg: ldo_vbif28 {
0252 compatible = "regulator-fixed";
0253 regulator-name = "vbif28";
0254 regulator-min-microvolt = <2800000>;
0255 regulator-max-microvolt = <2800000>;
0256 regulator-enable-ramp-delay = <270>;
0257 };
0258
0259 mt6358_vsram_proc12_reg: ldo_vsram_proc12 {
0260 regulator-name = "vsram_proc12";
0261 regulator-min-microvolt = <500000>;
0262 regulator-max-microvolt = <1293750>;
0263 regulator-ramp-delay = <6250>;
0264 regulator-enable-ramp-delay = <240>;
0265 regulator-always-on;
0266 };
0267
0268 mt6358_vcama1_reg: ldo_vcama1 {
0269 regulator-name = "vcama1";
0270 regulator-min-microvolt = <1800000>;
0271 regulator-max-microvolt = <3000000>;
0272 regulator-enable-ramp-delay = <325>;
0273 };
0274
0275 mt6358_vemc_reg: ldo_vemc {
0276 regulator-name = "vemc";
0277 regulator-min-microvolt = <2900000>;
0278 regulator-max-microvolt = <3300000>;
0279 regulator-enable-ramp-delay = <60>;
0280 };
0281
0282 mt6358_vio28_reg: ldo_vio28 {
0283 compatible = "regulator-fixed";
0284 regulator-name = "vio28";
0285 regulator-min-microvolt = <2800000>;
0286 regulator-max-microvolt = <2800000>;
0287 regulator-enable-ramp-delay = <270>;
0288 };
0289
0290 mt6358_va12_reg: ldo_va12 {
0291 compatible = "regulator-fixed";
0292 regulator-name = "va12";
0293 regulator-min-microvolt = <1200000>;
0294 regulator-max-microvolt = <1200000>;
0295 regulator-enable-ramp-delay = <270>;
0296 regulator-always-on;
0297 };
0298
0299 mt6358_vrf18_reg: ldo_vrf18 {
0300 compatible = "regulator-fixed";
0301 regulator-name = "vrf18";
0302 regulator-min-microvolt = <1800000>;
0303 regulator-max-microvolt = <1800000>;
0304 regulator-enable-ramp-delay = <120>;
0305 };
0306
0307 mt6358_vcn33_bt_reg: ldo_vcn33_bt {
0308 regulator-name = "vcn33_bt";
0309 regulator-min-microvolt = <3300000>;
0310 regulator-max-microvolt = <3500000>;
0311 regulator-enable-ramp-delay = <270>;
0312 };
0313
0314 mt6358_vcn33_wifi_reg: ldo_vcn33_wifi {
0315 regulator-name = "vcn33_wifi";
0316 regulator-min-microvolt = <3300000>;
0317 regulator-max-microvolt = <3500000>;
0318 regulator-enable-ramp-delay = <270>;
0319 };
0320
0321 mt6358_vcama2_reg: ldo_vcama2 {
0322 regulator-name = "vcama2";
0323 regulator-min-microvolt = <1800000>;
0324 regulator-max-microvolt = <3000000>;
0325 regulator-enable-ramp-delay = <325>;
0326 };
0327
0328 mt6358_vmc_reg: ldo_vmc {
0329 regulator-name = "vmc";
0330 regulator-min-microvolt = <1800000>;
0331 regulator-max-microvolt = <3300000>;
0332 regulator-enable-ramp-delay = <60>;
0333 };
0334
0335 mt6358_vldo28_reg: ldo_vldo28 {
0336 regulator-name = "vldo28";
0337 regulator-min-microvolt = <2800000>;
0338 regulator-max-microvolt = <3000000>;
0339 regulator-enable-ramp-delay = <270>;
0340 };
0341
0342 mt6358_vaud28_reg: ldo_vaud28 {
0343 compatible = "regulator-fixed";
0344 regulator-name = "vaud28";
0345 regulator-min-microvolt = <2800000>;
0346 regulator-max-microvolt = <2800000>;
0347 regulator-enable-ramp-delay = <270>;
0348 };
0349
0350 mt6358_vsim2_reg: ldo_vsim2 {
0351 regulator-name = "vsim2";
0352 regulator-min-microvolt = <1700000>;
0353 regulator-max-microvolt = <3100000>;
0354 regulator-enable-ramp-delay = <540>;
0355 };
0356 };
0357
0358 mt6358rtc: mt6358rtc {
0359 compatible = "mediatek,mt6358-rtc";
0360 };
0361
0362 mt6358keys: mt6358keys {
0363 compatible = "mediatek,mt6358-keys";
0364 power {
0365 linux,keycodes = <KEY_POWER>;
0366 wakeup-source;
0367 };
0368 home {
0369 linux,keycodes = <KEY_HOME>;
0370 };
0371 };
0372 };
0373 };