// SPDX-License-Identifier: (GPL-2.0 OR MIT) /* * Copyright 2024 Google LLC */ /dts-v1/; #include "mt8186-corsola.dtsi" / { /delete-node/ speaker-codec; pp1000_edpbrdg: regulator-pp1000-edpbrdg { compatible = "regulator-fixed"; regulator-name = "pp1000_edpbrdg"; pinctrl-names = "default"; pinctrl-0 = <&en_pp1000_edpbrdg>; enable-active-high; regulator-boot-on; gpio = <&pio 29 GPIO_ACTIVE_HIGH>; vin-supply = <&pp3300_z2>; }; pp1800_edpbrdg_dx: regulator-pp1800-edpbrdg-dx { compatible = "regulator-fixed"; regulator-name = "pp1800_edpbrdg_dx"; pinctrl-names = "default"; pinctrl-0 = <&en_pp1800_edpbrdg>; enable-active-high; regulator-boot-on; gpio = <&pio 30 GPIO_ACTIVE_HIGH>; vin-supply = <&mt6366_vio18_reg>; }; pp3300_edp_dx: regulator-pp3300-edp-dx { compatible = "regulator-fixed"; regulator-name = "pp3300_edp_dx"; pinctrl-names = "default"; pinctrl-0 = <&en_pp3300_edpbrdg>; enable-active-high; regulator-boot-on; gpio = <&pio 31 GPIO_ACTIVE_HIGH>; vin-supply = <&pp3300_z2>; }; pp1800_tchscr_report_disable: regulator-pp1800-tchscr-report-disable { compatible = "regulator-fixed"; regulator-name = "pp1800_tchscr_report_disable"; pinctrl-names = "default"; regulator-boot-on; pinctrl-0 = <&touch_pin_report>; gpio = <&pio 37 GPIO_ACTIVE_LOW>; }; }; &dsi_out { remote-endpoint = <&anx7625_in>; }; &i2c0 { clock-frequency = <400000>; anx_bridge: anx7625@58 { compatible = "analogix,anx7625"; reg = <0x58>; pinctrl-names = "default"; pinctrl-0 = <&anx7625_pins>; enable-gpios = <&pio 96 GPIO_ACTIVE_HIGH>; reset-gpios = <&pio 98 GPIO_ACTIVE_HIGH>; vdd10-supply = <&pp1000_edpbrdg>; vdd18-supply = <&pp1800_edpbrdg_dx>; vdd33-supply = <&pp3300_edp_dx>; analogix,lane0-swing = /bits/ 8 <0x70 0x30>; analogix,lane1-swing = /bits/ 8 <0x70 0x30>; ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; anx7625_in: endpoint { remote-endpoint = <&dsi_out>; data-lanes = <0 1 2 3>; }; }; port@1 { reg = <1>; anx7625_out: endpoint { remote-endpoint = <&panel_in>; }; }; }; aux-bus { panel: panel { compatible = "edp-panel"; power-supply = <&pp3300_disp_x>; backlight = <&backlight_lcd0>; port { panel_in: endpoint { remote-endpoint = <&anx7625_out>; }; }; }; }; }; }; &i2c2 { /delete-node/ trackpad@15; touchpad@15 { compatible = "hid-over-i2c"; reg = <0x15>; interrupts-extended = <&pio 11 IRQ_TYPE_LEVEL_LOW>; post-power-on-delay-ms = <10>; hid-descr-addr = <0x0001>; vdd-supply = <&pp3300_s3>; wakeup-source; }; }; &i2c5 { clock-frequency = <400000>; /delete-node/ codec@1a; rt5650: rt5650@1a { compatible = "realtek,rt5650"; reg = <0x1a>; avdd-supply = <&mt6366_vio18_reg>; cpvdd-supply = <&mt6366_vio18_reg>; pinctrl-names = "default"; pinctrl-0 = <&speaker_codec_pins_default>; cbj-sleeve-gpios = <&pio 150 GPIO_ACTIVE_HIGH>; interrupt-parent = <&pio>; interrupts = <17 IRQ_TYPE_EDGE_BOTH>; #sound-dai-cells = <0>; realtek,dmic1-data-pin = <2>; realtek,jd-mode = <2>; }; }; &i2c_tunnel { /delete-node/ sbs-battery@b; battery: sbs-battery@f { compatible = "sbs,sbs-battery"; reg = <0xf>; sbs,i2c-retry-count = <2>; sbs,poll-retry-count = <1>; }; }; &keyboard_controller { keypad,num-columns = <15>; function-row-physmap = < MATRIX_KEY(0x00, 0x02, 0) /* T1 */ MATRIX_KEY(0x03, 0x02, 0) /* T2 */ MATRIX_KEY(0x02, 0x02, 0) /* T3 */ MATRIX_KEY(0x01, 0x02, 0) /* T4 */ MATRIX_KEY(0x03, 0x04, 0) /* T5 */ MATRIX_KEY(0x02, 0x04, 0) /* T6 */ MATRIX_KEY(0x01, 0x04, 0) /* T7 */ MATRIX_KEY(0x02, 0x09, 0) /* T8 */ MATRIX_KEY(0x01, 0x09, 0) /* T9 */ MATRIX_KEY(0x00, 0x04, 0) /* T10 */ MATRIX_KEY(0x00, 0x01, 0) /* T11 */ MATRIX_KEY(0x01, 0x05, 0) /* T12 */ >; linux,keymap = < CROS_STD_MAIN_KEYMAP MATRIX_KEY(0x00, 0x02, KEY_BACK) /* T1 */ MATRIX_KEY(0x03, 0x02, KEY_REFRESH) /* T2 */ MATRIX_KEY(0x02, 0x02, KEY_ZOOM) /* T3 */ MATRIX_KEY(0x01, 0x02, KEY_SCALE) /* T4 */ MATRIX_KEY(0x03, 0x04, KEY_SYSRQ) /* T5 */ MATRIX_KEY(0x02, 0x04, KEY_BRIGHTNESSDOWN) /* T6 */ MATRIX_KEY(0x01, 0x04, KEY_BRIGHTNESSUP) /* T7 */ MATRIX_KEY(0x02, 0x09, KEY_MUTE) /* T8 */ MATRIX_KEY(0x01, 0x09, KEY_VOLUMEDOWN) /* T9 */ MATRIX_KEY(0x00, 0x04, KEY_VOLUMEUP) /* T10 */ MATRIX_KEY(0x00, 0x01, KEY_MICMUTE) /* T11 */ MATRIX_KEY(0x01, 0x05, KEY_CONTROLPANEL) /* T12 */ MATRIX_KEY(0x03, 0x05, KEY_PREVIOUSSONG) /* T13 */ MATRIX_KEY(0x00, 0x09, KEY_PLAYPAUSE) /* T14 */ MATRIX_KEY(0x00, 0x0b, KEY_NEXTSONG) /* T15 */ MATRIX_KEY(0x03, 0x00, KEY_LEFTMETA) /* Search*/ MATRIX_KEY(0x01, 0x0e, KEY_LEFTCTRL) /* Left Control*/ MATRIX_KEY(0x06, 0x0d, KEY_LEFTALT) /* Left ALT*/ MATRIX_KEY(0x03, 0x0e, KEY_RIGHTCTRL) /* Right Control*/ MATRIX_KEY(0x06, 0x0a, KEY_BACKSLASH) /* BACKSLASH*/ >; }; &mmc1_pins_default { pins-clk { drive-strength = <8>; }; pins-cmd-dat { drive-strength = <8>; }; }; &mmc1_pins_uhs { pins-clk { drive-strength = <8>; }; pins-cmd-dat { drive-strength = <8>; }; }; &pen_insert { wakeup-event-action = ; }; &pio { anx7625_pins: anx7625-pins { pins-int { pinmux = ; input-enable; bias-disable; }; pins-reset { pinmux = ; output-low; }; pins-power-en { pinmux = ; output-low; }; }; en_pp1000_edpbrdg: pp1000-edpbrdg-en-pins { pins-vreg-en { pinmux = ; output-low; }; }; en_pp1800_edpbrdg: pp1800-edpbrdg-en-pins { pins-vreg-en { pinmux = ; output-low; }; }; en_pp3300_edpbrdg: pp3300-edpbrdg-en-pins { pins-vreg-en { pinmux = ; output-low; }; }; touch_pin_report: pin-report-pins { pins-touch-en { pinmux = ; output-low; }; }; }; &sound { compatible = "mediatek,mt8186-mt6366-rt5650-sound"; model = "mt8186_rt5650"; mediatek,adsp = <&adsp>; audio-routing = "Headphone", "HPOL", "Headphone", "HPOR", "IN1P", "Headset Mic", "IN1N", "Headset Mic", "Speakers", "SPOL", "Speakers", "SPOR", "HDMI1", "TX"; hs-playback-dai-link { codec { sound-dai = <&rt5650>; }; }; hs-capture-dai-link { codec { sound-dai = <&rt5650>; }; }; spk-share-dai-link { }; spk-hdmi-playback-dai-link { codec { sound-dai = <&it6505dptx>; }; }; }; &touchscreen_pins { /delete-node/ pins-report-sw; }; &wifi_enable_pin { pins-wifi-enable { pinmux = ; }; }; &wifi_pwrseq { reset-gpios = <&pio 51 GPIO_ACTIVE_LOW>; };