1*f126890aSEmmanuel Vadot/* 2*f126890aSEmmanuel Vadot * Device Tree Source for the Axis ARTPEC-6 SoC 3*f126890aSEmmanuel Vadot * 4*f126890aSEmmanuel Vadot * This file is dual-licensed: you can use it either under the terms 5*f126890aSEmmanuel Vadot * of the GPL or the X11 license, at your option. Note that this dual 6*f126890aSEmmanuel Vadot * licensing only applies to this file, and not this project as a 7*f126890aSEmmanuel Vadot * whole. 8*f126890aSEmmanuel Vadot * 9*f126890aSEmmanuel Vadot * a) This file is free software; you can redistribute it and/or 10*f126890aSEmmanuel Vadot * modify it under the terms of the GNU General Public License as 11*f126890aSEmmanuel Vadot * published by the Free Software Foundation; either version 2 of the 12*f126890aSEmmanuel Vadot * License, or (at your option) any later version. 13*f126890aSEmmanuel Vadot * 14*f126890aSEmmanuel Vadot * This file is distributed in the hope that it will be useful, 15*f126890aSEmmanuel Vadot * but WITHOUT ANY WARRANTY; without even the implied warranty of 16*f126890aSEmmanuel Vadot * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17*f126890aSEmmanuel Vadot * GNU General Public License for more details. 18*f126890aSEmmanuel Vadot * 19*f126890aSEmmanuel Vadot * Or, alternatively, 20*f126890aSEmmanuel Vadot * 21*f126890aSEmmanuel Vadot * b) Permission is hereby granted, free of charge, to any person 22*f126890aSEmmanuel Vadot * obtaining a copy of this software and associated documentation 23*f126890aSEmmanuel Vadot * files (the "Software"), to deal in the Software without 24*f126890aSEmmanuel Vadot * restriction, including without limitation the rights to use, 25*f126890aSEmmanuel Vadot * copy, modify, merge, publish, distribute, sublicense, and/or 26*f126890aSEmmanuel Vadot * sell copies of the Software, and to permit persons to whom the 27*f126890aSEmmanuel Vadot * Software is furnished to do so, subject to the following 28*f126890aSEmmanuel Vadot * conditions: 29*f126890aSEmmanuel Vadot * 30*f126890aSEmmanuel Vadot * The above copyright notice and this permission notice shall be 31*f126890aSEmmanuel Vadot * included in all copies or substantial portions of the Software. 32*f126890aSEmmanuel Vadot * 33*f126890aSEmmanuel Vadot * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 34*f126890aSEmmanuel Vadot * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 35*f126890aSEmmanuel Vadot * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 36*f126890aSEmmanuel Vadot * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 37*f126890aSEmmanuel Vadot * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 38*f126890aSEmmanuel Vadot * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 39*f126890aSEmmanuel Vadot * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 40*f126890aSEmmanuel Vadot * OTHER DEALINGS IN THE SOFTWARE. 41*f126890aSEmmanuel Vadot */ 42*f126890aSEmmanuel Vadot 43*f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h> 44*f126890aSEmmanuel Vadot#include <dt-bindings/dma/nbpfaxi.h> 45*f126890aSEmmanuel Vadot#include <dt-bindings/clock/axis,artpec6-clkctrl.h> 46*f126890aSEmmanuel Vadot 47*f126890aSEmmanuel Vadot/ { 48*f126890aSEmmanuel Vadot #address-cells = <1>; 49*f126890aSEmmanuel Vadot #size-cells = <1>; 50*f126890aSEmmanuel Vadot compatible = "axis,artpec6"; 51*f126890aSEmmanuel Vadot interrupt-parent = <&intc>; 52*f126890aSEmmanuel Vadot 53*f126890aSEmmanuel Vadot cpus { 54*f126890aSEmmanuel Vadot #address-cells = <1>; 55*f126890aSEmmanuel Vadot #size-cells = <0>; 56*f126890aSEmmanuel Vadot 57*f126890aSEmmanuel Vadot cpu0: cpu@0 { 58*f126890aSEmmanuel Vadot device_type = "cpu"; 59*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9"; 60*f126890aSEmmanuel Vadot reg = <0>; 61*f126890aSEmmanuel Vadot next-level-cache = <&pl310>; 62*f126890aSEmmanuel Vadot }; 63*f126890aSEmmanuel Vadot 64*f126890aSEmmanuel Vadot cpu1: cpu@1 { 65*f126890aSEmmanuel Vadot device_type = "cpu"; 66*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9"; 67*f126890aSEmmanuel Vadot reg = <1>; 68*f126890aSEmmanuel Vadot next-level-cache = <&pl310>; 69*f126890aSEmmanuel Vadot }; 70*f126890aSEmmanuel Vadot }; 71*f126890aSEmmanuel Vadot 72*f126890aSEmmanuel Vadot syscon: syscon@f8000000 { 73*f126890aSEmmanuel Vadot compatible = "axis,artpec6-syscon", "syscon"; 74*f126890aSEmmanuel Vadot reg = <0xf8000000 0x48>; 75*f126890aSEmmanuel Vadot }; 76*f126890aSEmmanuel Vadot 77*f126890aSEmmanuel Vadot psci { 78*f126890aSEmmanuel Vadot compatible = "arm,psci-0.2", "arm,psci"; 79*f126890aSEmmanuel Vadot method = "smc"; 80*f126890aSEmmanuel Vadot psci_version = <0x84000000>; 81*f126890aSEmmanuel Vadot cpu_on = <0x84000003>; 82*f126890aSEmmanuel Vadot system_reset = <0x84000009>; 83*f126890aSEmmanuel Vadot }; 84*f126890aSEmmanuel Vadot 85*f126890aSEmmanuel Vadot scu@faf00000 { 86*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-scu"; 87*f126890aSEmmanuel Vadot reg = <0xfaf00000 0x58>; 88*f126890aSEmmanuel Vadot }; 89*f126890aSEmmanuel Vadot 90*f126890aSEmmanuel Vadot /* Main external clock driving CPU and peripherals */ 91*f126890aSEmmanuel Vadot ext_clk: ext_clk { 92*f126890aSEmmanuel Vadot #clock-cells = <0>; 93*f126890aSEmmanuel Vadot compatible = "fixed-clock"; 94*f126890aSEmmanuel Vadot clock-frequency = <50000000>; 95*f126890aSEmmanuel Vadot }; 96*f126890aSEmmanuel Vadot 97*f126890aSEmmanuel Vadot eth_phy_ref_clk: eth_phy_ref_clk { 98*f126890aSEmmanuel Vadot #clock-cells = <0>; 99*f126890aSEmmanuel Vadot compatible = "fixed-clock"; 100*f126890aSEmmanuel Vadot clock-frequency = <125000000>; 101*f126890aSEmmanuel Vadot }; 102*f126890aSEmmanuel Vadot 103*f126890aSEmmanuel Vadot clkctrl: clkctrl@f8000000 { 104*f126890aSEmmanuel Vadot #clock-cells = <1>; 105*f126890aSEmmanuel Vadot compatible = "axis,artpec6-clkctrl"; 106*f126890aSEmmanuel Vadot reg = <0xf8000000 0x48>; 107*f126890aSEmmanuel Vadot clocks = <&ext_clk>; 108*f126890aSEmmanuel Vadot clock-names = "sys_refclk"; 109*f126890aSEmmanuel Vadot }; 110*f126890aSEmmanuel Vadot 111*f126890aSEmmanuel Vadot gtimer@faf00200 { 112*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-global-timer"; 113*f126890aSEmmanuel Vadot reg = <0xfaf00200 0x20>; 114*f126890aSEmmanuel Vadot interrupts = <GIC_PPI 11 0xf01>; 115*f126890aSEmmanuel Vadot clocks = <&clkctrl ARTPEC6_CLK_CPU_PERIPH>; 116*f126890aSEmmanuel Vadot }; 117*f126890aSEmmanuel Vadot 118*f126890aSEmmanuel Vadot timer@faf00600 { 119*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-twd-timer"; 120*f126890aSEmmanuel Vadot reg = <0xfaf00600 0x20>; 121*f126890aSEmmanuel Vadot interrupts = <GIC_PPI 13 0xf04>; 122*f126890aSEmmanuel Vadot clocks = <&clkctrl ARTPEC6_CLK_CPU_PERIPH>; 123*f126890aSEmmanuel Vadot status = "disabled"; 124*f126890aSEmmanuel Vadot }; 125*f126890aSEmmanuel Vadot 126*f126890aSEmmanuel Vadot intc: interrupt-controller@faf01000 { 127*f126890aSEmmanuel Vadot interrupt-controller; 128*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-gic"; 129*f126890aSEmmanuel Vadot #interrupt-cells = <3>; 130*f126890aSEmmanuel Vadot reg = < 0xfaf01000 0x1000 >, < 0xfaf00100 0x0100 >; 131*f126890aSEmmanuel Vadot }; 132*f126890aSEmmanuel Vadot 133*f126890aSEmmanuel Vadot pl310: cache-controller@faf10000 { 134*f126890aSEmmanuel Vadot compatible = "arm,pl310-cache"; 135*f126890aSEmmanuel Vadot cache-unified; 136*f126890aSEmmanuel Vadot cache-level = <2>; 137*f126890aSEmmanuel Vadot reg = <0xfaf10000 0x1000>; 138*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 139*f126890aSEmmanuel Vadot arm,data-latency = <1 1 1>; 140*f126890aSEmmanuel Vadot arm,tag-latency = <1 1 1>; 141*f126890aSEmmanuel Vadot arm,filter-ranges = <0x0 0x80000000>; 142*f126890aSEmmanuel Vadot arm,double-linefill = <1>; 143*f126890aSEmmanuel Vadot arm,double-linefill-incr = <0>; 144*f126890aSEmmanuel Vadot arm,double-linefill-wrap = <0>; 145*f126890aSEmmanuel Vadot prefetch-data = <1>; 146*f126890aSEmmanuel Vadot prefetch-instr = <1>; 147*f126890aSEmmanuel Vadot arm,prefetch-offset = <0>; 148*f126890aSEmmanuel Vadot arm,prefetch-drop = <1>; 149*f126890aSEmmanuel Vadot }; 150*f126890aSEmmanuel Vadot 151*f126890aSEmmanuel Vadot pmu { 152*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-pmu"; 153*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, 154*f126890aSEmmanuel Vadot <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>; 155*f126890aSEmmanuel Vadot interrupt-affinity = <&cpu0>, <&cpu1>; 156*f126890aSEmmanuel Vadot }; 157*f126890aSEmmanuel Vadot 158*f126890aSEmmanuel Vadot /* 159*f126890aSEmmanuel Vadot * Both pci nodes cannot be enabled at the same time, 160*f126890aSEmmanuel Vadot * leave the unwanted node as disabled. 161*f126890aSEmmanuel Vadot */ 162*f126890aSEmmanuel Vadot pcie: pcie@f8050000 { 163*f126890aSEmmanuel Vadot compatible = "axis,artpec6-pcie", "snps,dw-pcie"; 164*f126890aSEmmanuel Vadot reg = <0xf8050000 0x2000 165*f126890aSEmmanuel Vadot 0xf8040000 0x1000 166*f126890aSEmmanuel Vadot 0xc0000000 0x2000>; 167*f126890aSEmmanuel Vadot reg-names = "dbi", "phy", "config"; 168*f126890aSEmmanuel Vadot #address-cells = <3>; 169*f126890aSEmmanuel Vadot #size-cells = <2>; 170*f126890aSEmmanuel Vadot device_type = "pci"; 171*f126890aSEmmanuel Vadot /* downstream I/O */ 172*f126890aSEmmanuel Vadot ranges = <0x81000000 0 0 0xc0002000 0 0x00010000 173*f126890aSEmmanuel Vadot /* non-prefetchable memory */ 174*f126890aSEmmanuel Vadot 0x82000000 0 0xc0012000 0xc0012000 0 0x1ffee000>; 175*f126890aSEmmanuel Vadot num-lanes = <2>; 176*f126890aSEmmanuel Vadot bus-range = <0x00 0xff>; 177*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>; 178*f126890aSEmmanuel Vadot interrupt-names = "msi"; 179*f126890aSEmmanuel Vadot #interrupt-cells = <1>; 180*f126890aSEmmanuel Vadot interrupt-map-mask = <0 0 0 0x7>; 181*f126890aSEmmanuel Vadot interrupt-map = <0 0 0 1 &intc GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, 182*f126890aSEmmanuel Vadot <0 0 0 2 &intc GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 183*f126890aSEmmanuel Vadot <0 0 0 3 &intc GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>, 184*f126890aSEmmanuel Vadot <0 0 0 4 &intc GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>; 185*f126890aSEmmanuel Vadot axis,syscon-pcie = <&syscon>; 186*f126890aSEmmanuel Vadot status = "disabled"; 187*f126890aSEmmanuel Vadot }; 188*f126890aSEmmanuel Vadot 189*f126890aSEmmanuel Vadot pcie_ep: pcie_ep@f8050000 { 190*f126890aSEmmanuel Vadot compatible = "axis,artpec6-pcie-ep", "snps,dw-pcie"; 191*f126890aSEmmanuel Vadot reg = <0xf8050000 0x2000 192*f126890aSEmmanuel Vadot 0xf8051000 0x2000 193*f126890aSEmmanuel Vadot 0xf8040000 0x1000 194*f126890aSEmmanuel Vadot 0xc0000000 0x20000000>; 195*f126890aSEmmanuel Vadot reg-names = "dbi", "dbi2", "phy", "addr_space"; 196*f126890aSEmmanuel Vadot num-ib-windows = <6>; 197*f126890aSEmmanuel Vadot num-ob-windows = <2>; 198*f126890aSEmmanuel Vadot num-lanes = <2>; 199*f126890aSEmmanuel Vadot axis,syscon-pcie = <&syscon>; 200*f126890aSEmmanuel Vadot status = "disabled"; 201*f126890aSEmmanuel Vadot }; 202*f126890aSEmmanuel Vadot 203*f126890aSEmmanuel Vadot pinctrl: pinctrl@f801d000 { 204*f126890aSEmmanuel Vadot compatible = "axis,artpec6-pinctrl"; 205*f126890aSEmmanuel Vadot reg = <0xf801d000 0x400>; 206*f126890aSEmmanuel Vadot 207*f126890aSEmmanuel Vadot pinctrl_uart0: uart0grp { 208*f126890aSEmmanuel Vadot function = "uart0"; 209*f126890aSEmmanuel Vadot groups = "uart0grp2"; 210*f126890aSEmmanuel Vadot bias-pull-up; 211*f126890aSEmmanuel Vadot }; 212*f126890aSEmmanuel Vadot pinctrl_uart1: uart1grp { 213*f126890aSEmmanuel Vadot function = "uart1"; 214*f126890aSEmmanuel Vadot groups = "uart1grp0"; 215*f126890aSEmmanuel Vadot bias-pull-up; 216*f126890aSEmmanuel Vadot }; 217*f126890aSEmmanuel Vadot pinctrl_uart2: uart2grp { 218*f126890aSEmmanuel Vadot function = "uart2"; 219*f126890aSEmmanuel Vadot groups = "uart2grp1"; 220*f126890aSEmmanuel Vadot bias-pull-up; 221*f126890aSEmmanuel Vadot }; 222*f126890aSEmmanuel Vadot pinctrl_uart3: uart3grp { 223*f126890aSEmmanuel Vadot function = "uart3"; 224*f126890aSEmmanuel Vadot groups = "uart3grp0"; 225*f126890aSEmmanuel Vadot bias-pull-up; 226*f126890aSEmmanuel Vadot }; 227*f126890aSEmmanuel Vadot }; 228*f126890aSEmmanuel Vadot 229*f126890aSEmmanuel Vadot amba@0 { 230*f126890aSEmmanuel Vadot compatible = "simple-bus"; 231*f126890aSEmmanuel Vadot #address-cells = <0x1>; 232*f126890aSEmmanuel Vadot #size-cells = <0x1>; 233*f126890aSEmmanuel Vadot ranges; 234*f126890aSEmmanuel Vadot dma-ranges; 235*f126890aSEmmanuel Vadot 236*f126890aSEmmanuel Vadot crypto@f4264000 { 237*f126890aSEmmanuel Vadot compatible = "axis,artpec6-crypto"; 238*f126890aSEmmanuel Vadot reg = <0xf4264000 0x4000>; 239*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; 240*f126890aSEmmanuel Vadot }; 241*f126890aSEmmanuel Vadot 242*f126890aSEmmanuel Vadot dma0: dma@f8019000 { 243*f126890aSEmmanuel Vadot compatible = "renesas,nbpfaxi64dmac8b16"; 244*f126890aSEmmanuel Vadot reg = <0xf8019000 0x400>; 245*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>, /* error */ 246*f126890aSEmmanuel Vadot <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>, 247*f126890aSEmmanuel Vadot <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, 248*f126890aSEmmanuel Vadot <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>, 249*f126890aSEmmanuel Vadot <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>, 250*f126890aSEmmanuel Vadot <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>, 251*f126890aSEmmanuel Vadot <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>, 252*f126890aSEmmanuel Vadot <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>, 253*f126890aSEmmanuel Vadot <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 254*f126890aSEmmanuel Vadot interrupt-names = "error", 255*f126890aSEmmanuel Vadot "ch0", "ch1", "ch2", "ch3", 256*f126890aSEmmanuel Vadot "ch4", "ch5", "ch6", "ch7", 257*f126890aSEmmanuel Vadot "ch8", "ch9", "ch10", "ch12", 258*f126890aSEmmanuel Vadot "ch12", "ch13", "ch14", "ch15"; 259*f126890aSEmmanuel Vadot clocks = <&clkctrl ARTPEC6_CLK_DMA_ACLK>; 260*f126890aSEmmanuel Vadot #dma-cells = <2>; 261*f126890aSEmmanuel Vadot dma-channels = <8>; 262*f126890aSEmmanuel Vadot dma-requests = <8>; 263*f126890aSEmmanuel Vadot }; 264*f126890aSEmmanuel Vadot dma1: dma@f8019400 { 265*f126890aSEmmanuel Vadot compatible = "renesas,nbpfaxi64dmac8b16"; 266*f126890aSEmmanuel Vadot reg = <0xf8019400 0x400>; 267*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>, /* error */ 268*f126890aSEmmanuel Vadot <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, 269*f126890aSEmmanuel Vadot <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>, 270*f126890aSEmmanuel Vadot <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>, 271*f126890aSEmmanuel Vadot <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>, 272*f126890aSEmmanuel Vadot <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>, 273*f126890aSEmmanuel Vadot <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>, 274*f126890aSEmmanuel Vadot <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>, 275*f126890aSEmmanuel Vadot <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 276*f126890aSEmmanuel Vadot interrupt-names = "error", 277*f126890aSEmmanuel Vadot "ch0", "ch1", "ch2", "ch3", 278*f126890aSEmmanuel Vadot "ch4", "ch5", "ch6", "ch7", 279*f126890aSEmmanuel Vadot "ch8", "ch9", "ch10", "ch12", 280*f126890aSEmmanuel Vadot "ch12", "ch13", "ch14", "ch15"; 281*f126890aSEmmanuel Vadot clocks = <&clkctrl ARTPEC6_CLK_DMA_ACLK>; 282*f126890aSEmmanuel Vadot #dma-cells = <2>; 283*f126890aSEmmanuel Vadot dma-channels = <8>; 284*f126890aSEmmanuel Vadot dma-requests = <8>; 285*f126890aSEmmanuel Vadot }; 286*f126890aSEmmanuel Vadot 287*f126890aSEmmanuel Vadot ethernet: ethernet@f8010000 { 288*f126890aSEmmanuel Vadot clock-names = "stmmaceth", "ptp_ref"; 289*f126890aSEmmanuel Vadot clocks = <&clkctrl ARTPEC6_CLK_ETH_ACLK>, 290*f126890aSEmmanuel Vadot <&clkctrl ARTPEC6_CLK_PTP_REF>; 291*f126890aSEmmanuel Vadot compatible = "snps,dwmac-4.10a", "snps,dwmac"; 292*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, 293*f126890aSEmmanuel Vadot <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 294*f126890aSEmmanuel Vadot interrupt-names = "macirq", "eth_lpi"; 295*f126890aSEmmanuel Vadot reg = <0xf8010000 0x4000>; 296*f126890aSEmmanuel Vadot 297*f126890aSEmmanuel Vadot snps,axi-config = <&stmmac_axi_setup>; 298*f126890aSEmmanuel Vadot snps,mtl-rx-config = <&mtl_rx_setup>; 299*f126890aSEmmanuel Vadot snps,mtl-tx-config = <&mtl_tx_setup>; 300*f126890aSEmmanuel Vadot 301*f126890aSEmmanuel Vadot snps,txpbl = <8>; 302*f126890aSEmmanuel Vadot snps,rxpbl = <2>; 303*f126890aSEmmanuel Vadot snps,aal; 304*f126890aSEmmanuel Vadot snps,tso; 305*f126890aSEmmanuel Vadot 306*f126890aSEmmanuel Vadot status = "disabled"; 307*f126890aSEmmanuel Vadot 308*f126890aSEmmanuel Vadot stmmac_axi_setup: stmmac-axi-config { 309*f126890aSEmmanuel Vadot snps,wr_osr_lmt = <1>; 310*f126890aSEmmanuel Vadot snps,rd_osr_lmt = <15>; 311*f126890aSEmmanuel Vadot /* If FB is disabled, the AXI master chooses 312*f126890aSEmmanuel Vadot * a burst length of any value less than the 313*f126890aSEmmanuel Vadot * maximum enabled burst length 314*f126890aSEmmanuel Vadot * (all lesser burst length enables are redundant). 315*f126890aSEmmanuel Vadot */ 316*f126890aSEmmanuel Vadot snps,blen = <0 0 0 0 16 0 0>; 317*f126890aSEmmanuel Vadot }; 318*f126890aSEmmanuel Vadot 319*f126890aSEmmanuel Vadot mtl_rx_setup: rx-queues-config { 320*f126890aSEmmanuel Vadot snps,rx-queues-to-use = <1>; 321*f126890aSEmmanuel Vadot queue0 {}; 322*f126890aSEmmanuel Vadot }; 323*f126890aSEmmanuel Vadot 324*f126890aSEmmanuel Vadot mtl_tx_setup: tx-queues-config { 325*f126890aSEmmanuel Vadot snps,tx-queues-to-use = <2>; 326*f126890aSEmmanuel Vadot queue0 {}; 327*f126890aSEmmanuel Vadot queue1 {}; 328*f126890aSEmmanuel Vadot }; 329*f126890aSEmmanuel Vadot }; 330*f126890aSEmmanuel Vadot 331*f126890aSEmmanuel Vadot uart0: serial@f8036000 { 332*f126890aSEmmanuel Vadot compatible = "arm,pl011", "arm,primecell"; 333*f126890aSEmmanuel Vadot reg = <0xf8036000 0x1000>; 334*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 335*f126890aSEmmanuel Vadot clocks = <&clkctrl ARTPEC6_CLK_UART_REFCLK>, 336*f126890aSEmmanuel Vadot <&clkctrl ARTPEC6_CLK_UART_PCLK>; 337*f126890aSEmmanuel Vadot clock-names = "uart_clk", "apb_pclk"; 338*f126890aSEmmanuel Vadot pinctrl-names = "default"; 339*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_uart0>; 340*f126890aSEmmanuel Vadot dmas = <&dma0 4 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>, 341*f126890aSEmmanuel Vadot <&dma0 5 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>; 342*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 343*f126890aSEmmanuel Vadot status = "disabled"; 344*f126890aSEmmanuel Vadot }; 345*f126890aSEmmanuel Vadot uart1: serial@f8037000 { 346*f126890aSEmmanuel Vadot compatible = "arm,pl011", "arm,primecell"; 347*f126890aSEmmanuel Vadot reg = <0xf8037000 0x1000>; 348*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>; 349*f126890aSEmmanuel Vadot clocks = <&clkctrl ARTPEC6_CLK_UART_REFCLK>, 350*f126890aSEmmanuel Vadot <&clkctrl ARTPEC6_CLK_UART_PCLK>; 351*f126890aSEmmanuel Vadot clock-names = "uart_clk", "apb_pclk"; 352*f126890aSEmmanuel Vadot pinctrl-names = "default"; 353*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_uart1>; 354*f126890aSEmmanuel Vadot dmas = <&dma0 6 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>, 355*f126890aSEmmanuel Vadot <&dma0 7 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>; 356*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 357*f126890aSEmmanuel Vadot status = "disabled"; 358*f126890aSEmmanuel Vadot }; 359*f126890aSEmmanuel Vadot uart2: serial@f8038000 { 360*f126890aSEmmanuel Vadot compatible = "arm,pl011", "arm,primecell"; 361*f126890aSEmmanuel Vadot reg = <0xf8038000 0x1000>; 362*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>; 363*f126890aSEmmanuel Vadot clocks = <&clkctrl ARTPEC6_CLK_UART_REFCLK>, 364*f126890aSEmmanuel Vadot <&clkctrl ARTPEC6_CLK_UART_PCLK>; 365*f126890aSEmmanuel Vadot clock-names = "uart_clk", "apb_pclk"; 366*f126890aSEmmanuel Vadot pinctrl-names = "default"; 367*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_uart2>; 368*f126890aSEmmanuel Vadot dmas = <&dma1 0 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>, 369*f126890aSEmmanuel Vadot <&dma1 1 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>; 370*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 371*f126890aSEmmanuel Vadot status = "disabled"; 372*f126890aSEmmanuel Vadot }; 373*f126890aSEmmanuel Vadot uart3: serial@f8039000 { 374*f126890aSEmmanuel Vadot compatible = "arm,pl011", "arm,primecell"; 375*f126890aSEmmanuel Vadot reg = <0xf8039000 0x1000>; 376*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>; 377*f126890aSEmmanuel Vadot clocks = <&clkctrl ARTPEC6_CLK_UART_REFCLK>, 378*f126890aSEmmanuel Vadot <&clkctrl ARTPEC6_CLK_UART_PCLK>; 379*f126890aSEmmanuel Vadot clock-names = "uart_clk", "apb_pclk"; 380*f126890aSEmmanuel Vadot pinctrl-names = "default"; 381*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_uart3>; 382*f126890aSEmmanuel Vadot dmas = <&dma1 2 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>, 383*f126890aSEmmanuel Vadot <&dma1 3 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>; 384*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 385*f126890aSEmmanuel Vadot status = "disabled"; 386*f126890aSEmmanuel Vadot }; 387*f126890aSEmmanuel Vadot }; 388*f126890aSEmmanuel Vadot}; 389