kernel_samsung_a34x-permissive/arch/arm64/boot/dts/mediatek/mt6359p.dtsi
2024-04-28 15:49:01 +02:00

597 lines
16 KiB
Plaintext
Executable file

/* SPDX-License-Identifier: GPL-2.0 */
/*
* Copyright (c) 2019 MediaTek Inc.
*/
&main_pmic {
compatible = "mediatek,mt6359-pmic";
interrupt-controller;
#interrupt-cells = <2>;
mediatek,num-pmic-irqs = <145>;
mediatek,pmic-irqs =
<INT_VPU_OC SP_BUCK>,
<INT_VCORE_OC SP_BUCK>,
<INT_VGPU11_OC SP_BUCK>,
<INT_VGPU12_OC SP_BUCK>,
<INT_VMODEM_OC SP_BUCK>,
<INT_VPROC1_OC SP_BUCK>,
<INT_VPROC2_OC SP_BUCK>,
<INT_VS1_OC SP_BUCK>,
<INT_VS2_OC SP_BUCK>,
<INT_VPA_OC SP_BUCK>,
<INT_VFE28_OC SP_LDO>,
<INT_VXO22_OC SP_LDO>,
<INT_VRF18_OC SP_LDO>,
<INT_VRF12_OC SP_LDO>,
<INT_VEFUSE_OC SP_LDO>,
<INT_VCN33_1_OC SP_LDO>,
<INT_VCN33_2_OC SP_LDO>,
<INT_VCN13_OC SP_LDO>,
<INT_VCN18_OC SP_LDO>,
<INT_VA09_OC SP_LDO>,
<INT_VCAMIO_OC SP_LDO>,
<INT_VA12_OC SP_LDO>,
<INT_VAUX18_OC SP_LDO>,
<INT_VAUD18_OC SP_LDO>,
<INT_VIO18_OC SP_LDO>,
<INT_VSRAM_PROC1_OC SP_LDO>,
<INT_VSRAM_PROC2_OC SP_LDO>,
<INT_VSRAM_OTHERS_OC SP_LDO>,
<INT_VSRAM_MD_OC SP_LDO>,
<INT_VEMC_OC SP_LDO>,
<INT_VSIM1_OC SP_LDO>,
<INT_VSIM2_OC SP_LDO>,
<INT_VUSB_OC SP_LDO>,
<INT_VRFCK_OC SP_LDO>,
<INT_VBBCK_OC SP_LDO>,
<INT_VBIF28_OC SP_LDO>,
<INT_VIBR_OC SP_LDO>,
<INT_VIO28_OC SP_LDO>,
<INT_VM18_OC SP_LDO>,
<INT_VUFS_OC SP_LDO>,
<INT_PWRKEY SP_PSC>,
<INT_HOMEKEY SP_PSC>,
<INT_PWRKEY_R SP_PSC>,
<INT_HOMEKEY_R SP_PSC>,
<INT_NI_LBAT_INT SP_PSC>,
<INT_CHRDET_EDGE SP_PSC>,
<INT_RTC SP_SCK>,
<INT_FG_BAT_H SP_BM>,
<INT_FG_BAT_L SP_BM>,
<INT_FG_CUR_H SP_BM>,
<INT_FG_CUR_L SP_BM>,
<INT_FG_ZCV SP_BM>,
<INT_FG_N_CHARGE_L SP_BM>,
<INT_FG_IAVG_H SP_BM>,
<INT_FG_IAVG_L SP_BM>,
<INT_FG_DISCHARGE SP_BM>,
<INT_FG_CHARGE SP_BM>,
<INT_BATON_LV SP_BM>,
<INT_BATON_BAT_IN SP_BM>,
<INT_BATON_BAT_OUT SP_BM>,
<INT_BIF SP_BM>,
<INT_BAT_H SP_HK>,
<INT_BAT_L SP_HK>,
<INT_BAT2_H SP_HK>,
<INT_BAT2_L SP_HK>,
<INT_BAT_TEMP_H SP_HK>,
<INT_BAT_TEMP_L SP_HK>,
<INT_THR_H SP_HK>,
<INT_THR_L SP_HK>,
<INT_AUXADC_IMP SP_HK>,
<INT_NAG_C_DLTV SP_HK>,
<INT_AUDIO SP_AUD>,
<INT_ACCDET SP_AUD>,
<INT_ACCDET_EINT0 SP_AUD>,
<INT_ACCDET_EINT1 SP_AUD>,
<INT_SPI_CMD_ALERT SP_MISC>;
interrupt-names =
"vpu_oc",
"vcore_oc",
"vgpu11_oc",
"vgpu12_oc",
"vmodem_oc",
"vproc1_oc",
"vproc2_oc",
"vs1_oc",
"vs2_oc",
"vpa_oc",
"vfe28_oc",
"vxo22_oc",
"vrf18_oc",
"vrf12_oc",
"vefuse_oc",
"vcn33_1_oc",
"vcn33_2_oc",
"vcn13_oc",
"vcn18_oc",
"va09_oc",
"vcamio_oc",
"va12_oc",
"vaux18_oc",
"vaud18_oc",
"vio18_oc",
"vsram_proc1_oc",
"vsram_proc2_oc",
"vsram_others_oc",
"vsram_md_oc",
"vemc_oc",
"vsim1_oc",
"vsim2_oc",
"vusb_oc",
"vrfck_oc",
"vbbck_oc",
"vbif28_oc",
"vibr_oc",
"vio28_oc",
"vm18_oc",
"vufs_oc",
"pwrkey",
"homekey",
"pwrkey_r",
"homekey_r",
"ni_lbat_int",
"chrdet_edge",
"rtc",
"fg_bat_h",
"fg_bat_l",
"fg_cur_h",
"fg_cur_l",
"fg_zcv",
"fg_n_charge_l",
"fg_iavg_h",
"fg_iavg_l",
"fg_discharge",
"fg_charge",
"baton_lv",
"baton_bat_in",
"baton_bat_out",
"bif",
"bat_h",
"bat_l",
"bat2_h",
"bat2_l",
"bat_temp_h",
"bat_temp_l",
"thr_h",
"thr_l",
"auxadc_imp",
"nag_c_dltv",
"audio",
"accdet",
"accdet_eint0",
"accdet_eint1",
"spi_cmd_alert";
pmic: mt-pmic {
compatible = "mediatek,mt-pmic";
interrupts = <INT_PWRKEY IRQ_TYPE_LEVEL_HIGH>,
<INT_PWRKEY_R IRQ_TYPE_LEVEL_HIGH>,
<INT_HOMEKEY IRQ_TYPE_LEVEL_HIGH>,
<INT_HOMEKEY_R IRQ_TYPE_LEVEL_HIGH>,
<INT_BAT_H IRQ_TYPE_LEVEL_HIGH>,
<INT_BAT_L IRQ_TYPE_LEVEL_HIGH>,
<INT_FG_CUR_H IRQ_TYPE_LEVEL_HIGH>,
<INT_FG_CUR_L IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "pwrkey",
"pwrkey_r",
"homekey",
"homekey_r",
"bat_h",
"bat_l",
"fg_cur_h",
"fg_cur_l";
};
pmic_efuse: pmic_efuse {
compatible = "mediatek,mt6359-efuse";
#address-cells = <1>;
#size-cells = <1>;
};
pmic_auxadc: mt635x-auxadc {
compatible = "mediatek,mt6359-auxadc";
#io-channel-cells = <1>;
batadc {
channel = <AUXADC_BATADC>;
resistance-ratio = <7 2>;
avg-num = <128>;
};
bat_temp {
channel = <AUXADC_BAT_TEMP>;
resistance-ratio = <5 2>;
};
chip_temp {
channel = <AUXADC_CHIP_TEMP>;
};
vcore_temp {
channel = <AUXADC_VCORE_TEMP>;
};
vproc_temp {
channel = <AUXADC_VPROC_TEMP>;
};
vgpu_temp {
channel = <AUXADC_VGPU_TEMP>;
};
accdet {
channel = <AUXADC_ACCDET>;
};
dcxo_volt {
channel = <AUXADC_VDCXO>;
resistance-ratio = <3 2>;
};
tsx_temp {
channel = <AUXADC_TSX_TEMP>;
avg-num = <128>;
};
hpofs_cal {
channel = <AUXADC_HPOFS_CAL>;
avg-num = <256>;
};
dcxo_temp {
channel = <AUXADC_DCXO_TEMP>;
avg-num = <16>;
};
vbif {
channel = <AUXADC_VBIF>;
resistance-ratio = <5 2>;
};
};
mtk_ts_pmic: mtk_ts_pmic {
compatible = "mediatek,mtk_ts_pmic";
io-channels =
<&pmic_auxadc AUXADC_CHIP_TEMP>,
<&pmic_auxadc AUXADC_VCORE_TEMP>,
<&pmic_auxadc AUXADC_VPROC_TEMP>;
io-channel-names =
"pmic_chip_temp",
"pmic_buck1_temp",
"pmic_buck2_temp";
interconnects = <&pmic_auxadc 1>;
#interconnect-cells = <1>;
};
mt6359regulator: mt6359regulator {
compatible = "mediatek,mt6359p-regulator";
interrupts = <INT_VPU_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VCORE_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VGPU11_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VMODEM_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VPROC1_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VPROC2_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VS1_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VS2_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VPA_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VFE28_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VXO22_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VRF18_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VRF12_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VEFUSE_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VCN33_1_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VCN33_2_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VCN13_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VCN18_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VA09_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VA12_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VAUX18_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VAUD18_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VIO18_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VSRAM_PROC1_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VSRAM_PROC2_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VSRAM_OTHERS_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VSRAM_MD_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VEMC_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VUSB_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VRFCK_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VBIF28_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VIO28_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VM18_OC IRQ_TYPE_LEVEL_HIGH>,
<INT_VUFS_OC IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "VPU",
"VCORE",
"VGPU11",
"VMODEM",
"VPROC1",
"VPROC2",
"VS1",
"VS2",
"VPA",
"VFE28",
"VXO22",
"VRF18",
"VRF12",
"VEFUSE",
"VCN33_1_BT",
"VCN33_2_BT",
"VCN13",
"VCN18",
"VA09",
"VA12",
"VAUX18",
"VAUD18",
"VIO18",
"VSRAM_PROC1",
"VSRAM_PROC2",
"VSRAM_OTHERS",
"VSRAM_MD",
"VEMC",
"VUSB",
"VRFCK",
"VBIF28",
"VIO28",
"VM18",
"VUFS";
mt_pmic_vs1_buck_reg: buck_vs1 {
regulator-name = "vs1";
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <2200000>;
regulator-enable-ramp-delay = <0>;
};
mt_pmic_vgpu11_buck_reg: buck_vgpu11 {
regulator-name = "vgpu11";
regulator-min-microvolt = <400000>;
regulator-max-microvolt = <1193750>;
regulator-enable-ramp-delay = <200>;
};
mt_pmic_vmodem_buck_reg: buck_vmodem {
regulator-name = "vmodem";
regulator-min-microvolt = <400000>;
regulator-max-microvolt = <1100000>;
regulator-enable-ramp-delay = <200>;
};
mt_pmic_vpu_buck_reg: buck_vpu {
regulator-name = "vpu";
regulator-min-microvolt = <400000>;
regulator-max-microvolt = <1193750>;
regulator-enable-ramp-delay = <200>;
};
mt_pmic_vcore_buck_reg: buck_vcore {
regulator-name = "vcore";
regulator-min-microvolt = <506250>;
regulator-max-microvolt = <1300000>;
regulator-enable-ramp-delay = <200>;
};
mt_pmic_vs2_buck_reg: buck_vs2 {
regulator-name = "vs2";
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1600000>;
regulator-enable-ramp-delay = <0>;
};
mt_pmic_vpa_buck_reg: buck_vpa {
regulator-name = "vpa";
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3650000>;
regulator-enable-ramp-delay = <300>;
};
mt_pmic_vproc2_buck_reg: buck_vproc2 {
regulator-name = "vproc2";
regulator-min-microvolt = <400000>;
regulator-max-microvolt = <1193750>;
regulator-enable-ramp-delay = <200>;
};
mt_pmic_vproc1_buck_reg: buck_vproc1 {
regulator-name = "vproc1";
regulator-min-microvolt = <400000>;
regulator-max-microvolt = <1193750>;
regulator-enable-ramp-delay = <200>;
};
mt_pmic_vaud18_ldo_reg: ldo_vaud18 {
regulator-name = "vaud18";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vsim1_ldo_reg: ldo_vsim1 {
regulator-name = "vsim1";
regulator-min-microvolt = <1700000>;
regulator-max-microvolt = <3100000>;
regulator-enable-ramp-delay = <480>;
};
mt_pmic_vibr_ldo_reg: ldo_vibr {
regulator-name = "vibr";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vrf12_ldo_reg: ldo_vrf12 {
regulator-name = "vrf12";
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1300000>;
regulator-enable-ramp-delay = <480>;
};
mt_pmic_vusb_ldo_reg: ldo_vusb {
regulator-name = "vusb";
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-enable-ramp-delay = <960>;
};
mt_pmic_vsram_proc2_ldo_reg: ldo_vsram_proc2 {
regulator-name = "vsram_proc2";
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <1293750>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vio18_ldo_reg: ldo_vio18 {
regulator-name = "vio18";
regulator-min-microvolt = <1700000>;
regulator-max-microvolt = <1900000>;
regulator-enable-ramp-delay = <960>;
};
mt_pmic_vcamio_ldo_reg: ldo_vcamio {
regulator-name = "vcamio";
regulator-min-microvolt = <1700000>;
regulator-max-microvolt = <1900000>;
regulator-enable-ramp-delay = <1920>;
};
mt_pmic_vcn18_ldo_reg: ldo_vcn18 {
regulator-name = "vcn18";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vfe28_ldo_reg: ldo_vfe28 {
regulator-name = "vfe28";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-enable-ramp-delay = <120>;
};
mt_pmic_vcn13_ldo_reg: ldo_vcn13 {
regulator-name = "vcn13";
regulator-min-microvolt = <900000>;
regulator-max-microvolt = <1300000>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vcn33_1_bt_ldo_reg: ldo_vcn33_1_bt {
regulator-name = "vcn33_1_bt";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <3500000>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vcn33_1_wifi_ldo_reg: ldo_vcn33_1_wifi {
regulator-name = "vcn33_1_wifi";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <3500000>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vaux18_ldo_reg: ldo_vaux18 {
regulator-name = "vaux18";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vsram_others_ldo_reg: ldo_vsram_others {
regulator-name = "vsram_others";
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <1293750>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vefuse_ldo_reg: ldo_vefuse {
regulator-name = "vefuse";
regulator-min-microvolt = <1700000>;
regulator-max-microvolt = <2000000>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vxo22_ldo_reg: ldo_vxo22 {
regulator-name = "vxo22";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2200000>;
regulator-enable-ramp-delay = <480>;
};
mt_pmic_vrfck_ldo_reg: ldo_vrfck {
regulator-name = "vrfck";
regulator-min-microvolt = <1240000>;
regulator-max-microvolt = <1600000>;
regulator-enable-ramp-delay = <480>;
};
mt_pmic_vbif28_ldo_reg: ldo_vbif28 {
regulator-name = "vbif28";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vio28_ldo_reg: ldo_vio28 {
regulator-name = "vio28";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <1920>;
};
mt_pmic_vemc_ldo_reg: ldo_vemc {
regulator-name = "vemc";
regulator-min-microvolt = <2500000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vcn33_2_bt_ldo_reg: ldo_vcn33_2_bt {
regulator-name = "vcn33_2_bt";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <3500000>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vcn33_2_wifi_ldo_reg: ldo_vcn33_2_wifi {
regulator-name = "vcn33_2_wifi";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <3500000>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_va12_ldo_reg: ldo_va12 {
regulator-name = "va12";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1300000>;
regulator-enable-ramp-delay = <960>;
};
mt_pmic_va09_ldo_reg: ldo_va09 {
regulator-name = "va09";
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1200000>;
regulator-enable-ramp-delay = <960>;
};
mt_pmic_vrf18_ldo_reg: ldo_vrf18 {
regulator-name = "vrf18";
regulator-min-microvolt = <1700000>;
regulator-max-microvolt = <1810000>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vsram_md_ldo_reg: ldo_vsram_md {
regulator-name = "vsram_md";
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <1293750>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vufs_ldo_reg: ldo_vufs {
regulator-name = "vufs";
regulator-min-microvolt = <1700000>;
regulator-max-microvolt = <1900000>;
regulator-enable-ramp-delay = <1920>;
};
mt_pmic_vm18_ldo_reg: ldo_vm18 {
regulator-name = "vm18";
regulator-min-microvolt = <1700000>;
regulator-max-microvolt = <1900000>;
regulator-enable-ramp-delay = <1920>;
};
mt_pmic_vbbck_ldo_reg: ldo_vbbck {
regulator-name = "vbbck";
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1200000>;
regulator-enable-ramp-delay = <480>;
};
mt_pmic_vsram_proc1_ldo_reg: ldo_vsram_proc1 {
regulator-name = "vsram_proc1";
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <1293750>;
regulator-enable-ramp-delay = <240>;
};
mt_pmic_vsim2_ldo_reg: ldo_vsim2 {
regulator-name = "vsim2";
regulator-min-microvolt = <1700000>;
regulator-max-microvolt = <3100000>;
regulator-enable-ramp-delay = <480>;
};
}; /* End of mt6359regulator */
mt6359_rtc: mt6359_rtc {
compatible = "mediatek,mt6359-rtc";
bootmode = <&chosen>;
interrupts = <INT_RTC IRQ_TYPE_NONE>;
interrupt-names = "rtc";
base = <0x580>;
};
mt6359_misc: mt6359_misc {
compatible = "mediatek,mt6359p-misc";
base = <0x580>;
};
/*mt6359_snd: mt6359_snd {
compatible = "mediatek,mt6359-sound";
mediatek,pwrap-regmap = <&pwrap>;
nvmem = <&pmic_efuse>;
nvmem-names = "pmic-hp-efuse";
io-channels =
<&pmic_auxadc AUXADC_HPOFS_CAL>,
<&pmic_auxadc AUXADC_ACCDET>;
io-channel-names =
"pmic_hpofs_cal",
"pmic_accdet";
};*/
};/* End of main_pmic */