1 // SPDX-License-Identifier: GPL-2.0-only OR MI !! 1 // SPDX-License-Identifier: GPL-2.0 2 /* 2 /* 3 * AM62A SK: https://www.ti.com/lit/zip/sprr45 3 * AM62A SK: https://www.ti.com/lit/zip/sprr459 4 * 4 * 5 * Copyright (C) 2022-2024 Texas Instruments I !! 5 * Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/ 6 */ 6 */ 7 7 8 /dts-v1/; 8 /dts-v1/; 9 9 10 #include <dt-bindings/leds/common.h> 10 #include <dt-bindings/leds/common.h> 11 #include <dt-bindings/gpio/gpio.h> 11 #include <dt-bindings/gpio/gpio.h> 12 #include <dt-bindings/net/ti-dp83867.h> 12 #include <dt-bindings/net/ti-dp83867.h> 13 #include "k3-am62a7.dtsi" 13 #include "k3-am62a7.dtsi" 14 14 15 / { 15 / { 16 compatible = "ti,am62a7-sk", "ti,am62a 16 compatible = "ti,am62a7-sk", "ti,am62a7"; 17 model = "Texas Instruments AM62A7 SK"; 17 model = "Texas Instruments AM62A7 SK"; 18 18 19 aliases { 19 aliases { 20 serial0 = &wkup_uart0; 20 serial0 = &wkup_uart0; 21 serial2 = &main_uart0; 21 serial2 = &main_uart0; 22 serial3 = &main_uart1; 22 serial3 = &main_uart1; 23 mmc0 = &sdhci0; << 24 mmc1 = &sdhci1; 23 mmc1 = &sdhci1; 25 }; 24 }; 26 25 27 chosen { 26 chosen { 28 stdout-path = "serial2:115200n 27 stdout-path = "serial2:115200n8"; 29 }; 28 }; 30 29 31 memory@80000000 { 30 memory@80000000 { 32 device_type = "memory"; 31 device_type = "memory"; 33 /* 4G RAM */ 32 /* 4G RAM */ 34 reg = <0x00000000 0x80000000 0 33 reg = <0x00000000 0x80000000 0x00000000 0x80000000>, 35 <0x00000008 0x80000000 0 34 <0x00000008 0x80000000 0x00000000 0x80000000>; 36 }; 35 }; 37 36 38 reserved-memory { 37 reserved-memory { 39 #address-cells = <2>; 38 #address-cells = <2>; 40 #size-cells = <2>; 39 #size-cells = <2>; 41 ranges; 40 ranges; 42 41 43 /* global cma region */ << 44 linux,cma { << 45 compatible = "shared-d << 46 reusable; << 47 size = <0x00 0x2400000 << 48 alloc-ranges = <0x00 0 << 49 linux,cma-default; << 50 }; << 51 << 52 secure_tfa_ddr: tfa@9e780000 { 42 secure_tfa_ddr: tfa@9e780000 { 53 reg = <0x00 0x9e780000 43 reg = <0x00 0x9e780000 0x00 0x80000>; 54 alignment = <0x1000>; 44 alignment = <0x1000>; 55 no-map; 45 no-map; 56 }; 46 }; 57 47 58 secure_ddr: optee@9e800000 { 48 secure_ddr: optee@9e800000 { 59 reg = <0x00 0x9e800000 49 reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */ 60 alignment = <0x1000>; 50 alignment = <0x1000>; 61 no-map; 51 no-map; 62 }; 52 }; 63 53 64 wkup_r5fss0_core0_memory_regio 54 wkup_r5fss0_core0_memory_region: r5f-dma-memory@9c900000 { 65 compatible = "shared-d 55 compatible = "shared-dma-pool"; 66 reg = <0x00 0x9c900000 56 reg = <0x00 0x9c900000 0x00 0x01e00000>; 67 no-map; 57 no-map; 68 }; 58 }; 69 }; 59 }; 70 60 71 vmain_pd: regulator-0 { 61 vmain_pd: regulator-0 { 72 /* TPS25750 PD CONTROLLER OUTP 62 /* TPS25750 PD CONTROLLER OUTPUT */ 73 compatible = "regulator-fixed" 63 compatible = "regulator-fixed"; 74 regulator-name = "vmain_pd"; 64 regulator-name = "vmain_pd"; 75 regulator-min-microvolt = <500 65 regulator-min-microvolt = <5000000>; 76 regulator-max-microvolt = <500 66 regulator-max-microvolt = <5000000>; 77 regulator-always-on; 67 regulator-always-on; 78 regulator-boot-on; 68 regulator-boot-on; 79 }; 69 }; 80 70 81 vcc_5v0: regulator-1 { 71 vcc_5v0: regulator-1 { 82 /* Output of TPS63070 */ 72 /* Output of TPS63070 */ 83 compatible = "regulator-fixed" 73 compatible = "regulator-fixed"; 84 regulator-name = "vcc_5v0"; 74 regulator-name = "vcc_5v0"; 85 regulator-min-microvolt = <500 75 regulator-min-microvolt = <5000000>; 86 regulator-max-microvolt = <500 76 regulator-max-microvolt = <5000000>; 87 vin-supply = <&vmain_pd>; 77 vin-supply = <&vmain_pd>; 88 regulator-always-on; 78 regulator-always-on; 89 regulator-boot-on; 79 regulator-boot-on; 90 }; 80 }; 91 81 92 vcc_3v3_main: regulator-2 { 82 vcc_3v3_main: regulator-2 { 93 /* output of LM5141-Q1 */ 83 /* output of LM5141-Q1 */ 94 compatible = "regulator-fixed" 84 compatible = "regulator-fixed"; 95 regulator-name = "vcc_3v3_main 85 regulator-name = "vcc_3v3_main"; 96 regulator-min-microvolt = <330 86 regulator-min-microvolt = <3300000>; 97 regulator-max-microvolt = <330 87 regulator-max-microvolt = <3300000>; 98 vin-supply = <&vmain_pd>; 88 vin-supply = <&vmain_pd>; 99 regulator-always-on; 89 regulator-always-on; 100 regulator-boot-on; 90 regulator-boot-on; 101 }; 91 }; 102 92 103 vdd_mmc1: regulator-3 { 93 vdd_mmc1: regulator-3 { 104 /* TPS22918DBVR */ 94 /* TPS22918DBVR */ 105 compatible = "regulator-fixed" 95 compatible = "regulator-fixed"; 106 regulator-name = "vdd_mmc1"; 96 regulator-name = "vdd_mmc1"; 107 regulator-min-microvolt = <330 97 regulator-min-microvolt = <3300000>; 108 regulator-max-microvolt = <330 98 regulator-max-microvolt = <3300000>; 109 regulator-boot-on; 99 regulator-boot-on; 110 enable-active-high; 100 enable-active-high; 111 gpio = <&exp1 3 GPIO_ACTIVE_HI 101 gpio = <&exp1 3 GPIO_ACTIVE_HIGH>; 112 }; 102 }; 113 103 114 vcc_3v3_sys: regulator-4 { 104 vcc_3v3_sys: regulator-4 { 115 /* output of TPS222965DSGT */ 105 /* output of TPS222965DSGT */ 116 compatible = "regulator-fixed" 106 compatible = "regulator-fixed"; 117 regulator-name = "vcc_3v3_sys" 107 regulator-name = "vcc_3v3_sys"; 118 regulator-min-microvolt = <330 108 regulator-min-microvolt = <3300000>; 119 regulator-max-microvolt = <330 109 regulator-max-microvolt = <3300000>; 120 vin-supply = <&vcc_3v3_main>; 110 vin-supply = <&vcc_3v3_main>; 121 regulator-always-on; 111 regulator-always-on; 122 regulator-boot-on; 112 regulator-boot-on; 123 }; 113 }; 124 114 125 vddshv_sdio: regulator-5 { << 126 compatible = "regulator-gpio"; << 127 regulator-name = "vddshv_sdio" << 128 pinctrl-names = "default"; << 129 pinctrl-0 = <&vddshv_sdio_pins << 130 regulator-min-microvolt = <180 << 131 regulator-max-microvolt = <330 << 132 regulator-boot-on; << 133 vin-supply = <&ldo1>; << 134 gpios = <&main_gpio0 31 GPIO_A << 135 states = <1800000 0x0>, << 136 <3300000 0x1>; << 137 }; << 138 << 139 leds { 115 leds { 140 compatible = "gpio-leds"; 116 compatible = "gpio-leds"; 141 pinctrl-names = "default"; 117 pinctrl-names = "default"; 142 pinctrl-0 = <&usr_led_pins_def 118 pinctrl-0 = <&usr_led_pins_default>; 143 119 144 led-0 { 120 led-0 { 145 label = "am62a-sk:gree 121 label = "am62a-sk:green:heartbeat"; 146 gpios = <&main_gpio1 4 122 gpios = <&main_gpio1 49 GPIO_ACTIVE_HIGH>; 147 linux,default-trigger 123 linux,default-trigger = "heartbeat"; 148 function = LED_FUNCTIO 124 function = LED_FUNCTION_HEARTBEAT; 149 default-state = "off"; 125 default-state = "off"; 150 }; 126 }; 151 }; 127 }; 152 128 153 tlv320_mclk: clk-0 { 129 tlv320_mclk: clk-0 { 154 #clock-cells = <0>; 130 #clock-cells = <0>; 155 compatible = "fixed-clock"; 131 compatible = "fixed-clock"; 156 clock-frequency = <12288000>; 132 clock-frequency = <12288000>; 157 }; 133 }; 158 134 159 hdmi0: connector-hdmi { << 160 compatible = "hdmi-connector"; << 161 label = "hdmi"; << 162 type = "a"; << 163 << 164 port { << 165 hdmi_connector_in: end << 166 remote-endpoin << 167 }; << 168 }; << 169 }; << 170 << 171 codec_audio: sound { 135 codec_audio: sound { 172 compatible = "simple-audio-car 136 compatible = "simple-audio-card"; 173 simple-audio-card,name = "AM62 137 simple-audio-card,name = "AM62Ax-SKEVM"; 174 simple-audio-card,widgets = 138 simple-audio-card,widgets = 175 "Headphone", "Headp 139 "Headphone", "Headphone Jack", 176 "Line", "Line 140 "Line", "Line In", 177 "Microphone", "Micro 141 "Microphone", "Microphone Jack"; 178 simple-audio-card,routing = 142 simple-audio-card,routing = 179 "Headphone Jack", 143 "Headphone Jack", "HPLOUT", 180 "Headphone Jack", 144 "Headphone Jack", "HPROUT", 181 "LINE1L", 145 "LINE1L", "Line In", 182 "LINE1R", 146 "LINE1R", "Line In", 183 "MIC3R", 147 "MIC3R", "Microphone Jack", 184 "Microphone Jack", 148 "Microphone Jack", "Mic Bias"; 185 simple-audio-card,format = "ds 149 simple-audio-card,format = "dsp_b"; 186 simple-audio-card,bitclock-mas 150 simple-audio-card,bitclock-master = <&sound_master>; 187 simple-audio-card,frame-master 151 simple-audio-card,frame-master = <&sound_master>; 188 simple-audio-card,bitclock-inv 152 simple-audio-card,bitclock-inversion; 189 153 190 simple-audio-card,cpu { 154 simple-audio-card,cpu { 191 sound-dai = <&mcasp1>; 155 sound-dai = <&mcasp1>; 192 }; 156 }; 193 157 194 sound_master: simple-audio-car 158 sound_master: simple-audio-card,codec { 195 sound-dai = <&tlv320ai 159 sound-dai = <&tlv320aic3106>; 196 clocks = <&tlv320_mclk 160 clocks = <&tlv320_mclk>; 197 }; 161 }; 198 }; 162 }; 199 }; 163 }; 200 164 201 &mcu_pmx0 { 165 &mcu_pmx0 { 202 wkup_uart0_pins_default: wkup-uart0-de 166 wkup_uart0_pins_default: wkup-uart0-default-pins { 203 pinctrl-single,pins = < 167 pinctrl-single,pins = < 204 AM62AX_MCU_IOPAD(0x002 168 AM62AX_MCU_IOPAD(0x0024, PIN_INPUT, 0) /* (C9) WKUP_UART0_RXD */ 205 AM62AX_MCU_IOPAD(0x002 169 AM62AX_MCU_IOPAD(0x0028, PIN_OUTPUT, 0) /* (E9) WKUP_UART0_TXD */ 206 AM62AX_MCU_IOPAD(0x002 170 AM62AX_MCU_IOPAD(0x002c, PIN_INPUT, 0) /* (C10) WKUP_UART0_CTSn */ 207 AM62AX_MCU_IOPAD(0x003 171 AM62AX_MCU_IOPAD(0x0030, PIN_OUTPUT, 0) /* (C8) WKUP_UART0_RTSn */ 208 >; 172 >; 209 }; 173 }; 210 }; 174 }; 211 175 212 /* WKUP UART0 is used for DM firmware logs */ 176 /* WKUP UART0 is used for DM firmware logs */ 213 &wkup_uart0 { 177 &wkup_uart0 { 214 pinctrl-names = "default"; 178 pinctrl-names = "default"; 215 pinctrl-0 = <&wkup_uart0_pins_default> 179 pinctrl-0 = <&wkup_uart0_pins_default>; 216 status = "reserved"; 180 status = "reserved"; 217 }; 181 }; 218 182 219 &main_pmx0 { 183 &main_pmx0 { 220 main_dss0_pins_default: main-dss0-defa << 221 pinctrl-single,pins = < << 222 AM62AX_IOPAD(0x100, PI << 223 AM62AX_IOPAD(0x0f8, PI << 224 AM62AX_IOPAD(0x104, PI << 225 AM62AX_IOPAD(0x0fc, PI << 226 AM62AX_IOPAD(0x0b8, PI << 227 AM62AX_IOPAD(0x0bc, PI << 228 AM62AX_IOPAD(0x0c0, PI << 229 AM62AX_IOPAD(0x0c4, PI << 230 AM62AX_IOPAD(0x0c8, PI << 231 AM62AX_IOPAD(0x0cc, PI << 232 AM62AX_IOPAD(0x0d0, PI << 233 AM62AX_IOPAD(0x0d4, PI << 234 AM62AX_IOPAD(0x0d8, PI << 235 AM62AX_IOPAD(0x0dc, PI << 236 AM62AX_IOPAD(0x0e0, PI << 237 AM62AX_IOPAD(0x0e4, PI << 238 AM62AX_IOPAD(0x0e8, PI << 239 AM62AX_IOPAD(0x0ec, PI << 240 AM62AX_IOPAD(0x0f0, PI << 241 AM62AX_IOPAD(0x0f4, PI << 242 AM62AX_IOPAD(0x05c, PI << 243 AM62AX_IOPAD(0x060, PI << 244 AM62AX_IOPAD(0x064, PI << 245 AM62AX_IOPAD(0x068, PI << 246 AM62AX_IOPAD(0x06c, PI << 247 AM62AX_IOPAD(0x070, PI << 248 AM62AX_IOPAD(0x074, PI << 249 AM62AX_IOPAD(0x078, PI << 250 >; << 251 }; << 252 << 253 main_uart0_pins_default: main-uart0-de 184 main_uart0_pins_default: main-uart0-default-pins { 254 pinctrl-single,pins = < 185 pinctrl-single,pins = < 255 AM62AX_IOPAD(0x1c8, PI 186 AM62AX_IOPAD(0x1c8, PIN_INPUT, 0) /* (E14) UART0_RXD */ 256 AM62AX_IOPAD(0x1cc, PI 187 AM62AX_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (D15) UART0_TXD */ 257 >; 188 >; 258 }; 189 }; 259 190 260 main_uart1_pins_default: main-uart1-de 191 main_uart1_pins_default: main-uart1-default-pins { 261 pinctrl-single,pins = < 192 pinctrl-single,pins = < 262 AM62AX_IOPAD(0x01e8, P 193 AM62AX_IOPAD(0x01e8, PIN_INPUT, 1) /* (C17) I2C1_SCL.UART1_RXD */ 263 AM62AX_IOPAD(0x01ec, P 194 AM62AX_IOPAD(0x01ec, PIN_OUTPUT, 1) /* (E17) I2C1_SDA.UART1_TXD */ 264 AM62AX_IOPAD(0x0194, P 195 AM62AX_IOPAD(0x0194, PIN_INPUT, 2) /* (C19) MCASP0_AXR3.UART1_CTSn */ 265 AM62AX_IOPAD(0x0198, P 196 AM62AX_IOPAD(0x0198, PIN_OUTPUT, 2) /* (B19) MCASP0_AXR2.UART1_RTSn */ 266 >; 197 >; 267 }; 198 }; 268 199 269 main_i2c0_pins_default: main-i2c0-defa 200 main_i2c0_pins_default: main-i2c0-default-pins { 270 pinctrl-single,pins = < 201 pinctrl-single,pins = < 271 AM62AX_IOPAD(0x1e0, PI 202 AM62AX_IOPAD(0x1e0, PIN_INPUT_PULLUP, 0) /* (B16) I2C0_SCL */ 272 AM62AX_IOPAD(0x1e4, PI 203 AM62AX_IOPAD(0x1e4, PIN_INPUT_PULLUP, 0) /* (A16) I2C0_SDA */ 273 >; 204 >; 274 }; 205 }; 275 206 276 main_i2c1_pins_default: main-i2c1-defa 207 main_i2c1_pins_default: main-i2c1-default-pins { 277 pinctrl-single,pins = < 208 pinctrl-single,pins = < 278 AM62AX_IOPAD(0x1e8, PI 209 AM62AX_IOPAD(0x1e8, PIN_INPUT_PULLUP, 0) /* (B17) I2C1_SCL */ 279 AM62AX_IOPAD(0x1ec, PI 210 AM62AX_IOPAD(0x1ec, PIN_INPUT_PULLUP, 0) /* (A17) I2C1_SDA */ 280 >; 211 >; 281 }; 212 }; 282 213 283 main_i2c2_pins_default: main-i2c2-defa 214 main_i2c2_pins_default: main-i2c2-default-pins { 284 pinctrl-single,pins = < 215 pinctrl-single,pins = < 285 AM62AX_IOPAD(0x0b0, PI 216 AM62AX_IOPAD(0x0b0, PIN_INPUT_PULLUP, 1) /* (K22) GPMC0_CSn2.I2C2_SCL */ 286 AM62AX_IOPAD(0x0b4, PI 217 AM62AX_IOPAD(0x0b4, PIN_INPUT_PULLUP, 1) /* (K24) GPMC0_CSn3.I2C2_SDA */ 287 >; 218 >; 288 }; 219 }; 289 220 290 main_mmc0_pins_default: main-mmc0-defa << 291 pinctrl-single,pins = < << 292 AM62AX_IOPAD(0x220, PI << 293 AM62AX_IOPAD(0x218, PI << 294 AM62AX_IOPAD(0x21c, PI << 295 AM62AX_IOPAD(0x214, PI << 296 AM62AX_IOPAD(0x210, PI << 297 AM62AX_IOPAD(0x20c, PI << 298 AM62AX_IOPAD(0x208, PI << 299 AM62AX_IOPAD(0x204, PI << 300 AM62AX_IOPAD(0x200, PI << 301 AM62AX_IOPAD(0x1fc, PI << 302 AM62AX_IOPAD(0x1f8, PI << 303 >; << 304 }; << 305 << 306 main_mmc1_pins_default: main-mmc1-defa 221 main_mmc1_pins_default: main-mmc1-default-pins { 307 pinctrl-single,pins = < 222 pinctrl-single,pins = < 308 AM62AX_IOPAD(0x23c, PI 223 AM62AX_IOPAD(0x23c, PIN_INPUT, 0) /* (A21) MMC1_CMD */ 309 AM62AX_IOPAD(0x234, PI 224 AM62AX_IOPAD(0x234, PIN_INPUT, 0) /* (B22) MMC1_CLK */ 310 AM62AX_IOPAD(0x230, PI 225 AM62AX_IOPAD(0x230, PIN_INPUT, 0) /* (A22) MMC1_DAT0 */ 311 AM62AX_IOPAD(0x22c, PI 226 AM62AX_IOPAD(0x22c, PIN_INPUT, 0) /* (B21) MMC1_DAT1 */ 312 AM62AX_IOPAD(0x228, PI 227 AM62AX_IOPAD(0x228, PIN_INPUT, 0) /* (C21) MMC1_DAT2 */ 313 AM62AX_IOPAD(0x224, PI 228 AM62AX_IOPAD(0x224, PIN_INPUT, 0) /* (D22) MMC1_DAT3 */ 314 AM62AX_IOPAD(0x240, PI 229 AM62AX_IOPAD(0x240, PIN_INPUT, 0) /* (D17) MMC1_SDCD */ 315 >; 230 >; 316 }; 231 }; 317 232 318 usr_led_pins_default: usr-led-default- 233 usr_led_pins_default: usr-led-default-pins { 319 pinctrl-single,pins = < 234 pinctrl-single,pins = < 320 AM62AX_IOPAD(0x244, PI 235 AM62AX_IOPAD(0x244, PIN_OUTPUT, 7) /* (D18) MMC1_SDWP.GPIO1_49 */ 321 >; 236 >; 322 }; 237 }; 323 238 324 main_usb1_pins_default: main-usb1-defa 239 main_usb1_pins_default: main-usb1-default-pins { 325 pinctrl-single,pins = < 240 pinctrl-single,pins = < 326 AM62AX_IOPAD(0x0258, P 241 AM62AX_IOPAD(0x0258, PIN_OUTPUT, 0) /* (F18) USB1_DRVVBUS */ 327 >; 242 >; 328 }; 243 }; 329 244 330 main_mdio1_pins_default: main-mdio1-de 245 main_mdio1_pins_default: main-mdio1-default-pins { 331 pinctrl-single,pins = < 246 pinctrl-single,pins = < 332 AM62AX_IOPAD(0x160, PI 247 AM62AX_IOPAD(0x160, PIN_OUTPUT, 0) /* (V12) MDIO0_MDC */ 333 AM62AX_IOPAD(0x15c, PI 248 AM62AX_IOPAD(0x15c, PIN_INPUT, 0) /* (V13) MDIO0_MDIO */ 334 >; 249 >; 335 }; 250 }; 336 251 337 main_rgmii1_pins_default: main-rgmii1- 252 main_rgmii1_pins_default: main-rgmii1-default-pins { 338 pinctrl-single,pins = < 253 pinctrl-single,pins = < 339 AM62AX_IOPAD(0x14c, PI 254 AM62AX_IOPAD(0x14c, PIN_INPUT, 0) /* (AB16) RGMII1_RD0 */ 340 AM62AX_IOPAD(0x150, PI 255 AM62AX_IOPAD(0x150, PIN_INPUT, 0) /* (V15) RGMII1_RD1 */ 341 AM62AX_IOPAD(0x154, PI 256 AM62AX_IOPAD(0x154, PIN_INPUT, 0) /* (W15) RGMII1_RD2 */ 342 AM62AX_IOPAD(0x158, PI 257 AM62AX_IOPAD(0x158, PIN_INPUT, 0) /* (V14) RGMII1_RD3 */ 343 AM62AX_IOPAD(0x148, PI 258 AM62AX_IOPAD(0x148, PIN_INPUT, 0) /* (AA16) RGMII1_RXC */ 344 AM62AX_IOPAD(0x144, PI 259 AM62AX_IOPAD(0x144, PIN_INPUT, 0) /* (AA15) RGMII1_RX_CTL */ 345 AM62AX_IOPAD(0x134, PI 260 AM62AX_IOPAD(0x134, PIN_INPUT, 0) /* (Y17) RGMII1_TD0 */ 346 AM62AX_IOPAD(0x138, PI 261 AM62AX_IOPAD(0x138, PIN_INPUT, 0) /* (V16) RGMII1_TD1 */ 347 AM62AX_IOPAD(0x13c, PI 262 AM62AX_IOPAD(0x13c, PIN_INPUT, 0) /* (Y16) RGMII1_TD2 */ 348 AM62AX_IOPAD(0x140, PI 263 AM62AX_IOPAD(0x140, PIN_INPUT, 0) /* (AA17) RGMII1_TD3 */ 349 AM62AX_IOPAD(0x130, PI 264 AM62AX_IOPAD(0x130, PIN_INPUT, 0) /* (AB17) RGMII1_TXC */ 350 AM62AX_IOPAD(0x12c, PI 265 AM62AX_IOPAD(0x12c, PIN_INPUT, 0) /* (W16) RGMII1_TX_CTL */ 351 >; 266 >; 352 }; 267 }; 353 268 354 main_mcasp1_pins_default: main-mcasp1- 269 main_mcasp1_pins_default: main-mcasp1-default-pins { 355 pinctrl-single,pins = < 270 pinctrl-single,pins = < 356 AM62AX_IOPAD(0x090, PI 271 AM62AX_IOPAD(0x090, PIN_INPUT, 2) /* (L19) GPMC0_BE0n_CLE.MCASP1_ACLKX */ 357 AM62AX_IOPAD(0x098, PI 272 AM62AX_IOPAD(0x098, PIN_INPUT, 2) /* (R18) GPMC0_WAIT0.MCASP1_AFSX */ 358 AM62AX_IOPAD(0x08c, PI 273 AM62AX_IOPAD(0x08c, PIN_OUTPUT, 2) /* (K19) GPMC0_WEn.MCASP1_AXR0 */ 359 AM62AX_IOPAD(0x084, PI 274 AM62AX_IOPAD(0x084, PIN_INPUT, 2) /* (L18) GPMC0_ADVn_ALE.MCASP1_AXR2 */ 360 >; 275 >; 361 }; 276 }; 362 277 363 main_gpio1_ioexp_intr_pins_default: ma 278 main_gpio1_ioexp_intr_pins_default: main-gpio1-ioexp-intr-default-pins { 364 pinctrl-single,pins = < 279 pinctrl-single,pins = < 365 AM62AX_IOPAD(0x01d4, P 280 AM62AX_IOPAD(0x01d4, PIN_INPUT, 7) /* (C15) UART0_RTSn.GPIO1_23 */ 366 >; 281 >; 367 }; 282 }; 368 << 369 vddshv_sdio_pins_default: vddshv-sdio- << 370 pinctrl-single,pins = < << 371 AM62AX_IOPAD(0x07c, PI << 372 >; << 373 }; << 374 }; 283 }; 375 284 376 &mcu_pmx0 { 285 &mcu_pmx0 { 377 status = "okay"; 286 status = "okay"; 378 287 379 pmic_irq_pins_default: pmic-irq-defaul 288 pmic_irq_pins_default: pmic-irq-default-pins { 380 pinctrl-single,pins = < 289 pinctrl-single,pins = < 381 AM62AX_MCU_IOPAD(0x000 290 AM62AX_MCU_IOPAD(0x000, PIN_INPUT, 7) /* (E11) MCU_GPIO0_0 */ 382 >; 291 >; 383 }; 292 }; 384 }; 293 }; 385 294 386 &mcu_gpio0 { 295 &mcu_gpio0 { 387 status = "okay"; 296 status = "okay"; 388 }; 297 }; 389 298 390 &main_i2c0 { 299 &main_i2c0 { 391 status = "okay"; 300 status = "okay"; 392 pinctrl-names = "default"; 301 pinctrl-names = "default"; 393 pinctrl-0 = <&main_i2c0_pins_default>; 302 pinctrl-0 = <&main_i2c0_pins_default>; 394 clock-frequency = <400000>; 303 clock-frequency = <400000>; 395 304 396 typec_pd0: usb-power-controller@3f { 305 typec_pd0: usb-power-controller@3f { 397 compatible = "ti,tps6598x"; 306 compatible = "ti,tps6598x"; 398 reg = <0x3f>; 307 reg = <0x3f>; 399 308 400 connector { 309 connector { 401 compatible = "usb-c-co 310 compatible = "usb-c-connector"; 402 label = "USB-C"; 311 label = "USB-C"; 403 self-powered; 312 self-powered; 404 data-role = "dual"; 313 data-role = "dual"; 405 power-role = "sink"; 314 power-role = "sink"; 406 port { 315 port { 407 usb_con_hs: en 316 usb_con_hs: endpoint { 408 remote 317 remote-endpoint = <&usb0_hs_ep>; 409 }; 318 }; 410 }; 319 }; 411 }; 320 }; 412 }; 321 }; 413 322 414 tps659312: pmic@48 { 323 tps659312: pmic@48 { 415 compatible = "ti,tps6593-q1"; 324 compatible = "ti,tps6593-q1"; 416 reg = <0x48>; 325 reg = <0x48>; 417 ti,primary-pmic; 326 ti,primary-pmic; 418 system-power-controller; 327 system-power-controller; 419 328 420 gpio-controller; 329 gpio-controller; 421 #gpio-cells = <2>; 330 #gpio-cells = <2>; 422 331 423 pinctrl-names = "default"; 332 pinctrl-names = "default"; 424 pinctrl-0 = <&pmic_irq_pins_de 333 pinctrl-0 = <&pmic_irq_pins_default>; 425 interrupt-parent = <&mcu_gpio0 334 interrupt-parent = <&mcu_gpio0>; 426 interrupts = <0 IRQ_TYPE_EDGE_ 335 interrupts = <0 IRQ_TYPE_EDGE_FALLING>; 427 336 428 buck123-supply = <&vcc_3v3_sys 337 buck123-supply = <&vcc_3v3_sys>; 429 buck4-supply = <&vcc_3v3_sys>; 338 buck4-supply = <&vcc_3v3_sys>; 430 buck5-supply = <&vcc_3v3_sys>; 339 buck5-supply = <&vcc_3v3_sys>; 431 ldo1-supply = <&vcc_3v3_sys>; 340 ldo1-supply = <&vcc_3v3_sys>; 432 ldo2-supply = <&vcc_3v3_sys>; 341 ldo2-supply = <&vcc_3v3_sys>; 433 ldo3-supply = <&buck5>; 342 ldo3-supply = <&buck5>; 434 ldo4-supply = <&vcc_3v3_sys>; 343 ldo4-supply = <&vcc_3v3_sys>; 435 344 436 regulators { 345 regulators { 437 buck123: buck123 { 346 buck123: buck123 { 438 regulator-name 347 regulator-name = "vcc_core"; 439 regulator-min- 348 regulator-min-microvolt = <715000>; 440 regulator-max- 349 regulator-max-microvolt = <895000>; 441 regulator-boot 350 regulator-boot-on; 442 regulator-alwa 351 regulator-always-on; 443 }; 352 }; 444 353 445 buck4: buck4 { 354 buck4: buck4 { 446 regulator-name 355 regulator-name = "vcc_1v1"; 447 regulator-min- 356 regulator-min-microvolt = <1100000>; 448 regulator-max- 357 regulator-max-microvolt = <1100000>; 449 regulator-boot 358 regulator-boot-on; 450 regulator-alwa 359 regulator-always-on; 451 }; 360 }; 452 361 453 buck5: buck5 { 362 buck5: buck5 { 454 regulator-name 363 regulator-name = "vcc_1v8_sys"; 455 regulator-min- 364 regulator-min-microvolt = <1800000>; 456 regulator-max- 365 regulator-max-microvolt = <1800000>; 457 regulator-boot 366 regulator-boot-on; 458 regulator-alwa 367 regulator-always-on; 459 }; 368 }; 460 369 461 ldo1: ldo1 { 370 ldo1: ldo1 { 462 regulator-name 371 regulator-name = "vddshv5_sdio"; 463 regulator-min- 372 regulator-min-microvolt = <3300000>; 464 regulator-max- 373 regulator-max-microvolt = <3300000>; 465 regulator-boot 374 regulator-boot-on; 466 regulator-alwa 375 regulator-always-on; 467 }; 376 }; 468 377 469 ldo2: ldo2 { 378 ldo2: ldo2 { 470 regulator-name 379 regulator-name = "vpp_1v8"; 471 regulator-min- 380 regulator-min-microvolt = <1800000>; 472 regulator-max- 381 regulator-max-microvolt = <1800000>; 473 regulator-boot 382 regulator-boot-on; 474 regulator-alwa 383 regulator-always-on; 475 }; 384 }; 476 385 477 ldo3: ldo3 { 386 ldo3: ldo3 { 478 regulator-name 387 regulator-name = "vcc_0v85"; 479 regulator-min- 388 regulator-min-microvolt = <850000>; 480 regulator-max- 389 regulator-max-microvolt = <850000>; 481 regulator-boot 390 regulator-boot-on; 482 regulator-alwa 391 regulator-always-on; 483 }; 392 }; 484 393 485 ldo4: ldo4 { 394 ldo4: ldo4 { 486 regulator-name 395 regulator-name = "vdda_1v8"; 487 regulator-min- 396 regulator-min-microvolt = <1800000>; 488 regulator-max- 397 regulator-max-microvolt = <1800000>; 489 regulator-boot 398 regulator-boot-on; 490 regulator-alwa 399 regulator-always-on; 491 }; 400 }; 492 }; 401 }; 493 }; 402 }; 494 }; 403 }; 495 404 496 &main_i2c1 { 405 &main_i2c1 { 497 status = "okay"; 406 status = "okay"; 498 pinctrl-names = "default"; 407 pinctrl-names = "default"; 499 pinctrl-0 = <&main_i2c1_pins_default>; 408 pinctrl-0 = <&main_i2c1_pins_default>; 500 clock-frequency = <100000>; 409 clock-frequency = <100000>; 501 410 502 exp1: gpio@22 { 411 exp1: gpio@22 { 503 compatible = "ti,tca6424"; 412 compatible = "ti,tca6424"; 504 reg = <0x22>; 413 reg = <0x22>; 505 gpio-controller; 414 gpio-controller; 506 #gpio-cells = <2>; 415 #gpio-cells = <2>; 507 interrupt-parent = <&main_gpio 416 interrupt-parent = <&main_gpio1>; 508 interrupts = <23 IRQ_TYPE_EDGE 417 interrupts = <23 IRQ_TYPE_EDGE_FALLING>; 509 interrupt-controller; 418 interrupt-controller; 510 #interrupt-cells = <2>; 419 #interrupt-cells = <2>; 511 pinctrl-names = "default"; 420 pinctrl-names = "default"; 512 pinctrl-0 = <&main_gpio1_ioexp 421 pinctrl-0 = <&main_gpio1_ioexp_intr_pins_default>; 513 422 514 gpio-line-names = "GPIO_CPSW2_ 423 gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST", 515 "BT_EN_SOC" 424 "BT_EN_SOC", "MMC1_SD_EN", 516 "VPP_EN", " 425 "VPP_EN", "EXP_PS_3V3_En", 517 "EXP_PS_5V0 426 "EXP_PS_5V0_En", "EXP_HAT_DETECT", 518 "GPIO_AUD_R 427 "GPIO_AUD_RSTn", "GPIO_eMMC_RSTn", 519 "UART1_FET_ 428 "UART1_FET_BUF_EN", "BT_UART_WAKE_SOC", 520 "GPIO_HDMI_ 429 "GPIO_HDMI_RSTn", "CSI_GPIO0", 521 "CSI_GPIO1" 430 "CSI_GPIO1", "WLAN_ALERTn", 522 "HDMI_INTn" 431 "HDMI_INTn", "TEST_GPIO2", 523 "MCASP1_FET 432 "MCASP1_FET_EN", "MCASP1_BUF_BT_EN", 524 "MCASP1_FET 433 "MCASP1_FET_SEL", "UART1_FET_SEL", 525 "PD_I2C_IRQ 434 "PD_I2C_IRQ", "IO_EXP_TEST_LED"; 526 }; 435 }; 527 436 528 tlv320aic3106: audio-codec@1b { 437 tlv320aic3106: audio-codec@1b { 529 #sound-dai-cells = <0>; 438 #sound-dai-cells = <0>; 530 compatible = "ti,tlv320aic3106 439 compatible = "ti,tlv320aic3106"; 531 reg = <0x1b>; 440 reg = <0x1b>; 532 ai3x-micbias-vg = <1>; /* 2.0 441 ai3x-micbias-vg = <1>; /* 2.0V */ 533 442 534 /* Regulators */ 443 /* Regulators */ 535 AVDD-supply = <&vcc_3v3_sys>; 444 AVDD-supply = <&vcc_3v3_sys>; 536 IOVDD-supply = <&vcc_3v3_sys>; 445 IOVDD-supply = <&vcc_3v3_sys>; 537 DRVDD-supply = <&vcc_3v3_sys>; 446 DRVDD-supply = <&vcc_3v3_sys>; 538 DVDD-supply = <&buck5>; 447 DVDD-supply = <&buck5>; 539 }; 448 }; 540 449 541 exp2: gpio@23 { 450 exp2: gpio@23 { 542 compatible = "ti,tca6424"; 451 compatible = "ti,tca6424"; 543 reg = <0x23>; 452 reg = <0x23>; 544 gpio-controller; 453 gpio-controller; 545 #gpio-cells = <2>; 454 #gpio-cells = <2>; 546 455 547 gpio-line-names = "", "", 456 gpio-line-names = "", "", 548 "", "", 457 "", "", 549 "", "", 458 "", "", 550 "", "", 459 "", "", 551 "WL_LT_EN", 460 "WL_LT_EN", "CSI_RSTz", 552 "", "", 461 "", "", 553 "", "", 462 "", "", 554 "", "", 463 "", "", 555 "SPI0_FET_SE 464 "SPI0_FET_SEL", "SPI0_FET_OE", 556 "RGMII2_BRD_ 465 "RGMII2_BRD_CONN_DET", "CSI_SEL2", 557 "CSI_EN", "A 466 "CSI_EN", "AUTO_100M_1000M_CONFIG", 558 "CSI_VLDO_SE 467 "CSI_VLDO_SEL", "SoC_WLAN_SDIO_RST"; 559 }; 468 }; 560 << 561 sii9022: bridge-hdmi@3b { << 562 compatible = "sil,sii9022"; << 563 reg = <0x3b>; << 564 interrupt-parent = <&exp1>; << 565 interrupts = <16 IRQ_TYPE_EDGE << 566 #sound-dai-cells = <0>; << 567 sil,i2s-data-lanes = < 0 >; << 568 << 569 ports { << 570 #address-cells = <1>; << 571 #size-cells = <0>; << 572 << 573 port@0 { << 574 reg = <0>; << 575 << 576 sii9022_in: en << 577 remote << 578 }; << 579 }; << 580 << 581 port@1 { << 582 reg = <1>; << 583 << 584 sii9022_out: e << 585 remote << 586 }; << 587 }; << 588 }; << 589 }; << 590 }; 469 }; 591 470 592 &main_i2c2 { 471 &main_i2c2 { 593 status = "okay"; 472 status = "okay"; 594 pinctrl-names = "default"; 473 pinctrl-names = "default"; 595 pinctrl-0 = <&main_i2c2_pins_default>; 474 pinctrl-0 = <&main_i2c2_pins_default>; 596 clock-frequency = <400000>; 475 clock-frequency = <400000>; 597 }; 476 }; 598 477 599 &sdhci0 { << 600 /* eMMC */ << 601 status = "okay"; << 602 non-removable; << 603 pinctrl-names = "default"; << 604 pinctrl-0 = <&main_mmc0_pins_default>; << 605 disable-wp; << 606 }; << 607 << 608 &sdhci1 { 478 &sdhci1 { 609 /* SD/MMC */ 479 /* SD/MMC */ 610 status = "okay"; 480 status = "okay"; 611 vmmc-supply = <&vdd_mmc1>; 481 vmmc-supply = <&vdd_mmc1>; 612 vqmmc-supply = <&vddshv_sdio>; << 613 pinctrl-names = "default"; 482 pinctrl-names = "default"; 614 pinctrl-0 = <&main_mmc1_pins_default>; 483 pinctrl-0 = <&main_mmc1_pins_default>; >> 484 ti,driver-strength-ohm = <50>; 615 disable-wp; 485 disable-wp; 616 }; 486 }; 617 487 618 &main_gpio0 { 488 &main_gpio0 { 619 status = "okay"; 489 status = "okay"; 620 }; 490 }; 621 491 622 &main_gpio1 { 492 &main_gpio1 { 623 status = "okay"; 493 status = "okay"; 624 }; 494 }; 625 495 626 &main_gpio_intr { 496 &main_gpio_intr { 627 status = "okay"; 497 status = "okay"; 628 }; 498 }; 629 499 630 &main_uart0 { 500 &main_uart0 { 631 status = "okay"; 501 status = "okay"; 632 pinctrl-names = "default"; 502 pinctrl-names = "default"; 633 pinctrl-0 = <&main_uart0_pins_default> 503 pinctrl-0 = <&main_uart0_pins_default>; 634 }; 504 }; 635 505 636 /* Main UART1 is used for TIFS firmware logs * 506 /* Main UART1 is used for TIFS firmware logs */ 637 &main_uart1 { 507 &main_uart1 { 638 pinctrl-names = "default"; 508 pinctrl-names = "default"; 639 pinctrl-0 = <&main_uart1_pins_default> 509 pinctrl-0 = <&main_uart1_pins_default>; 640 status = "reserved"; 510 status = "reserved"; 641 }; 511 }; 642 512 643 &usbss0 { 513 &usbss0 { 644 status = "okay"; 514 status = "okay"; 645 ti,vbus-divider; 515 ti,vbus-divider; 646 }; 516 }; 647 517 648 &usb0 { 518 &usb0 { 649 usb-role-switch; 519 usb-role-switch; 650 520 651 port { 521 port { 652 usb0_hs_ep: endpoint { 522 usb0_hs_ep: endpoint { 653 remote-endpoint = <&us 523 remote-endpoint = <&usb_con_hs>; 654 }; 524 }; 655 }; 525 }; 656 }; 526 }; 657 527 658 &usbss1 { 528 &usbss1 { 659 status = "okay"; 529 status = "okay"; 660 }; 530 }; 661 531 662 &usb1 { 532 &usb1 { 663 dr_mode = "host"; 533 dr_mode = "host"; 664 pinctrl-names = "default"; 534 pinctrl-names = "default"; 665 pinctrl-0 = <&main_usb1_pins_default>; 535 pinctrl-0 = <&main_usb1_pins_default>; 666 }; 536 }; 667 537 668 &cpsw3g { 538 &cpsw3g { 669 status = "okay"; 539 status = "okay"; 670 pinctrl-names = "default"; 540 pinctrl-names = "default"; 671 pinctrl-0 = <&main_rgmii1_pins_default 541 pinctrl-0 = <&main_rgmii1_pins_default>; 672 }; 542 }; 673 543 674 &cpsw_port1 { 544 &cpsw_port1 { 675 status = "okay"; 545 status = "okay"; 676 phy-mode = "rgmii-rxid"; 546 phy-mode = "rgmii-rxid"; 677 phy-handle = <&cpsw3g_phy0>; 547 phy-handle = <&cpsw3g_phy0>; 678 }; 548 }; 679 549 680 &cpsw_port2 { 550 &cpsw_port2 { 681 status = "disabled"; 551 status = "disabled"; 682 }; 552 }; 683 553 684 &cpsw3g_mdio { 554 &cpsw3g_mdio { 685 status = "okay"; 555 status = "okay"; 686 pinctrl-names = "default"; 556 pinctrl-names = "default"; 687 pinctrl-0 = <&main_mdio1_pins_default> 557 pinctrl-0 = <&main_mdio1_pins_default>; 688 558 689 cpsw3g_phy0: ethernet-phy@0 { 559 cpsw3g_phy0: ethernet-phy@0 { 690 reg = <0>; 560 reg = <0>; 691 ti,rx-internal-delay = <DP8386 561 ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; 692 ti,fifo-depth = <DP83867_PHYCR 562 ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 693 ti,min-output-impedance; 563 ti,min-output-impedance; 694 }; 564 }; 695 }; 565 }; 696 566 697 &mcasp1 { 567 &mcasp1 { 698 status = "okay"; 568 status = "okay"; 699 #sound-dai-cells = <0>; 569 #sound-dai-cells = <0>; 700 570 701 pinctrl-names = "default"; 571 pinctrl-names = "default"; 702 pinctrl-0 = <&main_mcasp1_pins_default 572 pinctrl-0 = <&main_mcasp1_pins_default>; 703 573 704 op-mode = <0>; /* MCASP_IIS_M 574 op-mode = <0>; /* MCASP_IIS_MODE */ 705 tdm-slots = <2>; 575 tdm-slots = <2>; 706 576 707 serial-dir = < /* 0: INACTIVE, 1: TX, 577 serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ 708 1 0 2 0 578 1 0 2 0 709 0 0 0 0 579 0 0 0 0 710 0 0 0 0 580 0 0 0 0 711 0 0 0 0 581 0 0 0 0 712 >; 582 >; 713 }; !! 583 tx-num-evt = <32>; 714 !! 584 rx-num-evt = <32>; 715 &dss { << 716 status = "okay"; << 717 pinctrl-names = "default"; << 718 pinctrl-0 = <&main_dss0_pins_default>; << 719 }; << 720 << 721 &dss_ports { << 722 /* VP2: DPI Output */ << 723 port@1 { << 724 reg = <1>; << 725 << 726 dpi1_out: endpoint { << 727 remote-endpoint = <&si << 728 }; << 729 }; << 730 }; 585 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.