kernel-brax3-ubuntu-touch/arch/arm64/boot/dts/mediatek/k6886v1_64.dts
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

369 lines
7 KiB
Text

// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
* Copyright (C) 2022 MediaTek Inc.
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/pinctrl/mt6886-pinfunc.h>
#include <dt-bindings/phy/phy.h>
&chosen {
bootargs_ext = "console=tty0 root=/dev/ram vmalloc=400M \
8250.nr_uarts=4 \
loglevel=8 \
initcall_debug=1";
};
&mtk_leds {
compatible = "mediatek,i2c-leds";
backlight {
led_mode = <6>;
gate_enable = <1>;
pwm_config = <0 1 0 0 0>;
};
};
&connfem {
/* Enable epa_elna node to support Wifi & BT ePA/eLNA FEM on customer load */
#if 0
epa_elna {
parts = <&wlan7207h &wlan7207c>;
wifi {
flags-0 {
open-loop;
};
};
bt {
flags-0 {
/* choose one of: epa_elna/epa/elna/bypass */
epa_elna;
};
};
};
#endif
};
&pio {
mtkfb_pins_lcd_bias_enp1: lcd_bias_enp1_gpio {
pins_cmd_dat {
pinmux = <PINMUX_GPIO118__FUNC_GPIO118>;
slew-rate = <1>;
output-high;
};
};
mtkfb_pins_lcd_bias_enp0: lcd_bias_enp0_gpio {
pins_cmd_dat {
pinmux = <PINMUX_GPIO118__FUNC_GPIO118>;
slew-rate = <1>;
output-low;
};
};
mtkfb_pins_lcd_bias_enn1: lcd_bias_enn1_gpio {
pins_cmd_dat {
pinmux = <PINMUX_GPIO118__FUNC_GPIO118>;
slew-rate = <1>;
output-high;
};
};
mtkfb_pins_lcd_bias_enn0: lcd_bias_enn0_gpio {
pins_cmd_dat {
pinmux = <PINMUX_GPIO118__FUNC_GPIO118>;
slew-rate = <1>;
output-low;
};
};
mtkfb_pins_lcm_rst_out1_gpio: lcm_rst_out1_gpio {
pins_cmd_dat {
pinmux = <PINMUX_GPIO48__FUNC_GPIO48>;
slew-rate = <1>;
output-high;
};
};
mtkfb_pins_lcm_rst_out0_gpio: lcm_rst_out0_gpio {
pins_cmd_dat {
pinmux = <PINMUX_GPIO48__FUNC_GPIO48>;
slew-rate = <1>;
output-low;
};
};
mtkfb_pins_lcm_dsi_te: lcm_dsi_te {
pins_cmd_dat {
pinmux = <PINMUX_GPIO47__FUNC_DSI_TE>;
};
};
mtkfb_pins_lcm_led_en1: lcm_led_en1_gpio {
pins_cmd_dat {
pinmux = <PINMUX_GPIO148__FUNC_GPIO148>;
slew-rate = <1>;
output-high;
};
};
mtkfb_pins_lcm_led_en0: lcm_led_en0_gpio {
pins_cmd_dat {
pinmux = <PINMUX_GPIO148__FUNC_GPIO148>;
slew-rate = <1>;
output-low;
};
};
};
&mtkfb {
pinctrl-names = "lcd_bias_enp1_gpio", "lcd_bias_enp0_gpio",
"lcd_bias_enn1_gpio", "lcd_bias_enn0_gpio",
"lcm_rst_out1_gpio", "lcm_rst_out0_gpio",
"mode_te_te", "lcm_led_en1_gpio", "lcm_led_en0_gpio";
pinctrl-0 = <&mtkfb_pins_lcd_bias_enp1>;
pinctrl-1 = <&mtkfb_pins_lcd_bias_enp0>;
pinctrl-2 = <&mtkfb_pins_lcd_bias_enn1>;
pinctrl-3 = <&mtkfb_pins_lcd_bias_enn0>;
pinctrl-4 = <&mtkfb_pins_lcm_rst_out1_gpio>;
pinctrl-5 = <&mtkfb_pins_lcm_rst_out0_gpio>;
pinctrl-6 = <&mtkfb_pins_lcm_dsi_te>;
pinctrl-7 = <&mtkfb_pins_lcm_led_en1>;
pinctrl-8 = <&mtkfb_pins_lcm_led_en0>;
status = "okay";
};
&dispsys_config {
pinctrl-names =
"lcm_rst_out1_gpio", "lcm_rst_out0_gpio",
"mode_te_te";
pinctrl-0 = <&mtkfb_pins_lcm_rst_out1_gpio>;
pinctrl-1 = <&mtkfb_pins_lcm_rst_out0_gpio>;
pinctrl-2 = <&mtkfb_pins_lcm_dsi_te>;
status = "okay";
};
&dsi0 {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
switch_fps = <120>;
panel1@0 {
compatible = "jdi,nt36672e,vdo,120hz";
reg = <0>;
pm-enable-gpios = <&pio 148 0>;
reset-gpios = <&pio 48 0>;
gate-ic = <4831>;
pinctrl-names = "default";
port {
panel_in1: endpoint {
remote-endpoint = <&dsi_out>;
};
};
};
panel2@0 {
compatible = "jdi,nt36672e,vdo,60hz";
reg = <1>;
pm-enable-gpios = <&pio 148 0>;
reset-gpios = <&pio 48 0>;
gate-ic = <4831>;
pinctrl-names = "default";
port {
panel_in2: endpoint {
remote-endpoint = <&dsi_out>;
};
};
};
panel3@0 {
compatible = "truly,td4330,cmd";
reg = <2>;
pm-enable-gpios = <&pio 148 0>;
reset-gpios = <&pio 48 0>;
gate-ic = <4831>;
pinctrl-names = "default";
port {
panel_in3: endpoint {
remote-endpoint = <&dsi_out>;
};
};
};
ports {
port {
dsi_out: endpoint {
remote-endpoint = <&panel_in1>;
};
};
};
};
/* GPS GPIO standardization start */
&pio {
gps_pins_default: gps_default {
};
gps_l1_lna_pins_ol: gps-l1-lna0 {
pins-cmd-dat {
pinmux = <PINMUX_GPIO16__FUNC_GPIO16>;
output-low;
};
};
gps_l1_lna_pins_dsp_ctrl: gps-l1-lna1 {
pins-cmd-dat {
pinmux = <PINMUX_GPIO16__FUNC_GPS_L1_ELNA_EN>;
};
};
gps_l1_lna_pins_oh: gps-l1-lna2 {
pins-cmd-dat {
pinmux = <PINMUX_GPIO16__FUNC_GPIO16>;
output-high;
};
};
gps_l5_lna_pins_ol: gps-l5-lna0 {
pins-cmd-dat {
pinmux = <PINMUX_GPIO17__FUNC_GPIO17>;
output-low;
};
};
gps_l5_lna_pins_dsp_ctrl: gps-l5-lna1 {
pins-cmd-dat {
pinmux = <PINMUX_GPIO17__FUNC_GPS_L5_ELNA_EN>;
};
};
gps_l5_lna_pins_oh: gps-l5-lna2 {
pins-cmd-dat {
pinmux = <PINMUX_GPIO17__FUNC_GPIO17>;
output-high;
};
};
};
&gps {
pinctrl-names = "default",
"gps_l1_lna_disable",
"gps_l1_lna_dsp_ctrl",
"gps_l1_lna_enable",
"gps_l5_lna_disable",
"gps_l5_lna_dsp_ctrl",
"gps_l5_lna_enable";
pinctrl-0 = <&gps_pins_default>;
pinctrl-1 = <&gps_l1_lna_pins_ol>;
pinctrl-2 = <&gps_l1_lna_pins_dsp_ctrl>;
pinctrl-3 = <&gps_l1_lna_pins_oh>;
pinctrl-4 = <&gps_l5_lna_pins_ol>;
pinctrl-5 = <&gps_l5_lna_pins_dsp_ctrl>;
pinctrl-6 = <&gps_l5_lna_pins_oh>;
status = "okay";
};
/* GPS GPIO standardization end */
/* usb typec mux start */
&pio {
sel_up: sel_high {
pins_cmd_dat {
pinmux = <PINMUX_GPIO92__FUNC_GPIO92>;
output-high;
};
};
sel_down: sel_low {
pins_cmd_dat {
pinmux = <PINMUX_GPIO92__FUNC_GPIO92>;
output-low;
};
};
sw_enable: sw_enable {
pins_cmd_dat {
pinmux = <PINMUX_GPIO80__FUNC_GPIO80>;
output-low;
};
};
sw_disable: sw_disable {
pins_cmd_dat {
pinmux = <PINMUX_GPIO80__FUNC_GPIO80>;
output-low;
};
};
ps_enable: ps_enable {
pins_cmd_dat {
pinmux = <PINMUX_GPIO95__FUNC_GPIO95>;
output-high;
};
};
ps_disable: ps_disable {
pins_cmd_dat {
pinmux = <PINMUX_GPIO95__FUNC_GPIO95>;
output-low;
};
};
};
&ps5169{
pinctrl-names = "enable", "disable";
pinctrl-0 = <&ps_enable>;
pinctrl-1 = <&ps_disable>;
status = "okay";
};
&fusb304 {
pinctrl-names = "sel_up", "sel_down",
"enable", "disable";
pinctrl-0 = <&sel_up>;
pinctrl-1 = <&sel_down>;
pinctrl-2 = <&sw_enable>;
pinctrl-3 = <&sw_disable>;
status = "okay";
};
&mt6375_typec {
port {
tcpc_typec_usb: endpoint@0 {
remote-endpoint = <&ssusb_mux>;
};
};
};
&typec_mux_switch {
orientation-switch;
mode-switch;
accessory;
port {
ssusb_mux: endpoint@0 {
remote-endpoint = <&tcpc_typec_usb>;
};
};
};
/* usb typec mux end*/
&i2c6 {
spk: speaker_amp@5c {
compatible = "richtek,rt5512";
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
reg = <0x5c>;
status = "okay";
sound-name-prefix = "Left";
};
};
&sound {
mediatek,spk-i2s = <3 0>;
mediatek,speaker-codec {
sound-dai = <&spk>;
};
};
&pdc {
pd-vbus-upper-bound = <9000000>;
};
#include "mediatek/cust_k6886_connfem.dtsi"
#include "mediatek/cust_mt6886_touch_1080x2400.dtsi"
#include "mediatek/cust_mt6886_camera_v4l2.dtsi"
#include <k6886v1_64/cust.dtsi>
/*End of this file, DO NOT ADD ANYTHING HERE*/