xref: /openbmc/linux/arch/mips/boot/dts/img/boston.dts (revision 097fc054)
1b2441318SGreg Kroah-Hartman// SPDX-License-Identifier: GPL-2.0
26e62a888SPaul Burton/dts-v1/;
36e62a888SPaul Burton
46e62a888SPaul Burton#include <dt-bindings/clock/boston-clock.h>
56e62a888SPaul Burton#include <dt-bindings/gpio/gpio.h>
66e62a888SPaul Burton#include <dt-bindings/interrupt-controller/irq.h>
76e62a888SPaul Burton#include <dt-bindings/interrupt-controller/mips-gic.h>
86e62a888SPaul Burton
96e62a888SPaul Burton/ {
106e62a888SPaul Burton	#address-cells = <1>;
116e62a888SPaul Burton	#size-cells = <1>;
126e62a888SPaul Burton	compatible = "img,boston";
136e62a888SPaul Burton
146e62a888SPaul Burton	chosen {
156e62a888SPaul Burton		stdout-path = "uart0:115200";
166e62a888SPaul Burton	};
176e62a888SPaul Burton
186e62a888SPaul Burton	aliases {
196e62a888SPaul Burton		uart0 = &uart0;
206e62a888SPaul Burton	};
216e62a888SPaul Burton
226e62a888SPaul Burton	cpus {
236e62a888SPaul Burton		#address-cells = <1>;
246e62a888SPaul Burton		#size-cells = <0>;
256e62a888SPaul Burton
266e62a888SPaul Burton		cpu@0 {
276e62a888SPaul Burton			device_type = "cpu";
286e62a888SPaul Burton			compatible = "img,mips";
296e62a888SPaul Burton			reg = <0>;
306e62a888SPaul Burton			clocks = <&clk_boston BOSTON_CLK_CPU>;
316e62a888SPaul Burton		};
326e62a888SPaul Burton	};
336e62a888SPaul Burton
346e62a888SPaul Burton	memory@0 {
356e62a888SPaul Burton		device_type = "memory";
366e62a888SPaul Burton		reg = <0x00000000 0x10000000>;
376e62a888SPaul Burton	};
386e62a888SPaul Burton
396e62a888SPaul Burton	pci0: pci@10000000 {
406e62a888SPaul Burton		compatible = "xlnx,axi-pcie-host-1.00.a";
416e62a888SPaul Burton		device_type = "pci";
426e62a888SPaul Burton		reg = <0x10000000 0x2000000>;
436e62a888SPaul Burton
446e62a888SPaul Burton		#address-cells = <3>;
456e62a888SPaul Burton		#size-cells = <2>;
466e62a888SPaul Burton		#interrupt-cells = <1>;
476e62a888SPaul Burton
486e62a888SPaul Burton		interrupt-parent = <&gic>;
496e62a888SPaul Burton		interrupts = <GIC_SHARED 2 IRQ_TYPE_LEVEL_HIGH>;
506e62a888SPaul Burton
516e62a888SPaul Burton		ranges = <0x02000000 0 0x40000000
526e62a888SPaul Burton			  0x40000000 0 0x40000000>;
536e62a888SPaul Burton
542c2bf522SMatt Redfearn		bus-range = <0x00 0xff>;
552c2bf522SMatt Redfearn
566e62a888SPaul Burton		interrupt-map-mask = <0 0 0 7>;
576e62a888SPaul Burton		interrupt-map = <0 0 0 1 &pci0_intc 1>,
586e62a888SPaul Burton				<0 0 0 2 &pci0_intc 2>,
596e62a888SPaul Burton				<0 0 0 3 &pci0_intc 3>,
606e62a888SPaul Burton				<0 0 0 4 &pci0_intc 4>;
616e62a888SPaul Burton
626e62a888SPaul Burton		pci0_intc: interrupt-controller {
636e62a888SPaul Burton			interrupt-controller;
646e62a888SPaul Burton			#address-cells = <0>;
656e62a888SPaul Burton			#interrupt-cells = <1>;
666e62a888SPaul Burton		};
676e62a888SPaul Burton	};
686e62a888SPaul Burton
696e62a888SPaul Burton	pci1: pci@12000000 {
706e62a888SPaul Burton		compatible = "xlnx,axi-pcie-host-1.00.a";
716e62a888SPaul Burton		device_type = "pci";
726e62a888SPaul Burton		reg = <0x12000000 0x2000000>;
736e62a888SPaul Burton
746e62a888SPaul Burton		#address-cells = <3>;
756e62a888SPaul Burton		#size-cells = <2>;
766e62a888SPaul Burton		#interrupt-cells = <1>;
776e62a888SPaul Burton
786e62a888SPaul Burton		interrupt-parent = <&gic>;
796e62a888SPaul Burton		interrupts = <GIC_SHARED 1 IRQ_TYPE_LEVEL_HIGH>;
806e62a888SPaul Burton
816e62a888SPaul Burton		ranges = <0x02000000 0 0x20000000
826e62a888SPaul Burton			  0x20000000 0 0x20000000>;
836e62a888SPaul Burton
842c2bf522SMatt Redfearn		bus-range = <0x00 0xff>;
852c2bf522SMatt Redfearn
866e62a888SPaul Burton		interrupt-map-mask = <0 0 0 7>;
876e62a888SPaul Burton		interrupt-map = <0 0 0 1 &pci1_intc 1>,
886e62a888SPaul Burton				<0 0 0 2 &pci1_intc 2>,
896e62a888SPaul Burton				<0 0 0 3 &pci1_intc 3>,
906e62a888SPaul Burton				<0 0 0 4 &pci1_intc 4>;
916e62a888SPaul Burton
926e62a888SPaul Burton		pci1_intc: interrupt-controller {
936e62a888SPaul Burton			interrupt-controller;
946e62a888SPaul Burton			#address-cells = <0>;
956e62a888SPaul Burton			#interrupt-cells = <1>;
966e62a888SPaul Burton		};
976e62a888SPaul Burton	};
986e62a888SPaul Burton
996e62a888SPaul Burton	pci2: pci@14000000 {
1006e62a888SPaul Burton		compatible = "xlnx,axi-pcie-host-1.00.a";
1016e62a888SPaul Burton		device_type = "pci";
1026e62a888SPaul Burton		reg = <0x14000000 0x2000000>;
1036e62a888SPaul Burton
1046e62a888SPaul Burton		#address-cells = <3>;
1056e62a888SPaul Burton		#size-cells = <2>;
1066e62a888SPaul Burton		#interrupt-cells = <1>;
1076e62a888SPaul Burton
1086e62a888SPaul Burton		interrupt-parent = <&gic>;
1096e62a888SPaul Burton		interrupts = <GIC_SHARED 0 IRQ_TYPE_LEVEL_HIGH>;
1106e62a888SPaul Burton
1116e62a888SPaul Burton		ranges = <0x02000000 0 0x16000000
1126e62a888SPaul Burton			  0x16000000 0 0x100000>;
1136e62a888SPaul Burton
1142c2bf522SMatt Redfearn		bus-range = <0x00 0xff>;
1152c2bf522SMatt Redfearn
1166e62a888SPaul Burton		interrupt-map-mask = <0 0 0 7>;
1176e62a888SPaul Burton		interrupt-map = <0 0 0 1 &pci2_intc 1>,
1186e62a888SPaul Burton				<0 0 0 2 &pci2_intc 2>,
1196e62a888SPaul Burton				<0 0 0 3 &pci2_intc 3>,
1206e62a888SPaul Burton				<0 0 0 4 &pci2_intc 4>;
1216e62a888SPaul Burton
1226e62a888SPaul Burton		pci2_intc: interrupt-controller {
1236e62a888SPaul Burton			interrupt-controller;
1246e62a888SPaul Burton			#address-cells = <0>;
1256e62a888SPaul Burton			#interrupt-cells = <1>;
1266e62a888SPaul Burton		};
1276e62a888SPaul Burton
128*097fc054SGenjian Zhang		pci2_root@0,0 {
1296e62a888SPaul Burton			compatible = "pci10ee,7021";
1306e62a888SPaul Burton			reg = <0x00000000 0 0 0 0>;
1316e62a888SPaul Burton
1326e62a888SPaul Burton			#address-cells = <3>;
1336e62a888SPaul Burton			#size-cells = <2>;
1346e62a888SPaul Burton			#interrupt-cells = <1>;
1356e62a888SPaul Burton
1366e62a888SPaul Burton			eg20t_bridge@1,0,0 {
1376e62a888SPaul Burton				compatible = "pci8086,8800";
1386e62a888SPaul Burton				reg = <0x00010000 0 0 0 0>;
1396e62a888SPaul Burton
1406e62a888SPaul Burton				#address-cells = <3>;
1416e62a888SPaul Burton				#size-cells = <2>;
1426e62a888SPaul Burton				#interrupt-cells = <1>;
1436e62a888SPaul Burton
1445ec17af7SPaul Burton				eg20t_phub@2,0,0 {
1455ec17af7SPaul Burton					compatible = "pci8086,8801";
1465ec17af7SPaul Burton					reg = <0x00020000 0 0 0 0>;
1475ec17af7SPaul Burton					intel,eg20t-prefetch = <0>;
1485ec17af7SPaul Burton				};
1495ec17af7SPaul Burton
1506e62a888SPaul Burton				eg20t_mac@2,0,1 {
1516e62a888SPaul Burton					compatible = "pci8086,8802";
1526e62a888SPaul Burton					reg = <0x00020100 0 0 0 0>;
1536e62a888SPaul Burton					phy-reset-gpios = <&eg20t_gpio 6
1546e62a888SPaul Burton							   GPIO_ACTIVE_LOW>;
1556e62a888SPaul Burton				};
1566e62a888SPaul Burton
1576e62a888SPaul Burton				eg20t_gpio: eg20t_gpio@2,0,2 {
1586e62a888SPaul Burton					compatible = "pci8086,8803";
1596e62a888SPaul Burton					reg = <0x00020200 0 0 0 0>;
1606e62a888SPaul Burton
1616e62a888SPaul Burton					gpio-controller;
1626e62a888SPaul Burton					#gpio-cells = <2>;
1636e62a888SPaul Burton				};
1646e62a888SPaul Burton
1656e62a888SPaul Burton				eg20t_i2c@2,12,2 {
1666e62a888SPaul Burton					compatible = "pci8086,8817";
1676e62a888SPaul Burton					reg = <0x00026200 0 0 0 0>;
1686e62a888SPaul Burton
1696e62a888SPaul Burton					#address-cells = <1>;
1706e62a888SPaul Burton					#size-cells = <0>;
1716e62a888SPaul Burton
172c7685190SMathieu Malaterre					rtc@68 {
1736e62a888SPaul Burton						compatible = "st,m41t81s";
1746e62a888SPaul Burton						reg = <0x68>;
1756e62a888SPaul Burton					};
1766e62a888SPaul Burton				};
1776e62a888SPaul Burton			};
1786e62a888SPaul Burton		};
1796e62a888SPaul Burton	};
1806e62a888SPaul Burton
1816e62a888SPaul Burton	gic: interrupt-controller@16120000 {
1826e62a888SPaul Burton		compatible = "mti,gic";
1836e62a888SPaul Burton		reg = <0x16120000 0x20000>;
1846e62a888SPaul Burton
1856e62a888SPaul Burton		interrupt-controller;
1866e62a888SPaul Burton		#interrupt-cells = <3>;
1876e62a888SPaul Burton
1886e62a888SPaul Burton		timer {
1896e62a888SPaul Burton			compatible = "mti,gic-timer";
1906e62a888SPaul Burton			interrupts = <GIC_LOCAL 1 IRQ_TYPE_NONE>;
1916e62a888SPaul Burton			clocks = <&clk_boston BOSTON_CLK_CPU>;
1926e62a888SPaul Burton		};
1936e62a888SPaul Burton	};
1946e62a888SPaul Burton
1956e62a888SPaul Burton	cdmm@16140000 {
1966e62a888SPaul Burton		compatible = "mti,mips-cdmm";
1976e62a888SPaul Burton		reg = <0x16140000 0x8000>;
1986e62a888SPaul Burton	};
1996e62a888SPaul Burton
2006e62a888SPaul Burton	cpc@16200000 {
2016e62a888SPaul Burton		compatible = "mti,mips-cpc";
2026e62a888SPaul Burton		reg = <0x16200000 0x8000>;
2036e62a888SPaul Burton	};
2046e62a888SPaul Burton
2056e62a888SPaul Burton	plat_regs: system-controller@17ffd000 {
2066e62a888SPaul Burton		compatible = "img,boston-platform-regs", "syscon";
2076e62a888SPaul Burton		reg = <0x17ffd000 0x1000>;
2086e62a888SPaul Burton
2096e62a888SPaul Burton		clk_boston: clock {
2106e62a888SPaul Burton			compatible = "img,boston-clock";
2116e62a888SPaul Burton			#clock-cells = <1>;
2126e62a888SPaul Burton		};
2136e62a888SPaul Burton	};
2146e62a888SPaul Burton
2156e62a888SPaul Burton	reboot: syscon-reboot {
2166e62a888SPaul Burton		compatible = "syscon-reboot";
2176e62a888SPaul Burton		regmap = <&plat_regs>;
2186e62a888SPaul Burton		offset = <0x10>;
2196e62a888SPaul Burton		mask = <0x10>;
2206e62a888SPaul Burton	};
2216e62a888SPaul Burton
2226e62a888SPaul Burton	uart0: uart@17ffe000 {
2236e62a888SPaul Burton		compatible = "ns16550a";
2246e62a888SPaul Burton		reg = <0x17ffe000 0x1000>;
2256e62a888SPaul Burton		reg-shift = <2>;
2266e62a888SPaul Burton
2276e62a888SPaul Burton		interrupt-parent = <&gic>;
2286e62a888SPaul Burton		interrupts = <GIC_SHARED 3 IRQ_TYPE_LEVEL_HIGH>;
2296e62a888SPaul Burton
2306e62a888SPaul Burton		clocks = <&clk_boston BOSTON_CLK_SYS>;
2316e62a888SPaul Burton	};
2326e62a888SPaul Burton
2336e62a888SPaul Burton	lcd: lcd@17fff000 {
2346e62a888SPaul Burton		compatible = "img,boston-lcd";
2356e62a888SPaul Burton		reg = <0x17fff000 0x8>;
2366e62a888SPaul Burton	};
2376e62a888SPaul Burton};
238