1// SPDX-License-Identifier: (GPL-2.0 OR MIT) 2/* 3 * Copyright 2022 Google LLC 4 */ 5 6/dts-v1/; 7#include "mt8186-corsola.dtsi" 8#include <dt-bindings/gpio/gpio.h> 9#include <dt-bindings/input/input.h> 10 11/{ 12 pp1000_edpbrdg: regulator-pp1000-edpbrdg { 13 compatible = "regulator-fixed"; 14 regulator-name = "pp1000_edpbrdg"; 15 pinctrl-names = "default"; 16 pinctrl-0 = <&en_pp1000_edpbrdg>; 17 enable-active-high; 18 regulator-boot-on; 19 gpio = <&pio 29 GPIO_ACTIVE_HIGH>; 20 vin-supply = <&pp3300_z2>; 21 }; 22 23 pp1800_edpbrdg_dx: regulator-pp1800-edpbrdg-dx { 24 compatible = "regulator-fixed"; 25 regulator-name = "pp1800_edpbrdg_dx"; 26 pinctrl-names = "default"; 27 pinctrl-0 = <&en_pp1800_edpbrdg>; 28 enable-active-high; 29 regulator-boot-on; 30 gpio = <&pio 30 GPIO_ACTIVE_HIGH>; 31 vin-supply = <&mt6366_vio18_reg>; 32 }; 33 34 pp3300_edp_dx: regulator-pp3300-edp-dx { 35 compatible = "regulator-fixed"; 36 regulator-name = "pp3300_edp_dx"; 37 pinctrl-names = "default"; 38 pinctrl-0 = <&en_pp3300_edpbrdg>; 39 enable-active-high; 40 regulator-boot-on; 41 gpio = <&pio 31 GPIO_ACTIVE_HIGH>; 42 vin-supply = <&pp3300_z2>; 43 }; 44}; 45 46&dsi_out { 47 remote-endpoint = <&anx7625_in>; 48}; 49 50&i2c0 { 51 clock-frequency = <400000>; 52 53 anx_bridge: anx7625@58 { 54 compatible = "analogix,anx7625"; 55 reg = <0x58>; 56 pinctrl-names = "default"; 57 pinctrl-0 = <&anx7625_pins>; 58 enable-gpios = <&pio 96 GPIO_ACTIVE_HIGH>; 59 reset-gpios = <&pio 98 GPIO_ACTIVE_HIGH>; 60 vdd10-supply = <&pp1000_edpbrdg>; 61 vdd18-supply = <&pp1800_edpbrdg_dx>; 62 vdd33-supply = <&pp3300_edp_dx>; 63 analogix,lane0-swing = /bits/ 8 <0x70 0x30>; 64 analogix,lane1-swing = /bits/ 8 <0x70 0x30>; 65 66 ports { 67 #address-cells = <1>; 68 #size-cells = <0>; 69 70 port@0 { 71 reg = <0>; 72 73 anx7625_in: endpoint { 74 remote-endpoint = <&dsi_out>; 75 data-lanes = <0 1 2 3>; 76 }; 77 }; 78 79 port@1 { 80 reg = <1>; 81 82 anx7625_out: endpoint { 83 remote-endpoint = <&panel_in>; 84 }; 85 }; 86 }; 87 88 aux-bus { 89 panel: panel { 90 compatible = "edp-panel"; 91 power-supply = <&pp3300_disp_x>; 92 backlight = <&backlight_lcd0>; 93 94 port { 95 panel_in: endpoint { 96 remote-endpoint = <&anx7625_out>; 97 }; 98 }; 99 }; 100 }; 101 }; 102}; 103 104&i2c1 { 105 touchscreen: touchscreen@5d { 106 compatible = "goodix,gt7375p"; 107 reg = <0x5d>; 108 interrupts-extended = <&pio 12 IRQ_TYPE_EDGE_FALLING>; 109 pinctrl-names = "default"; 110 pinctrl-0 = <&touchscreen_pins>; 111 reset-gpios = <&pio 60 GPIO_ACTIVE_LOW>; 112 vdd-supply = <&pp3300_s3>; 113 goodix,no-reset-during-suspend; 114 }; 115}; 116 117&i2c2 { 118 i2c-scl-internal-delay-ns = <22000>; 119 120 /* second source component */ 121 trackpad@2c { 122 compatible = "hid-over-i2c"; 123 reg = <0x2c>; 124 hid-descr-addr = <0x20>; 125 interrupts-extended = <&pio 11 IRQ_TYPE_LEVEL_LOW>; 126 vdd-supply = <&pp3300_s3>; 127 wakeup-source; 128 }; 129}; 130 131&keyboard_controller { 132 function-row-physmap = < 133 MATRIX_KEY(0x00, 0x02, 0) /* T1 */ 134 MATRIX_KEY(0x03, 0x02, 0) /* T2 */ 135 MATRIX_KEY(0x02, 0x02, 0) /* T3 */ 136 MATRIX_KEY(0x01, 0x02, 0) /* T4 */ 137 MATRIX_KEY(0x03, 0x04, 0) /* T5 */ 138 MATRIX_KEY(0x02, 0x04, 0) /* T6 */ 139 MATRIX_KEY(0x01, 0x04, 0) /* T7 */ 140 MATRIX_KEY(0x02, 0x09, 0) /* T8 */ 141 MATRIX_KEY(0x01, 0x09, 0) /* T9 */ 142 MATRIX_KEY(0x00, 0x04, 0) /* T10 */ 143 >; 144 145 linux,keymap = < 146 MATRIX_KEY(0x00, 0x02, KEY_BACK) 147 MATRIX_KEY(0x03, 0x02, KEY_REFRESH) 148 MATRIX_KEY(0x02, 0x02, KEY_ZOOM) 149 MATRIX_KEY(0x01, 0x02, KEY_SCALE) 150 MATRIX_KEY(0x03, 0x04, KEY_BRIGHTNESSDOWN) 151 MATRIX_KEY(0x02, 0x04, KEY_BRIGHTNESSUP) 152 MATRIX_KEY(0x01, 0x04, KEY_MICMUTE) 153 MATRIX_KEY(0x02, 0x09, KEY_MUTE) 154 MATRIX_KEY(0x01, 0x09, KEY_VOLUMEDOWN) 155 MATRIX_KEY(0x00, 0x04, KEY_VOLUMEUP) 156 CROS_STD_MAIN_KEYMAP 157 >; 158}; 159 160&pio { 161 anx7625_pins: anx7625-pins { 162 pins-int { 163 pinmux = <PINMUX_GPIO9__FUNC_GPIO9>; 164 input-enable; 165 bias-disable; 166 }; 167 168 pins-reset { 169 pinmux = <PINMUX_GPIO98__FUNC_GPIO98>; 170 output-low; 171 }; 172 173 pins-power-en { 174 pinmux = <PINMUX_GPIO96__FUNC_GPIO96>; 175 output-low; 176 }; 177 }; 178 179 en_pp1000_edpbrdg: pp1000-edpbrdg-en-pins { 180 pins-vreg-en { 181 pinmux = <PINMUX_GPIO29__FUNC_GPIO29>; 182 output-low; 183 }; 184 }; 185 186 en_pp1800_edpbrdg: pp1800-edpbrdg-en-pins { 187 pins-vreg-en { 188 pinmux = <PINMUX_GPIO30__FUNC_GPIO30>; 189 output-low; 190 }; 191 }; 192 193 en_pp3300_edpbrdg: pp3300-edpbrdg-en-pins { 194 pins-vreg-en { 195 pinmux = <PINMUX_GPIO31__FUNC_GPIO31>; 196 output-low; 197 }; 198 }; 199}; 200