1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun/* 3*4882a593Smuzhiyun * Device Tree Source for AM6 SoC Family MCU Domain peripherals 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Copyright (C) 2016-2018 Texas Instruments Incorporated - https://www.ti.com/ 6*4882a593Smuzhiyun */ 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun&cbass_mcu { 9*4882a593Smuzhiyun mcu_conf: scm-conf@40f00000 { 10*4882a593Smuzhiyun compatible = "syscon", "simple-mfd"; 11*4882a593Smuzhiyun reg = <0x0 0x40f00000 0x0 0x20000>; 12*4882a593Smuzhiyun #address-cells = <1>; 13*4882a593Smuzhiyun #size-cells = <1>; 14*4882a593Smuzhiyun ranges = <0x0 0x0 0x40f00000 0x20000>; 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun phy_gmii_sel: phy@4040 { 17*4882a593Smuzhiyun compatible = "ti,am654-phy-gmii-sel"; 18*4882a593Smuzhiyun reg = <0x4040 0x4>; 19*4882a593Smuzhiyun #phy-cells = <1>; 20*4882a593Smuzhiyun }; 21*4882a593Smuzhiyun }; 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun mcu_uart0: serial@40a00000 { 24*4882a593Smuzhiyun compatible = "ti,am654-uart"; 25*4882a593Smuzhiyun reg = <0x00 0x40a00000 0x00 0x100>; 26*4882a593Smuzhiyun reg-shift = <2>; 27*4882a593Smuzhiyun reg-io-width = <4>; 28*4882a593Smuzhiyun interrupts = <GIC_SPI 565 IRQ_TYPE_LEVEL_HIGH>; 29*4882a593Smuzhiyun clock-frequency = <96000000>; 30*4882a593Smuzhiyun current-speed = <115200>; 31*4882a593Smuzhiyun power-domains = <&k3_pds 149 TI_SCI_PD_EXCLUSIVE>; 32*4882a593Smuzhiyun }; 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun mcu_ram: sram@41c00000 { 35*4882a593Smuzhiyun compatible = "mmio-sram"; 36*4882a593Smuzhiyun reg = <0x00 0x41c00000 0x00 0x80000>; 37*4882a593Smuzhiyun ranges = <0x0 0x00 0x41c00000 0x80000>; 38*4882a593Smuzhiyun #address-cells = <1>; 39*4882a593Smuzhiyun #size-cells = <1>; 40*4882a593Smuzhiyun }; 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun mcu_i2c0: i2c@40b00000 { 43*4882a593Smuzhiyun compatible = "ti,am654-i2c", "ti,omap4-i2c"; 44*4882a593Smuzhiyun reg = <0x0 0x40b00000 0x0 0x100>; 45*4882a593Smuzhiyun interrupts = <GIC_SPI 564 IRQ_TYPE_LEVEL_HIGH>; 46*4882a593Smuzhiyun #address-cells = <1>; 47*4882a593Smuzhiyun #size-cells = <0>; 48*4882a593Smuzhiyun clock-names = "fck"; 49*4882a593Smuzhiyun clocks = <&k3_clks 114 1>; 50*4882a593Smuzhiyun power-domains = <&k3_pds 114 TI_SCI_PD_EXCLUSIVE>; 51*4882a593Smuzhiyun }; 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun mcu_spi0: spi@40300000 { 54*4882a593Smuzhiyun compatible = "ti,am654-mcspi","ti,omap4-mcspi"; 55*4882a593Smuzhiyun reg = <0x0 0x40300000 0x0 0x400>; 56*4882a593Smuzhiyun interrupts = <GIC_SPI 560 IRQ_TYPE_LEVEL_HIGH>; 57*4882a593Smuzhiyun clocks = <&k3_clks 142 1>; 58*4882a593Smuzhiyun power-domains = <&k3_pds 142 TI_SCI_PD_EXCLUSIVE>; 59*4882a593Smuzhiyun #address-cells = <1>; 60*4882a593Smuzhiyun #size-cells = <0>; 61*4882a593Smuzhiyun }; 62*4882a593Smuzhiyun 63*4882a593Smuzhiyun mcu_spi1: spi@40310000 { 64*4882a593Smuzhiyun compatible = "ti,am654-mcspi","ti,omap4-mcspi"; 65*4882a593Smuzhiyun reg = <0x0 0x40310000 0x0 0x400>; 66*4882a593Smuzhiyun interrupts = <GIC_SPI 561 IRQ_TYPE_LEVEL_HIGH>; 67*4882a593Smuzhiyun clocks = <&k3_clks 143 1>; 68*4882a593Smuzhiyun power-domains = <&k3_pds 143 TI_SCI_PD_EXCLUSIVE>; 69*4882a593Smuzhiyun #address-cells = <1>; 70*4882a593Smuzhiyun #size-cells = <0>; 71*4882a593Smuzhiyun }; 72*4882a593Smuzhiyun 73*4882a593Smuzhiyun mcu_spi2: spi@40320000 { 74*4882a593Smuzhiyun compatible = "ti,am654-mcspi","ti,omap4-mcspi"; 75*4882a593Smuzhiyun reg = <0x0 0x40320000 0x0 0x400>; 76*4882a593Smuzhiyun interrupts = <GIC_SPI 562 IRQ_TYPE_LEVEL_HIGH>; 77*4882a593Smuzhiyun clocks = <&k3_clks 144 1>; 78*4882a593Smuzhiyun power-domains = <&k3_pds 144 TI_SCI_PD_EXCLUSIVE>; 79*4882a593Smuzhiyun #address-cells = <1>; 80*4882a593Smuzhiyun #size-cells = <0>; 81*4882a593Smuzhiyun }; 82*4882a593Smuzhiyun 83*4882a593Smuzhiyun tscadc0: tscadc@40200000 { 84*4882a593Smuzhiyun compatible = "ti,am654-tscadc", "ti,am3359-tscadc"; 85*4882a593Smuzhiyun reg = <0x0 0x40200000 0x0 0x1000>; 86*4882a593Smuzhiyun interrupts = <GIC_SPI 580 IRQ_TYPE_LEVEL_HIGH>; 87*4882a593Smuzhiyun clocks = <&k3_clks 0 2>; 88*4882a593Smuzhiyun assigned-clocks = <&k3_clks 0 2>; 89*4882a593Smuzhiyun assigned-clock-rates = <60000000>; 90*4882a593Smuzhiyun clock-names = "adc_tsc_fck"; 91*4882a593Smuzhiyun dmas = <&mcu_udmap 0x7100>, 92*4882a593Smuzhiyun <&mcu_udmap 0x7101 >; 93*4882a593Smuzhiyun dma-names = "fifo0", "fifo1"; 94*4882a593Smuzhiyun 95*4882a593Smuzhiyun adc { 96*4882a593Smuzhiyun #io-channel-cells = <1>; 97*4882a593Smuzhiyun compatible = "ti,am654-adc", "ti,am3359-adc"; 98*4882a593Smuzhiyun }; 99*4882a593Smuzhiyun }; 100*4882a593Smuzhiyun 101*4882a593Smuzhiyun tscadc1: tscadc@40210000 { 102*4882a593Smuzhiyun compatible = "ti,am654-tscadc", "ti,am3359-tscadc"; 103*4882a593Smuzhiyun reg = <0x0 0x40210000 0x0 0x1000>; 104*4882a593Smuzhiyun interrupts = <GIC_SPI 581 IRQ_TYPE_LEVEL_HIGH>; 105*4882a593Smuzhiyun clocks = <&k3_clks 1 2>; 106*4882a593Smuzhiyun assigned-clocks = <&k3_clks 1 2>; 107*4882a593Smuzhiyun assigned-clock-rates = <60000000>; 108*4882a593Smuzhiyun clock-names = "adc_tsc_fck"; 109*4882a593Smuzhiyun dmas = <&mcu_udmap 0x7102>, 110*4882a593Smuzhiyun <&mcu_udmap 0x7103>; 111*4882a593Smuzhiyun dma-names = "fifo0", "fifo1"; 112*4882a593Smuzhiyun 113*4882a593Smuzhiyun adc { 114*4882a593Smuzhiyun #io-channel-cells = <1>; 115*4882a593Smuzhiyun compatible = "ti,am654-adc", "ti,am3359-adc"; 116*4882a593Smuzhiyun }; 117*4882a593Smuzhiyun }; 118*4882a593Smuzhiyun 119*4882a593Smuzhiyun mcu-navss { 120*4882a593Smuzhiyun compatible = "simple-mfd"; 121*4882a593Smuzhiyun #address-cells = <2>; 122*4882a593Smuzhiyun #size-cells = <2>; 123*4882a593Smuzhiyun ranges; 124*4882a593Smuzhiyun dma-coherent; 125*4882a593Smuzhiyun dma-ranges; 126*4882a593Smuzhiyun 127*4882a593Smuzhiyun ti,sci-dev-id = <119>; 128*4882a593Smuzhiyun 129*4882a593Smuzhiyun mcu_ringacc: ringacc@2b800000 { 130*4882a593Smuzhiyun compatible = "ti,am654-navss-ringacc"; 131*4882a593Smuzhiyun reg = <0x0 0x2b800000 0x0 0x400000>, 132*4882a593Smuzhiyun <0x0 0x2b000000 0x0 0x400000>, 133*4882a593Smuzhiyun <0x0 0x28590000 0x0 0x100>, 134*4882a593Smuzhiyun <0x0 0x2a500000 0x0 0x40000>; 135*4882a593Smuzhiyun reg-names = "rt", "fifos", "proxy_gcfg", "proxy_target"; 136*4882a593Smuzhiyun ti,num-rings = <286>; 137*4882a593Smuzhiyun ti,sci-rm-range-gp-rings = <0x1>; /* GP ring range */ 138*4882a593Smuzhiyun ti,dma-ring-reset-quirk; 139*4882a593Smuzhiyun ti,sci = <&dmsc>; 140*4882a593Smuzhiyun ti,sci-dev-id = <195>; 141*4882a593Smuzhiyun msi-parent = <&inta_main_udmass>; 142*4882a593Smuzhiyun }; 143*4882a593Smuzhiyun 144*4882a593Smuzhiyun mcu_udmap: dma-controller@285c0000 { 145*4882a593Smuzhiyun compatible = "ti,am654-navss-mcu-udmap"; 146*4882a593Smuzhiyun reg = <0x0 0x285c0000 0x0 0x100>, 147*4882a593Smuzhiyun <0x0 0x2a800000 0x0 0x40000>, 148*4882a593Smuzhiyun <0x0 0x2aa00000 0x0 0x40000>; 149*4882a593Smuzhiyun reg-names = "gcfg", "rchanrt", "tchanrt"; 150*4882a593Smuzhiyun msi-parent = <&inta_main_udmass>; 151*4882a593Smuzhiyun #dma-cells = <1>; 152*4882a593Smuzhiyun 153*4882a593Smuzhiyun ti,sci = <&dmsc>; 154*4882a593Smuzhiyun ti,sci-dev-id = <194>; 155*4882a593Smuzhiyun ti,ringacc = <&mcu_ringacc>; 156*4882a593Smuzhiyun 157*4882a593Smuzhiyun ti,sci-rm-range-tchan = <0xf>, /* TX_HCHAN */ 158*4882a593Smuzhiyun <0xd>; /* TX_CHAN */ 159*4882a593Smuzhiyun ti,sci-rm-range-rchan = <0xb>, /* RX_HCHAN */ 160*4882a593Smuzhiyun <0xa>; /* RX_CHAN */ 161*4882a593Smuzhiyun ti,sci-rm-range-rflow = <0x0>; /* GP RFLOW */ 162*4882a593Smuzhiyun }; 163*4882a593Smuzhiyun }; 164*4882a593Smuzhiyun 165*4882a593Smuzhiyun fss: fss@47000000 { 166*4882a593Smuzhiyun compatible = "simple-bus"; 167*4882a593Smuzhiyun #address-cells = <2>; 168*4882a593Smuzhiyun #size-cells = <2>; 169*4882a593Smuzhiyun ranges; 170*4882a593Smuzhiyun 171*4882a593Smuzhiyun ospi0: spi@47040000 { 172*4882a593Smuzhiyun compatible = "ti,am654-ospi", "cdns,qspi-nor"; 173*4882a593Smuzhiyun reg = <0x0 0x47040000 0x0 0x100>, 174*4882a593Smuzhiyun <0x5 0x00000000 0x1 0x0000000>; 175*4882a593Smuzhiyun interrupts = <GIC_SPI 552 IRQ_TYPE_LEVEL_HIGH>; 176*4882a593Smuzhiyun cdns,fifo-depth = <256>; 177*4882a593Smuzhiyun cdns,fifo-width = <4>; 178*4882a593Smuzhiyun cdns,trigger-address = <0x0>; 179*4882a593Smuzhiyun clocks = <&k3_clks 248 0>; 180*4882a593Smuzhiyun assigned-clocks = <&k3_clks 248 0>; 181*4882a593Smuzhiyun assigned-clock-parents = <&k3_clks 248 2>; 182*4882a593Smuzhiyun assigned-clock-rates = <166666666>; 183*4882a593Smuzhiyun power-domains = <&k3_pds 248 TI_SCI_PD_EXCLUSIVE>; 184*4882a593Smuzhiyun #address-cells = <1>; 185*4882a593Smuzhiyun #size-cells = <0>; 186*4882a593Smuzhiyun }; 187*4882a593Smuzhiyun 188*4882a593Smuzhiyun ospi1: spi@47050000 { 189*4882a593Smuzhiyun compatible = "ti,am654-ospi", "cdns,qspi-nor"; 190*4882a593Smuzhiyun reg = <0x0 0x47050000 0x0 0x100>, 191*4882a593Smuzhiyun <0x7 0x00000000 0x1 0x00000000>; 192*4882a593Smuzhiyun interrupts = <GIC_SPI 553 IRQ_TYPE_LEVEL_HIGH>; 193*4882a593Smuzhiyun cdns,fifo-depth = <256>; 194*4882a593Smuzhiyun cdns,fifo-width = <4>; 195*4882a593Smuzhiyun cdns,trigger-address = <0x0>; 196*4882a593Smuzhiyun clocks = <&k3_clks 249 6>; 197*4882a593Smuzhiyun power-domains = <&k3_pds 249 TI_SCI_PD_EXCLUSIVE>; 198*4882a593Smuzhiyun #address-cells = <1>; 199*4882a593Smuzhiyun #size-cells = <0>; 200*4882a593Smuzhiyun }; 201*4882a593Smuzhiyun }; 202*4882a593Smuzhiyun 203*4882a593Smuzhiyun mcu_cpsw: ethernet@46000000 { 204*4882a593Smuzhiyun compatible = "ti,am654-cpsw-nuss"; 205*4882a593Smuzhiyun #address-cells = <2>; 206*4882a593Smuzhiyun #size-cells = <2>; 207*4882a593Smuzhiyun reg = <0x0 0x46000000 0x0 0x200000>; 208*4882a593Smuzhiyun reg-names = "cpsw_nuss"; 209*4882a593Smuzhiyun ranges = <0x0 0x0 0x0 0x46000000 0x0 0x200000>; 210*4882a593Smuzhiyun dma-coherent; 211*4882a593Smuzhiyun clocks = <&k3_clks 5 10>; 212*4882a593Smuzhiyun clock-names = "fck"; 213*4882a593Smuzhiyun power-domains = <&k3_pds 5 TI_SCI_PD_EXCLUSIVE>; 214*4882a593Smuzhiyun 215*4882a593Smuzhiyun dmas = <&mcu_udmap 0xf000>, 216*4882a593Smuzhiyun <&mcu_udmap 0xf001>, 217*4882a593Smuzhiyun <&mcu_udmap 0xf002>, 218*4882a593Smuzhiyun <&mcu_udmap 0xf003>, 219*4882a593Smuzhiyun <&mcu_udmap 0xf004>, 220*4882a593Smuzhiyun <&mcu_udmap 0xf005>, 221*4882a593Smuzhiyun <&mcu_udmap 0xf006>, 222*4882a593Smuzhiyun <&mcu_udmap 0xf007>, 223*4882a593Smuzhiyun <&mcu_udmap 0x7000>; 224*4882a593Smuzhiyun dma-names = "tx0", "tx1", "tx2", "tx3", 225*4882a593Smuzhiyun "tx4", "tx5", "tx6", "tx7", 226*4882a593Smuzhiyun "rx"; 227*4882a593Smuzhiyun 228*4882a593Smuzhiyun ethernet-ports { 229*4882a593Smuzhiyun #address-cells = <1>; 230*4882a593Smuzhiyun #size-cells = <0>; 231*4882a593Smuzhiyun 232*4882a593Smuzhiyun cpsw_port1: port@1 { 233*4882a593Smuzhiyun reg = <1>; 234*4882a593Smuzhiyun ti,mac-only; 235*4882a593Smuzhiyun label = "port1"; 236*4882a593Smuzhiyun ti,syscon-efuse = <&mcu_conf 0x200>; 237*4882a593Smuzhiyun phys = <&phy_gmii_sel 1>; 238*4882a593Smuzhiyun }; 239*4882a593Smuzhiyun }; 240*4882a593Smuzhiyun 241*4882a593Smuzhiyun davinci_mdio: mdio@f00 { 242*4882a593Smuzhiyun compatible = "ti,cpsw-mdio","ti,davinci_mdio"; 243*4882a593Smuzhiyun reg = <0x0 0xf00 0x0 0x100>; 244*4882a593Smuzhiyun #address-cells = <1>; 245*4882a593Smuzhiyun #size-cells = <0>; 246*4882a593Smuzhiyun clocks = <&k3_clks 5 10>; 247*4882a593Smuzhiyun clock-names = "fck"; 248*4882a593Smuzhiyun bus_freq = <1000000>; 249*4882a593Smuzhiyun }; 250*4882a593Smuzhiyun 251*4882a593Smuzhiyun cpts@3d000 { 252*4882a593Smuzhiyun compatible = "ti,am65-cpts"; 253*4882a593Smuzhiyun reg = <0x0 0x3d000 0x0 0x400>; 254*4882a593Smuzhiyun clocks = <&mcu_cpsw_cpts_mux>; 255*4882a593Smuzhiyun clock-names = "cpts"; 256*4882a593Smuzhiyun interrupts-extended = <&gic500 GIC_SPI 570 IRQ_TYPE_LEVEL_HIGH>; 257*4882a593Smuzhiyun interrupt-names = "cpts"; 258*4882a593Smuzhiyun ti,cpts-ext-ts-inputs = <4>; 259*4882a593Smuzhiyun ti,cpts-periodic-outputs = <2>; 260*4882a593Smuzhiyun 261*4882a593Smuzhiyun mcu_cpsw_cpts_mux: refclk-mux { 262*4882a593Smuzhiyun #clock-cells = <0>; 263*4882a593Smuzhiyun clocks = <&k3_clks 118 5>, <&k3_clks 118 11>, 264*4882a593Smuzhiyun <&k3_clks 118 6>, <&k3_clks 118 3>, 265*4882a593Smuzhiyun <&k3_clks 118 8>, <&k3_clks 118 14>, 266*4882a593Smuzhiyun <&k3_clks 120 3>, <&k3_clks 121 3>; 267*4882a593Smuzhiyun assigned-clocks = <&mcu_cpsw_cpts_mux>; 268*4882a593Smuzhiyun assigned-clock-parents = <&k3_clks 118 5>; 269*4882a593Smuzhiyun }; 270*4882a593Smuzhiyun }; 271*4882a593Smuzhiyun }; 272*4882a593Smuzhiyun}; 273