1d4d19ec4SJosh Boyer/*
2d4d19ec4SJosh Boyer * Device Tree Source for IBM Holly (PPC 750CL with TSI controller)
3d4d19ec4SJosh Boyer * Copyright 2007, IBM Corporation
4d4d19ec4SJosh Boyer *
5d4d19ec4SJosh Boyer * Stephen Winiecki <stevewin@us.ibm.com>
6d4d19ec4SJosh Boyer * Josh Boyer <jwboyer@linux.vnet.ibm.com>
7d4d19ec4SJosh Boyer *
8d4d19ec4SJosh Boyer * This file is licensed under the terms of the GNU General Public
9d4d19ec4SJosh Boyer * License version 2.  This program is licensed "as is" without
10d4d19ec4SJosh Boyer * any warranty of any kind, whether express or implied.
11d4d19ec4SJosh Boyer */
12d4d19ec4SJosh Boyer
1371f34979SDavid Gibson/dts-v1/;
1471f34979SDavid Gibson
15d4d19ec4SJosh Boyer/ {
16d4d19ec4SJosh Boyer	model = "41K7339";
17d4d19ec4SJosh Boyer	compatible = "ibm,holly";
18d4d19ec4SJosh Boyer	#address-cells = <1>;
19d4d19ec4SJosh Boyer	#size-cells = <1>;
20d4d19ec4SJosh Boyer
21d4d19ec4SJosh Boyer	cpus {
22d4d19ec4SJosh Boyer		#address-cells = <1>;
23d4d19ec4SJosh Boyer		#size-cells =<0>;
24d4d19ec4SJosh Boyer		PowerPC,750CL@0 {
25d4d19ec4SJosh Boyer			device_type = "cpu";
2671f34979SDavid Gibson			reg = <0x00000000>;
2771f34979SDavid Gibson			d-cache-line-size = <32>;
2871f34979SDavid Gibson			i-cache-line-size = <32>;
2971f34979SDavid Gibson			d-cache-size = <32768>;
3071f34979SDavid Gibson			i-cache-size = <32768>;
3171f34979SDavid Gibson			d-cache-sets = <128>;
3271f34979SDavid Gibson			i-cache-sets = <128>;
3371f34979SDavid Gibson			timebase-frequency = <50000000>;
3471f34979SDavid Gibson			clock-frequency = <600000000>;
3571f34979SDavid Gibson			bus-frequency = <200000000>;
36d4d19ec4SJosh Boyer		};
37d4d19ec4SJosh Boyer	};
38d4d19ec4SJosh Boyer
39d4d19ec4SJosh Boyer	memory@0 {
40d4d19ec4SJosh Boyer		device_type = "memory";
4171f34979SDavid Gibson		reg = <0x00000000 0x20000000>;
42d4d19ec4SJosh Boyer	};
43d4d19ec4SJosh Boyer
44d4d19ec4SJosh Boyer  	tsi109@c0000000 {
45d4d19ec4SJosh Boyer		device_type = "tsi-bridge";
46e58ca3deSDavid Gibson		compatible = "tsi109-bridge", "tsi108-bridge";
47d4d19ec4SJosh Boyer		#address-cells = <1>;
48d4d19ec4SJosh Boyer		#size-cells = <1>;
4971f34979SDavid Gibson		ranges = <0x00000000 0xc0000000 0x00010000>;
5071f34979SDavid Gibson		reg = <0xc0000000 0x00010000>;
51d4d19ec4SJosh Boyer
52d4d19ec4SJosh Boyer		i2c@7000 {
53d4d19ec4SJosh Boyer			device_type = "i2c";
54e58ca3deSDavid Gibson			compatible  = "tsi109-i2c", "tsi108-i2c";
55e58ca3deSDavid Gibson			interrupt-parent = <&MPIC>;
5671f34979SDavid Gibson			interrupts = <0xe 0x2>;
5771f34979SDavid Gibson			reg = <0x00007000 0x00000400>;
58d4d19ec4SJosh Boyer		};
59d4d19ec4SJosh Boyer
60e58ca3deSDavid Gibson		MDIO: mdio@6000 {
61e58ca3deSDavid Gibson			compatible = "tsi109-mdio", "tsi108-mdio";
6271f34979SDavid Gibson			reg = <0x00006000 0x00000050>;
63e58ca3deSDavid Gibson			#address-cells = <1>;
64e58ca3deSDavid Gibson			#size-cells = <0>;
65e58ca3deSDavid Gibson
66e58ca3deSDavid Gibson			PHY1: ethernet-phy@1 {
67e58ca3deSDavid Gibson				compatible = "bcm5461a";
6871f34979SDavid Gibson				reg = <0x00000001>;
69e58ca3deSDavid Gibson				txc-rxc-delay-disable;
70d4d19ec4SJosh Boyer			};
71d4d19ec4SJosh Boyer
72e58ca3deSDavid Gibson			PHY2: ethernet-phy@2 {
73e58ca3deSDavid Gibson				compatible = "bcm5461a";
7471f34979SDavid Gibson				reg = <0x00000002>;
75e58ca3deSDavid Gibson				txc-rxc-delay-disable;
76d4d19ec4SJosh Boyer			};
77d4d19ec4SJosh Boyer		};
78d4d19ec4SJosh Boyer
79d4d19ec4SJosh Boyer		ethernet@6200 {
80d4d19ec4SJosh Boyer			device_type = "network";
81e58ca3deSDavid Gibson			compatible = "tsi109-ethernet", "tsi108-ethernet";
82d4d19ec4SJosh Boyer			#address-cells = <1>;
83d4d19ec4SJosh Boyer			#size-cells = <0>;
8471f34979SDavid Gibson			reg = <0x00006000 0x00000200>;
85d4d19ec4SJosh Boyer			local-mac-address = [ 00 00 00 00 00 00 ];
86e58ca3deSDavid Gibson			interrupt-parent = <&MPIC>;
8771f34979SDavid Gibson			interrupts = <0x10 0x2>;
88e58ca3deSDavid Gibson			mdio-handle = <&MDIO>;
89d4d19ec4SJosh Boyer			phy-handle = <&PHY1>;
90d4d19ec4SJosh Boyer		};
91d4d19ec4SJosh Boyer
92d4d19ec4SJosh Boyer		ethernet@6600 {
93d4d19ec4SJosh Boyer			device_type = "network";
94e58ca3deSDavid Gibson			compatible = "tsi109-ethernet", "tsi108-ethernet";
95d4d19ec4SJosh Boyer			#address-cells = <1>;
96d4d19ec4SJosh Boyer			#size-cells = <0>;
9771f34979SDavid Gibson			reg = <0x00006400 0x00000200>;
98d4d19ec4SJosh Boyer			local-mac-address = [ 00 00 00 00 00 00 ];
99e58ca3deSDavid Gibson			interrupt-parent = <&MPIC>;
10071f34979SDavid Gibson			interrupts = <0x11 0x2>;
101e58ca3deSDavid Gibson			mdio-handle = <&MDIO>;
102d4d19ec4SJosh Boyer			phy-handle = <&PHY2>;
103d4d19ec4SJosh Boyer		};
104d4d19ec4SJosh Boyer
105d4d19ec4SJosh Boyer		serial@7808 {
106d4d19ec4SJosh Boyer			device_type = "serial";
107d4d19ec4SJosh Boyer			compatible = "ns16550";
10871f34979SDavid Gibson			reg = <0x00007808 0x00000200>;
10971f34979SDavid Gibson			virtual-reg = <0xc0007808>;
11071f34979SDavid Gibson			clock-frequency = <1067212800>;
11171f34979SDavid Gibson			current-speed = <115200>;
112e58ca3deSDavid Gibson			interrupt-parent = <&MPIC>;
11371f34979SDavid Gibson			interrupts = <0xc 0x2>;
114d4d19ec4SJosh Boyer		};
115d4d19ec4SJosh Boyer
116d4d19ec4SJosh Boyer		serial@7c08 {
117d4d19ec4SJosh Boyer			device_type = "serial";
118d4d19ec4SJosh Boyer			compatible = "ns16550";
11971f34979SDavid Gibson			reg = <0x00007c08 0x00000200>;
12071f34979SDavid Gibson			virtual-reg = <0xc0007c08>;
12171f34979SDavid Gibson			clock-frequency = <1067212800>;
12271f34979SDavid Gibson			current-speed = <115200>;
123e58ca3deSDavid Gibson			interrupt-parent = <&MPIC>;
12471f34979SDavid Gibson			interrupts = <0xd 0x2>;
125d4d19ec4SJosh Boyer		};
126d4d19ec4SJosh Boyer
127d4d19ec4SJosh Boyer	  	MPIC: pic@7400 {
128d4d19ec4SJosh Boyer			device_type = "open-pic";
129d4d19ec4SJosh Boyer			compatible = "chrp,open-pic";
130d4d19ec4SJosh Boyer			interrupt-controller;
131d4d19ec4SJosh Boyer			#interrupt-cells = <2>;
13271f34979SDavid Gibson			reg = <0x00007400 0x00000400>;
133d4d19ec4SJosh Boyer			big-endian;
134d4d19ec4SJosh Boyer		};
135ad611045SDavid Gibson	};
136d4d19ec4SJosh Boyer
137ad611045SDavid Gibson	pci@c0001000 {
138d4d19ec4SJosh Boyer		device_type = "pci";
139e58ca3deSDavid Gibson		compatible = "tsi109-pci", "tsi108-pci";
140d4d19ec4SJosh Boyer		#interrupt-cells = <1>;
141d4d19ec4SJosh Boyer		#size-cells = <2>;
142d4d19ec4SJosh Boyer		#address-cells = <3>;
143ad611045SDavid Gibson		reg = <0xc0001000 0x00001000>;
14471f34979SDavid Gibson		bus-range = <0x0 0x0>;
145d4d19ec4SJosh Boyer		/*----------------------------------------------------+
146d4d19ec4SJosh Boyer		| PCI memory range.
147d4d19ec4SJosh Boyer		| 01 denotes I/O space
148d4d19ec4SJosh Boyer		| 02 denotes 32-bit memory space
149d4d19ec4SJosh Boyer		+----------------------------------------------------*/
15071f34979SDavid Gibson		ranges = <0x02000000 0x00000000 0x40000000 0x40000000 0x00000000 0x10000000
15171f34979SDavid Gibson			  0x01000000 0x00000000 0x00000000 0x7e000000 0x00000000 0x00010000>;
15271f34979SDavid Gibson		clock-frequency = <133333332>;
153e58ca3deSDavid Gibson		interrupt-parent = <&MPIC>;
15471f34979SDavid Gibson		interrupts = <0x17 0x2>;
15571f34979SDavid Gibson		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
156d4d19ec4SJosh Boyer		/*----------------------------------------------------+
157d4d19ec4SJosh Boyer		| The INTA, INTB, INTC, INTD are shared.
158d4d19ec4SJosh Boyer		+----------------------------------------------------*/
159d4d19ec4SJosh Boyer		interrupt-map = <
16071f34979SDavid Gibson			0x800 0x0 0x0 0x1 &RT0 0x24 0x0
16171f34979SDavid Gibson			0x800 0x0 0x0 0x2 &RT0 0x25 0x0
16271f34979SDavid Gibson			0x800 0x0 0x0 0x3 &RT0 0x26 0x0
16371f34979SDavid Gibson			0x800 0x0 0x0 0x4 &RT0 0x27 0x0
164d4d19ec4SJosh Boyer
16571f34979SDavid Gibson			0x1000 0x0 0x0 0x1 &RT0 0x25 0x0
16671f34979SDavid Gibson			0x1000 0x0 0x0 0x2 &RT0 0x26 0x0
16771f34979SDavid Gibson			0x1000 0x0 0x0 0x3 &RT0 0x27 0x0
16871f34979SDavid Gibson			0x1000 0x0 0x0 0x4 &RT0 0x24 0x0
169d4d19ec4SJosh Boyer
17071f34979SDavid Gibson			0x1800 0x0 0x0 0x1 &RT0 0x26 0x0
17171f34979SDavid Gibson			0x1800 0x0 0x0 0x2 &RT0 0x27 0x0
17271f34979SDavid Gibson			0x1800 0x0 0x0 0x3 &RT0 0x24 0x0
17371f34979SDavid Gibson			0x1800 0x0 0x0 0x4 &RT0 0x25 0x0
174d4d19ec4SJosh Boyer
17571f34979SDavid Gibson			0x2000 0x0 0x0 0x1 &RT0 0x27 0x0
17671f34979SDavid Gibson			0x2000 0x0 0x0 0x2 &RT0 0x24 0x0
17771f34979SDavid Gibson			0x2000 0x0 0x0 0x3 &RT0 0x25 0x0
17871f34979SDavid Gibson			0x2000 0x0 0x0 0x4 &RT0 0x26 0x0
179d4d19ec4SJosh Boyer			>;
180d4d19ec4SJosh Boyer
181d4d19ec4SJosh Boyer		RT0: router@1180 {
182d4d19ec4SJosh Boyer			device_type = "pic-router";
183d4d19ec4SJosh Boyer			interrupt-controller;
184d4d19ec4SJosh Boyer			big-endian;
185d4d19ec4SJosh Boyer			clock-frequency = <0>;
186d4d19ec4SJosh Boyer			#address-cells = <0>;
187d4d19ec4SJosh Boyer			#interrupt-cells = <2>;
18871f34979SDavid Gibson			interrupts = <0x17 0x2>;
189e58ca3deSDavid Gibson			interrupt-parent = <&MPIC>;
190d4d19ec4SJosh Boyer		};
191d4d19ec4SJosh Boyer	};
192d4d19ec4SJosh Boyer
193d4d19ec4SJosh Boyer	chosen {
19478e5dfeaSRob Herring		stdout-path = "/tsi109@c0000000/serial@7808";
195d4d19ec4SJosh Boyer	};
196d4d19ec4SJosh Boyer};
197