Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'ti-k3-dt-for-v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux into arm/dt

TI K3 device tree updates for v5.19

New Features:
J721e:
* Enable DSS, DP, HDMI on J721e EVM and SK
AM62:
* MCAN, MCU GPIO, ECAP APWM, DMA, Etherent and several peripheral on AM62 SK EVM
AM64:
* Enable Wireless LAN support

Fixes:
Drop incorrect MCU UART clock rates

* tag 'ti-k3-dt-for-v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux:
arm64: dts: ti: k3-j721e-sk: Enable HDMI
arm64: dts: ti: k3-j721e-sk: Enable DisplayPort
arm64: dts: ti: k3-j721e-common-proc-board: add DP to j7 evm
arm64: dts: ti: k3-j721e-*: add DP & DP PHY
arm64: dts: ti: k3-am62: Add SA3UL ranges in cbass_main
arm64: dts: ti: k3-am62: Add support for MCAN
arm64: dts: ti: k3-am62-mcu: Enable MCU GPIO module
arm64: dts: ti: k3-am625-sk: Add ECAP APWM nodes
arm64: dts: ti: k3-am625-sk: Enable on board peripherals
arm64: dts: ti: k3-am62: Add more peripheral nodes
arm64: dts: ti: k3-am642-sk: Enable WLAN connected to SDHCI0
arm64: dts: ti: k3-am64-mcu: remove incorrect UART base clock rates

Link: https://lore.kernel.org/r/3dc2011b-eb6d-dcd5-3921-57f6a1cf6d8e@ti.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>

+988 -12
+307
arch/arm64/boot/dts/ti/k3-am62-main.dtsi
··· 6 6 */ 7 7 8 8 &cbass_main { 9 + oc_sram: sram@70000000 { 10 + compatible = "mmio-sram"; 11 + reg = <0x00 0x70000000 0x00 0x10000>; 12 + #address-cells = <1>; 13 + #size-cells = <1>; 14 + ranges = <0x0 0x00 0x70000000 0x10000>; 15 + }; 16 + 9 17 gic500: interrupt-controller@1800000 { 10 18 compatible = "arm,gic-v3"; 11 19 #address-cells = <2>; ··· 48 40 #address-cells = <1>; 49 41 #size-cells = <1>; 50 42 ranges = <0x0 0x00 0x00100000 0x20000>; 43 + 44 + phy_gmii_sel: phy@4044 { 45 + compatible = "ti,am654-phy-gmii-sel"; 46 + reg = <0x4044 0x8>; 47 + #phy-cells = <1>; 48 + }; 51 49 }; 52 50 53 51 dmss: bus@48000000 { ··· 74 60 <0x00 0x4a400000 0x00 0x80000>; 75 61 interrupt-names = "rx_012"; 76 62 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>; 63 + }; 64 + 65 + inta_main_dmss: interrupt-controller@48000000 { 66 + compatible = "ti,sci-inta"; 67 + reg = <0x00 0x48000000 0x00 0x100000>; 68 + #interrupt-cells = <0>; 69 + interrupt-controller; 70 + interrupt-parent = <&gic500>; 71 + msi-controller; 72 + ti,sci = <&dmsc>; 73 + ti,sci-dev-id = <28>; 74 + ti,interrupt-ranges = <4 68 36>; 75 + ti,unmapped-event-sources = <&main_bcdma>, <&main_pktdma>; 76 + }; 77 + 78 + main_bcdma: dma-controller@485c0100 { 79 + compatible = "ti,am64-dmss-bcdma"; 80 + reg = <0x00 0x485c0100 0x00 0x100>, 81 + <0x00 0x4c000000 0x00 0x20000>, 82 + <0x00 0x4a820000 0x00 0x20000>, 83 + <0x00 0x4aa40000 0x00 0x20000>, 84 + <0x00 0x4bc00000 0x00 0x100000>; 85 + reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt"; 86 + msi-parent = <&inta_main_dmss>; 87 + #dma-cells = <3>; 88 + 89 + ti,sci = <&dmsc>; 90 + ti,sci-dev-id = <26>; 91 + ti,sci-rm-range-bchan = <0x20>; /* BLOCK_COPY_CHAN */ 92 + ti,sci-rm-range-rchan = <0x21>; /* SPLIT_TR_RX_CHAN */ 93 + ti,sci-rm-range-tchan = <0x22>; /* SPLIT_TR_TX_CHAN */ 94 + }; 95 + 96 + main_pktdma: dma-controller@485c0000 { 97 + compatible = "ti,am64-dmss-pktdma"; 98 + reg = <0x00 0x485c0000 0x00 0x100>, 99 + <0x00 0x4a800000 0x00 0x20000>, 100 + <0x00 0x4aa00000 0x00 0x40000>, 101 + <0x00 0x4b800000 0x00 0x400000>; 102 + reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt"; 103 + msi-parent = <&inta_main_dmss>; 104 + #dma-cells = <2>; 105 + 106 + ti,sci = <&dmsc>; 107 + ti,sci-dev-id = <30>; 108 + ti,sci-rm-range-tchan = <0x23>, /* UNMAPPED_TX_CHAN */ 109 + <0x24>, /* CPSW_TX_CHAN */ 110 + <0x25>, /* SAUL_TX_0_CHAN */ 111 + <0x26>; /* SAUL_TX_1_CHAN */ 112 + ti,sci-rm-range-tflow = <0x10>, /* RING_UNMAPPED_TX_CHAN */ 113 + <0x11>, /* RING_CPSW_TX_CHAN */ 114 + <0x12>, /* RING_SAUL_TX_0_CHAN */ 115 + <0x13>; /* RING_SAUL_TX_1_CHAN */ 116 + ti,sci-rm-range-rchan = <0x29>, /* UNMAPPED_RX_CHAN */ 117 + <0x2b>, /* CPSW_RX_CHAN */ 118 + <0x2d>, /* SAUL_RX_0_CHAN */ 119 + <0x2f>, /* SAUL_RX_1_CHAN */ 120 + <0x31>, /* SAUL_RX_2_CHAN */ 121 + <0x33>; /* SAUL_RX_3_CHAN */ 122 + ti,sci-rm-range-rflow = <0x2a>, /* FLOW_UNMAPPED_RX_CHAN */ 123 + <0x2c>, /* FLOW_CPSW_RX_CHAN */ 124 + <0x2e>, /* FLOW_SAUL_RX_0/1_CHAN */ 125 + <0x32>; /* FLOW_SAUL_RX_2/3_CHAN */ 77 126 }; 78 127 }; 79 128 ··· 280 203 clock-names = "fck"; 281 204 }; 282 205 206 + main_spi0: spi@20100000 { 207 + compatible = "ti,am654-mcspi", "ti,omap4-mcspi"; 208 + reg = <0x00 0x20100000 0x00 0x400>; 209 + interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>; 210 + #address-cells = <1>; 211 + #size-cells = <0>; 212 + power-domains = <&k3_pds 141 TI_SCI_PD_EXCLUSIVE>; 213 + clocks = <&k3_clks 172 0>; 214 + }; 215 + 216 + main_spi1: spi@20110000 { 217 + compatible = "ti,am654-mcspi","ti,omap4-mcspi"; 218 + reg = <0x00 0x20110000 0x00 0x400>; 219 + interrupts = <GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH>; 220 + #address-cells = <1>; 221 + #size-cells = <0>; 222 + power-domains = <&k3_pds 142 TI_SCI_PD_EXCLUSIVE>; 223 + clocks = <&k3_clks 173 0>; 224 + }; 225 + 226 + main_spi2: spi@20120000 { 227 + compatible = "ti,am654-mcspi","ti,omap4-mcspi"; 228 + reg = <0x00 0x20120000 0x00 0x400>; 229 + interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>; 230 + #address-cells = <1>; 231 + #size-cells = <0>; 232 + power-domains = <&k3_pds 143 TI_SCI_PD_EXCLUSIVE>; 233 + clocks = <&k3_clks 174 0>; 234 + }; 235 + 283 236 main_gpio_intr: interrupt-controller@a00000 { 284 237 compatible = "ti,sci-intr"; 285 238 reg = <0x00 0x00a00000 0x00 0x800>; ··· 356 249 clock-names = "gpio"; 357 250 }; 358 251 252 + sdhci0: mmc@fa10000 { 253 + compatible = "ti,am62-sdhci"; 254 + reg = <0x00 0x0fa10000 0x00 0x1000>, <0x00 0x0fa18000 0x00 0x400>; 255 + interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>; 256 + power-domains = <&k3_pds 57 TI_SCI_PD_EXCLUSIVE>; 257 + clocks = <&k3_clks 57 5>, <&k3_clks 57 6>; 258 + clock-names = "clk_ahb", "clk_xin"; 259 + assigned-clocks = <&k3_clks 57 6>; 260 + assigned-clock-parents = <&k3_clks 57 8>; 261 + mmc-ddr-1_8v; 262 + mmc-hs200-1_8v; 263 + ti,trm-icp = <0x2>; 264 + bus-width = <8>; 265 + ti,clkbuf-sel = <0x7>; 266 + ti,otap-del-sel-legacy = <0x0>; 267 + ti,otap-del-sel-mmc-hs = <0x0>; 268 + ti,otap-del-sel-ddr52 = <0x9>; 269 + ti,otap-del-sel-hs200 = <0x6>; 270 + }; 271 + 272 + sdhci1: mmc@fa00000 { 273 + compatible = "ti,am62-sdhci"; 274 + reg = <0x00 0x0fa00000 0x00 0x1000>, <0x00 0x0fa08000 0x00 0x400>; 275 + interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 276 + power-domains = <&k3_pds 58 TI_SCI_PD_EXCLUSIVE>; 277 + clocks = <&k3_clks 58 5>, <&k3_clks 58 6>; 278 + clock-names = "clk_ahb", "clk_xin"; 279 + ti,trm-icp = <0x2>; 280 + ti,otap-del-sel-legacy = <0x0>; 281 + ti,otap-del-sel-sd-hs = <0x0>; 282 + ti,otap-del-sel-sdr12 = <0xf>; 283 + ti,otap-del-sel-sdr25 = <0xf>; 284 + ti,otap-del-sel-sdr50 = <0xc>; 285 + ti,otap-del-sel-sdr104 = <0x6>; 286 + ti,otap-del-sel-ddr50 = <0x9>; 287 + ti,itap-del-sel-legacy = <0x0>; 288 + ti,itap-del-sel-sd-hs = <0x0>; 289 + ti,itap-del-sel-sdr12 = <0x0>; 290 + ti,itap-del-sel-sdr25 = <0x0>; 291 + ti,clkbuf-sel = <0x7>; 292 + bus-width = <4>; 293 + }; 294 + 295 + sdhci2: mmc@fa20000 { 296 + compatible = "ti,am62-sdhci"; 297 + reg = <0x00 0x0fa20000 0x00 0x1000>, <0x00 0x0fa28000 0x00 0x400>; 298 + interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 299 + power-domains = <&k3_pds 184 TI_SCI_PD_EXCLUSIVE>; 300 + clocks = <&k3_clks 184 5>, <&k3_clks 184 6>; 301 + clock-names = "clk_ahb", "clk_xin"; 302 + ti,trm-icp = <0x2>; 303 + ti,otap-del-sel-legacy = <0x0>; 304 + ti,otap-del-sel-sd-hs = <0x0>; 305 + ti,otap-del-sel-sdr12 = <0xf>; 306 + ti,otap-del-sel-sdr25 = <0xf>; 307 + ti,otap-del-sel-sdr50 = <0xc>; 308 + ti,otap-del-sel-sdr104 = <0x6>; 309 + ti,otap-del-sel-ddr50 = <0x9>; 310 + ti,itap-del-sel-legacy = <0x0>; 311 + ti,itap-del-sel-sd-hs = <0x0>; 312 + ti,itap-del-sel-sdr12 = <0x0>; 313 + ti,itap-del-sel-sdr25 = <0x0>; 314 + ti,clkbuf-sel = <0x7>; 315 + }; 316 + 317 + fss: bus@fc00000 { 318 + compatible = "simple-bus"; 319 + reg = <0x00 0x0fc00000 0x00 0x70000>; 320 + #address-cells = <2>; 321 + #size-cells = <2>; 322 + ranges; 323 + 324 + ospi0: spi@fc40000 { 325 + compatible = "ti,am654-ospi", "cdns,qspi-nor"; 326 + reg = <0x00 0x0fc40000 0x00 0x100>, 327 + <0x05 0x00000000 0x01 0x00000000>; 328 + interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>; 329 + cdns,fifo-depth = <256>; 330 + cdns,fifo-width = <4>; 331 + cdns,trigger-address = <0x0>; 332 + clocks = <&k3_clks 75 7>; 333 + assigned-clocks = <&k3_clks 75 7>; 334 + assigned-clock-parents = <&k3_clks 75 8>; 335 + assigned-clock-rates = <166666666>; 336 + power-domains = <&k3_pds 75 TI_SCI_PD_EXCLUSIVE>; 337 + #address-cells = <1>; 338 + #size-cells = <0>; 339 + }; 340 + }; 341 + 342 + cpsw3g: ethernet@8000000 { 343 + compatible = "ti,am642-cpsw-nuss"; 344 + #address-cells = <2>; 345 + #size-cells = <2>; 346 + reg = <0x00 0x08000000 0x00 0x200000>; 347 + reg-names = "cpsw_nuss"; 348 + ranges = <0x00 0x00 0x00 0x08000000 0x00 0x200000>; 349 + clocks = <&k3_clks 13 0>; 350 + assigned-clocks = <&k3_clks 13 3>; 351 + assigned-clock-parents = <&k3_clks 13 11>; 352 + clock-names = "fck"; 353 + power-domains = <&k3_pds 13 TI_SCI_PD_EXCLUSIVE>; 354 + 355 + dmas = <&main_pktdma 0xc600 15>, 356 + <&main_pktdma 0xc601 15>, 357 + <&main_pktdma 0xc602 15>, 358 + <&main_pktdma 0xc603 15>, 359 + <&main_pktdma 0xc604 15>, 360 + <&main_pktdma 0xc605 15>, 361 + <&main_pktdma 0xc606 15>, 362 + <&main_pktdma 0xc607 15>, 363 + <&main_pktdma 0x4600 15>; 364 + dma-names = "tx0", "tx1", "tx2", "tx3", "tx4", "tx5", "tx6", 365 + "tx7", "rx"; 366 + 367 + ethernet-ports { 368 + #address-cells = <1>; 369 + #size-cells = <0>; 370 + 371 + cpsw_port1: port@1 { 372 + reg = <1>; 373 + ti,mac-only; 374 + label = "port1"; 375 + phys = <&phy_gmii_sel 1>; 376 + mac-address = [00 00 00 00 00 00]; 377 + ti,syscon-efuse = <&wkup_conf 0x200>; 378 + }; 379 + 380 + cpsw_port2: port@2 { 381 + reg = <2>; 382 + ti,mac-only; 383 + label = "port2"; 384 + phys = <&phy_gmii_sel 2>; 385 + mac-address = [00 00 00 00 00 00]; 386 + }; 387 + }; 388 + 389 + cpsw3g_mdio: mdio@f00 { 390 + compatible = "ti,cpsw-mdio","ti,davinci_mdio"; 391 + reg = <0x00 0xf00 0x00 0x100>; 392 + #address-cells = <1>; 393 + #size-cells = <0>; 394 + clocks = <&k3_clks 13 0>; 395 + clock-names = "fck"; 396 + bus_freq = <1000000>; 397 + }; 398 + 399 + cpts@3d000 { 400 + compatible = "ti,j721e-cpts"; 401 + reg = <0x00 0x3d000 0x00 0x400>; 402 + clocks = <&k3_clks 13 3>; 403 + clock-names = "cpts"; 404 + interrupts-extended = <&gic500 GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>; 405 + interrupt-names = "cpts"; 406 + ti,cpts-ext-ts-inputs = <4>; 407 + ti,cpts-periodic-outputs = <2>; 408 + }; 409 + }; 410 + 359 411 hwspinlock: spinlock@2a000000 { 360 412 compatible = "ti,am64-hwspinlock"; 361 413 reg = <0x00 0x2a000000 0x00 0x1000>; ··· 529 263 #mbox-cells = <1>; 530 264 ti,mbox-num-users = <4>; 531 265 ti,mbox-num-fifos = <16>; 266 + }; 267 + 268 + ecap0: pwm@23100000 { 269 + compatible = "ti,am3352-ecap"; 270 + #pwm-cells = <3>; 271 + reg = <0x00 0x23100000 0x00 0x100>; 272 + power-domains = <&k3_pds 51 TI_SCI_PD_EXCLUSIVE>; 273 + clocks = <&k3_clks 51 0>; 274 + clock-names = "fck"; 275 + }; 276 + 277 + ecap1: pwm@23110000 { 278 + compatible = "ti,am3352-ecap"; 279 + #pwm-cells = <3>; 280 + reg = <0x00 0x23110000 0x00 0x100>; 281 + power-domains = <&k3_pds 52 TI_SCI_PD_EXCLUSIVE>; 282 + clocks = <&k3_clks 52 0>; 283 + clock-names = "fck"; 284 + }; 285 + 286 + ecap2: pwm@23120000 { 287 + compatible = "ti,am3352-ecap"; 288 + #pwm-cells = <3>; 289 + reg = <0x00 0x23120000 0x00 0x100>; 290 + power-domains = <&k3_pds 53 TI_SCI_PD_EXCLUSIVE>; 291 + clocks = <&k3_clks 53 0>; 292 + clock-names = "fck"; 293 + }; 294 + 295 + main_mcan0: can@20701000 { 296 + compatible = "bosch,m_can"; 297 + reg = <0x00 0x20701000 0x00 0x200>, 298 + <0x00 0x20708000 0x00 0x8000>; 299 + reg-names = "m_can", "message_ram"; 300 + power-domains = <&k3_pds 98 TI_SCI_PD_EXCLUSIVE>; 301 + clocks = <&k3_clks 98 6>, <&k3_clks 98 1>; 302 + clock-names = "hclk", "cclk"; 303 + interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>, 304 + <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>; 305 + interrupt-names = "int0", "int1"; 306 + bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>; 532 307 }; 533 308 };
+48
arch/arm64/boot/dts/ti/k3-am62-mcu.dtsi
··· 33 33 clocks = <&k3_clks 106 2>; 34 34 clock-names = "fck"; 35 35 }; 36 + 37 + mcu_spi0: spi@4b00000 { 38 + compatible = "ti,am654-mcspi", "ti,omap4-mcspi"; 39 + reg = <0x00 0x04b00000 0x00 0x400>; 40 + interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>; 41 + #address-cells = <1>; 42 + #size-cells = <0>; 43 + power-domains = <&k3_pds 147 TI_SCI_PD_EXCLUSIVE>; 44 + clocks = <&k3_clks 147 0>; 45 + }; 46 + 47 + mcu_spi1: spi@4b10000 { 48 + compatible = "ti,am654-mcspi","ti,omap4-mcspi"; 49 + reg = <0x00 0x04b10000 0x00 0x400>; 50 + interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>; 51 + #address-cells = <1>; 52 + #size-cells = <0>; 53 + power-domains = <&k3_pds 148 TI_SCI_PD_EXCLUSIVE>; 54 + clocks = <&k3_clks 148 0>; 55 + }; 56 + 57 + mcu_gpio_intr: interrupt-controller@4210000 { 58 + compatible = "ti,sci-intr"; 59 + reg = <0x00 0x04210000 0x00 0x200>; 60 + ti,intr-trigger-type = <1>; 61 + interrupt-controller; 62 + interrupt-parent = <&gic500>; 63 + #interrupt-cells = <1>; 64 + ti,sci = <&dmsc>; 65 + ti,sci-dev-id = <5>; 66 + ti,interrupt-ranges = <0 104 4>; 67 + }; 68 + 69 + mcu_gpio0: gpio@4201000 { 70 + compatible = "ti,am64-gpio", "ti,keystone-gpio"; 71 + reg = <0x00 0x4201000 0x00 0x100>; 72 + gpio-controller; 73 + #gpio-cells = <2>; 74 + interrupt-parent = <&mcu_gpio_intr>; 75 + interrupts = <30>, <31>; 76 + interrupt-controller; 77 + #interrupt-cells = <2>; 78 + ti,ngpio = <24>; 79 + ti,davinci-gpio-unbanked = <0>; 80 + power-domains = <&k3_pds 79 TI_SCI_PD_EXCLUSIVE>; 81 + clocks = <&k3_clks 79 0>; 82 + clock-names = "gpio"; 83 + }; 36 84 };
+1
arch/arm64/boot/dts/ti/k3-am62.dtsi
··· 66 66 <0x00 0x30200000 0x00 0x30200000 0x00 0x00010000>, /* DSS */ 67 67 <0x00 0x31000000 0x00 0x31000000 0x00 0x00050000>, /* USB0 DWC3 Core window */ 68 68 <0x00 0x31100000 0x00 0x31100000 0x00 0x00050000>, /* USB1 DWC3 Core window */ 69 + <0x00 0x40900000 0x00 0x40900000 0x00 0x00030000>, /* SA3UL */ 69 70 <0x00 0x43600000 0x00 0x43600000 0x00 0x00010000>, /* SA3 sproxy data */ 70 71 <0x00 0x44043000 0x00 0x44043000 0x00 0x00000fe0>, /* TI SCI DEBUG */ 71 72 <0x00 0x44860000 0x00 0x44860000 0x00 0x00040000>, /* SA3 sproxy config */
+289
arch/arm64/boot/dts/ti/k3-am625-sk.dts
··· 9 9 10 10 #include <dt-bindings/leds/common.h> 11 11 #include <dt-bindings/gpio/gpio.h> 12 + #include <dt-bindings/net/ti-dp83867.h> 12 13 #include "k3-am625.dtsi" 13 14 14 15 / { ··· 18 17 19 18 aliases { 20 19 serial2 = &main_uart0; 20 + mmc0 = &sdhci0; 21 + mmc1 = &sdhci1; 22 + mmc2 = &sdhci2; 23 + spi0 = &ospi0; 24 + ethernet0 = &cpsw_port1; 25 + ethernet1 = &cpsw_port2; 21 26 }; 22 27 23 28 chosen { ··· 94 87 regulator-boot-on; 95 88 }; 96 89 90 + vdd_mmc1: regulator-3 { 91 + /* TPS22918DBVR */ 92 + compatible = "regulator-fixed"; 93 + regulator-name = "vdd_mmc1"; 94 + regulator-min-microvolt = <3300000>; 95 + regulator-max-microvolt = <3300000>; 96 + regulator-boot-on; 97 + enable-active-high; 98 + vin-supply = <&vcc_3v3_sys>; 99 + gpio = <&exp1 3 GPIO_ACTIVE_HIGH>; 100 + }; 101 + 102 + vdd_sd_dv: regulator-4 { 103 + /* Output of TLV71033 */ 104 + compatible = "regulator-gpio"; 105 + regulator-name = "tlv71033"; 106 + pinctrl-names = "default"; 107 + pinctrl-0 = <&vdd_sd_dv_pins_default>; 108 + regulator-min-microvolt = <1800000>; 109 + regulator-max-microvolt = <3300000>; 110 + regulator-boot-on; 111 + vin-supply = <&vcc_5v0>; 112 + gpios = <&main_gpio0 31 GPIO_ACTIVE_HIGH>; 113 + states = <1800000 0x0>, 114 + <3300000 0x1>; 115 + }; 116 + 97 117 leds { 98 118 compatible = "gpio-leds"; 99 119 pinctrl-names = "default"; ··· 158 124 >; 159 125 }; 160 126 127 + main_i2c2_pins_default: main-i2c2-pins-default { 128 + pinctrl-single,pins = < 129 + AM62X_IOPAD(0x0b0, PIN_INPUT_PULLUP, 1) /* (K22) GPMC0_CSn2.I2C2_SCL */ 130 + AM62X_IOPAD(0x0b4, PIN_INPUT_PULLUP, 1) /* (K24) GPMC0_CSn3.I2C2_SDA */ 131 + >; 132 + }; 133 + 134 + main_mmc0_pins_default: main-mmc0-pins-default { 135 + pinctrl-single,pins = < 136 + AM62X_IOPAD(0x220, PIN_INPUT, 0) /* (Y3) MMC0_CMD */ 137 + AM62X_IOPAD(0x218, PIN_INPUT, 0) /* (AB1) MMC0_CLK */ 138 + AM62X_IOPAD(0x214, PIN_INPUT, 0) /* (AA2) MMC0_DAT0 */ 139 + AM62X_IOPAD(0x210, PIN_INPUT, 0) /* (AA1) MMC0_DAT1 */ 140 + AM62X_IOPAD(0x20c, PIN_INPUT, 0) /* (AA3) MMC0_DAT2 */ 141 + AM62X_IOPAD(0x208, PIN_INPUT, 0) /* (Y4) MMC0_DAT3 */ 142 + AM62X_IOPAD(0x204, PIN_INPUT, 0) /* (AB2) MMC0_DAT4 */ 143 + AM62X_IOPAD(0x200, PIN_INPUT, 0) /* (AC1) MMC0_DAT5 */ 144 + AM62X_IOPAD(0x1fc, PIN_INPUT, 0) /* (AD2) MMC0_DAT6 */ 145 + AM62X_IOPAD(0x1f8, PIN_INPUT, 0) /* (AC2) MMC0_DAT7 */ 146 + >; 147 + }; 148 + 149 + main_mmc1_pins_default: main-mmc1-pins-default { 150 + pinctrl-single,pins = < 151 + AM62X_IOPAD(0x23c, PIN_INPUT, 0) /* (A21) MMC1_CMD */ 152 + AM62X_IOPAD(0x234, PIN_INPUT, 0) /* (B22) MMC1_CLK */ 153 + AM62X_IOPAD(0x230, PIN_INPUT, 0) /* (A22) MMC1_DAT0 */ 154 + AM62X_IOPAD(0x22c, PIN_INPUT, 0) /* (B21) MMC1_DAT1 */ 155 + AM62X_IOPAD(0x228, PIN_INPUT, 0) /* (C21) MMC1_DAT2 */ 156 + AM62X_IOPAD(0x224, PIN_INPUT, 0) /* (D22) MMC1_DAT3 */ 157 + AM62X_IOPAD(0x240, PIN_INPUT, 0) /* (D17) MMC1_SDCD */ 158 + >; 159 + }; 160 + 161 161 usr_led_pins_default: usr-led-pins-default { 162 162 pinctrl-single,pins = < 163 163 AM62X_IOPAD(0x244, PIN_OUTPUT, 7) /* (C17) MMC1_SDWP.GPIO1_49 */ 164 + >; 165 + }; 166 + 167 + main_mdio1_pins_default: main-mdio1-pins-default { 168 + pinctrl-single,pins = < 169 + AM62X_IOPAD(0x160, PIN_OUTPUT, 0) /* (AD24) MDIO0_MDC */ 170 + AM62X_IOPAD(0x15c, PIN_INPUT, 0) /* (AB22) MDIO0_MDIO */ 171 + >; 172 + }; 173 + 174 + main_rgmii1_pins_default: main-rgmii1-pins-default { 175 + pinctrl-single,pins = < 176 + AM62X_IOPAD(0x14c, PIN_INPUT, 0) /* (AB17) RGMII1_RD0 */ 177 + AM62X_IOPAD(0x150, PIN_INPUT, 0) /* (AC17) RGMII1_RD1 */ 178 + AM62X_IOPAD(0x154, PIN_INPUT, 0) /* (AB16) RGMII1_RD2 */ 179 + AM62X_IOPAD(0x158, PIN_INPUT, 0) /* (AA15) RGMII1_RD3 */ 180 + AM62X_IOPAD(0x148, PIN_INPUT, 0) /* (AD17) RGMII1_RXC */ 181 + AM62X_IOPAD(0x144, PIN_INPUT, 0) /* (AE17) RGMII1_RX_CTL */ 182 + AM62X_IOPAD(0x134, PIN_OUTPUT, 0) /* (AE20) RGMII1_TD0 */ 183 + AM62X_IOPAD(0x138, PIN_OUTPUT, 0) /* (AD20) RGMII1_TD1 */ 184 + AM62X_IOPAD(0x13c, PIN_OUTPUT, 0) /* (AE18) RGMII1_TD2 */ 185 + AM62X_IOPAD(0x140, PIN_OUTPUT, 0) /* (AD18) RGMII1_TD3 */ 186 + AM62X_IOPAD(0x130, PIN_OUTPUT, 0) /* (AE19) RGMII1_TXC */ 187 + AM62X_IOPAD(0x12c, PIN_OUTPUT, 0) /* (AD19) RGMII1_TX_CTL */ 188 + >; 189 + }; 190 + 191 + main_rgmii2_pins_default: main-rgmii2-pins-default { 192 + pinctrl-single,pins = < 193 + AM62X_IOPAD(0x184, PIN_INPUT, 0) /* (AE23) RGMII2_RD0 */ 194 + AM62X_IOPAD(0x188, PIN_INPUT, 0) /* (AB20) RGMII2_RD1 */ 195 + AM62X_IOPAD(0x18c, PIN_INPUT, 0) /* (AC21) RGMII2_RD2 */ 196 + AM62X_IOPAD(0x190, PIN_INPUT, 0) /* (AE22) RGMII2_RD3 */ 197 + AM62X_IOPAD(0x180, PIN_INPUT, 0) /* (AD23) RGMII2_RXC */ 198 + AM62X_IOPAD(0x17c, PIN_INPUT, 0) /* (AD22) RGMII2_RX_CTL */ 199 + AM62X_IOPAD(0x16c, PIN_OUTPUT, 0) /* (Y18) RGMII2_TD0 */ 200 + AM62X_IOPAD(0x170, PIN_OUTPUT, 0) /* (AA18) RGMII2_TD1 */ 201 + AM62X_IOPAD(0x174, PIN_OUTPUT, 0) /* (AD21) RGMII2_TD2 */ 202 + AM62X_IOPAD(0x178, PIN_OUTPUT, 0) /* (AC20) RGMII2_TD3 */ 203 + AM62X_IOPAD(0x168, PIN_OUTPUT, 0) /* (AE21) RGMII2_TXC */ 204 + AM62X_IOPAD(0x164, PIN_OUTPUT, 0) /* (AA19) RGMII2_TX_CTL */ 205 + >; 206 + }; 207 + 208 + ospi0_pins_default: ospi0-pins-default { 209 + pinctrl-single,pins = < 210 + AM62X_IOPAD(0x000, PIN_OUTPUT, 0) /* (H24) OSPI0_CLK */ 211 + AM62X_IOPAD(0x02c, PIN_OUTPUT, 0) /* (F23) OSPI0_CSn0 */ 212 + AM62X_IOPAD(0x00c, PIN_INPUT, 0) /* (E25) OSPI0_D0 */ 213 + AM62X_IOPAD(0x010, PIN_INPUT, 0) /* (G24) OSPI0_D1 */ 214 + AM62X_IOPAD(0x014, PIN_INPUT, 0) /* (F25) OSPI0_D2 */ 215 + AM62X_IOPAD(0x018, PIN_INPUT, 0) /* (F24) OSPI0_D3 */ 216 + AM62X_IOPAD(0x01c, PIN_INPUT, 0) /* (J23) OSPI0_D4 */ 217 + AM62X_IOPAD(0x020, PIN_INPUT, 0) /* (J25) OSPI0_D5 */ 218 + AM62X_IOPAD(0x024, PIN_INPUT, 0) /* (H25) OSPI0_D6 */ 219 + AM62X_IOPAD(0x028, PIN_INPUT, 0) /* (J22) OSPI0_D7 */ 220 + AM62X_IOPAD(0x008, PIN_INPUT, 0) /* (J24) OSPI0_DQS */ 221 + >; 222 + }; 223 + 224 + vdd_sd_dv_pins_default: vdd-sd-dv-pins-default { 225 + pinctrl-single,pins = < 226 + AM62X_IOPAD(0x07c, PIN_OUTPUT, 7) /* (P25) GPMC0_CLK.GPIO0_31 */ 227 + >; 228 + }; 229 + 230 + main_gpio1_ioexp_intr_pins_default: main-gpio1-ioexp-intr-pins-default { 231 + pinctrl-single,pins = < 232 + AM62X_IOPAD(0x01d4, PIN_INPUT, 7) /* (B15) UART0_RTSn.GPIO1_23 */ 164 233 >; 165 234 }; 166 235 }; ··· 325 188 pinctrl-names = "default"; 326 189 pinctrl-0 = <&main_i2c1_pins_default>; 327 190 clock-frequency = <400000>; 191 + 192 + exp1: gpio@22 { 193 + compatible = "ti,tca6424"; 194 + reg = <0x22>; 195 + gpio-controller; 196 + #gpio-cells = <2>; 197 + gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST", 198 + "PRU_DETECT", "MMC1_SD_EN", 199 + "VPP_LDO_EN", "EXP_PS_3V3_En", 200 + "EXP_PS_5V0_En", "EXP_HAT_DETECT", 201 + "GPIO_AUD_RSTn", "GPIO_eMMC_RSTn", 202 + "UART1_FET_BUF_EN", "WL_LT_EN", 203 + "GPIO_HDMI_RSTn", "CSI_GPIO1", 204 + "CSI_GPIO2", "PRU_3V3_EN", 205 + "HDMI_INTn", "TEST_GPIO2", 206 + "MCASP1_FET_EN", "MCASP1_BUF_BT_EN", 207 + "MCASP1_FET_SEL", "UART1_FET_SEL", 208 + "TSINT#", "IO_EXP_TEST_LED"; 209 + 210 + interrupt-parent = <&main_gpio1>; 211 + interrupts = <23 IRQ_TYPE_EDGE_FALLING>; 212 + interrupt-controller; 213 + #interrupt-cells = <2>; 214 + 215 + pinctrl-names = "default"; 216 + pinctrl-0 = <&main_gpio1_ioexp_intr_pins_default>; 217 + }; 328 218 }; 329 219 330 220 &main_i2c2 { ··· 362 198 status = "disabled"; 363 199 }; 364 200 201 + &sdhci0 { 202 + pinctrl-names = "default"; 203 + pinctrl-0 = <&main_mmc0_pins_default>; 204 + ti,driver-strength-ohm = <50>; 205 + disable-wp; 206 + }; 207 + 208 + &sdhci1 { 209 + /* SD/MMC */ 210 + vmmc-supply = <&vdd_mmc1>; 211 + vqmmc-supply = <&vdd_sd_dv>; 212 + pinctrl-names = "default"; 213 + pinctrl-0 = <&main_mmc1_pins_default>; 214 + ti,driver-strength-ohm = <50>; 215 + disable-wp; 216 + }; 217 + 218 + &cpsw3g { 219 + pinctrl-names = "default"; 220 + pinctrl-0 = <&main_mdio1_pins_default 221 + &main_rgmii1_pins_default 222 + &main_rgmii2_pins_default>; 223 + }; 224 + 225 + &cpsw_port1 { 226 + phy-mode = "rgmii-rxid"; 227 + phy-handle = <&cpsw3g_phy0>; 228 + }; 229 + 230 + &cpsw_port2 { 231 + phy-mode = "rgmii-rxid"; 232 + phy-handle = <&cpsw3g_phy1>; 233 + }; 234 + 235 + &cpsw3g_mdio { 236 + cpsw3g_phy0: ethernet-phy@0 { 237 + reg = <0>; 238 + ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; 239 + ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 240 + ti,min-output-impedance; 241 + }; 242 + 243 + cpsw3g_phy1: ethernet-phy@1 { 244 + reg = <1>; 245 + ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; 246 + ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 247 + ti,min-output-impedance; 248 + }; 249 + }; 250 + 365 251 &mailbox0_cluster0 { 366 252 mbox_m4_0: mbox-m4-0 { 367 253 ti,mbox-rx = <0 0 0>; 368 254 ti,mbox-tx = <1 0 0>; 369 255 }; 256 + }; 257 + 258 + &ospi0 { 259 + pinctrl-names = "default"; 260 + pinctrl-0 = <&ospi0_pins_default>; 261 + 262 + flash@0{ 263 + compatible = "jedec,spi-nor"; 264 + reg = <0x0>; 265 + spi-tx-bus-width = <8>; 266 + spi-rx-bus-width = <8>; 267 + spi-max-frequency = <25000000>; 268 + cdns,tshsl-ns = <60>; 269 + cdns,tsd2d-ns = <60>; 270 + cdns,tchsh-ns = <60>; 271 + cdns,tslch-ns = <60>; 272 + cdns,read-delay = <4>; 273 + 274 + partitions { 275 + compatible = "fixed-partitions"; 276 + #address-cells = <1>; 277 + #size-cells = <1>; 278 + 279 + partition@0 { 280 + label = "ospi.tiboot3"; 281 + reg = <0x0 0x80000>; 282 + }; 283 + 284 + partition@80000 { 285 + label = "ospi.tispl"; 286 + reg = <0x80000 0x200000>; 287 + }; 288 + 289 + partition@280000 { 290 + label = "ospi.u-boot"; 291 + reg = <0x280000 0x400000>; 292 + }; 293 + 294 + partition@680000 { 295 + label = "ospi.env"; 296 + reg = <0x680000 0x40000>; 297 + }; 298 + 299 + partition@6c0000 { 300 + label = "ospi.env.backup"; 301 + reg = <0x6c0000 0x40000>; 302 + }; 303 + 304 + partition@800000 { 305 + label = "ospi.rootfs"; 306 + reg = <0x800000 0x37c0000>; 307 + }; 308 + 309 + partition@3fc0000 { 310 + label = "ospi.phypattern"; 311 + reg = <0x3fc0000 0x40000>; 312 + }; 313 + }; 314 + }; 315 + }; 316 + 317 + &ecap0 { 318 + status = "disabled"; 319 + }; 320 + 321 + &ecap1 { 322 + status = "disabled"; 323 + }; 324 + 325 + &ecap2 { 326 + status = "disabled"; 327 + }; 328 + 329 + &main_mcan0 { 330 + status = "disabled"; 370 331 };
-2
arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi
··· 10 10 compatible = "ti,am64-uart", "ti,am654-uart"; 11 11 reg = <0x00 0x04a00000 0x00 0x100>; 12 12 interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>; 13 - clock-frequency = <48000000>; 14 13 current-speed = <115200>; 15 14 power-domains = <&k3_pds 149 TI_SCI_PD_EXCLUSIVE>; 16 15 clocks = <&k3_clks 149 0>; ··· 20 21 compatible = "ti,am64-uart", "ti,am654-uart"; 21 22 reg = <0x00 0x04a10000 0x00 0x100>; 22 23 interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>; 23 - clock-frequency = <48000000>; 24 24 current-speed = <115200>; 25 25 power-domains = <&k3_pds 160 TI_SCI_PD_EXCLUSIVE>; 26 26 clocks = <&k3_clks 160 0>;
+62
arch/arm64/boot/dts/ti/k3-am642-sk.dts
··· 125 125 vin-supply = <&vcc_3v3_sys>; 126 126 gpio = <&exp1 3 GPIO_ACTIVE_HIGH>; 127 127 }; 128 + 129 + com8_ls_en: regulator-1 { 130 + compatible = "regulator-fixed"; 131 + regulator-name = "com8_ls_en"; 132 + regulator-min-microvolt = <3300000>; 133 + regulator-max-microvolt = <3300000>; 134 + regulator-always-on; 135 + regulator-boot-on; 136 + pinctrl-0 = <&main_com8_ls_en_pins_default>; 137 + pinctrl-names = "default"; 138 + gpio = <&main_gpio0 62 GPIO_ACTIVE_LOW>; 139 + }; 140 + 141 + wlan_en: regulator-2 { 142 + /* output of SN74AVC4T245RSVR */ 143 + compatible = "regulator-fixed"; 144 + regulator-name = "wlan_en"; 145 + regulator-min-microvolt = <1800000>; 146 + regulator-max-microvolt = <1800000>; 147 + enable-active-high; 148 + pinctrl-0 = <&main_wlan_en_pins_default>; 149 + pinctrl-names = "default"; 150 + vin-supply = <&com8_ls_en>; 151 + gpio = <&main_gpio0 48 GPIO_ACTIVE_HIGH>; 152 + }; 128 153 }; 129 154 130 155 &main_pmx0 { ··· 241 216 AM64X_IOPAD(0x0270, PIN_INPUT, 0) /* (D18) ECAP0_IN_APWM_OUT */ 242 217 >; 243 218 }; 219 + main_wlan_en_pins_default: main-wlan-en-pins-default { 220 + pinctrl-single,pins = < 221 + AM64X_IOPAD(0x00c4, PIN_OUTPUT_PULLUP, 7) /* (V8) GPIO0_48 */ 222 + >; 223 + }; 224 + 225 + main_com8_ls_en_pins_default: main-com8-ls-en-pins-default { 226 + pinctrl-single,pins = < 227 + AM64X_IOPAD(0x00fc, PIN_OUTPUT, 7) /* (U7) PRG1_PRU0_GPO17.GPIO0_62 */ 228 + >; 229 + }; 230 + 231 + main_wlan_pins_default: main-wlan-pins-default { 232 + pinctrl-single,pins = < 233 + AM64X_IOPAD(0x00bc, PIN_INPUT, 7) /* (U8) GPIO0_46 */ 234 + >; 235 + }; 244 236 }; 245 237 246 238 &mcu_uart0 { ··· 333 291 /* mcu_gpio0 is reserved for mcu firmware usage */ 334 292 &mcu_gpio0 { 335 293 status = "reserved"; 294 + }; 295 + 296 + &sdhci0 { 297 + vmmc-supply = <&wlan_en>; 298 + bus-width = <4>; 299 + non-removable; 300 + cap-power-off-card; 301 + keep-power-in-suspend; 302 + ti,driver-strength-ohm = <50>; 303 + 304 + #address-cells = <1>; 305 + #size-cells = <0>; 306 + wlcore: wlcore@2 { 307 + compatible = "ti,wl1837"; 308 + reg = <2>; 309 + pinctrl-0 = <&main_wlan_pins_default>; 310 + pinctrl-names = "default"; 311 + interrupt-parent = <&main_gpio0>; 312 + interrupts = <46 IRQ_TYPE_EDGE_FALLING>; 313 + }; 336 314 }; 337 315 338 316 &sdhci1 {
+73 -4
arch/arm64/boot/dts/ti/k3-j721e-common-proc-board.dts
··· 148 148 pinctrl-0 = <&main_mcan2_gpio_pins_default>; 149 149 standby-gpios = <&main_gpio0 127 GPIO_ACTIVE_HIGH>; 150 150 }; 151 + 152 + dp_pwr_3v3: regulator-dp-pwr { 153 + compatible = "regulator-fixed"; 154 + regulator-name = "dp-pwr"; 155 + regulator-min-microvolt = <3300000>; 156 + regulator-max-microvolt = <3300000>; 157 + gpio = <&exp4 0 GPIO_ACTIVE_HIGH>; /* P0 - DP0_PWR_SW_EN */ 158 + enable-active-high; 159 + }; 160 + 161 + dp0: connector { 162 + compatible = "dp-connector"; 163 + label = "DP0"; 164 + type = "full-size"; 165 + dp-pwr-supply = <&dp_pwr_3v3>; 166 + 167 + port { 168 + dp_connector_in: endpoint { 169 + remote-endpoint = <&dp0_out>; 170 + }; 171 + }; 172 + }; 151 173 }; 152 174 153 175 &main_pmx0 { ··· 209 187 main_usbss1_pins_default: main-usbss1-pins-default { 210 188 pinctrl-single,pins = < 211 189 J721E_IOPAD(0x214, PIN_OUTPUT, 4) /* (V4) MCAN1_TX.USB1_DRVVBUS */ 190 + >; 191 + }; 192 + 193 + dp0_pins_default: dp0-pins-default { 194 + pinctrl-single,pins = < 195 + J721E_IOPAD(0x1c4, PIN_INPUT, 5) /* SPI0_CS1.DP0_HPD */ 212 196 >; 213 197 }; 214 198 ··· 686 658 <&k3_clks 152 18>; /* PLL23_HSDIV0 */ 687 659 }; 688 660 661 + &dss_ports { 662 + port { 663 + dpi0_out: endpoint { 664 + remote-endpoint = <&dp0_in>; 665 + }; 666 + }; 667 + }; 668 + 669 + &dp0_ports { 670 + #address-cells = <1>; 671 + #size-cells = <0>; 672 + 673 + port@0 { 674 + reg = <0>; 675 + dp0_in: endpoint { 676 + remote-endpoint = <&dpi0_out>; 677 + }; 678 + }; 679 + 680 + port@4 { 681 + reg = <4>; 682 + dp0_out: endpoint { 683 + remote-endpoint = <&dp_connector_in>; 684 + }; 685 + }; 686 + }; 687 + 689 688 &mcasp0 { 690 689 status = "disabled"; 691 690 }; ··· 848 793 }; 849 794 }; 850 795 796 + &serdes4 { 797 + torrent_phy_dp: phy@0 { 798 + reg = <0>; 799 + resets = <&serdes_wiz4 1>; 800 + cdns,phy-type = <PHY_TYPE_DP>; 801 + cdns,num-lanes = <4>; 802 + cdns,max-bit-rate = <5400>; 803 + #phy-cells = <0>; 804 + }; 805 + }; 806 + 807 + &mhdp { 808 + phys = <&torrent_phy_dp>; 809 + phy-names = "dpphy"; 810 + pinctrl-names = "default"; 811 + pinctrl-0 = <&dp0_pins_default>; 812 + }; 813 + 851 814 &pcie0_rc { 852 815 reset-gpios = <&exp1 6 GPIO_ACTIVE_HIGH>; 853 816 phys = <&serdes0_pcie_link>; ··· 913 840 }; 914 841 915 842 &pcie3_ep { 916 - status = "disabled"; 917 - }; 918 - 919 - &dss { 920 843 status = "disabled"; 921 844 }; 922 845
+73 -2
arch/arm64/boot/dts/ti/k3-j721e-main.dtsi
··· 5 5 * Copyright (C) 2016-2020 Texas Instruments Incorporated - https://www.ti.com/ 6 6 */ 7 7 #include <dt-bindings/phy/phy.h> 8 + #include <dt-bindings/phy/phy-ti.h> 8 9 #include <dt-bindings/mux/mux.h> 9 10 #include <dt-bindings/mux/ti-serdes.h> 10 11 ··· 790 789 #size-cells = <2>; 791 790 }; 792 791 792 + serdes_wiz4: wiz@5050000 { 793 + compatible = "ti,am64-wiz-10g"; 794 + #address-cells = <1>; 795 + #size-cells = <1>; 796 + power-domains = <&k3_pds 297 TI_SCI_PD_EXCLUSIVE>; 797 + clocks = <&k3_clks 297 1>, <&k3_clks 297 9>, <&cmn_refclk>; 798 + clock-names = "fck", "core_ref_clk", "ext_ref_clk"; 799 + assigned-clocks = <&k3_clks 297 9>; 800 + assigned-clock-parents = <&k3_clks 297 10>; 801 + assigned-clock-rates = <19200000>; 802 + num-lanes = <4>; 803 + #reset-cells = <1>; 804 + #clock-cells = <1>; 805 + ranges = <0x05050000 0x00 0x05050000 0x010000>, 806 + <0x0a030a00 0x00 0x0a030a00 0x40>; 807 + 808 + serdes4: serdes@5050000 { 809 + /* 810 + * Note: we also map DPTX PHY registers as the Torrent 811 + * needs to manage those. 812 + */ 813 + compatible = "ti,j721e-serdes-10g"; 814 + reg = <0x05050000 0x010000>, 815 + <0x0a030a00 0x40>; /* DPTX PHY */ 816 + reg-names = "torrent_phy", "dptx_phy"; 817 + 818 + resets = <&serdes_wiz4 0>; 819 + reset-names = "torrent_reset"; 820 + clocks = <&serdes_wiz4 TI_WIZ_PLL0_REFCLK>; 821 + clock-names = "refclk"; 822 + assigned-clocks = <&serdes_wiz4 TI_WIZ_PLL0_REFCLK>, 823 + <&serdes_wiz4 TI_WIZ_PLL1_REFCLK>, 824 + <&serdes_wiz4 TI_WIZ_REFCLK_DIG>; 825 + assigned-clock-parents = <&k3_clks 297 9>, 826 + <&k3_clks 297 9>, 827 + <&k3_clks 297 9>; 828 + #address-cells = <1>; 829 + #size-cells = <0>; 830 + }; 831 + }; 832 + 793 833 main_uart0: serial@2800000 { 794 834 compatible = "ti,j721e-uart", "ti,am654-uart"; 795 835 reg = <0x00 0x02800000 0x00 0x100>; ··· 1309 1267 }; 1310 1268 }; 1311 1269 1270 + mhdp: dp-bridge@a000000 { 1271 + compatible = "ti,j721e-mhdp8546"; 1272 + /* 1273 + * Note: we do not map DPTX PHY area, as that is handled by 1274 + * the PHY driver. 1275 + */ 1276 + reg = <0x00 0x0a000000 0x00 0x030a00>, /* DSS_EDP0_V2A_CORE_VP_REGS_APB */ 1277 + <0x00 0x04f40000 0x00 0x20>; /* DSS_EDP0_INTG_CFG_VP */ 1278 + reg-names = "mhdptx", "j721e-intg"; 1279 + 1280 + clocks = <&k3_clks 151 36>; 1281 + 1282 + interrupt-parent = <&gic500>; 1283 + interrupts = <GIC_SPI 614 IRQ_TYPE_LEVEL_HIGH>; 1284 + 1285 + power-domains = <&k3_pds 151 TI_SCI_PD_EXCLUSIVE>; 1286 + 1287 + dp0_ports: ports { 1288 + #address-cells = <1>; 1289 + #size-cells = <0>; 1290 + 1291 + port@0 { 1292 + reg = <0>; 1293 + }; 1294 + 1295 + port@4 { 1296 + reg = <4>; 1297 + }; 1298 + }; 1299 + }; 1300 + 1312 1301 dss: dss@4a00000 { 1313 1302 compatible = "ti,j721e-dss"; 1314 1303 reg = ··· 1390 1317 "common_s2"; 1391 1318 1392 1319 dss_ports: ports { 1393 - #address-cells = <1>; 1394 - #size-cells = <0>; 1395 1320 }; 1396 1321 }; 1397 1322
+135 -4
arch/arm64/boot/dts/ti/k3-j721e-sk.dts
··· 213 213 enable-active-high; 214 214 }; 215 215 216 + dp0: connector { 217 + compatible = "dp-connector"; 218 + label = "DP0"; 219 + type = "full-size"; 220 + dp-pwr-supply = <&dp_pwr_3v3>; 221 + 222 + port { 223 + dp_connector_in: endpoint { 224 + remote-endpoint = <&dp0_out>; 225 + }; 226 + }; 227 + }; 228 + 229 + hdmi-connector { 230 + compatible = "hdmi-connector"; 231 + label = "hdmi"; 232 + type = "a"; 233 + 234 + pinctrl-names = "default"; 235 + pinctrl-0 = <&hdmi_hpd_pins_default>; 236 + 237 + ddc-i2c-bus = <&main_i2c1>; 238 + 239 + /* HDMI_HPD */ 240 + hpd-gpios = <&main_gpio1 0 GPIO_ACTIVE_HIGH>; 241 + 242 + port { 243 + hdmi_connector_in: endpoint { 244 + remote-endpoint = <&tfp410_out>; 245 + }; 246 + }; 247 + }; 248 + 249 + dvi-bridge { 250 + compatible = "ti,tfp410"; 251 + 252 + pinctrl-names = "default"; 253 + pinctrl-0 = <&hdmi_pdn_pins_default>; 254 + 255 + powerdown-gpios = <&main_gpio0 127 GPIO_ACTIVE_LOW>; 256 + ti,deskew = <0>; 257 + 258 + ports { 259 + #address-cells = <1>; 260 + #size-cells = <0>; 261 + 262 + port@0 { 263 + reg = <0>; 264 + 265 + tfp410_in: endpoint { 266 + remote-endpoint = <&dpi1_out>; 267 + pclk-sample = <1>; 268 + }; 269 + }; 270 + 271 + port@1 { 272 + reg = <1>; 273 + 274 + tfp410_out: endpoint { 275 + remote-endpoint = 276 + <&hdmi_connector_in>; 277 + }; 278 + }; 279 + }; 280 + }; 216 281 }; 217 282 218 283 &main_pmx0 { ··· 379 314 J721E_IOPAD(0x98, PIN_OUTPUT, 10) /* (AJ26) PRG1_PRU1_GPO16.VOUT0_HSYNC */ 380 315 J721E_IOPAD(0xa4, PIN_OUTPUT, 10) /* (AH22) PRG1_PRU1_GPO19.VOUT0_PCLK */ 381 316 J721E_IOPAD(0xa0, PIN_OUTPUT, 10) /* (AJ22) PRG1_PRU1_GPO18.VOUT0_VSYNC */ 317 + >; 318 + }; 319 + 320 + hdmi_hpd_pins_default: hdmi-hpd-pins-default { 321 + pinctrl-single,pins = < 322 + J721E_IOPAD(0x204, PIN_INPUT, 7) /* (AD5) UART1_RTSn.GPIO1_0 */ 323 + >; 324 + }; 325 + 326 + hdmi_pdn_pins_default: hdmi-pdn-pins-default { 327 + pinctrl-single,pins = < 328 + J721E_IOPAD(0x200, PIN_INPUT, 7) /* (AC4) UART1_CTSn.GPIO0_127 */ 382 329 >; 383 330 }; 384 331 ··· 701 624 }; 702 625 }; 703 626 627 + &serdes4 { 628 + torrent_phy_dp: phy@0 { 629 + reg = <0>; 630 + resets = <&serdes_wiz4 1>; 631 + cdns,phy-type = <PHY_TYPE_DP>; 632 + cdns,num-lanes = <4>; 633 + cdns,max-bit-rate = <5400>; 634 + #phy-cells = <0>; 635 + }; 636 + }; 637 + 638 + &mhdp { 639 + phys = <&torrent_phy_dp>; 640 + phy-names = "dpphy"; 641 + pinctrl-names = "default"; 642 + pinctrl-0 = <&dp0_pins_default>; 643 + }; 644 + 704 645 &usbss0 { 705 646 pinctrl-names = "default"; 706 647 pinctrl-0 = <&main_usbss0_pins_default>; ··· 795 700 <&k3_clks 152 6>, /* DPI0_EXT_CLKSEL_OUT0 */ 796 701 <&k3_clks 152 11>, /* PLL18_HSDIV0 */ 797 702 <&k3_clks 152 18>; /* DPI1_EXT_CLKSEL_OUT0 */ 703 + }; 704 + 705 + &dss_ports { 706 + #address-cells = <1>; 707 + #size-cells = <0>; 708 + 709 + port@0 { 710 + reg = <0>; 711 + 712 + dpi0_out: endpoint { 713 + remote-endpoint = <&dp0_in>; 714 + }; 715 + }; 716 + 717 + port@1 { 718 + reg = <1>; 719 + 720 + dpi1_out: endpoint { 721 + remote-endpoint = <&tfp410_in>; 722 + }; 723 + }; 724 + }; 725 + 726 + &dp0_ports { 727 + #address-cells = <1>; 728 + #size-cells = <0>; 729 + 730 + port@0 { 731 + reg = <0>; 732 + dp0_in: endpoint { 733 + remote-endpoint = <&dpi0_out>; 734 + }; 735 + }; 736 + 737 + port@4 { 738 + reg = <4>; 739 + dp0_out: endpoint { 740 + remote-endpoint = <&dp_connector_in>; 741 + }; 742 + }; 798 743 }; 799 744 800 745 &mcasp0 { ··· 968 833 969 834 &pcie3_ep { 970 835 /* Unused */ 971 - status = "disabled"; 972 - }; 973 - 974 - &dss { 975 836 status = "disabled"; 976 837 }; 977 838