15fa2daaaSVineet Gupta/* 25fa2daaaSVineet Gupta * Copyright (C) 2014, 2015 Synopsys, Inc. (www.synopsys.com) 35fa2daaaSVineet Gupta * 45fa2daaaSVineet Gupta * This program is free software; you can redistribute it and/or modify 55fa2daaaSVineet Gupta * it under the terms of the GNU General Public License version 2 as 65fa2daaaSVineet Gupta * published by the Free Software Foundation. 75fa2daaaSVineet Gupta */ 85fa2daaaSVineet Gupta 95fa2daaaSVineet Gupta/* 105fa2daaaSVineet Gupta * Device tree for AXC003 CPU card: HS38x2 (Dual Core) with IDU intc 115fa2daaaSVineet Gupta */ 125fa2daaaSVineet Gupta 132e8cd938SVineet Gupta/include/ "skeleton_hs_idu.dtsi" 142e8cd938SVineet Gupta 155fa2daaaSVineet Gupta/ { 165fa2daaaSVineet Gupta compatible = "snps,arc"; 17e2fc61f3SAlexey Brodkin clock-frequency = <90000000>; 185fa2daaaSVineet Gupta #address-cells = <1>; 195fa2daaaSVineet Gupta #size-cells = <1>; 205fa2daaaSVineet Gupta 215fa2daaaSVineet Gupta cpu_card { 225fa2daaaSVineet Gupta compatible = "simple-bus"; 235fa2daaaSVineet Gupta #address-cells = <1>; 245fa2daaaSVineet Gupta #size-cells = <1>; 255fa2daaaSVineet Gupta 265fa2daaaSVineet Gupta ranges = <0x00000000 0xf0000000 0x10000000>; 275fa2daaaSVineet Gupta 28*b3d6aba8SVineet Gupta core_clk: core_clk { 29*b3d6aba8SVineet Gupta #clock-cells = <0>; 30*b3d6aba8SVineet Gupta compatible = "fixed-clock"; 31*b3d6aba8SVineet Gupta clock-frequency = <90000000>; 32*b3d6aba8SVineet Gupta }; 33*b3d6aba8SVineet Gupta 349ba7648cSVineet Gupta core_intc: archs-intc@cpu { 355fa2daaaSVineet Gupta compatible = "snps,archs-intc"; 365fa2daaaSVineet Gupta interrupt-controller; 375fa2daaaSVineet Gupta #interrupt-cells = <1>; 385fa2daaaSVineet Gupta }; 395fa2daaaSVineet Gupta 405fa2daaaSVineet Gupta idu_intc: idu-interrupt-controller { 415fa2daaaSVineet Gupta compatible = "snps,archs-idu-intc"; 425fa2daaaSVineet Gupta interrupt-controller; 439ba7648cSVineet Gupta interrupt-parent = <&core_intc>; 445fa2daaaSVineet Gupta 455fa2daaaSVineet Gupta /* 465fa2daaaSVineet Gupta * <hwirq distribution> 475fa2daaaSVineet Gupta * distribution: 0=RR; 1=cpu0, 2=cpu1, 4=cpu2, 8=cpu3 485fa2daaaSVineet Gupta */ 495fa2daaaSVineet Gupta #interrupt-cells = <2>; 505fa2daaaSVineet Gupta 515fa2daaaSVineet Gupta /* 525fa2daaaSVineet Gupta * upstream irqs to core intc - downstream these are 535fa2daaaSVineet Gupta * "COMMON" irq 0,1.. 545fa2daaaSVineet Gupta */ 555fa2daaaSVineet Gupta interrupts = <24 25>; 565fa2daaaSVineet Gupta }; 575fa2daaaSVineet Gupta 585fa2daaaSVineet Gupta /* 595fa2daaaSVineet Gupta * this GPIO block ORs all interrupts on CPU card (creg,..) 605fa2daaaSVineet Gupta * to uplink only 1 IRQ to ARC core intc 615fa2daaaSVineet Gupta */ 625fa2daaaSVineet Gupta dw-apb-gpio@0x2000 { 635fa2daaaSVineet Gupta compatible = "snps,dw-apb-gpio"; 645fa2daaaSVineet Gupta reg = < 0x2000 0x80 >; 655fa2daaaSVineet Gupta #address-cells = <1>; 665fa2daaaSVineet Gupta #size-cells = <0>; 675fa2daaaSVineet Gupta 685fa2daaaSVineet Gupta ictl_intc: gpio-controller@0 { 695fa2daaaSVineet Gupta compatible = "snps,dw-apb-gpio-port"; 705fa2daaaSVineet Gupta gpio-controller; 715fa2daaaSVineet Gupta #gpio-cells = <2>; 725fa2daaaSVineet Gupta snps,nr-gpios = <30>; 735fa2daaaSVineet Gupta reg = <0>; 745fa2daaaSVineet Gupta interrupt-controller; 755fa2daaaSVineet Gupta #interrupt-cells = <2>; 765fa2daaaSVineet Gupta interrupt-parent = <&idu_intc>; 775fa2daaaSVineet Gupta 785fa2daaaSVineet Gupta /* 795fa2daaaSVineet Gupta * cmn irq 1 -> cpu irq 25 805fa2daaaSVineet Gupta * Distribute to cpu0 only 815fa2daaaSVineet Gupta */ 825fa2daaaSVineet Gupta interrupts = <1 1>; 835fa2daaaSVineet Gupta }; 845fa2daaaSVineet Gupta }; 855fa2daaaSVineet Gupta 865fa2daaaSVineet Gupta debug_uart: dw-apb-uart@0x5000 { 875fa2daaaSVineet Gupta compatible = "snps,dw-apb-uart"; 885fa2daaaSVineet Gupta reg = <0x5000 0x100>; 895fa2daaaSVineet Gupta clock-frequency = <33333000>; 905fa2daaaSVineet Gupta interrupt-parent = <&ictl_intc>; 915fa2daaaSVineet Gupta interrupts = <2 4>; 925fa2daaaSVineet Gupta baud = <115200>; 935fa2daaaSVineet Gupta reg-shift = <2>; 945fa2daaaSVineet Gupta reg-io-width = <4>; 955fa2daaaSVineet Gupta }; 965fa2daaaSVineet Gupta 975fa2daaaSVineet Gupta arcpct0: pct { 985fa2daaaSVineet Gupta compatible = "snps,archs-pct"; 995fa2daaaSVineet Gupta #interrupt-cells = <1>; 1009ba7648cSVineet Gupta interrupt-parent = <&core_intc>; 1015fa2daaaSVineet Gupta interrupts = <20>; 1025fa2daaaSVineet Gupta }; 1035fa2daaaSVineet Gupta }; 1045fa2daaaSVineet Gupta 1055fa2daaaSVineet Gupta /* 1065fa2daaaSVineet Gupta * This INTC is actually connected to DW APB GPIO 1075fa2daaaSVineet Gupta * which acts as a wire between MB INTC and CPU INTC. 1085fa2daaaSVineet Gupta * GPIO INTC is configured in platform init code 1095fa2daaaSVineet Gupta * and here we mimic direct connection from MB INTC to 1105fa2daaaSVineet Gupta * CPU INTC, thus we set "interrupts = <0 1>" instead of 1115fa2daaaSVineet Gupta * "interrupts = <12>" 1125fa2daaaSVineet Gupta * 1135fa2daaaSVineet Gupta * This intc actually resides on MB, but we move it here to 1145fa2daaaSVineet Gupta * avoid duplicating the MB dtsi file given that IRQ from 1155fa2daaaSVineet Gupta * this intc to cpu intc are different for axs101 and axs103 1165fa2daaaSVineet Gupta */ 1175fa2daaaSVineet Gupta mb_intc: dw-apb-ictl@0xe0012000 { 1185fa2daaaSVineet Gupta #interrupt-cells = <1>; 1195fa2daaaSVineet Gupta compatible = "snps,dw-apb-ictl"; 1205fa2daaaSVineet Gupta reg = < 0xe0012000 0x200 >; 1215fa2daaaSVineet Gupta interrupt-controller; 1225fa2daaaSVineet Gupta interrupt-parent = <&idu_intc>; 1235fa2daaaSVineet Gupta interrupts = <0 1>; /* cmn irq 0 -> cpu irq 24 1245fa2daaaSVineet Gupta distribute to cpu0 only */ 1255fa2daaaSVineet Gupta }; 1265fa2daaaSVineet Gupta 1275fa2daaaSVineet Gupta memory { 1285fa2daaaSVineet Gupta #address-cells = <1>; 1295fa2daaaSVineet Gupta #size-cells = <1>; 1305fa2daaaSVineet Gupta ranges = <0x00000000 0x80000000 0x40000000>; 1315fa2daaaSVineet Gupta device_type = "memory"; 132f759ee57SVineet Gupta reg = <0x80000000 0x20000000>; /* 512MiB */ 1335fa2daaaSVineet Gupta }; 1345fa2daaaSVineet Gupta}; 135