kernel-brax3-ubuntu-touch/arch/arm64/boot/dts/mediatek/mt6835_6363.dtsi
erascape f319b992b1 kernel-5.15: Initial import brax3 UT kernel
* halium configs enabled

Signed-off-by: erascape <erascape@proton.me>
2025-09-23 15:17:10 +00:00

407 lines
8.9 KiB
Text

// SPDX-License-Identifier: GPL-2.0
/*
* Copyright (c) 2022 MediaTek Inc.
*/
#include <dt-bindings/iio/adc/mediatek,mt6375_adc.h>
#include <dt-bindings/iio/adc/mediatek,mt6375_auxadc.h>
#include <dt-bindings/mfd/mt6375.h>
#include <dt-bindings/power/mt6375-gauge.h>
#include "mediatek/mt6363.dtsi"
#include "mediatek/mt6368.dtsi"
#include "mediatek/cust_mt6835_msdc.dtsi"
&tboard_thermistor1 {
compatible = "mediatek,mt6685-tia-ntc";
reg = <0 0x1c023554 0 0x4>; /* TIA DATA T0 */
};
&tboard_thermistor2 {
compatible = "mediatek,mt6685-tia-ntc";
reg = <0 0x1c023558 0 0x4>; /* TIA DATA T1 */
};
&tboard_thermistor3 {
compatible = "mediatek,mt6685-tia-ntc";
reg = <0 0x1c02355c 0 0x4>; /* TIA DATA T2 */
};
&tsx_thermistor {
compatible = "mediatek,mt6685-tia-ntc";
reg = <0 0x1c02354c 0 0x4>; /* TIA DATA TSX */
};
&mt6363_temp {
io-channels =
<&pmic_adc AUXADC_CHIP_TEMP>,
<&pmic_adc AUXADC_VCORE_TEMP>,
<&pmic_adc AUXADC_VPROC_TEMP>,
<&pmic_adc AUXADC_VGPU_TEMP>;
io-channel-names =
"pmic6363_ts1",
"pmic6363_ts2",
"pmic6363_ts3",
"pmic6363_ts4";
#thermal-sensor-cells = <1>;
nvmem-cells = <&mt6363_thermal_efuse>;
nvmem-cell-names = "mt6363_e_data";
};
&mt6368_temp {
io-channels =
<&mt6368_adc AUXADC_CHIP_TEMP>,
<&mt6368_adc AUXADC_VCORE_TEMP>,
<&mt6368_adc AUXADC_VPROC_TEMP>,
<&mt6368_adc AUXADC_VGPU_TEMP>;
io-channel-names =
"pmic6368_ts1",
"pmic6368_ts2",
"pmic6368_ts3",
"pmic6368_ts4";
#thermal-sensor-cells = <1>;
nvmem-cells = <&mt6368_thermal_efuse>;
nvmem-cell-names = "mt6368_e_data";
};
&thermal_zones {
pmic6363_vio18 {
polling-delay = <0>; /* milliseconds */
polling-delay-passive = <0>; /* milliseconds */
thermal-sensors = <&mt6363_temp 0>;
};
pmic6363_vs1_vs3 {
polling-delay = <0>; /* milliseconds */
polling-delay-passive = <0>; /* milliseconds */
thermal-sensors = <&mt6363_temp 1>;
};
pmic6363_bk3_bk7 {
polling-delay = <0>; /* milliseconds */
polling-delay-passive = <0>; /* milliseconds */
thermal-sensors = <&mt6363_temp 2>;
};
pmic6363_vs2 {
polling-delay = <0>; /* milliseconds */
polling-delay-passive = <0>; /* milliseconds */
thermal-sensors = <&mt6363_temp 3>;
};
pmic6368_buck1 {
polling-delay = <0>; /* milliseconds */
polling-delay-passive = <0>; /* milliseconds */
thermal-sensors = <&mt6368_temp 0>;
};
pmic6368_vpa {
polling-delay = <0>; /* milliseconds */
polling-delay-passive = <0>; /* milliseconds */
thermal-sensors = <&mt6368_temp 1>;
};
pmic6368_vcn33_1 {
polling-delay = <0>; /* milliseconds */
polling-delay-passive = <0>; /* milliseconds */
thermal-sensors = <&mt6368_temp 2>;
};
pmic6368_vrf18_aif {
polling-delay = <0>; /* milliseconds */
polling-delay-passive = <0>; /* milliseconds */
thermal-sensors = <&mt6368_temp 3>;
};
ap_ntc: ap-ntc {
polling-delay = <0>; /* milliseconds */
polling-delay-passive = <0>; /* milliseconds */
thermal-sensors = <&tboard_thermistor1>;
};
ltepa_ntc: ltepa-ntc {
polling-delay = <0>; /* milliseconds */
polling-delay-passive = <0>; /* milliseconds */
thermal-sensors = <&tboard_thermistor2>;
};
nrpa_ntc: nrpa-ntc {
polling-delay = <0>; /* milliseconds */
polling-delay-passive = <0>; /* milliseconds */
thermal-sensors = <&tboard_thermistor3>;
};
tsx_ntc: tsx-ntc {
polling-delay = <0>; /* milliseconds */
polling-delay-passive = <0>; /* milliseconds */
thermal-sensors = <&tsx_thermistor>;
};
};
&gpufreq {
mt6377-support = <0>;
_vcore-supply = <&mt6363_vbuck2>;
_vgpu-supply = <&mt6363_vbuck5>;
_vsram-supply = <&mt6363_vbuck4>;
};
&dvfsrc_helper {
vcore-supply = <&mt6363_vbuck2>;
};
&scp_dvfs {
sshub-vcore-supply = <&mt6363_vbuck2_sshub>; // TODO: comment for bring up
sshub-vsram-supply = <&mt6363_vbuck4_sshub >; // TODO: comment for bring up
};
&scp {
vscp0-supply = <&mt6363_vbuck2_sshub>;
};
&ufshci {
vcc-supply = <&mt6363_vemc>;
/* porting vccq/vccq2 to disable unused vufs */
vccq-supply = <&mt6363_vufs12>;
vccq2-supply = <&mt6363_vufs18>;
};
&mmdvfs {
_vcore-supply = <&mt6363_vbuck2>;
};
&pmic_oc_debug {
interrupt-parent = <&main_pmic>;
};
&mt6375 {
mt6375_auxadc: auxadc {
compatible = "mediatek,pmic-auxadc",
"mediatek,mt6375-auxadc";
interrupts = <MT6375_GM30_EVT>;
interrupt-controller;
#interrupt-cells = <1>;
#io-channel-cells = <1>;
io-channels = <&mt6375_adc MT6375_ADC_VBAT>,
<&mt6375_auxadc MT6375_AUXADC_BATSNS_DBG>;
io-channel-names = "chg_vbat", "auxadc_vbat";
charger = <&mt6375_chg>;
isink_load-supply = <&mt6363_isink_load>;
imix_r {
val = <90>;
};
};
mtk_gauge: mtk_gauge {
charger = <&mt6375_chg>;
};
lbat_service {
compatible = "mediatek,mt6375-lbat-service";
interrupts-extended = <&mt6375_auxadc RG_INT_STATUS_BAT_H>,
<&mt6375_auxadc RG_INT_STATUS_BAT_L>;
interrupt-names = "bat_h", "bat_l";
resistance-ratio = <4 1>;
};
mt6375_batoc_throttle: mtk_battery_oc_throttling {
compatible = "mediatek,mt6375-battery_oc_throttling";
interrupts-extended = <&mtk_gauge MT6375_IRQ_FG_CUR_H>,
<&mtk_gauge MT6375_IRQ_FG_CUR_L>;
interrupt-names = "fg_cur_h", "fg_cur_l";
oc-thd-h = <6800>;
oc-thd-l = <8000>;
};
};
&mtk_gauge {
compatible = "mediatek,mt6375-gauge";
interrupt-controller;
#interrupt-cells = <1>;
bootmode = <&chosen>;
nvmem-cells = <&fg_init>, <&fg_soc>;
nvmem-cell-names = "initialization", "state-of-charge";
io-channels = <&mt6375_auxadc MT6375_AUXADC_BATSNS>,
<&mt6375_auxadc MT6375_AUXADC_BATON>,
<&mt6375_auxadc MT6375_AUXADC_IMP>,
<&mt6375_auxadc MT6375_AUXADC_IMIX_R>,
<&mt6375_auxadc MT6375_AUXADC_VREF>;
io-channel-names = "bat_volt", "bat_temp", "ptim_bat_volt",
"ptim_r", "vref";
interrupts-extended = <&mt6375 MT6375_GM30_EVT>,
<&mtk_gauge RG_INT_STATUS_FG_BAT_H>,
<&mtk_gauge RG_INT_STATUS_FG_BAT_L>,
<&mt6375_auxadc RG_INT_STATUS_BAT2_H>,
<&mt6375_auxadc RG_INT_STATUS_BAT2_L>,
<&mt6375_auxadc RG_INT_STATUS_NAG_C_DLTV>,
<&mtk_gauge RG_INT_STATUS_BATON_BAT_OUT>,
<&mtk_gauge RG_INT_STATUS_FG_ZCV>,
<&mtk_gauge RG_INT_STATUS_FG_N_CHARGE_L>,
<&mtk_gauge RG_INT_STATUS_FG_IAVG_H>,
<&mtk_gauge RG_INT_STATUS_FG_IAVG_L>,
<&mt6375_auxadc RG_INT_STATUS_BAT_TEMP_H>,
<&mt6375_auxadc RG_INT_STATUS_BAT_TEMP_L>;
interrupt-names = "GM30_EVT", "COULOMB_H", "COULOMB_L",
"VBAT2_H", "VBAT2_L", "NAFG", "BAT_OUT", "ZCV",
"FG_N_CHARGE_L", "FG_IAVG_H", "FG_IAVG_L", "BAT_TMP_H",
"BAT_TMP_L";
};
&spmi {
pmic@4 {
mt6363_dynamic_loading_throttling: mtk_dynamic_loading_throttling {
compatible = "mediatek,mt6363-dynamic_loading_throttling";
/* charger: mtk_charger_thread */
mediatek,charger = <&lk_charger>;
/* 2000~2900mV, one gear per 100mV */
uvlo-level = <2600>;
io-channels = <&mt6375_auxadc MT6375_AUXADC_IMP>,
<&mt6375_auxadc MT6375_AUXADC_IMIX_R>,
<&mt6375_auxadc MT6375_AUXADC_BATSNS>;
io-channel-names = "pmic_ptim",
"pmic_imix_r",
"pmic_batadc";
bootmode = <&chosen>;
};
};
};
&mddriver {
/* for md pmic voltage setting*/
md-vmodem-supply = <&mt6363_vbuck6>;
md-vmodem = <825000 825000>;
md-vsram-supply = <&mt6363_vsram_modem>;
md-vsram = <825000 825000>;
md-vdigrf-supply = <&mt6363_vbuck1>;
md-vdigrf = <700000 700000>;
};
&cpuhvfs {
/* regulator */
proc1-supply = <&mt6368_vbuck4>; //L
proc2-supply = <&mt6368_vbuck2>; //B
proc3-supply = <&mt6368_vbuck4>; //DSU
};
&irtx_pwm {
pwm-supply = "mt6368_vio28";
};
&regulator_vibrator {
vib-supply = <&mt6368_vibr>;
};
&spi3 {
goodix@0 {
vtouch-supply = <&mt6368_vtp>;
};
};
&ssusb {
vusb33-supply = <&mt6368_vusb>;
};
&mmc0 {
vmmc-supply = <&mt6363_vemc>;
vqmmc-supply = <&mt6363_vufs18>;
};
&mmc1 {
vmmc-supply = <&mt6368_vmch_eint_high>;
vqmmc-supply = <&mt6368_vmc>;
};
/delete-node/ &mt6368_vmch_eint_low;
/delete-node/ &mt6368_vmch;
&mt6363_vbuck1 {
regulator-always-on;
};
&mt6363_vbuck2 {
regulator-always-on;
};
&mt6363_vbuck4 {
regulator-always-on;
};
&mt6363_vbuck6 {
regulator-always-on;
};
&mt6363_vsram_digrf {
regulator-always-on;
};
&mt6363_vsram_modem {
regulator-always-on;
};
&mt6363_vsram_cpub {
regulator-always-on;
};
&mt6363_vsram_cpul {
regulator-always-on;
};
&mt6363_vm18 {
regulator-always-on;
};
&mt6363_vrf12 {
regulator-always-on;
};
&mt6363_vio075 {
/delete-property/ regulator-always-on;
};
&mt6363_va15 {
/delete-property/ regulator-always-on;
};
&mt6363_vaux18 {
regulator-always-on;
};
&mt6363_vcn15 {
regulator-always-on;
};
&mt6368_vbuck2 {
regulator-always-on;
};
&mt6368_vbuck3 {
regulator-always-on;
};
&mt6368_vbuck4 {
regulator-always-on;
};
&gps {
gnss-pmic = <6363>;
};
&pe {
gauge = <&mtk_gauge>;
};
&pe2 {
gauge = <&mtk_gauge>;
};
&pdc {
gauge = <&mtk_gauge>;
};
&pe45 {
gauge = <&mtk_gauge>;
};
&pe5 {
gauge = <&mtk_gauge>;
};
&charger {
gauge = <&mtk_gauge>;
};
&mt6375_chg {
pmic-uvlo = <&mt6363_dynamic_loading_throttling>;
};
#include "mediatek/bat_setting/mt6835_battery_prop.dtsi"
/delete-node/ &mt6363_vbuck1_sshub;