xref: /linux/scripts/dtc/include-prefixes/arc/abilis_tb10x.dtsi (revision 75bf465f0bc33e9b776a46d6a1b9b990f5fb7c37)
1*45051539SThomas Gleixner// SPDX-License-Identifier: GPL-2.0-only
22eb9504bSChristian Ruppert/*
32eb9504bSChristian Ruppert * Abilis Systems TB10X SOC device tree
42eb9504bSChristian Ruppert *
52eb9504bSChristian Ruppert * Copyright (C) Abilis Systems 2013
62eb9504bSChristian Ruppert *
72eb9504bSChristian Ruppert * Author: Christian Ruppert <christian.ruppert@abilis.com>
82eb9504bSChristian Ruppert */
92eb9504bSChristian Ruppert
102eb9504bSChristian Ruppert
112eb9504bSChristian Ruppert/ {
122eb9504bSChristian Ruppert	compatible		= "abilis,arc-tb10x";
132eb9504bSChristian Ruppert	#address-cells		= <1>;
142eb9504bSChristian Ruppert	#size-cells		= <1>;
152eb9504bSChristian Ruppert
162eb9504bSChristian Ruppert	cpus {
172eb9504bSChristian Ruppert		#address-cells = <1>;
182eb9504bSChristian Ruppert		#size-cells = <0>;
192eb9504bSChristian Ruppert		cpu@0 {
202eb9504bSChristian Ruppert			device_type = "cpu";
212eb9504bSChristian Ruppert			compatible = "snps,arc770d";
222eb9504bSChristian Ruppert			reg = <0>;
232eb9504bSChristian Ruppert		};
242eb9504bSChristian Ruppert	};
252eb9504bSChristian Ruppert
267ec9f34aSVineet Gupta	/* TIMER0 with interrupt for clockevent */
277ec9f34aSVineet Gupta	timer0 {
287ec9f34aSVineet Gupta		compatible = "snps,arc-timer";
297ec9f34aSVineet Gupta		interrupts = <3>;
307ec9f34aSVineet Gupta		interrupt-parent = <&intc>;
317ec9f34aSVineet Gupta		clocks = <&cpu_clk>;
327ec9f34aSVineet Gupta	};
337ec9f34aSVineet Gupta
347ec9f34aSVineet Gupta	/* TIMER1 for free running clocksource */
357ec9f34aSVineet Gupta	timer1 {
367ec9f34aSVineet Gupta		compatible = "snps,arc-timer";
377ec9f34aSVineet Gupta		clocks = <&cpu_clk>;
387ec9f34aSVineet Gupta	};
397ec9f34aSVineet Gupta
402eb9504bSChristian Ruppert	soc100 {
412eb9504bSChristian Ruppert		#address-cells	= <1>;
422eb9504bSChristian Ruppert		#size-cells	= <1>;
432eb9504bSChristian Ruppert		device_type	= "soc";
442eb9504bSChristian Ruppert		ranges		= <0xfe000000 0xfe000000 0x02000000
45ef4c54c3SAlexey Brodkin				0x000f0000 0x000f0000 0x00010000>;
462eb9504bSChristian Ruppert		compatible	= "abilis,tb10x", "simple-bus";
472eb9504bSChristian Ruppert
482eb9504bSChristian Ruppert		pll0: oscillator {
492eb9504bSChristian Ruppert			compatible = "fixed-clock";
502eb9504bSChristian Ruppert			#clock-cells = <0>;
512eb9504bSChristian Ruppert			clock-output-names = "pll0";
522eb9504bSChristian Ruppert		};
532eb9504bSChristian Ruppert		cpu_clk: clkdiv_cpu {
540dfad77dSChristian Ruppert			compatible = "fixed-factor-clock";
552eb9504bSChristian Ruppert			#clock-cells = <0>;
562eb9504bSChristian Ruppert			clocks = <&pll0>;
572eb9504bSChristian Ruppert			clock-output-names = "cpu_clk";
582eb9504bSChristian Ruppert		};
592eb9504bSChristian Ruppert		ahb_clk: clkdiv_ahb {
600dfad77dSChristian Ruppert			compatible = "fixed-factor-clock";
612eb9504bSChristian Ruppert			#clock-cells = <0>;
622eb9504bSChristian Ruppert			clocks = <&pll0>;
632eb9504bSChristian Ruppert			clock-output-names = "ahb_clk";
642eb9504bSChristian Ruppert		};
652eb9504bSChristian Ruppert
66ef4c54c3SAlexey Brodkin		iomux: iomux@ff10601c {
672eb9504bSChristian Ruppert			compatible = "abilis,tb10x-iomux";
689c8e612dSChristian Ruppert			#gpio-range-cells = <3>;
69ef4c54c3SAlexey Brodkin			reg = <0xff10601c 0x4>;
702eb9504bSChristian Ruppert		};
712eb9504bSChristian Ruppert
722eb9504bSChristian Ruppert		intc: interrupt-controller {
732eb9504bSChristian Ruppert			compatible = "snps,arc700-intc";
742eb9504bSChristian Ruppert			interrupt-controller;
752eb9504bSChristian Ruppert			#interrupt-cells = <1>;
762eb9504bSChristian Ruppert		};
772eb9504bSChristian Ruppert		tb10x_ictl: pic@fe002000 {
78723e2b80SChristian Ruppert			compatible = "abilis,tb10x-ictl";
79ef4c54c3SAlexey Brodkin			reg = <0xfe002000 0x20>;
802eb9504bSChristian Ruppert			interrupt-controller;
812eb9504bSChristian Ruppert			#interrupt-cells = <2>;
822eb9504bSChristian Ruppert			interrupt-parent = <&intc>;
832eb9504bSChristian Ruppert			interrupts = <5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
842eb9504bSChristian Ruppert					20 21 22 23 24 25 26 27 28 29 30 31>;
852eb9504bSChristian Ruppert		};
862eb9504bSChristian Ruppert
87ef4c54c3SAlexey Brodkin		uart@ff100000 {
887d19273cSChristian Ruppert			compatible = "snps,dw-apb-uart";
89ef4c54c3SAlexey Brodkin			reg = <0xff100000 0x100>;
902eb9504bSChristian Ruppert			clock-frequency = <166666666>;
91723e2b80SChristian Ruppert			interrupts = <25 8>;
922eb9504bSChristian Ruppert			reg-shift = <2>;
932eb9504bSChristian Ruppert			reg-io-width = <4>;
942eb9504bSChristian Ruppert			interrupt-parent = <&tb10x_ictl>;
952eb9504bSChristian Ruppert		};
96ef4c54c3SAlexey Brodkin		ethernet@fe100000 {
972eb9504bSChristian Ruppert			compatible = "snps,dwmac-3.70a","snps,dwmac";
98ef4c54c3SAlexey Brodkin			reg = <0xfe100000 0x1058>;
992eb9504bSChristian Ruppert			interrupt-parent = <&tb10x_ictl>;
100723e2b80SChristian Ruppert			interrupts = <6 8>;
1012eb9504bSChristian Ruppert			interrupt-names = "macirq";
1022eb9504bSChristian Ruppert			clocks = <&ahb_clk>;
1032eb9504bSChristian Ruppert			clock-names = "stmmaceth";
1042eb9504bSChristian Ruppert		};
105ef4c54c3SAlexey Brodkin		dma@fe000000 {
1062eb9504bSChristian Ruppert			compatible = "snps,dma-spear1340";
107ef4c54c3SAlexey Brodkin			reg = <0xfe000000 0x400>;
1082eb9504bSChristian Ruppert			interrupt-parent = <&tb10x_ictl>;
109723e2b80SChristian Ruppert			interrupts = <14 8>;
1102eb9504bSChristian Ruppert			dma-channels = <6>;
1112eb9504bSChristian Ruppert			dma-requests = <0>;
1122eb9504bSChristian Ruppert			dma-masters = <1>;
1132eb9504bSChristian Ruppert			#dma-cells = <3>;
1142eb9504bSChristian Ruppert			chan_allocation_order = <0>;
1152eb9504bSChristian Ruppert			chan_priority = <1>;
1162eb9504bSChristian Ruppert			block_size = <0x7ff>;
1172e65060eSAndy Shevchenko			data-width = <4>;
1182eb9504bSChristian Ruppert			clocks = <&ahb_clk>;
1192eb9504bSChristian Ruppert			clock-names = "hclk";
120bd2c6636SEugeniy Paltsev			multi-block = <1 1 1 1 1 1>;
1212eb9504bSChristian Ruppert		};
1222eb9504bSChristian Ruppert
123ef4c54c3SAlexey Brodkin		i2c0: i2c@ff120000 {
1242eb9504bSChristian Ruppert			#address-cells = <1>;
1252eb9504bSChristian Ruppert			#size-cells = <0>;
1262eb9504bSChristian Ruppert			compatible = "snps,designware-i2c";
127ef4c54c3SAlexey Brodkin			reg = <0xff120000 0x1000>;
1282eb9504bSChristian Ruppert			interrupt-parent = <&tb10x_ictl>;
129723e2b80SChristian Ruppert			interrupts = <12 8>;
1302eb9504bSChristian Ruppert			clocks = <&ahb_clk>;
1312eb9504bSChristian Ruppert		};
132ef4c54c3SAlexey Brodkin		i2c1: i2c@ff121000 {
1332eb9504bSChristian Ruppert			#address-cells = <1>;
1342eb9504bSChristian Ruppert			#size-cells = <0>;
1352eb9504bSChristian Ruppert			compatible = "snps,designware-i2c";
136ef4c54c3SAlexey Brodkin			reg = <0xff121000 0x1000>;
1372eb9504bSChristian Ruppert			interrupt-parent = <&tb10x_ictl>;
138723e2b80SChristian Ruppert			interrupts = <12 8>;
1392eb9504bSChristian Ruppert			clocks = <&ahb_clk>;
1402eb9504bSChristian Ruppert		};
141ef4c54c3SAlexey Brodkin		i2c2: i2c@ff122000 {
1422eb9504bSChristian Ruppert			#address-cells = <1>;
1432eb9504bSChristian Ruppert			#size-cells = <0>;
1442eb9504bSChristian Ruppert			compatible = "snps,designware-i2c";
145ef4c54c3SAlexey Brodkin			reg = <0xff122000 0x1000>;
1462eb9504bSChristian Ruppert			interrupt-parent = <&tb10x_ictl>;
147723e2b80SChristian Ruppert			interrupts = <12 8>;
1482eb9504bSChristian Ruppert			clocks = <&ahb_clk>;
1492eb9504bSChristian Ruppert		};
150ef4c54c3SAlexey Brodkin		i2c3: i2c@ff123000 {
1512eb9504bSChristian Ruppert			#address-cells = <1>;
1522eb9504bSChristian Ruppert			#size-cells = <0>;
1532eb9504bSChristian Ruppert			compatible = "snps,designware-i2c";
154ef4c54c3SAlexey Brodkin			reg = <0xff123000 0x1000>;
1552eb9504bSChristian Ruppert			interrupt-parent = <&tb10x_ictl>;
156723e2b80SChristian Ruppert			interrupts = <12 8>;
1572eb9504bSChristian Ruppert			clocks = <&ahb_clk>;
1582eb9504bSChristian Ruppert		};
159ef4c54c3SAlexey Brodkin		i2c4: i2c@ff124000 {
1602eb9504bSChristian Ruppert			#address-cells = <1>;
1612eb9504bSChristian Ruppert			#size-cells = <0>;
1622eb9504bSChristian Ruppert			compatible = "snps,designware-i2c";
163ef4c54c3SAlexey Brodkin			reg = <0xff124000 0x1000>;
1642eb9504bSChristian Ruppert			interrupt-parent = <&tb10x_ictl>;
165723e2b80SChristian Ruppert			interrupts = <12 8>;
1662eb9504bSChristian Ruppert			clocks = <&ahb_clk>;
1672eb9504bSChristian Ruppert		};
1682eb9504bSChristian Ruppert
169ef4c54c3SAlexey Brodkin		spi0: spi@fe010000 {
1702eb9504bSChristian Ruppert			#address-cells = <1>;
1712eb9504bSChristian Ruppert			#size-cells = <0>;
1722eb9504bSChristian Ruppert			cell-index = <0>;
1732eb9504bSChristian Ruppert			compatible = "abilis,tb100-spi";
1742eb9504bSChristian Ruppert			num-cs = <1>;
175ef4c54c3SAlexey Brodkin			reg = <0xfe010000 0x20>;
1762eb9504bSChristian Ruppert			interrupt-parent = <&tb10x_ictl>;
177723e2b80SChristian Ruppert			interrupts = <26 8>;
1782eb9504bSChristian Ruppert			clocks = <&ahb_clk>;
1792eb9504bSChristian Ruppert		};
180ef4c54c3SAlexey Brodkin		spi1: spi@fe011000 {
1812eb9504bSChristian Ruppert			#address-cells = <1>;
1822eb9504bSChristian Ruppert			#size-cells = <0>;
1832eb9504bSChristian Ruppert			cell-index = <1>;
1847d19273cSChristian Ruppert			compatible = "abilis,tb100-spi";
1852eb9504bSChristian Ruppert			num-cs = <2>;
186ef4c54c3SAlexey Brodkin			reg = <0xfe011000 0x20>;
1872eb9504bSChristian Ruppert			interrupt-parent = <&tb10x_ictl>;
188723e2b80SChristian Ruppert			interrupts = <10 8>;
1892eb9504bSChristian Ruppert			clocks = <&ahb_clk>;
1902eb9504bSChristian Ruppert		};
1912eb9504bSChristian Ruppert
1922eb9504bSChristian Ruppert		tb10x_tsm: tb10x-tsm@ff316000 {
1932eb9504bSChristian Ruppert			compatible = "abilis,tb100-tsm";
1942eb9504bSChristian Ruppert			reg = <0xff316000 0x400>;
1952eb9504bSChristian Ruppert			interrupt-parent = <&tb10x_ictl>;
196723e2b80SChristian Ruppert			interrupts = <17 8>;
1972eb9504bSChristian Ruppert			output-clkdiv = <4>;
1982eb9504bSChristian Ruppert			global-packet-delay = <0x21>;
1992eb9504bSChristian Ruppert			port-packet-delay = <0>;
2002eb9504bSChristian Ruppert		};
2012eb9504bSChristian Ruppert		tb10x_stream_proc: tb10x-stream-proc {
2022eb9504bSChristian Ruppert			compatible = "abilis,tb100-streamproc";
2032eb9504bSChristian Ruppert			reg =   <0xfff00000 0x200>,
2042eb9504bSChristian Ruppert				<0x000f0000 0x10000>,
2052eb9504bSChristian Ruppert				<0xfff00200 0x105>,
2062eb9504bSChristian Ruppert				<0xff10600c 0x1>,
2072eb9504bSChristian Ruppert				<0xfe001018 0x1>;
2082eb9504bSChristian Ruppert			reg-names =     "mbox",
2092eb9504bSChristian Ruppert					"sp_iccm",
2102eb9504bSChristian Ruppert					"mbox_irq",
2112eb9504bSChristian Ruppert					"cpuctrl",
2122eb9504bSChristian Ruppert					"a6it_int_force";
2132eb9504bSChristian Ruppert			interrupt-parent = <&tb10x_ictl>;
214723e2b80SChristian Ruppert			interrupts = <20 2>, <19 2>;
2152eb9504bSChristian Ruppert			interrupt-names = "cmd_irq", "event_irq";
2162eb9504bSChristian Ruppert		};
217ef4c54c3SAlexey Brodkin		tb10x_mdsc0: tb10x-mdscr@ff300000 {
2182eb9504bSChristian Ruppert			compatible = "abilis,tb100-mdscr";
219ef4c54c3SAlexey Brodkin			reg = <0xff300000 0x7000>;
2202eb9504bSChristian Ruppert			tb100-mdscr-manage-tsin;
2212eb9504bSChristian Ruppert		};
222ef4c54c3SAlexey Brodkin		tb10x_mscr0: tb10x-mdscr@ff307000 {
2232eb9504bSChristian Ruppert			compatible = "abilis,tb100-mdscr";
224ef4c54c3SAlexey Brodkin			reg = <0xff307000 0x7000>;
2252eb9504bSChristian Ruppert		};
2262eb9504bSChristian Ruppert		tb10x_scr0: tb10x-mdscr@ff30e000 {
2272eb9504bSChristian Ruppert			compatible = "abilis,tb100-mdscr";
228ef4c54c3SAlexey Brodkin			reg = <0xff30e000 0x4000>;
2292eb9504bSChristian Ruppert			tb100-mdscr-manage-tsin;
2302eb9504bSChristian Ruppert		};
2312eb9504bSChristian Ruppert		tb10x_scr1: tb10x-mdscr@ff312000 {
2322eb9504bSChristian Ruppert			compatible = "abilis,tb100-mdscr";
233ef4c54c3SAlexey Brodkin			reg = <0xff312000 0x4000>;
2342eb9504bSChristian Ruppert			tb100-mdscr-manage-tsin;
2352eb9504bSChristian Ruppert		};
2362eb9504bSChristian Ruppert		tb10x_wfb: tb10x-wfb@ff319000 {
2372eb9504bSChristian Ruppert			compatible = "abilis,tb100-wfb";
2382eb9504bSChristian Ruppert			reg = <0xff319000 0x1000>;
2392eb9504bSChristian Ruppert			interrupt-parent = <&tb10x_ictl>;
240723e2b80SChristian Ruppert			interrupts = <16 8>;
2412eb9504bSChristian Ruppert		};
2422eb9504bSChristian Ruppert	};
2432eb9504bSChristian Ruppert};
244