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 << 363 main_gpio1_ioexp_intr_pins_default: ma << 364 pinctrl-single,pins = < << 365 AM62AX_IOPAD(0x01d4, P << 366 >; << 367 }; << 368 << 369 vddshv_sdio_pins_default: vddshv-sdio- << 370 pinctrl-single,pins = < << 371 AM62AX_IOPAD(0x07c, PI << 372 >; << 373 }; << 374 }; 277 }; 375 278 376 &mcu_pmx0 { 279 &mcu_pmx0 { 377 status = "okay"; 280 status = "okay"; 378 281 379 pmic_irq_pins_default: pmic-irq-defaul 282 pmic_irq_pins_default: pmic-irq-default-pins { 380 pinctrl-single,pins = < 283 pinctrl-single,pins = < 381 AM62AX_MCU_IOPAD(0x000 284 AM62AX_MCU_IOPAD(0x000, PIN_INPUT, 7) /* (E11) MCU_GPIO0_0 */ 382 >; 285 >; 383 }; 286 }; 384 }; 287 }; 385 288 386 &mcu_gpio0 { 289 &mcu_gpio0 { 387 status = "okay"; 290 status = "okay"; 388 }; 291 }; 389 292 390 &main_i2c0 { 293 &main_i2c0 { 391 status = "okay"; 294 status = "okay"; 392 pinctrl-names = "default"; 295 pinctrl-names = "default"; 393 pinctrl-0 = <&main_i2c0_pins_default>; 296 pinctrl-0 = <&main_i2c0_pins_default>; 394 clock-frequency = <400000>; 297 clock-frequency = <400000>; 395 298 396 typec_pd0: usb-power-controller@3f { 299 typec_pd0: usb-power-controller@3f { 397 compatible = "ti,tps6598x"; 300 compatible = "ti,tps6598x"; 398 reg = <0x3f>; 301 reg = <0x3f>; 399 302 400 connector { 303 connector { 401 compatible = "usb-c-co 304 compatible = "usb-c-connector"; 402 label = "USB-C"; 305 label = "USB-C"; 403 self-powered; 306 self-powered; 404 data-role = "dual"; 307 data-role = "dual"; 405 power-role = "sink"; 308 power-role = "sink"; 406 port { 309 port { 407 usb_con_hs: en 310 usb_con_hs: endpoint { 408 remote 311 remote-endpoint = <&usb0_hs_ep>; 409 }; 312 }; 410 }; 313 }; 411 }; 314 }; 412 }; 315 }; 413 316 414 tps659312: pmic@48 { 317 tps659312: pmic@48 { 415 compatible = "ti,tps6593-q1"; 318 compatible = "ti,tps6593-q1"; 416 reg = <0x48>; 319 reg = <0x48>; 417 ti,primary-pmic; 320 ti,primary-pmic; 418 system-power-controller; 321 system-power-controller; 419 322 420 gpio-controller; 323 gpio-controller; 421 #gpio-cells = <2>; 324 #gpio-cells = <2>; 422 325 423 pinctrl-names = "default"; 326 pinctrl-names = "default"; 424 pinctrl-0 = <&pmic_irq_pins_de 327 pinctrl-0 = <&pmic_irq_pins_default>; 425 interrupt-parent = <&mcu_gpio0 328 interrupt-parent = <&mcu_gpio0>; 426 interrupts = <0 IRQ_TYPE_EDGE_ 329 interrupts = <0 IRQ_TYPE_EDGE_FALLING>; 427 330 428 buck123-supply = <&vcc_3v3_sys 331 buck123-supply = <&vcc_3v3_sys>; 429 buck4-supply = <&vcc_3v3_sys>; 332 buck4-supply = <&vcc_3v3_sys>; 430 buck5-supply = <&vcc_3v3_sys>; 333 buck5-supply = <&vcc_3v3_sys>; 431 ldo1-supply = <&vcc_3v3_sys>; 334 ldo1-supply = <&vcc_3v3_sys>; 432 ldo2-supply = <&vcc_3v3_sys>; 335 ldo2-supply = <&vcc_3v3_sys>; 433 ldo3-supply = <&buck5>; 336 ldo3-supply = <&buck5>; 434 ldo4-supply = <&vcc_3v3_sys>; 337 ldo4-supply = <&vcc_3v3_sys>; 435 338 436 regulators { 339 regulators { 437 buck123: buck123 { 340 buck123: buck123 { 438 regulator-name 341 regulator-name = "vcc_core"; 439 regulator-min- 342 regulator-min-microvolt = <715000>; 440 regulator-max- 343 regulator-max-microvolt = <895000>; 441 regulator-boot 344 regulator-boot-on; 442 regulator-alwa 345 regulator-always-on; 443 }; 346 }; 444 347 445 buck4: buck4 { 348 buck4: buck4 { 446 regulator-name 349 regulator-name = "vcc_1v1"; 447 regulator-min- 350 regulator-min-microvolt = <1100000>; 448 regulator-max- 351 regulator-max-microvolt = <1100000>; 449 regulator-boot 352 regulator-boot-on; 450 regulator-alwa 353 regulator-always-on; 451 }; 354 }; 452 355 453 buck5: buck5 { 356 buck5: buck5 { 454 regulator-name 357 regulator-name = "vcc_1v8_sys"; 455 regulator-min- 358 regulator-min-microvolt = <1800000>; 456 regulator-max- 359 regulator-max-microvolt = <1800000>; 457 regulator-boot 360 regulator-boot-on; 458 regulator-alwa 361 regulator-always-on; 459 }; 362 }; 460 363 461 ldo1: ldo1 { 364 ldo1: ldo1 { 462 regulator-name 365 regulator-name = "vddshv5_sdio"; 463 regulator-min- 366 regulator-min-microvolt = <3300000>; 464 regulator-max- 367 regulator-max-microvolt = <3300000>; 465 regulator-boot 368 regulator-boot-on; 466 regulator-alwa 369 regulator-always-on; 467 }; 370 }; 468 371 469 ldo2: ldo2 { 372 ldo2: ldo2 { 470 regulator-name 373 regulator-name = "vpp_1v8"; 471 regulator-min- 374 regulator-min-microvolt = <1800000>; 472 regulator-max- 375 regulator-max-microvolt = <1800000>; 473 regulator-boot 376 regulator-boot-on; 474 regulator-alwa 377 regulator-always-on; 475 }; 378 }; 476 379 477 ldo3: ldo3 { 380 ldo3: ldo3 { 478 regulator-name 381 regulator-name = "vcc_0v85"; 479 regulator-min- 382 regulator-min-microvolt = <850000>; 480 regulator-max- 383 regulator-max-microvolt = <850000>; 481 regulator-boot 384 regulator-boot-on; 482 regulator-alwa 385 regulator-always-on; 483 }; 386 }; 484 387 485 ldo4: ldo4 { 388 ldo4: ldo4 { 486 regulator-name 389 regulator-name = "vdda_1v8"; 487 regulator-min- 390 regulator-min-microvolt = <1800000>; 488 regulator-max- 391 regulator-max-microvolt = <1800000>; 489 regulator-boot 392 regulator-boot-on; 490 regulator-alwa 393 regulator-always-on; 491 }; 394 }; 492 }; 395 }; 493 }; 396 }; 494 }; 397 }; 495 398 496 &main_i2c1 { 399 &main_i2c1 { 497 status = "okay"; 400 status = "okay"; 498 pinctrl-names = "default"; 401 pinctrl-names = "default"; 499 pinctrl-0 = <&main_i2c1_pins_default>; 402 pinctrl-0 = <&main_i2c1_pins_default>; 500 clock-frequency = <100000>; 403 clock-frequency = <100000>; 501 404 502 exp1: gpio@22 { 405 exp1: gpio@22 { 503 compatible = "ti,tca6424"; 406 compatible = "ti,tca6424"; 504 reg = <0x22>; 407 reg = <0x22>; 505 gpio-controller; 408 gpio-controller; 506 #gpio-cells = <2>; 409 #gpio-cells = <2>; 507 interrupt-parent = <&main_gpio << 508 interrupts = <23 IRQ_TYPE_EDGE << 509 interrupt-controller; << 510 #interrupt-cells = <2>; << 511 pinctrl-names = "default"; << 512 pinctrl-0 = <&main_gpio1_ioexp << 513 410 514 gpio-line-names = "GPIO_CPSW2_ 411 gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST", 515 "BT_EN_SOC" 412 "BT_EN_SOC", "MMC1_SD_EN", 516 "VPP_EN", " 413 "VPP_EN", "EXP_PS_3V3_En", 517 "EXP_PS_5V0 414 "EXP_PS_5V0_En", "EXP_HAT_DETECT", 518 "GPIO_AUD_R 415 "GPIO_AUD_RSTn", "GPIO_eMMC_RSTn", 519 "UART1_FET_ 416 "UART1_FET_BUF_EN", "BT_UART_WAKE_SOC", 520 "GPIO_HDMI_ 417 "GPIO_HDMI_RSTn", "CSI_GPIO0", 521 "CSI_GPIO1" 418 "CSI_GPIO1", "WLAN_ALERTn", 522 "HDMI_INTn" 419 "HDMI_INTn", "TEST_GPIO2", 523 "MCASP1_FET 420 "MCASP1_FET_EN", "MCASP1_BUF_BT_EN", 524 "MCASP1_FET 421 "MCASP1_FET_SEL", "UART1_FET_SEL", 525 "PD_I2C_IRQ 422 "PD_I2C_IRQ", "IO_EXP_TEST_LED"; 526 }; 423 }; 527 424 528 tlv320aic3106: audio-codec@1b { 425 tlv320aic3106: audio-codec@1b { 529 #sound-dai-cells = <0>; 426 #sound-dai-cells = <0>; 530 compatible = "ti,tlv320aic3106 427 compatible = "ti,tlv320aic3106"; 531 reg = <0x1b>; 428 reg = <0x1b>; 532 ai3x-micbias-vg = <1>; /* 2.0 429 ai3x-micbias-vg = <1>; /* 2.0V */ 533 430 534 /* Regulators */ 431 /* Regulators */ 535 AVDD-supply = <&vcc_3v3_sys>; 432 AVDD-supply = <&vcc_3v3_sys>; 536 IOVDD-supply = <&vcc_3v3_sys>; 433 IOVDD-supply = <&vcc_3v3_sys>; 537 DRVDD-supply = <&vcc_3v3_sys>; 434 DRVDD-supply = <&vcc_3v3_sys>; 538 DVDD-supply = <&buck5>; 435 DVDD-supply = <&buck5>; 539 }; 436 }; 540 << 541 exp2: gpio@23 { << 542 compatible = "ti,tca6424"; << 543 reg = <0x23>; << 544 gpio-controller; << 545 #gpio-cells = <2>; << 546 << 547 gpio-line-names = "", "", << 548 "", "", << 549 "", "", << 550 "", "", << 551 "WL_LT_EN", << 552 "", "", << 553 "", "", << 554 "", "", << 555 "SPI0_FET_SE << 556 "RGMII2_BRD_ << 557 "CSI_EN", "A << 558 "CSI_VLDO_SE << 559 }; << 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 }; << 591 << 592 &main_i2c2 { << 593 status = "okay"; << 594 pinctrl-names = "default"; << 595 pinctrl-0 = <&main_i2c2_pins_default>; << 596 clock-frequency = <400000>; << 597 }; << 598 << 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 }; 437 }; 607 438 608 &sdhci1 { 439 &sdhci1 { 609 /* SD/MMC */ 440 /* SD/MMC */ 610 status = "okay"; 441 status = "okay"; 611 vmmc-supply = <&vdd_mmc1>; 442 vmmc-supply = <&vdd_mmc1>; 612 vqmmc-supply = <&vddshv_sdio>; << 613 pinctrl-names = "default"; 443 pinctrl-names = "default"; 614 pinctrl-0 = <&main_mmc1_pins_default>; 444 pinctrl-0 = <&main_mmc1_pins_default>; >> 445 ti,driver-strength-ohm = <50>; 615 disable-wp; 446 disable-wp; 616 }; 447 }; 617 448 618 &main_gpio0 { 449 &main_gpio0 { 619 status = "okay"; 450 status = "okay"; 620 }; 451 }; 621 452 622 &main_gpio1 { 453 &main_gpio1 { 623 status = "okay"; 454 status = "okay"; 624 }; 455 }; 625 456 626 &main_gpio_intr { 457 &main_gpio_intr { 627 status = "okay"; 458 status = "okay"; 628 }; 459 }; 629 460 630 &main_uart0 { 461 &main_uart0 { 631 status = "okay"; 462 status = "okay"; 632 pinctrl-names = "default"; 463 pinctrl-names = "default"; 633 pinctrl-0 = <&main_uart0_pins_default> 464 pinctrl-0 = <&main_uart0_pins_default>; 634 }; 465 }; 635 466 636 /* Main UART1 is used for TIFS firmware logs * 467 /* Main UART1 is used for TIFS firmware logs */ 637 &main_uart1 { 468 &main_uart1 { 638 pinctrl-names = "default"; 469 pinctrl-names = "default"; 639 pinctrl-0 = <&main_uart1_pins_default> 470 pinctrl-0 = <&main_uart1_pins_default>; 640 status = "reserved"; 471 status = "reserved"; 641 }; 472 }; 642 473 643 &usbss0 { 474 &usbss0 { 644 status = "okay"; 475 status = "okay"; 645 ti,vbus-divider; 476 ti,vbus-divider; 646 }; 477 }; 647 478 648 &usb0 { 479 &usb0 { 649 usb-role-switch; 480 usb-role-switch; 650 481 651 port { 482 port { 652 usb0_hs_ep: endpoint { 483 usb0_hs_ep: endpoint { 653 remote-endpoint = <&us 484 remote-endpoint = <&usb_con_hs>; 654 }; 485 }; 655 }; 486 }; 656 }; 487 }; 657 488 658 &usbss1 { 489 &usbss1 { 659 status = "okay"; 490 status = "okay"; 660 }; 491 }; 661 492 662 &usb1 { 493 &usb1 { 663 dr_mode = "host"; 494 dr_mode = "host"; 664 pinctrl-names = "default"; 495 pinctrl-names = "default"; 665 pinctrl-0 = <&main_usb1_pins_default>; 496 pinctrl-0 = <&main_usb1_pins_default>; 666 }; 497 }; 667 498 668 &cpsw3g { 499 &cpsw3g { 669 status = "okay"; 500 status = "okay"; 670 pinctrl-names = "default"; 501 pinctrl-names = "default"; 671 pinctrl-0 = <&main_rgmii1_pins_default 502 pinctrl-0 = <&main_rgmii1_pins_default>; 672 }; 503 }; 673 504 674 &cpsw_port1 { 505 &cpsw_port1 { 675 status = "okay"; 506 status = "okay"; 676 phy-mode = "rgmii-rxid"; 507 phy-mode = "rgmii-rxid"; 677 phy-handle = <&cpsw3g_phy0>; 508 phy-handle = <&cpsw3g_phy0>; 678 }; 509 }; 679 510 680 &cpsw_port2 { 511 &cpsw_port2 { 681 status = "disabled"; 512 status = "disabled"; 682 }; 513 }; 683 514 684 &cpsw3g_mdio { 515 &cpsw3g_mdio { 685 status = "okay"; 516 status = "okay"; 686 pinctrl-names = "default"; 517 pinctrl-names = "default"; 687 pinctrl-0 = <&main_mdio1_pins_default> 518 pinctrl-0 = <&main_mdio1_pins_default>; 688 519 689 cpsw3g_phy0: ethernet-phy@0 { 520 cpsw3g_phy0: ethernet-phy@0 { 690 reg = <0>; 521 reg = <0>; 691 ti,rx-internal-delay = <DP8386 522 ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; 692 ti,fifo-depth = <DP83867_PHYCR 523 ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 693 ti,min-output-impedance; 524 ti,min-output-impedance; 694 }; 525 }; 695 }; 526 }; 696 527 697 &mcasp1 { 528 &mcasp1 { 698 status = "okay"; 529 status = "okay"; 699 #sound-dai-cells = <0>; 530 #sound-dai-cells = <0>; 700 531 701 pinctrl-names = "default"; 532 pinctrl-names = "default"; 702 pinctrl-0 = <&main_mcasp1_pins_default 533 pinctrl-0 = <&main_mcasp1_pins_default>; 703 534 704 op-mode = <0>; /* MCASP_IIS_M 535 op-mode = <0>; /* MCASP_IIS_MODE */ 705 tdm-slots = <2>; 536 tdm-slots = <2>; 706 537 707 serial-dir = < /* 0: INACTIVE, 1: TX, 538 serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ 708 1 0 2 0 539 1 0 2 0 709 0 0 0 0 540 0 0 0 0 710 0 0 0 0 541 0 0 0 0 711 0 0 0 0 542 0 0 0 0 712 >; 543 >; 713 }; !! 544 tx-num-evt = <32>; 714 !! 545 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 }; 546 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.