1 // SPDX-License-Identifier: GPL-2.0-only OR MI 1 // SPDX-License-Identifier: GPL-2.0-only OR MIT 2 /* 2 /* 3 * Copyright (C) 2022-2024 PHYTEC Messtechnik 3 * Copyright (C) 2022-2024 PHYTEC Messtechnik GmbH 4 * Author: Wadim Egorov <w.egorov@phytec.de> 4 * Author: Wadim Egorov <w.egorov@phytec.de> 5 * 5 * 6 */ 6 */ 7 7 8 #include <dt-bindings/gpio/gpio.h> 8 #include <dt-bindings/gpio/gpio.h> 9 #include <dt-bindings/input/input.h> 9 #include <dt-bindings/input/input.h> 10 #include <dt-bindings/leds/common.h> 10 #include <dt-bindings/leds/common.h> 11 #include <dt-bindings/net/ti-dp83867.h> 11 #include <dt-bindings/net/ti-dp83867.h> 12 12 13 / { 13 / { 14 aliases { 14 aliases { 15 serial2 = &main_uart0; 15 serial2 = &main_uart0; 16 serial3 = &main_uart1; 16 serial3 = &main_uart1; 17 mmc1 = &sdhci1; 17 mmc1 = &sdhci1; 18 usb0 = &usb0; 18 usb0 = &usb0; 19 usb1 = &usb1; 19 usb1 = &usb1; 20 ethernet1 = &cpsw_port2; 20 ethernet1 = &cpsw_port2; 21 }; 21 }; 22 22 23 can_tc1: can-phy0 { 23 can_tc1: can-phy0 { 24 compatible = "ti,tcan1042"; 24 compatible = "ti,tcan1042"; 25 #phy-cells = <0>; 25 #phy-cells = <0>; 26 max-bitrate = <8000000>; 26 max-bitrate = <8000000>; 27 standby-gpios = <&gpio_exp 1 G 27 standby-gpios = <&gpio_exp 1 GPIO_ACTIVE_HIGH>; 28 }; 28 }; 29 29 30 hdmi0: connector-hdmi { 30 hdmi0: connector-hdmi { 31 compatible = "hdmi-connector"; 31 compatible = "hdmi-connector"; 32 label = "hdmi"; 32 label = "hdmi"; 33 type = "a"; 33 type = "a"; 34 34 35 port { 35 port { 36 hdmi_connector_in: end 36 hdmi_connector_in: endpoint { 37 remote-endpoin 37 remote-endpoint = <&sii9022_out>; 38 }; 38 }; 39 }; 39 }; 40 }; 40 }; 41 41 42 keys { 42 keys { 43 compatible = "gpio-keys"; 43 compatible = "gpio-keys"; 44 autorepeat; 44 autorepeat; 45 pinctrl-names = "default"; 45 pinctrl-names = "default"; 46 pinctrl-0 = <&gpio_keys_pins_d 46 pinctrl-0 = <&gpio_keys_pins_default>; 47 47 48 key-home { 48 key-home { 49 label = "home"; 49 label = "home"; 50 linux,code = <KEY_HOME 50 linux,code = <KEY_HOME>; 51 gpios = <&main_gpio1 2 51 gpios = <&main_gpio1 23 GPIO_ACTIVE_HIGH>; 52 }; 52 }; 53 53 54 key-menu { 54 key-menu { 55 label = "menu"; 55 label = "menu"; 56 linux,code = <KEY_MENU 56 linux,code = <KEY_MENU>; 57 gpios = <&gpio_exp 4 G 57 gpios = <&gpio_exp 4 GPIO_ACTIVE_HIGH>; 58 }; 58 }; 59 }; 59 }; 60 60 61 sound { 61 sound { 62 compatible = "simple-audio-car 62 compatible = "simple-audio-card"; 63 simple-audio-card,name = "phyB 63 simple-audio-card,name = "phyBOARD-Lyra"; 64 simple-audio-card,widgets = 64 simple-audio-card,widgets = 65 "Microphone", 65 "Microphone", "Mic Jack", 66 "Headphone", 66 "Headphone", "Headphone Jack", 67 "Speaker", 67 "Speaker", "External Speaker"; 68 simple-audio-card,routing = 68 simple-audio-card,routing = 69 "MIC3R", 69 "MIC3R", "Mic Jack", 70 "Mic Jack", 70 "Mic Jack", "Mic Bias", 71 "Headphone Jack", 71 "Headphone Jack", "HPLOUT", 72 "Headphone Jack", 72 "Headphone Jack", "HPROUT", 73 "External Speaker", 73 "External Speaker", "SPOP", 74 "External Speaker", 74 "External Speaker", "SPOM"; 75 simple-audio-card,format = "ds 75 simple-audio-card,format = "dsp_b"; 76 simple-audio-card,bitclock-mas 76 simple-audio-card,bitclock-master = <&sound_master>; 77 simple-audio-card,frame-master 77 simple-audio-card,frame-master = <&sound_master>; 78 simple-audio-card,bitclock-inv 78 simple-audio-card,bitclock-inversion; 79 79 80 simple-audio-card,cpu { 80 simple-audio-card,cpu { 81 sound-dai = <&mcasp2>; 81 sound-dai = <&mcasp2>; 82 }; 82 }; 83 83 84 sound_master: simple-audio-car 84 sound_master: simple-audio-card,codec { 85 sound-dai = <& 85 sound-dai = <&audio_codec>; 86 clocks = <&aud 86 clocks = <&audio_refclk1>; 87 }; 87 }; 88 }; 88 }; 89 89 90 leds { 90 leds { 91 compatible = "gpio-leds"; 91 compatible = "gpio-leds"; 92 pinctrl-names = "default"; 92 pinctrl-names = "default"; 93 pinctrl-0 = <&leds_pins_defaul 93 pinctrl-0 = <&leds_pins_default>, <&user_leds_pins_default>; 94 94 95 led-1 { 95 led-1 { 96 gpios = <&main_gpio0 3 96 gpios = <&main_gpio0 32 GPIO_ACTIVE_HIGH>; 97 linux,default-trigger 97 linux,default-trigger = "mmc0"; 98 }; 98 }; 99 99 100 led-2 { 100 led-2 { 101 gpios = <&gpio_exp 2 G 101 gpios = <&gpio_exp 2 GPIO_ACTIVE_HIGH>; 102 linux,default-trigger 102 linux,default-trigger = "mmc1"; 103 }; 103 }; 104 }; 104 }; 105 105 106 vcc_1v8: regulator-vcc-1v8 { 106 vcc_1v8: regulator-vcc-1v8 { 107 compatible = "regulator-fixed" 107 compatible = "regulator-fixed"; 108 regulator-name = "VCC_1V8"; 108 regulator-name = "VCC_1V8"; 109 regulator-min-microvolt = <180 109 regulator-min-microvolt = <1800000>; 110 regulator-max-microvolt = <180 110 regulator-max-microvolt = <1800000>; 111 regulator-always-on; 111 regulator-always-on; 112 regulator-boot-on; 112 regulator-boot-on; 113 }; 113 }; 114 114 115 vcc_3v3_mmc: regulator-vcc-3v3-mmc { 115 vcc_3v3_mmc: regulator-vcc-3v3-mmc { 116 compatible = "regulator-fixed" 116 compatible = "regulator-fixed"; 117 regulator-name = "VCC_3V3_MMC" 117 regulator-name = "VCC_3V3_MMC"; 118 regulator-min-microvolt = <330 118 regulator-min-microvolt = <3300000>; 119 regulator-max-microvolt = <330 119 regulator-max-microvolt = <3300000>; 120 regulator-always-on; 120 regulator-always-on; 121 regulator-boot-on; 121 regulator-boot-on; 122 }; 122 }; 123 123 124 vcc_3v3_sw: regulator-vcc-3v3-sw { 124 vcc_3v3_sw: regulator-vcc-3v3-sw { 125 compatible = "regulator-fixed" 125 compatible = "regulator-fixed"; 126 regulator-name = "VCC_3V3_SW"; 126 regulator-name = "VCC_3V3_SW"; 127 regulator-min-microvolt = <330 127 regulator-min-microvolt = <3300000>; 128 regulator-max-microvolt = <330 128 regulator-max-microvolt = <3300000>; 129 regulator-always-on; 129 regulator-always-on; 130 regulator-boot-on; 130 regulator-boot-on; 131 }; 131 }; 132 }; 132 }; 133 133 134 &main_pmx0 { 134 &main_pmx0 { 135 audio_ext_refclk1_pins_default: audio- 135 audio_ext_refclk1_pins_default: audio-ext-refclk1-default-pins { 136 pinctrl-single,pins = < 136 pinctrl-single,pins = < 137 AM62X_IOPAD(0x0a0, PIN 137 AM62X_IOPAD(0x0a0, PIN_OUTPUT, 1) /* (K25) GPMC0_WPn.AUDIO_EXT_REFCLK1 */ 138 >; 138 >; 139 }; 139 }; 140 140 141 gpio_keys_pins_default: gpio-keys-defa 141 gpio_keys_pins_default: gpio-keys-default-pins { 142 pinctrl-single,pins = < 142 pinctrl-single,pins = < 143 AM62X_IOPAD(0x1d4, PIN 143 AM62X_IOPAD(0x1d4, PIN_INPUT, 7) /* (B15) UART0_RTSn.GPIO1_23 */ 144 >; 144 >; 145 }; 145 }; 146 146 147 gpio_exp_int_pins_default: gpio-exp-in 147 gpio_exp_int_pins_default: gpio-exp-int-default-pins { 148 pinctrl-single,pins = < 148 pinctrl-single,pins = < 149 AM62X_IOPAD(0x244, PIN 149 AM62X_IOPAD(0x244, PIN_INPUT, 7) /* (C17) MMC1_SDWP.GPIO1_49 */ 150 >; 150 >; 151 }; 151 }; 152 152 153 hdmi_int_pins_default: hdmi-int-defaul 153 hdmi_int_pins_default: hdmi-int-default-pins { 154 pinctrl-single,pins = < 154 pinctrl-single,pins = < 155 AM62X_IOPAD(0x040, PIN 155 AM62X_IOPAD(0x040, PIN_INPUT, 7) /* (N23) GPMC0_AD1.GPIO0_16 */ 156 >; 156 >; 157 }; 157 }; 158 158 159 main_dss0_pins_default: main-dss0-defa 159 main_dss0_pins_default: main-dss0-default-pins { 160 pinctrl-single,pins = < 160 pinctrl-single,pins = < 161 AM62X_IOPAD(0x0b8, PIN 161 AM62X_IOPAD(0x0b8, PIN_OUTPUT, 0) /* (U22) VOUT0_DATA0 */ 162 AM62X_IOPAD(0x0bc, PIN 162 AM62X_IOPAD(0x0bc, PIN_OUTPUT, 0) /* (V24) VOUT0_DATA1 */ 163 AM62X_IOPAD(0x0e0, PIN 163 AM62X_IOPAD(0x0e0, PIN_OUTPUT, 0) /* (V20) VOUT0_DATA10 */ 164 AM62X_IOPAD(0x0e4, PIN 164 AM62X_IOPAD(0x0e4, PIN_OUTPUT, 0) /* (AA23) VOUT0_DATA11 */ 165 AM62X_IOPAD(0x0e8, PIN 165 AM62X_IOPAD(0x0e8, PIN_OUTPUT, 0) /* (AB25) VOUT0_DATA12 */ 166 AM62X_IOPAD(0x0ec, PIN 166 AM62X_IOPAD(0x0ec, PIN_OUTPUT, 0) /* (AA24) VOUT0_DATA13 */ 167 AM62X_IOPAD(0x0f0, PIN 167 AM62X_IOPAD(0x0f0, PIN_OUTPUT, 0) /* (Y22) VOUT0_DATA14 */ 168 AM62X_IOPAD(0x0f4, PIN 168 AM62X_IOPAD(0x0f4, PIN_OUTPUT, 0) /* (AA21) VOUT0_DATA15 */ 169 AM62X_IOPAD(0x0c0, PIN 169 AM62X_IOPAD(0x0c0, PIN_OUTPUT, 0) /* (W25) VOUT0_DATA2 */ 170 AM62X_IOPAD(0x0c4, PIN 170 AM62X_IOPAD(0x0c4, PIN_OUTPUT, 0) /* (W24) VOUT0_DATA3 */ 171 AM62X_IOPAD(0x0c8, PIN 171 AM62X_IOPAD(0x0c8, PIN_OUTPUT, 0) /* (Y25) VOUT0_DATA4 */ 172 AM62X_IOPAD(0x0cc, PIN 172 AM62X_IOPAD(0x0cc, PIN_OUTPUT, 0) /* (Y24) VOUT0_DATA5 */ 173 AM62X_IOPAD(0x0d0, PIN 173 AM62X_IOPAD(0x0d0, PIN_OUTPUT, 0) /* (Y23) VOUT0_DATA6 */ 174 AM62X_IOPAD(0x0d4, PIN 174 AM62X_IOPAD(0x0d4, PIN_OUTPUT, 0) /* (AA25) VOUT0_DATA7 */ 175 AM62X_IOPAD(0x0d8, PIN 175 AM62X_IOPAD(0x0d8, PIN_OUTPUT, 0) /* (V21) VOUT0_DATA8 */ 176 AM62X_IOPAD(0x0dc, PIN 176 AM62X_IOPAD(0x0dc, PIN_OUTPUT, 0) /* (W21) VOUT0_DATA9 */ 177 AM62X_IOPAD(0x0fc, PIN 177 AM62X_IOPAD(0x0fc, PIN_OUTPUT, 0) /* (Y20) VOUT0_DE */ 178 AM62X_IOPAD(0x0f8, PIN 178 AM62X_IOPAD(0x0f8, PIN_OUTPUT, 0) /* (AB24) VOUT0_HSYNC */ 179 AM62X_IOPAD(0x104, PIN 179 AM62X_IOPAD(0x104, PIN_OUTPUT, 0) /* (AC24) VOUT0_PCLK */ 180 AM62X_IOPAD(0x100, PIN 180 AM62X_IOPAD(0x100, PIN_OUTPUT, 0) /* (AC25) VOUT0_VSYNC */ 181 >; 181 >; 182 }; 182 }; 183 183 184 main_i2c1_pins_default: main-i2c1-defa 184 main_i2c1_pins_default: main-i2c1-default-pins { 185 pinctrl-single,pins = < 185 pinctrl-single,pins = < 186 AM62X_IOPAD(0x1e8, PIN 186 AM62X_IOPAD(0x1e8, PIN_INPUT_PULLUP, 0) /* (B17) I2C1_SCL */ 187 AM62X_IOPAD(0x1ec, PIN 187 AM62X_IOPAD(0x1ec, PIN_INPUT_PULLUP, 0) /* (A17) I2C1_SDA */ 188 >; 188 >; 189 }; 189 }; 190 190 191 main_mcan0_pins_default: main-mcan0-de 191 main_mcan0_pins_default: main-mcan0-default-pins { 192 pinctrl-single,pins = < 192 pinctrl-single,pins = < 193 AM62X_IOPAD(0x1dc, PIN 193 AM62X_IOPAD(0x1dc, PIN_INPUT, 0) /* (E15) MCAN0_RX */ 194 AM62X_IOPAD(0x1d8, PIN 194 AM62X_IOPAD(0x1d8, PIN_OUTPUT, 0) /* (C15) MCAN0_TX */ 195 >; 195 >; 196 }; 196 }; 197 197 198 main_mcasp2_pins_default: main-mcasp2- 198 main_mcasp2_pins_default: main-mcasp2-default-pins { 199 pinctrl-single,pins = < 199 pinctrl-single,pins = < 200 AM62X_IOPAD(0x070, PIN 200 AM62X_IOPAD(0x070, PIN_INPUT, 3) /* (T24) GPMC0_AD13.MCASP2_ACLKX */ 201 AM62X_IOPAD(0x06c, PIN 201 AM62X_IOPAD(0x06c, PIN_INPUT, 3) /* (T22) GPMC0_AD12.MCASP2_AFSX */ 202 AM62X_IOPAD(0x064, PIN 202 AM62X_IOPAD(0x064, PIN_OUTPUT, 3) /* (T25) GPMC0_AD10.MCASP2_AXR2 */ 203 AM62X_IOPAD(0x068, PIN 203 AM62X_IOPAD(0x068, PIN_INPUT, 3) /* (R21) GPMC0_AD11.MCASP2_AXR3 */ 204 >; 204 >; 205 }; 205 }; 206 206 207 main_mmc1_pins_default: main-mmc1-defa 207 main_mmc1_pins_default: main-mmc1-default-pins { 208 pinctrl-single,pins = < 208 pinctrl-single,pins = < 209 AM62X_IOPAD(0x23c, PIN 209 AM62X_IOPAD(0x23c, PIN_INPUT_PULLUP, 0) /* (A21) MMC1_CMD */ 210 AM62X_IOPAD(0x234, PIN 210 AM62X_IOPAD(0x234, PIN_INPUT_PULLDOWN, 0) /* (B22) MMC1_CLK */ 211 AM62X_IOPAD(0x230, PIN 211 AM62X_IOPAD(0x230, PIN_INPUT_PULLUP, 0) /* (A22) MMC1_DAT0 */ 212 AM62X_IOPAD(0x22c, PIN 212 AM62X_IOPAD(0x22c, PIN_INPUT_PULLUP, 0) /* (B21) MMC1_DAT1 */ 213 AM62X_IOPAD(0x228, PIN 213 AM62X_IOPAD(0x228, PIN_INPUT_PULLUP, 0) /* (C21) MMC1_DAT2 */ 214 AM62X_IOPAD(0x224, PIN 214 AM62X_IOPAD(0x224, PIN_INPUT_PULLUP, 0) /* (D22) MMC1_DAT3 */ 215 AM62X_IOPAD(0x240, PIN 215 AM62X_IOPAD(0x240, PIN_INPUT_PULLUP, 0) /* (D17) MMC1_SDCD */ 216 >; 216 >; 217 }; 217 }; 218 218 219 main_rgmii2_pins_default: main-rgmii2- 219 main_rgmii2_pins_default: main-rgmii2-default-pins { 220 pinctrl-single,pins = < 220 pinctrl-single,pins = < 221 AM62X_IOPAD(0x184, PIN 221 AM62X_IOPAD(0x184, PIN_INPUT, 0) /* (AE23) RGMII2_RD0 */ 222 AM62X_IOPAD(0x188, PIN 222 AM62X_IOPAD(0x188, PIN_INPUT, 0) /* (AB20) RGMII2_RD1 */ 223 AM62X_IOPAD(0x18c, PIN 223 AM62X_IOPAD(0x18c, PIN_INPUT, 0) /* (AC21) RGMII2_RD2 */ 224 AM62X_IOPAD(0x190, PIN 224 AM62X_IOPAD(0x190, PIN_INPUT, 0) /* (AE22) RGMII2_RD3 */ 225 AM62X_IOPAD(0x180, PIN 225 AM62X_IOPAD(0x180, PIN_INPUT, 0) /* (AD23) RGMII2_RXC */ 226 AM62X_IOPAD(0x17c, PIN 226 AM62X_IOPAD(0x17c, PIN_INPUT, 0) /* (AD22) RGMII2_RX_CTL */ 227 AM62X_IOPAD(0x16c, PIN 227 AM62X_IOPAD(0x16c, PIN_OUTPUT, 0) /* (Y18) RGMII2_TD0 */ 228 AM62X_IOPAD(0x170, PIN 228 AM62X_IOPAD(0x170, PIN_OUTPUT, 0) /* (AA18) RGMII2_TD1 */ 229 AM62X_IOPAD(0x174, PIN 229 AM62X_IOPAD(0x174, PIN_OUTPUT, 0) /* (AD21) RGMII2_TD2 */ 230 AM62X_IOPAD(0x178, PIN 230 AM62X_IOPAD(0x178, PIN_OUTPUT, 0) /* (AC20) RGMII2_TD3 */ 231 AM62X_IOPAD(0x168, PIN 231 AM62X_IOPAD(0x168, PIN_OUTPUT, 0) /* (AE21) RGMII2_TXC */ 232 AM62X_IOPAD(0x164, PIN 232 AM62X_IOPAD(0x164, PIN_OUTPUT, 0) /* (AA19) RGMII2_TX_CTL */ 233 >; 233 >; 234 }; 234 }; 235 235 236 main_uart0_pins_default: main-uart0-de 236 main_uart0_pins_default: main-uart0-default-pins { 237 pinctrl-single,pins = < 237 pinctrl-single,pins = < 238 AM62X_IOPAD(0x1c8, PIN 238 AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14) UART0_RXD */ 239 AM62X_IOPAD(0x1cc, PIN 239 AM62X_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (E14) UART0_TXD */ 240 >; 240 >; 241 }; 241 }; 242 242 243 main_uart1_pins_default: main-uart1-de 243 main_uart1_pins_default: main-uart1-default-pins { 244 pinctrl-single,pins = < 244 pinctrl-single,pins = < 245 AM62X_IOPAD(0x194, PIN 245 AM62X_IOPAD(0x194, PIN_INPUT, 2) /* (B19) MCASP0_AXR3.UART1_CTSn */ 246 AM62X_IOPAD(0x198, PIN 246 AM62X_IOPAD(0x198, PIN_OUTPUT, 2) /* (A19) MCASP0_AXR2.UART1_RTSn */ 247 AM62X_IOPAD(0x1ac, PIN 247 AM62X_IOPAD(0x1ac, PIN_INPUT, 2) /* (E19) MCASP0_AFSR.UART1_RXD */ 248 AM62X_IOPAD(0x1b0, PIN 248 AM62X_IOPAD(0x1b0, PIN_OUTPUT, 2) /* (A20) MCASP0_ACLKR.UART1_TXD */ 249 >; 249 >; 250 }; 250 }; 251 251 252 main_usb1_pins_default: main-usb1-defa 252 main_usb1_pins_default: main-usb1-default-pins { 253 pinctrl-single,pins = < 253 pinctrl-single,pins = < 254 AM62X_IOPAD(0x258, PIN 254 AM62X_IOPAD(0x258, PIN_OUTPUT, 0) /* (F18) USB1_DRVVBUS */ 255 >; 255 >; 256 }; 256 }; 257 257 258 user_leds_pins_default: user-leds-defa 258 user_leds_pins_default: user-leds-default-pins { 259 pinctrl-single,pins = < 259 pinctrl-single,pins = < 260 AM62X_IOPAD(0x084, PIN 260 AM62X_IOPAD(0x084, PIN_OUTPUT, 7) /* (L23) GPMC0_ADVn_ALE.GPIO0_32 */ 261 >; 261 >; 262 }; 262 }; 263 }; 263 }; 264 264 265 &cpsw3g { 265 &cpsw3g { 266 pinctrl-names = "default"; 266 pinctrl-names = "default"; 267 pinctrl-0 = <&main_rgmii1_pins_default 267 pinctrl-0 = <&main_rgmii1_pins_default>, <&main_rgmii2_pins_default>; 268 }; 268 }; 269 269 270 &cpsw_port2 { 270 &cpsw_port2 { 271 phy-mode = "rgmii-rxid"; 271 phy-mode = "rgmii-rxid"; 272 phy-handle = <&cpsw3g_phy3>; 272 phy-handle = <&cpsw3g_phy3>; 273 }; 273 }; 274 274 275 &cpsw3g_mdio { 275 &cpsw3g_mdio { 276 cpsw3g_phy3: ethernet-phy@3 { 276 cpsw3g_phy3: ethernet-phy@3 { 277 compatible = "ethernet-phy-id2 277 compatible = "ethernet-phy-id2000.a231", "ethernet-phy-ieee802.3-c22"; 278 reg = <3>; 278 reg = <3>; 279 ti,clk-output-sel = <DP83867_C 279 ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>; 280 ti,rx-internal-delay = <DP8386 280 ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; 281 ti,fifo-depth = <DP83867_PHYCR 281 ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 282 }; 282 }; 283 }; 283 }; 284 284 285 &dss { 285 &dss { 286 pinctrl-names = "default"; 286 pinctrl-names = "default"; 287 pinctrl-0 = <&main_dss0_pins_default>; 287 pinctrl-0 = <&main_dss0_pins_default>; 288 status = "okay"; 288 status = "okay"; 289 }; 289 }; 290 290 291 &dss_ports { 291 &dss_ports { 292 #address-cells = <1>; 292 #address-cells = <1>; 293 #size-cells = <0>; 293 #size-cells = <0>; 294 294 295 /* VP2: DPI/HDMI Output */ 295 /* VP2: DPI/HDMI Output */ 296 port@1 { 296 port@1 { 297 reg = <1>; 297 reg = <1>; 298 298 299 dpi1_out: endpoint { 299 dpi1_out: endpoint { 300 remote-endpoint = <&si 300 remote-endpoint = <&sii9022_in>; 301 }; 301 }; 302 }; 302 }; 303 }; 303 }; 304 304 305 &main_i2c1 { 305 &main_i2c1 { 306 pinctrl-names = "default"; 306 pinctrl-names = "default"; 307 pinctrl-0 = <&main_i2c1_pins_default>; 307 pinctrl-0 = <&main_i2c1_pins_default>; 308 clock-frequency = <100000>; 308 clock-frequency = <100000>; 309 status = "okay"; 309 status = "okay"; 310 310 311 audio_codec: audio-codec@18 { 311 audio_codec: audio-codec@18 { 312 pinctrl-names = "default"; 312 pinctrl-names = "default"; 313 pinctrl-0 = <&audio_ext_refclk 313 pinctrl-0 = <&audio_ext_refclk1_pins_default>; 314 314 315 #sound-dai-cells = <0>; 315 #sound-dai-cells = <0>; 316 compatible = "ti,tlv320aic3007 316 compatible = "ti,tlv320aic3007"; 317 reg = <0x18>; 317 reg = <0x18>; 318 ai3x-micbias-vg = <2>; 318 ai3x-micbias-vg = <2>; 319 319 320 AVDD-supply = <&vcc_3v3_sw>; 320 AVDD-supply = <&vcc_3v3_sw>; 321 IOVDD-supply = <&vcc_3v3_sw>; 321 IOVDD-supply = <&vcc_3v3_sw>; 322 DRVDD-supply = <&vcc_3v3_sw>; 322 DRVDD-supply = <&vcc_3v3_sw>; 323 DVDD-supply = <&vcc_1v8>; 323 DVDD-supply = <&vcc_1v8>; 324 }; 324 }; 325 325 326 gpio_exp: gpio-expander@21 { 326 gpio_exp: gpio-expander@21 { 327 pinctrl-names = "default"; 327 pinctrl-names = "default"; 328 pinctrl-0 = <&gpio_exp_int_pin 328 pinctrl-0 = <&gpio_exp_int_pins_default>; 329 compatible = "nxp,pcf8574"; 329 compatible = "nxp,pcf8574"; 330 reg = <0x21>; 330 reg = <0x21>; 331 interrupt-parent = <&main_gpio 331 interrupt-parent = <&main_gpio1>; 332 interrupts = <49 0>; 332 interrupts = <49 0>; 333 #gpio-cells = <2>; 333 #gpio-cells = <2>; 334 gpio-controller; 334 gpio-controller; 335 interrupt-controller; 335 interrupt-controller; 336 #interrupt-cells = <2>; 336 #interrupt-cells = <2>; 337 gpio-line-names = "", "GPIO1_C 337 gpio-line-names = "", "GPIO1_CAN0_nEN", 338 "GPIO2_LED2" 338 "GPIO2_LED2", "GPIO3_LVDS_GPIO", 339 "GPIO4_BUT2" 339 "GPIO4_BUT2", "GPIO5_LVDS_BKLT_EN", 340 "GPIO6_ETH1_ 340 "GPIO6_ETH1_USER_RESET", "GPIO7_AUDIO_USER_RESET"; 341 }; 341 }; 342 342 343 usb-pd@22 { 343 usb-pd@22 { 344 compatible = "ti,tps6598x"; 344 compatible = "ti,tps6598x"; 345 reg = <0x22>; 345 reg = <0x22>; 346 346 347 connector { 347 connector { 348 compatible = "usb-c-co 348 compatible = "usb-c-connector"; 349 label = "USB-C"; 349 label = "USB-C"; 350 self-powered; 350 self-powered; 351 data-role = "dual"; 351 data-role = "dual"; 352 power-role = "sink"; 352 power-role = "sink"; 353 port { 353 port { 354 usb_con_hs: en 354 usb_con_hs: endpoint { 355 remote 355 remote-endpoint = <&typec_hs>; 356 }; 356 }; 357 }; 357 }; 358 }; 358 }; 359 }; 359 }; 360 360 361 sii9022: bridge-hdmi@39 { 361 sii9022: bridge-hdmi@39 { 362 compatible = "sil,sii9022"; 362 compatible = "sil,sii9022"; 363 reg = <0x39>; 363 reg = <0x39>; 364 364 365 interrupt-parent = <&main_gpio 365 interrupt-parent = <&main_gpio0>; 366 interrupts = <16 IRQ_TYPE_EDGE 366 interrupts = <16 IRQ_TYPE_EDGE_FALLING>; 367 pinctrl-names = "default"; 367 pinctrl-names = "default"; 368 pinctrl-0 = <&hdmi_int_pins_de 368 pinctrl-0 = <&hdmi_int_pins_default>; 369 369 370 ports { 370 ports { 371 #address-cells = <1>; 371 #address-cells = <1>; 372 #size-cells = <0>; 372 #size-cells = <0>; 373 373 374 port@0 { 374 port@0 { 375 reg = <0>; 375 reg = <0>; 376 376 377 sii9022_in: en 377 sii9022_in: endpoint { 378 remote 378 remote-endpoint = <&dpi1_out>; 379 }; 379 }; 380 }; 380 }; 381 381 382 port@1 { 382 port@1 { 383 reg = <1>; 383 reg = <1>; 384 384 385 sii9022_out: e 385 sii9022_out: endpoint { 386 remote 386 remote-endpoint = <&hdmi_connector_in>; 387 }; 387 }; 388 }; 388 }; 389 }; 389 }; 390 }; 390 }; 391 391 392 eeprom@51 { 392 eeprom@51 { 393 compatible = "atmel,24c02"; 393 compatible = "atmel,24c02"; 394 pagesize = <16>; 394 pagesize = <16>; 395 reg = <0x51>; 395 reg = <0x51>; 396 }; 396 }; 397 }; 397 }; 398 398 399 &main_mcan0 { 399 &main_mcan0 { 400 pinctrl-names = "default"; 400 pinctrl-names = "default"; 401 pinctrl-0 = <&main_mcan0_pins_default> 401 pinctrl-0 = <&main_mcan0_pins_default>; 402 phys = <&can_tc1>; 402 phys = <&can_tc1>; 403 status = "okay"; 403 status = "okay"; 404 }; 404 }; 405 405 406 &main_uart0 { 406 &main_uart0 { 407 pinctrl-names = "default"; 407 pinctrl-names = "default"; 408 pinctrl-0 = <&main_uart0_pins_default> 408 pinctrl-0 = <&main_uart0_pins_default>; 409 status = "okay"; 409 status = "okay"; 410 }; 410 }; 411 411 412 &main_uart1 { 412 &main_uart1 { 413 pinctrl-names = "default"; 413 pinctrl-names = "default"; 414 pinctrl-0 = <&main_uart1_pins_default> 414 pinctrl-0 = <&main_uart1_pins_default>; 415 /* Main UART1 may be used by TIFS firm 415 /* Main UART1 may be used by TIFS firmware */ 416 status = "okay"; 416 status = "okay"; 417 }; 417 }; 418 418 419 &mcasp2 { 419 &mcasp2 { 420 #sound-dai-cells = <0>; 420 #sound-dai-cells = <0>; 421 421 422 pinctrl-names = "default"; 422 pinctrl-names = "default"; 423 pinctrl-0 = <&main_mcasp2_pins_default 423 pinctrl-0 = <&main_mcasp2_pins_default>; 424 424 425 /* MCASP_IIS_MODE */ 425 /* MCASP_IIS_MODE */ 426 op-mode = <0>; 426 op-mode = <0>; 427 tdm-slots = <2>; 427 tdm-slots = <2>; 428 428 429 /* 0: INACTIVE, 1: TX, 2: RX */ 429 /* 0: INACTIVE, 1: TX, 2: RX */ 430 serial-dir = < 430 serial-dir = < 431 0 0 1 2 431 0 0 1 2 432 0 0 0 0 432 0 0 0 0 433 0 0 0 0 433 0 0 0 0 434 0 0 0 0 434 0 0 0 0 435 >; 435 >; 436 tx-num-evt = <32>; 436 tx-num-evt = <32>; 437 rx-num-evt = <32>; 437 rx-num-evt = <32>; 438 status = "okay"; 438 status = "okay"; 439 }; 439 }; 440 440 441 &sdhci1 { 441 &sdhci1 { 442 vmmc-supply = <&vcc_3v3_mmc>; 442 vmmc-supply = <&vcc_3v3_mmc>; 443 vqmmc-supply = <&vddshv5_sdio>; 443 vqmmc-supply = <&vddshv5_sdio>; 444 pinctrl-names = "default"; 444 pinctrl-names = "default"; 445 pinctrl-0 = <&main_mmc1_pins_default>; 445 pinctrl-0 = <&main_mmc1_pins_default>; 446 disable-wp; 446 disable-wp; 447 no-1-8-v; 447 no-1-8-v; 448 status = "okay"; 448 status = "okay"; 449 }; 449 }; 450 450 451 &usbss0 { 451 &usbss0 { 452 ti,vbus-divider; 452 ti,vbus-divider; 453 status = "okay"; 453 status = "okay"; 454 }; 454 }; 455 455 456 &usbss1 { 456 &usbss1 { 457 ti,vbus-divider; 457 ti,vbus-divider; 458 status = "okay"; 458 status = "okay"; 459 }; 459 }; 460 460 461 &usb0 { 461 &usb0 { 462 usb-role-switch; 462 usb-role-switch; 463 463 464 port { 464 port { 465 typec_hs: endpoint { 465 typec_hs: endpoint { 466 remote-endpoint = <&us 466 remote-endpoint = <&usb_con_hs>; 467 }; 467 }; 468 }; 468 }; 469 }; 469 }; 470 470 471 &usb1 { 471 &usb1 { 472 dr_mode = "host"; 472 dr_mode = "host"; 473 pinctrl-names = "default"; 473 pinctrl-names = "default"; 474 pinctrl-0 = <&main_usb1_pins_default>; 474 pinctrl-0 = <&main_usb1_pins_default>; 475 }; 475 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.