369 lines
7 KiB
Text
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*/
|
|
|