18c2ecf20Sopenharmony_ci/*
28c2ecf20Sopenharmony_ci * Device Tree Source for Motorola/Emerson MVME5100.
38c2ecf20Sopenharmony_ci *
48c2ecf20Sopenharmony_ci * Copyright 2013 CSC Australia Pty. Ltd.
58c2ecf20Sopenharmony_ci *
68c2ecf20Sopenharmony_ci * This file is licensed under the terms of the GNU General Public
78c2ecf20Sopenharmony_ci * License version 2.  This program is licensed "as is" without
88c2ecf20Sopenharmony_ci * any warranty of any kind, whether express or implied.
98c2ecf20Sopenharmony_ci */
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ci/dts-v1/;
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ci/ {
148c2ecf20Sopenharmony_ci	model = "MVME5100";
158c2ecf20Sopenharmony_ci	compatible = "MVME5100";
168c2ecf20Sopenharmony_ci	#address-cells = <1>;
178c2ecf20Sopenharmony_ci	#size-cells = <1>;
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ci	aliases {
208c2ecf20Sopenharmony_ci		serial0 = &serial0;
218c2ecf20Sopenharmony_ci		pci0 = &pci0;
228c2ecf20Sopenharmony_ci	};
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ci	cpus {
258c2ecf20Sopenharmony_ci		#address-cells = <1>;
268c2ecf20Sopenharmony_ci		#size-cells = <0>;
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ci		PowerPC,7410 {
298c2ecf20Sopenharmony_ci			device_type = "cpu";
308c2ecf20Sopenharmony_ci			reg = <0x0>;
318c2ecf20Sopenharmony_ci			/* Following required by dtc but not used */
328c2ecf20Sopenharmony_ci			d-cache-line-size = <32>;
338c2ecf20Sopenharmony_ci			i-cache-line-size = <32>;
348c2ecf20Sopenharmony_ci			i-cache-size = <32768>;
358c2ecf20Sopenharmony_ci			d-cache-size = <32768>;
368c2ecf20Sopenharmony_ci			timebase-frequency = <25000000>;
378c2ecf20Sopenharmony_ci			clock-frequency = <500000000>;
388c2ecf20Sopenharmony_ci			bus-frequency = <100000000>;
398c2ecf20Sopenharmony_ci		};
408c2ecf20Sopenharmony_ci	};
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci	memory {
438c2ecf20Sopenharmony_ci		device_type = "memory";
448c2ecf20Sopenharmony_ci		reg = <0x0 0x20000000>;
458c2ecf20Sopenharmony_ci	};
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ci	hawk@fef80000 {
488c2ecf20Sopenharmony_ci		#address-cells = <1>;
498c2ecf20Sopenharmony_ci		#size-cells = <1>;
508c2ecf20Sopenharmony_ci		compatible = "hawk-bridge", "simple-bus";
518c2ecf20Sopenharmony_ci		ranges = <0x0 0xfef80000 0x10000>;
528c2ecf20Sopenharmony_ci		reg = <0xfef80000 0x10000>;
538c2ecf20Sopenharmony_ci
548c2ecf20Sopenharmony_ci		serial0: serial@8000 {
558c2ecf20Sopenharmony_ci			device_type = "serial";
568c2ecf20Sopenharmony_ci			compatible = "ns16550";
578c2ecf20Sopenharmony_ci			reg = <0x8000 0x80>;
588c2ecf20Sopenharmony_ci			reg-shift = <4>;
598c2ecf20Sopenharmony_ci			clock-frequency = <1843200>;
608c2ecf20Sopenharmony_ci			current-speed = <9600>;
618c2ecf20Sopenharmony_ci			interrupts = <1 1>; // IRQ1 Level Active Low.
628c2ecf20Sopenharmony_ci			interrupt-parent = <&mpic>;
638c2ecf20Sopenharmony_ci		};
648c2ecf20Sopenharmony_ci
658c2ecf20Sopenharmony_ci		serial1: serial@8200 {
668c2ecf20Sopenharmony_ci			device_type = "serial";
678c2ecf20Sopenharmony_ci			compatible = "ns16550";
688c2ecf20Sopenharmony_ci			reg = <0x8200 0x80>;
698c2ecf20Sopenharmony_ci			reg-shift = <4>;
708c2ecf20Sopenharmony_ci			clock-frequency = <1843200>;
718c2ecf20Sopenharmony_ci			current-speed = <9600>;
728c2ecf20Sopenharmony_ci			interrupts = <1 1>; // IRQ1 Level Active Low.
738c2ecf20Sopenharmony_ci			interrupt-parent = <&mpic>;
748c2ecf20Sopenharmony_ci		};
758c2ecf20Sopenharmony_ci
768c2ecf20Sopenharmony_ci		mpic: interrupt-controller@f3f80000 {
778c2ecf20Sopenharmony_ci			#interrupt-cells = <2>;
788c2ecf20Sopenharmony_ci			#address-cells = <0>;
798c2ecf20Sopenharmony_ci			device_type = "open-pic";
808c2ecf20Sopenharmony_ci			compatible = "chrp,open-pic";
818c2ecf20Sopenharmony_ci			interrupt-controller;
828c2ecf20Sopenharmony_ci			reg = <0xf3f80000 0x40000>;
838c2ecf20Sopenharmony_ci		};
848c2ecf20Sopenharmony_ci	};
858c2ecf20Sopenharmony_ci
868c2ecf20Sopenharmony_ci	pci0: pci@feff0000 {
878c2ecf20Sopenharmony_ci		#address-cells = <3>;
888c2ecf20Sopenharmony_ci		#size-cells = <2>;
898c2ecf20Sopenharmony_ci		#interrupt-cells = <1>;
908c2ecf20Sopenharmony_ci		device_type = "pci";
918c2ecf20Sopenharmony_ci		compatible = "hawk-pci";
928c2ecf20Sopenharmony_ci		reg = <0xfec00000 0x400000>;
938c2ecf20Sopenharmony_ci		8259-interrupt-acknowledge = <0xfeff0030>;
948c2ecf20Sopenharmony_ci		ranges = <0x1000000 0x0        0x0 0xfe000000 0x0 0x800000
958c2ecf20Sopenharmony_ci			  0x2000000 0x0 0x80000000 0x80000000 0x0 0x74000000>;
968c2ecf20Sopenharmony_ci		bus-range = <0 255>;
978c2ecf20Sopenharmony_ci		clock-frequency = <33333333>;
988c2ecf20Sopenharmony_ci		interrupt-parent = <&mpic>;
998c2ecf20Sopenharmony_ci		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
1008c2ecf20Sopenharmony_ci		interrupt-map = <
1018c2ecf20Sopenharmony_ci
1028c2ecf20Sopenharmony_ci			/*
1038c2ecf20Sopenharmony_ci			 * This definition (IDSEL 11) duplicates the
1048c2ecf20Sopenharmony_ci			 * interrupts definition in the i8259
1058c2ecf20Sopenharmony_ci			 * interrupt controller below.
1068c2ecf20Sopenharmony_ci			 *
1078c2ecf20Sopenharmony_ci			 * Do not change the interrupt sense/polarity from
1088c2ecf20Sopenharmony_ci			 * 0x2 to anything else, doing so will cause endless
1098c2ecf20Sopenharmony_ci			 * "spurious" i8259 interrupts to be fielded.
1108c2ecf20Sopenharmony_ci			 */
1118c2ecf20Sopenharmony_ci			// IDSEL 11 - iPMC712 PCI/ISA Bridge
1128c2ecf20Sopenharmony_ci			0x5800 0x0 0x0 0x1 &mpic 0x0 0x2
1138c2ecf20Sopenharmony_ci			0x5800 0x0 0x0 0x2 &mpic 0x0 0x2
1148c2ecf20Sopenharmony_ci			0x5800 0x0 0x0 0x3 &mpic 0x0 0x2
1158c2ecf20Sopenharmony_ci			0x5800 0x0 0x0 0x4 &mpic 0x0 0x2
1168c2ecf20Sopenharmony_ci
1178c2ecf20Sopenharmony_ci			/* IDSEL 12 - Not Used */
1188c2ecf20Sopenharmony_ci
1198c2ecf20Sopenharmony_ci			/* IDSEL 13 - Universe VME Bridge */
1208c2ecf20Sopenharmony_ci			0x6800 0x0 0x0 0x1 &mpic 0x5 0x1
1218c2ecf20Sopenharmony_ci			0x6800 0x0 0x0 0x2 &mpic 0x6 0x1
1228c2ecf20Sopenharmony_ci			0x6800 0x0 0x0 0x3 &mpic 0x7 0x1
1238c2ecf20Sopenharmony_ci			0x6800 0x0 0x0 0x4 &mpic 0x8 0x1
1248c2ecf20Sopenharmony_ci
1258c2ecf20Sopenharmony_ci			/* IDSEL 14 - ENET 1 */
1268c2ecf20Sopenharmony_ci			0x7000 0x0 0x0 0x1 &mpic 0x2 0x1
1278c2ecf20Sopenharmony_ci
1288c2ecf20Sopenharmony_ci			/* IDSEL 15 - Not Used */
1298c2ecf20Sopenharmony_ci
1308c2ecf20Sopenharmony_ci			/* IDSEL 16 - PMC Slot 1 */
1318c2ecf20Sopenharmony_ci			0x8000 0x0 0x0 0x1 &mpic 0x9 0x1
1328c2ecf20Sopenharmony_ci			0x8000 0x0 0x0 0x2 &mpic 0xa 0x1
1338c2ecf20Sopenharmony_ci			0x8000 0x0 0x0 0x3 &mpic 0xb 0x1
1348c2ecf20Sopenharmony_ci			0x8000 0x0 0x0 0x4 &mpic 0xc 0x1
1358c2ecf20Sopenharmony_ci
1368c2ecf20Sopenharmony_ci			/* IDSEL 17 - PMC Slot 2 */
1378c2ecf20Sopenharmony_ci			0x8800 0x0 0x0 0x1 &mpic 0xc 0x1
1388c2ecf20Sopenharmony_ci			0x8800 0x0 0x0 0x2 &mpic 0x9 0x1
1398c2ecf20Sopenharmony_ci			0x8800 0x0 0x0 0x3 &mpic 0xa 0x1
1408c2ecf20Sopenharmony_ci			0x8800 0x0 0x0 0x4 &mpic 0xb 0x1
1418c2ecf20Sopenharmony_ci
1428c2ecf20Sopenharmony_ci			/* IDSEL 18 - Not Used */
1438c2ecf20Sopenharmony_ci
1448c2ecf20Sopenharmony_ci			/* IDSEL 19 - ENET 2 */
1458c2ecf20Sopenharmony_ci			0x9800 0x0 0x0 0x1 &mpic 0xd 0x1
1468c2ecf20Sopenharmony_ci
1478c2ecf20Sopenharmony_ci			/* IDSEL 20 - PMCSPAN (PCI-X) */
1488c2ecf20Sopenharmony_ci			0xa000 0x0 0x0 0x1 &mpic 0x9 0x1
1498c2ecf20Sopenharmony_ci			0xa000 0x0 0x0 0x2 &mpic 0xa 0x1
1508c2ecf20Sopenharmony_ci			0xa000 0x0 0x0 0x3 &mpic 0xb 0x1
1518c2ecf20Sopenharmony_ci			0xa000 0x0 0x0 0x4 &mpic 0xc 0x1
1528c2ecf20Sopenharmony_ci
1538c2ecf20Sopenharmony_ci		>;
1548c2ecf20Sopenharmony_ci
1558c2ecf20Sopenharmony_ci		isa {
1568c2ecf20Sopenharmony_ci			#address-cells = <2>;
1578c2ecf20Sopenharmony_ci			#size-cells = <1>;
1588c2ecf20Sopenharmony_ci			#interrupt-cells = <2>;
1598c2ecf20Sopenharmony_ci			device_type = "isa";
1608c2ecf20Sopenharmony_ci			compatible = "isa";
1618c2ecf20Sopenharmony_ci			ranges = <0x00000001 0 0x01000000 0 0x00000000 0x00001000>;
1628c2ecf20Sopenharmony_ci			interrupt-parent = <&i8259>;
1638c2ecf20Sopenharmony_ci
1648c2ecf20Sopenharmony_ci			i8259: interrupt-controller@20 {
1658c2ecf20Sopenharmony_ci				#interrupt-cells = <2>;
1668c2ecf20Sopenharmony_ci				#address-cells = <0>;
1678c2ecf20Sopenharmony_ci				interrupts = <0 2>;
1688c2ecf20Sopenharmony_ci				device_type = "interrupt-controller";
1698c2ecf20Sopenharmony_ci				compatible = "chrp,iic";
1708c2ecf20Sopenharmony_ci				interrupt-controller;
1718c2ecf20Sopenharmony_ci				reg = <1 0x00000020 0x00000002
1728c2ecf20Sopenharmony_ci                                       1 0x000000a0 0x00000002
1738c2ecf20Sopenharmony_ci                                       1 0x000004d0 0x00000002>;
1748c2ecf20Sopenharmony_ci				interrupt-parent = <&mpic>;
1758c2ecf20Sopenharmony_ci			};
1768c2ecf20Sopenharmony_ci
1778c2ecf20Sopenharmony_ci		};
1788c2ecf20Sopenharmony_ci
1798c2ecf20Sopenharmony_ci	};
1808c2ecf20Sopenharmony_ci
1818c2ecf20Sopenharmony_ci	chosen {
1828c2ecf20Sopenharmony_ci		stdout-path = &serial0;
1838c2ecf20Sopenharmony_ci        };
1848c2ecf20Sopenharmony_ci
1858c2ecf20Sopenharmony_ci};
186