162306a36Sopenharmony_ci/* 262306a36Sopenharmony_ci * Device Tree Source for the Axis ARTPEC-6 SoC 362306a36Sopenharmony_ci * 462306a36Sopenharmony_ci * This file is dual-licensed: you can use it either under the terms 562306a36Sopenharmony_ci * of the GPL or the X11 license, at your option. Note that this dual 662306a36Sopenharmony_ci * licensing only applies to this file, and not this project as a 762306a36Sopenharmony_ci * whole. 862306a36Sopenharmony_ci * 962306a36Sopenharmony_ci * a) This file is free software; you can redistribute it and/or 1062306a36Sopenharmony_ci * modify it under the terms of the GNU General Public License as 1162306a36Sopenharmony_ci * published by the Free Software Foundation; either version 2 of the 1262306a36Sopenharmony_ci * License, or (at your option) any later version. 1362306a36Sopenharmony_ci * 1462306a36Sopenharmony_ci * This file is distributed in the hope that it will be useful, 1562306a36Sopenharmony_ci * but WITHOUT ANY WARRANTY; without even the implied warranty of 1662306a36Sopenharmony_ci * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1762306a36Sopenharmony_ci * GNU General Public License for more details. 1862306a36Sopenharmony_ci * 1962306a36Sopenharmony_ci * Or, alternatively, 2062306a36Sopenharmony_ci * 2162306a36Sopenharmony_ci * b) Permission is hereby granted, free of charge, to any person 2262306a36Sopenharmony_ci * obtaining a copy of this software and associated documentation 2362306a36Sopenharmony_ci * files (the "Software"), to deal in the Software without 2462306a36Sopenharmony_ci * restriction, including without limitation the rights to use, 2562306a36Sopenharmony_ci * copy, modify, merge, publish, distribute, sublicense, and/or 2662306a36Sopenharmony_ci * sell copies of the Software, and to permit persons to whom the 2762306a36Sopenharmony_ci * Software is furnished to do so, subject to the following 2862306a36Sopenharmony_ci * conditions: 2962306a36Sopenharmony_ci * 3062306a36Sopenharmony_ci * The above copyright notice and this permission notice shall be 3162306a36Sopenharmony_ci * included in all copies or substantial portions of the Software. 3262306a36Sopenharmony_ci * 3362306a36Sopenharmony_ci * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 3462306a36Sopenharmony_ci * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 3562306a36Sopenharmony_ci * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 3662306a36Sopenharmony_ci * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 3762306a36Sopenharmony_ci * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 3862306a36Sopenharmony_ci * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 3962306a36Sopenharmony_ci * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 4062306a36Sopenharmony_ci * OTHER DEALINGS IN THE SOFTWARE. 4162306a36Sopenharmony_ci */ 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/arm-gic.h> 4462306a36Sopenharmony_ci#include <dt-bindings/dma/nbpfaxi.h> 4562306a36Sopenharmony_ci#include <dt-bindings/clock/axis,artpec6-clkctrl.h> 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_ci/ { 4862306a36Sopenharmony_ci #address-cells = <1>; 4962306a36Sopenharmony_ci #size-cells = <1>; 5062306a36Sopenharmony_ci compatible = "axis,artpec6"; 5162306a36Sopenharmony_ci interrupt-parent = <&intc>; 5262306a36Sopenharmony_ci 5362306a36Sopenharmony_ci cpus { 5462306a36Sopenharmony_ci #address-cells = <1>; 5562306a36Sopenharmony_ci #size-cells = <0>; 5662306a36Sopenharmony_ci 5762306a36Sopenharmony_ci cpu0: cpu@0 { 5862306a36Sopenharmony_ci device_type = "cpu"; 5962306a36Sopenharmony_ci compatible = "arm,cortex-a9"; 6062306a36Sopenharmony_ci reg = <0>; 6162306a36Sopenharmony_ci next-level-cache = <&pl310>; 6262306a36Sopenharmony_ci }; 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_ci cpu1: cpu@1 { 6562306a36Sopenharmony_ci device_type = "cpu"; 6662306a36Sopenharmony_ci compatible = "arm,cortex-a9"; 6762306a36Sopenharmony_ci reg = <1>; 6862306a36Sopenharmony_ci next-level-cache = <&pl310>; 6962306a36Sopenharmony_ci }; 7062306a36Sopenharmony_ci }; 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_ci syscon: syscon@f8000000 { 7362306a36Sopenharmony_ci compatible = "axis,artpec6-syscon", "syscon"; 7462306a36Sopenharmony_ci reg = <0xf8000000 0x48>; 7562306a36Sopenharmony_ci }; 7662306a36Sopenharmony_ci 7762306a36Sopenharmony_ci psci { 7862306a36Sopenharmony_ci compatible = "arm,psci-0.2", "arm,psci"; 7962306a36Sopenharmony_ci method = "smc"; 8062306a36Sopenharmony_ci psci_version = <0x84000000>; 8162306a36Sopenharmony_ci cpu_on = <0x84000003>; 8262306a36Sopenharmony_ci system_reset = <0x84000009>; 8362306a36Sopenharmony_ci }; 8462306a36Sopenharmony_ci 8562306a36Sopenharmony_ci scu@faf00000 { 8662306a36Sopenharmony_ci compatible = "arm,cortex-a9-scu"; 8762306a36Sopenharmony_ci reg = <0xfaf00000 0x58>; 8862306a36Sopenharmony_ci }; 8962306a36Sopenharmony_ci 9062306a36Sopenharmony_ci /* Main external clock driving CPU and peripherals */ 9162306a36Sopenharmony_ci ext_clk: ext_clk { 9262306a36Sopenharmony_ci #clock-cells = <0>; 9362306a36Sopenharmony_ci compatible = "fixed-clock"; 9462306a36Sopenharmony_ci clock-frequency = <50000000>; 9562306a36Sopenharmony_ci }; 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ci eth_phy_ref_clk: eth_phy_ref_clk { 9862306a36Sopenharmony_ci #clock-cells = <0>; 9962306a36Sopenharmony_ci compatible = "fixed-clock"; 10062306a36Sopenharmony_ci clock-frequency = <125000000>; 10162306a36Sopenharmony_ci }; 10262306a36Sopenharmony_ci 10362306a36Sopenharmony_ci clkctrl: clkctrl@f8000000 { 10462306a36Sopenharmony_ci #clock-cells = <1>; 10562306a36Sopenharmony_ci compatible = "axis,artpec6-clkctrl"; 10662306a36Sopenharmony_ci reg = <0xf8000000 0x48>; 10762306a36Sopenharmony_ci clocks = <&ext_clk>; 10862306a36Sopenharmony_ci clock-names = "sys_refclk"; 10962306a36Sopenharmony_ci }; 11062306a36Sopenharmony_ci 11162306a36Sopenharmony_ci gtimer@faf00200 { 11262306a36Sopenharmony_ci compatible = "arm,cortex-a9-global-timer"; 11362306a36Sopenharmony_ci reg = <0xfaf00200 0x20>; 11462306a36Sopenharmony_ci interrupts = <GIC_PPI 11 0xf01>; 11562306a36Sopenharmony_ci clocks = <&clkctrl ARTPEC6_CLK_CPU_PERIPH>; 11662306a36Sopenharmony_ci }; 11762306a36Sopenharmony_ci 11862306a36Sopenharmony_ci timer@faf00600 { 11962306a36Sopenharmony_ci compatible = "arm,cortex-a9-twd-timer"; 12062306a36Sopenharmony_ci reg = <0xfaf00600 0x20>; 12162306a36Sopenharmony_ci interrupts = <GIC_PPI 13 0xf04>; 12262306a36Sopenharmony_ci clocks = <&clkctrl ARTPEC6_CLK_CPU_PERIPH>; 12362306a36Sopenharmony_ci status = "disabled"; 12462306a36Sopenharmony_ci }; 12562306a36Sopenharmony_ci 12662306a36Sopenharmony_ci intc: interrupt-controller@faf01000 { 12762306a36Sopenharmony_ci interrupt-controller; 12862306a36Sopenharmony_ci compatible = "arm,cortex-a9-gic"; 12962306a36Sopenharmony_ci #interrupt-cells = <3>; 13062306a36Sopenharmony_ci reg = < 0xfaf01000 0x1000 >, < 0xfaf00100 0x0100 >; 13162306a36Sopenharmony_ci }; 13262306a36Sopenharmony_ci 13362306a36Sopenharmony_ci pl310: cache-controller@faf10000 { 13462306a36Sopenharmony_ci compatible = "arm,pl310-cache"; 13562306a36Sopenharmony_ci cache-unified; 13662306a36Sopenharmony_ci cache-level = <2>; 13762306a36Sopenharmony_ci reg = <0xfaf10000 0x1000>; 13862306a36Sopenharmony_ci interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 13962306a36Sopenharmony_ci arm,data-latency = <1 1 1>; 14062306a36Sopenharmony_ci arm,tag-latency = <1 1 1>; 14162306a36Sopenharmony_ci arm,filter-ranges = <0x0 0x80000000>; 14262306a36Sopenharmony_ci arm,double-linefill = <1>; 14362306a36Sopenharmony_ci arm,double-linefill-incr = <0>; 14462306a36Sopenharmony_ci arm,double-linefill-wrap = <0>; 14562306a36Sopenharmony_ci prefetch-data = <1>; 14662306a36Sopenharmony_ci prefetch-instr = <1>; 14762306a36Sopenharmony_ci arm,prefetch-offset = <0>; 14862306a36Sopenharmony_ci arm,prefetch-drop = <1>; 14962306a36Sopenharmony_ci }; 15062306a36Sopenharmony_ci 15162306a36Sopenharmony_ci pmu { 15262306a36Sopenharmony_ci compatible = "arm,cortex-a9-pmu"; 15362306a36Sopenharmony_ci interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, 15462306a36Sopenharmony_ci <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>; 15562306a36Sopenharmony_ci interrupt-affinity = <&cpu0>, <&cpu1>; 15662306a36Sopenharmony_ci }; 15762306a36Sopenharmony_ci 15862306a36Sopenharmony_ci /* 15962306a36Sopenharmony_ci * Both pci nodes cannot be enabled at the same time, 16062306a36Sopenharmony_ci * leave the unwanted node as disabled. 16162306a36Sopenharmony_ci */ 16262306a36Sopenharmony_ci pcie: pcie@f8050000 { 16362306a36Sopenharmony_ci compatible = "axis,artpec6-pcie", "snps,dw-pcie"; 16462306a36Sopenharmony_ci reg = <0xf8050000 0x2000 16562306a36Sopenharmony_ci 0xf8040000 0x1000 16662306a36Sopenharmony_ci 0xc0000000 0x2000>; 16762306a36Sopenharmony_ci reg-names = "dbi", "phy", "config"; 16862306a36Sopenharmony_ci #address-cells = <3>; 16962306a36Sopenharmony_ci #size-cells = <2>; 17062306a36Sopenharmony_ci device_type = "pci"; 17162306a36Sopenharmony_ci /* downstream I/O */ 17262306a36Sopenharmony_ci ranges = <0x81000000 0 0 0xc0002000 0 0x00010000 17362306a36Sopenharmony_ci /* non-prefetchable memory */ 17462306a36Sopenharmony_ci 0x82000000 0 0xc0012000 0xc0012000 0 0x1ffee000>; 17562306a36Sopenharmony_ci num-lanes = <2>; 17662306a36Sopenharmony_ci bus-range = <0x00 0xff>; 17762306a36Sopenharmony_ci interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>; 17862306a36Sopenharmony_ci interrupt-names = "msi"; 17962306a36Sopenharmony_ci #interrupt-cells = <1>; 18062306a36Sopenharmony_ci interrupt-map-mask = <0 0 0 0x7>; 18162306a36Sopenharmony_ci interrupt-map = <0 0 0 1 &intc GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, 18262306a36Sopenharmony_ci <0 0 0 2 &intc GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 18362306a36Sopenharmony_ci <0 0 0 3 &intc GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>, 18462306a36Sopenharmony_ci <0 0 0 4 &intc GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>; 18562306a36Sopenharmony_ci axis,syscon-pcie = <&syscon>; 18662306a36Sopenharmony_ci status = "disabled"; 18762306a36Sopenharmony_ci }; 18862306a36Sopenharmony_ci 18962306a36Sopenharmony_ci pcie_ep: pcie_ep@f8050000 { 19062306a36Sopenharmony_ci compatible = "axis,artpec6-pcie-ep", "snps,dw-pcie"; 19162306a36Sopenharmony_ci reg = <0xf8050000 0x2000 19262306a36Sopenharmony_ci 0xf8051000 0x2000 19362306a36Sopenharmony_ci 0xf8040000 0x1000 19462306a36Sopenharmony_ci 0xc0000000 0x20000000>; 19562306a36Sopenharmony_ci reg-names = "dbi", "dbi2", "phy", "addr_space"; 19662306a36Sopenharmony_ci num-ib-windows = <6>; 19762306a36Sopenharmony_ci num-ob-windows = <2>; 19862306a36Sopenharmony_ci num-lanes = <2>; 19962306a36Sopenharmony_ci axis,syscon-pcie = <&syscon>; 20062306a36Sopenharmony_ci status = "disabled"; 20162306a36Sopenharmony_ci }; 20262306a36Sopenharmony_ci 20362306a36Sopenharmony_ci pinctrl: pinctrl@f801d000 { 20462306a36Sopenharmony_ci compatible = "axis,artpec6-pinctrl"; 20562306a36Sopenharmony_ci reg = <0xf801d000 0x400>; 20662306a36Sopenharmony_ci 20762306a36Sopenharmony_ci pinctrl_uart0: uart0grp { 20862306a36Sopenharmony_ci function = "uart0"; 20962306a36Sopenharmony_ci groups = "uart0grp2"; 21062306a36Sopenharmony_ci bias-pull-up; 21162306a36Sopenharmony_ci }; 21262306a36Sopenharmony_ci pinctrl_uart1: uart1grp { 21362306a36Sopenharmony_ci function = "uart1"; 21462306a36Sopenharmony_ci groups = "uart1grp0"; 21562306a36Sopenharmony_ci bias-pull-up; 21662306a36Sopenharmony_ci }; 21762306a36Sopenharmony_ci pinctrl_uart2: uart2grp { 21862306a36Sopenharmony_ci function = "uart2"; 21962306a36Sopenharmony_ci groups = "uart2grp1"; 22062306a36Sopenharmony_ci bias-pull-up; 22162306a36Sopenharmony_ci }; 22262306a36Sopenharmony_ci pinctrl_uart3: uart3grp { 22362306a36Sopenharmony_ci function = "uart3"; 22462306a36Sopenharmony_ci groups = "uart3grp0"; 22562306a36Sopenharmony_ci bias-pull-up; 22662306a36Sopenharmony_ci }; 22762306a36Sopenharmony_ci }; 22862306a36Sopenharmony_ci 22962306a36Sopenharmony_ci amba@0 { 23062306a36Sopenharmony_ci compatible = "simple-bus"; 23162306a36Sopenharmony_ci #address-cells = <0x1>; 23262306a36Sopenharmony_ci #size-cells = <0x1>; 23362306a36Sopenharmony_ci ranges; 23462306a36Sopenharmony_ci dma-ranges; 23562306a36Sopenharmony_ci 23662306a36Sopenharmony_ci crypto@f4264000 { 23762306a36Sopenharmony_ci compatible = "axis,artpec6-crypto"; 23862306a36Sopenharmony_ci reg = <0xf4264000 0x4000>; 23962306a36Sopenharmony_ci interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; 24062306a36Sopenharmony_ci }; 24162306a36Sopenharmony_ci 24262306a36Sopenharmony_ci dma0: dma@f8019000 { 24362306a36Sopenharmony_ci compatible = "renesas,nbpfaxi64dmac8b16"; 24462306a36Sopenharmony_ci reg = <0xf8019000 0x400>; 24562306a36Sopenharmony_ci interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>, /* error */ 24662306a36Sopenharmony_ci <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>, 24762306a36Sopenharmony_ci <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, 24862306a36Sopenharmony_ci <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>, 24962306a36Sopenharmony_ci <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>, 25062306a36Sopenharmony_ci <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>, 25162306a36Sopenharmony_ci <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>, 25262306a36Sopenharmony_ci <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>, 25362306a36Sopenharmony_ci <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 25462306a36Sopenharmony_ci interrupt-names = "error", 25562306a36Sopenharmony_ci "ch0", "ch1", "ch2", "ch3", 25662306a36Sopenharmony_ci "ch4", "ch5", "ch6", "ch7", 25762306a36Sopenharmony_ci "ch8", "ch9", "ch10", "ch12", 25862306a36Sopenharmony_ci "ch12", "ch13", "ch14", "ch15"; 25962306a36Sopenharmony_ci clocks = <&clkctrl ARTPEC6_CLK_DMA_ACLK>; 26062306a36Sopenharmony_ci #dma-cells = <2>; 26162306a36Sopenharmony_ci dma-channels = <8>; 26262306a36Sopenharmony_ci dma-requests = <8>; 26362306a36Sopenharmony_ci }; 26462306a36Sopenharmony_ci dma1: dma@f8019400 { 26562306a36Sopenharmony_ci compatible = "renesas,nbpfaxi64dmac8b16"; 26662306a36Sopenharmony_ci reg = <0xf8019400 0x400>; 26762306a36Sopenharmony_ci interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>, /* error */ 26862306a36Sopenharmony_ci <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, 26962306a36Sopenharmony_ci <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>, 27062306a36Sopenharmony_ci <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>, 27162306a36Sopenharmony_ci <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>, 27262306a36Sopenharmony_ci <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>, 27362306a36Sopenharmony_ci <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>, 27462306a36Sopenharmony_ci <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>, 27562306a36Sopenharmony_ci <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 27662306a36Sopenharmony_ci interrupt-names = "error", 27762306a36Sopenharmony_ci "ch0", "ch1", "ch2", "ch3", 27862306a36Sopenharmony_ci "ch4", "ch5", "ch6", "ch7", 27962306a36Sopenharmony_ci "ch8", "ch9", "ch10", "ch12", 28062306a36Sopenharmony_ci "ch12", "ch13", "ch14", "ch15"; 28162306a36Sopenharmony_ci clocks = <&clkctrl ARTPEC6_CLK_DMA_ACLK>; 28262306a36Sopenharmony_ci #dma-cells = <2>; 28362306a36Sopenharmony_ci dma-channels = <8>; 28462306a36Sopenharmony_ci dma-requests = <8>; 28562306a36Sopenharmony_ci }; 28662306a36Sopenharmony_ci 28762306a36Sopenharmony_ci ethernet: ethernet@f8010000 { 28862306a36Sopenharmony_ci clock-names = "stmmaceth", "ptp_ref"; 28962306a36Sopenharmony_ci clocks = <&clkctrl ARTPEC6_CLK_ETH_ACLK>, 29062306a36Sopenharmony_ci <&clkctrl ARTPEC6_CLK_PTP_REF>; 29162306a36Sopenharmony_ci compatible = "snps,dwmac-4.10a", "snps,dwmac"; 29262306a36Sopenharmony_ci interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, 29362306a36Sopenharmony_ci <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 29462306a36Sopenharmony_ci interrupt-names = "macirq", "eth_lpi"; 29562306a36Sopenharmony_ci reg = <0xf8010000 0x4000>; 29662306a36Sopenharmony_ci 29762306a36Sopenharmony_ci snps,axi-config = <&stmmac_axi_setup>; 29862306a36Sopenharmony_ci snps,mtl-rx-config = <&mtl_rx_setup>; 29962306a36Sopenharmony_ci snps,mtl-tx-config = <&mtl_tx_setup>; 30062306a36Sopenharmony_ci 30162306a36Sopenharmony_ci snps,txpbl = <8>; 30262306a36Sopenharmony_ci snps,rxpbl = <2>; 30362306a36Sopenharmony_ci snps,aal; 30462306a36Sopenharmony_ci snps,tso; 30562306a36Sopenharmony_ci 30662306a36Sopenharmony_ci status = "disabled"; 30762306a36Sopenharmony_ci 30862306a36Sopenharmony_ci stmmac_axi_setup: stmmac-axi-config { 30962306a36Sopenharmony_ci snps,wr_osr_lmt = <1>; 31062306a36Sopenharmony_ci snps,rd_osr_lmt = <15>; 31162306a36Sopenharmony_ci /* If FB is disabled, the AXI master chooses 31262306a36Sopenharmony_ci * a burst length of any value less than the 31362306a36Sopenharmony_ci * maximum enabled burst length 31462306a36Sopenharmony_ci * (all lesser burst length enables are redundant). 31562306a36Sopenharmony_ci */ 31662306a36Sopenharmony_ci snps,blen = <0 0 0 0 16 0 0>; 31762306a36Sopenharmony_ci }; 31862306a36Sopenharmony_ci 31962306a36Sopenharmony_ci mtl_rx_setup: rx-queues-config { 32062306a36Sopenharmony_ci snps,rx-queues-to-use = <1>; 32162306a36Sopenharmony_ci queue0 {}; 32262306a36Sopenharmony_ci }; 32362306a36Sopenharmony_ci 32462306a36Sopenharmony_ci mtl_tx_setup: tx-queues-config { 32562306a36Sopenharmony_ci snps,tx-queues-to-use = <2>; 32662306a36Sopenharmony_ci queue0 {}; 32762306a36Sopenharmony_ci queue1 {}; 32862306a36Sopenharmony_ci }; 32962306a36Sopenharmony_ci }; 33062306a36Sopenharmony_ci 33162306a36Sopenharmony_ci uart0: serial@f8036000 { 33262306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 33362306a36Sopenharmony_ci reg = <0xf8036000 0x1000>; 33462306a36Sopenharmony_ci interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 33562306a36Sopenharmony_ci clocks = <&clkctrl ARTPEC6_CLK_UART_REFCLK>, 33662306a36Sopenharmony_ci <&clkctrl ARTPEC6_CLK_UART_PCLK>; 33762306a36Sopenharmony_ci clock-names = "uart_clk", "apb_pclk"; 33862306a36Sopenharmony_ci pinctrl-names = "default"; 33962306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart0>; 34062306a36Sopenharmony_ci dmas = <&dma0 4 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>, 34162306a36Sopenharmony_ci <&dma0 5 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>; 34262306a36Sopenharmony_ci dma-names = "rx", "tx"; 34362306a36Sopenharmony_ci status = "disabled"; 34462306a36Sopenharmony_ci }; 34562306a36Sopenharmony_ci uart1: serial@f8037000 { 34662306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 34762306a36Sopenharmony_ci reg = <0xf8037000 0x1000>; 34862306a36Sopenharmony_ci interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>; 34962306a36Sopenharmony_ci clocks = <&clkctrl ARTPEC6_CLK_UART_REFCLK>, 35062306a36Sopenharmony_ci <&clkctrl ARTPEC6_CLK_UART_PCLK>; 35162306a36Sopenharmony_ci clock-names = "uart_clk", "apb_pclk"; 35262306a36Sopenharmony_ci pinctrl-names = "default"; 35362306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart1>; 35462306a36Sopenharmony_ci dmas = <&dma0 6 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>, 35562306a36Sopenharmony_ci <&dma0 7 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>; 35662306a36Sopenharmony_ci dma-names = "rx", "tx"; 35762306a36Sopenharmony_ci status = "disabled"; 35862306a36Sopenharmony_ci }; 35962306a36Sopenharmony_ci uart2: serial@f8038000 { 36062306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 36162306a36Sopenharmony_ci reg = <0xf8038000 0x1000>; 36262306a36Sopenharmony_ci interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>; 36362306a36Sopenharmony_ci clocks = <&clkctrl ARTPEC6_CLK_UART_REFCLK>, 36462306a36Sopenharmony_ci <&clkctrl ARTPEC6_CLK_UART_PCLK>; 36562306a36Sopenharmony_ci clock-names = "uart_clk", "apb_pclk"; 36662306a36Sopenharmony_ci pinctrl-names = "default"; 36762306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart2>; 36862306a36Sopenharmony_ci dmas = <&dma1 0 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>, 36962306a36Sopenharmony_ci <&dma1 1 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>; 37062306a36Sopenharmony_ci dma-names = "rx", "tx"; 37162306a36Sopenharmony_ci status = "disabled"; 37262306a36Sopenharmony_ci }; 37362306a36Sopenharmony_ci uart3: serial@f8039000 { 37462306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 37562306a36Sopenharmony_ci reg = <0xf8039000 0x1000>; 37662306a36Sopenharmony_ci interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>; 37762306a36Sopenharmony_ci clocks = <&clkctrl ARTPEC6_CLK_UART_REFCLK>, 37862306a36Sopenharmony_ci <&clkctrl ARTPEC6_CLK_UART_PCLK>; 37962306a36Sopenharmony_ci clock-names = "uart_clk", "apb_pclk"; 38062306a36Sopenharmony_ci pinctrl-names = "default"; 38162306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart3>; 38262306a36Sopenharmony_ci dmas = <&dma1 2 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>, 38362306a36Sopenharmony_ci <&dma1 3 (NBPF_SLAVE_RQ_HIGH | NBPF_SLAVE_RQ_LEVEL)>; 38462306a36Sopenharmony_ci dma-names = "rx", "tx"; 38562306a36Sopenharmony_ci status = "disabled"; 38662306a36Sopenharmony_ci }; 38762306a36Sopenharmony_ci }; 38862306a36Sopenharmony_ci}; 389