12874c5fdSThomas Gleixner// SPDX-License-Identifier: GPL-2.0-or-later
246f26ec7SAlessio Igor Bogani/*
346f26ec7SAlessio Igor Bogani * GE SBC310 Device Tree Source
446f26ec7SAlessio Igor Bogani *
546f26ec7SAlessio Igor Bogani * Copyright 2008 GE Intelligent Platforms Embedded Systems, Inc.
646f26ec7SAlessio Igor Bogani *
746f26ec7SAlessio Igor Bogani * Based on: SBS CM6 Device Tree Source
846f26ec7SAlessio Igor Bogani * Copyright 2007 SBS Technologies GmbH & Co. KG
946f26ec7SAlessio Igor Bogani * And: mpc8641_hpcn.dts (MPC8641 HPCN Device Tree Source)
1046f26ec7SAlessio Igor Bogani * Copyright 2006 Freescale Semiconductor Inc.
1146f26ec7SAlessio Igor Bogani */
1246f26ec7SAlessio Igor Bogani
1346f26ec7SAlessio Igor Bogani/*
1446f26ec7SAlessio Igor Bogani * Compiled with dtc -I dts -O dtb -o gef_sbc310.dtb gef_sbc310.dts
1546f26ec7SAlessio Igor Bogani */
1646f26ec7SAlessio Igor Bogani
17334479d1SAlessio Igor Bogani/include/ "mpc8641si-pre.dtsi"
1846f26ec7SAlessio Igor Bogani
1946f26ec7SAlessio Igor Bogani/ {
2046f26ec7SAlessio Igor Bogani	model = "GEF_SBC310";
2146f26ec7SAlessio Igor Bogani	compatible = "gef,sbc310";
2246f26ec7SAlessio Igor Bogani
2346f26ec7SAlessio Igor Bogani	memory {
2446f26ec7SAlessio Igor Bogani		device_type = "memory";
2546f26ec7SAlessio Igor Bogani		reg = <0x0 0x40000000>;	// set by uboot
2646f26ec7SAlessio Igor Bogani	};
2746f26ec7SAlessio Igor Bogani
28334479d1SAlessio Igor Bogani	lbc: localbus@fef05000 {
2946f26ec7SAlessio Igor Bogani		reg = <0xfef05000 0x1000>;
3046f26ec7SAlessio Igor Bogani
3146f26ec7SAlessio Igor Bogani		ranges = <0 0 0xff000000 0x01000000	// 16MB Boot flash
3246f26ec7SAlessio Igor Bogani			  1 0 0xe0000000 0x08000000	// Paged Flash 0
3346f26ec7SAlessio Igor Bogani			  2 0 0xe8000000 0x08000000	// Paged Flash 1
3446f26ec7SAlessio Igor Bogani			  3 0 0xfc100000 0x00020000	// NVRAM
3546f26ec7SAlessio Igor Bogani			  4 0 0xfc000000 0x00010000>;	// FPGA
3646f26ec7SAlessio Igor Bogani
3746f26ec7SAlessio Igor Bogani		/* flash@0,0 is a mirror of part of the memory in flash@1,0
3846f26ec7SAlessio Igor Bogani		flash@0,0 {
3946f26ec7SAlessio Igor Bogani			compatible = "gef,sbc310-firmware-mirror", "cfi-flash";
4046f26ec7SAlessio Igor Bogani			reg = <0x0 0x0 0x01000000>;
4146f26ec7SAlessio Igor Bogani			bank-width = <2>;
4246f26ec7SAlessio Igor Bogani			device-width = <2>;
4346f26ec7SAlessio Igor Bogani			#address-cells = <1>;
4446f26ec7SAlessio Igor Bogani			#size-cells = <1>;
4546f26ec7SAlessio Igor Bogani			partition@0 {
4646f26ec7SAlessio Igor Bogani				label = "firmware";
4746f26ec7SAlessio Igor Bogani				reg = <0x0 0x01000000>;
4846f26ec7SAlessio Igor Bogani				read-only;
4946f26ec7SAlessio Igor Bogani			};
5046f26ec7SAlessio Igor Bogani		};
5146f26ec7SAlessio Igor Bogani		*/
5246f26ec7SAlessio Igor Bogani
5346f26ec7SAlessio Igor Bogani		flash@1,0 {
5446f26ec7SAlessio Igor Bogani			compatible = "gef,sbc310-paged-flash", "cfi-flash";
5546f26ec7SAlessio Igor Bogani			reg = <0x1 0x0 0x8000000>;
5646f26ec7SAlessio Igor Bogani			bank-width = <2>;
5746f26ec7SAlessio Igor Bogani			device-width = <2>;
5846f26ec7SAlessio Igor Bogani			#address-cells = <1>;
5946f26ec7SAlessio Igor Bogani			#size-cells = <1>;
6046f26ec7SAlessio Igor Bogani			partition@0 {
6146f26ec7SAlessio Igor Bogani				label = "user";
6246f26ec7SAlessio Igor Bogani				reg = <0x0 0x7800000>;
6346f26ec7SAlessio Igor Bogani			};
6446f26ec7SAlessio Igor Bogani			partition@7800000 {
6546f26ec7SAlessio Igor Bogani				label = "firmware";
6646f26ec7SAlessio Igor Bogani				reg = <0x7800000 0x800000>;
6746f26ec7SAlessio Igor Bogani				read-only;
6846f26ec7SAlessio Igor Bogani			};
6946f26ec7SAlessio Igor Bogani		};
7046f26ec7SAlessio Igor Bogani
7146f26ec7SAlessio Igor Bogani		nvram@3,0 {
7246f26ec7SAlessio Igor Bogani			device_type = "nvram";
7346f26ec7SAlessio Igor Bogani			compatible = "simtek,stk14ca8";
7446f26ec7SAlessio Igor Bogani			reg = <0x3 0x0 0x20000>;
7546f26ec7SAlessio Igor Bogani		};
7646f26ec7SAlessio Igor Bogani
7746f26ec7SAlessio Igor Bogani		fpga@4,0 {
7846f26ec7SAlessio Igor Bogani			compatible = "gef,fpga-regs";
7946f26ec7SAlessio Igor Bogani			reg = <0x4 0x0 0x40>;
8046f26ec7SAlessio Igor Bogani		};
8146f26ec7SAlessio Igor Bogani
8246f26ec7SAlessio Igor Bogani		wdt@4,2000 {
8346f26ec7SAlessio Igor Bogani			compatible = "gef,sbc310-fpga-wdt", "gef,fpga-wdt-1.00",
8446f26ec7SAlessio Igor Bogani				"gef,fpga-wdt";
8546f26ec7SAlessio Igor Bogani			reg = <0x4 0x2000 0x8>;
8646f26ec7SAlessio Igor Bogani			interrupts = <0x1a 0x4>;
8746f26ec7SAlessio Igor Bogani			interrupt-parent = <&gef_pic>;
8846f26ec7SAlessio Igor Bogani		};
8946f26ec7SAlessio Igor Bogani/*
9046f26ec7SAlessio Igor Bogani		wdt@4,2010 {
9146f26ec7SAlessio Igor Bogani			compatible = "gef,sbc310-fpga-wdt", "gef,fpga-wdt-1.00",
9246f26ec7SAlessio Igor Bogani				"gef,fpga-wdt";
9346f26ec7SAlessio Igor Bogani			reg = <0x4 0x2010 0x8>;
9446f26ec7SAlessio Igor Bogani			interrupts = <0x1b 0x4>;
9546f26ec7SAlessio Igor Bogani			interrupt-parent = <&gef_pic>;
9646f26ec7SAlessio Igor Bogani		};
9746f26ec7SAlessio Igor Bogani*/
9846f26ec7SAlessio Igor Bogani		gef_pic: pic@4,4000 {
9946f26ec7SAlessio Igor Bogani			#interrupt-cells = <1>;
10046f26ec7SAlessio Igor Bogani			interrupt-controller;
10146f26ec7SAlessio Igor Bogani			compatible = "gef,sbc310-fpga-pic", "gef,fpga-pic";
10246f26ec7SAlessio Igor Bogani			reg = <0x4 0x4000 0x20>;
103595207b9SAlessio Igor Bogani			interrupts = <0x8 0x9 0 0>;
10446f26ec7SAlessio Igor Bogani
10546f26ec7SAlessio Igor Bogani		};
10646f26ec7SAlessio Igor Bogani		gef_gpio: gpio@4,8000 {
10746f26ec7SAlessio Igor Bogani			#gpio-cells = <2>;
10846f26ec7SAlessio Igor Bogani			compatible = "gef,sbc310-gpio";
10946f26ec7SAlessio Igor Bogani			reg = <0x4 0x8000 0x24>;
11046f26ec7SAlessio Igor Bogani			gpio-controller;
11146f26ec7SAlessio Igor Bogani		};
11246f26ec7SAlessio Igor Bogani	};
11346f26ec7SAlessio Igor Bogani
114334479d1SAlessio Igor Bogani	soc: soc@fef00000 {
11546f26ec7SAlessio Igor Bogani		ranges = <0x0 0xfef00000 0x00100000>;
11646f26ec7SAlessio Igor Bogani
117595207b9SAlessio Igor Bogani		i2c@3000 {
11846f26ec7SAlessio Igor Bogani			rtc@51 {
11946f26ec7SAlessio Igor Bogani				compatible = "epson,rx8581";
12046f26ec7SAlessio Igor Bogani				reg = <0x00000051>;
12146f26ec7SAlessio Igor Bogani			};
12246f26ec7SAlessio Igor Bogani		};
12346f26ec7SAlessio Igor Bogani
124595207b9SAlessio Igor Bogani		i2c@3100 {
12546f26ec7SAlessio Igor Bogani			hwmon@48 {
12646f26ec7SAlessio Igor Bogani				compatible = "national,lm92";
12746f26ec7SAlessio Igor Bogani				reg = <0x48>;
12846f26ec7SAlessio Igor Bogani			};
12946f26ec7SAlessio Igor Bogani
13046f26ec7SAlessio Igor Bogani			hwmon@4c {
13146f26ec7SAlessio Igor Bogani				compatible = "adi,adt7461";
13246f26ec7SAlessio Igor Bogani				reg = <0x4c>;
13346f26ec7SAlessio Igor Bogani			};
13446f26ec7SAlessio Igor Bogani
13546f26ec7SAlessio Igor Bogani			eti@6b {
13646f26ec7SAlessio Igor Bogani				compatible = "dallas,ds1682";
13746f26ec7SAlessio Igor Bogani				reg = <0x6b>;
13846f26ec7SAlessio Igor Bogani			};
13946f26ec7SAlessio Igor Bogani		};
14046f26ec7SAlessio Igor Bogani
14146f26ec7SAlessio Igor Bogani		enet0: ethernet@24000 {
14246f26ec7SAlessio Igor Bogani			tbi-handle = <&tbi0>;
14346f26ec7SAlessio Igor Bogani			phy-handle = <&phy0>;
14446f26ec7SAlessio Igor Bogani			phy-connection-type = "gmii";
145334479d1SAlessio Igor Bogani		};
14646f26ec7SAlessio Igor Bogani
147334479d1SAlessio Igor Bogani		mdio@24520 {
14846f26ec7SAlessio Igor Bogani			phy0: ethernet-phy@0 {
14946f26ec7SAlessio Igor Bogani				interrupt-parent = <&gef_pic>;
15046f26ec7SAlessio Igor Bogani				interrupts = <0x9 0x4>;
15146f26ec7SAlessio Igor Bogani				reg = <1>;
15246f26ec7SAlessio Igor Bogani			};
15346f26ec7SAlessio Igor Bogani			phy2: ethernet-phy@2 {
15446f26ec7SAlessio Igor Bogani				interrupt-parent = <&gef_pic>;
15546f26ec7SAlessio Igor Bogani				interrupts = <0x8 0x4>;
15646f26ec7SAlessio Igor Bogani				reg = <3>;
15746f26ec7SAlessio Igor Bogani			};
15846f26ec7SAlessio Igor Bogani			tbi0: tbi-phy@11 {
15946f26ec7SAlessio Igor Bogani				reg = <0x11>;
16046f26ec7SAlessio Igor Bogani				device_type = "tbi-phy";
16146f26ec7SAlessio Igor Bogani			};
16246f26ec7SAlessio Igor Bogani		};
16346f26ec7SAlessio Igor Bogani
16446f26ec7SAlessio Igor Bogani		enet1: ethernet@26000 {
16546f26ec7SAlessio Igor Bogani			tbi-handle = <&tbi2>;
16646f26ec7SAlessio Igor Bogani			phy-handle = <&phy2>;
16746f26ec7SAlessio Igor Bogani			phy-connection-type = "gmii";
168334479d1SAlessio Igor Bogani		};
16946f26ec7SAlessio Igor Bogani
170334479d1SAlessio Igor Bogani		mdio@26520 {
17146f26ec7SAlessio Igor Bogani			tbi2: tbi-phy@11 {
17246f26ec7SAlessio Igor Bogani				reg = <0x11>;
17346f26ec7SAlessio Igor Bogani				device_type = "tbi-phy";
17446f26ec7SAlessio Igor Bogani			};
17546f26ec7SAlessio Igor Bogani		};
176334479d1SAlessio Igor Bogani
177334479d1SAlessio Igor Bogani		enet2: ethernet@25000 {
178334479d1SAlessio Igor Bogani			status = "disabled";
17946f26ec7SAlessio Igor Bogani		};
18046f26ec7SAlessio Igor Bogani
181334479d1SAlessio Igor Bogani		mdio@25520 {
182334479d1SAlessio Igor Bogani			status = "disabled";
18346f26ec7SAlessio Igor Bogani		};
18446f26ec7SAlessio Igor Bogani
185334479d1SAlessio Igor Bogani		enet3: ethernet@27000 {
186334479d1SAlessio Igor Bogani			status = "disabled";
18746f26ec7SAlessio Igor Bogani		};
18846f26ec7SAlessio Igor Bogani
189334479d1SAlessio Igor Bogani		mdio@27520 {
190334479d1SAlessio Igor Bogani			status = "disabled";
19146f26ec7SAlessio Igor Bogani		};
19246f26ec7SAlessio Igor Bogani	};
19346f26ec7SAlessio Igor Bogani
19446f26ec7SAlessio Igor Bogani	pci0: pcie@fef08000 {
19546f26ec7SAlessio Igor Bogani		reg = <0xfef08000 0x1000>;
19646f26ec7SAlessio Igor Bogani		ranges = <0x02000000 0x0 0x80000000 0x80000000 0x0 0x40000000
19746f26ec7SAlessio Igor Bogani			  0x01000000 0x0 0x00000000 0xfe000000 0x0 0x00400000>;
19846f26ec7SAlessio Igor Bogani		interrupt-map-mask = <0xff00 0x0 0x0 0x7>;
19946f26ec7SAlessio Igor Bogani		interrupt-map = <
20046f26ec7SAlessio Igor Bogani			0x0000 0x0 0x0 0x1 &mpic 0x0 0x2
20146f26ec7SAlessio Igor Bogani			0x0000 0x0 0x0 0x2 &mpic 0x1 0x2
20246f26ec7SAlessio Igor Bogani			0x0000 0x0 0x0 0x3 &mpic 0x2 0x2
20346f26ec7SAlessio Igor Bogani			0x0000 0x0 0x0 0x4 &mpic 0x3 0x2
20446f26ec7SAlessio Igor Bogani		>;
20546f26ec7SAlessio Igor Bogani
20646f26ec7SAlessio Igor Bogani		pcie@0 {
20746f26ec7SAlessio Igor Bogani			ranges = <0x02000000 0x0 0x80000000
20846f26ec7SAlessio Igor Bogani				  0x02000000 0x0 0x80000000
20946f26ec7SAlessio Igor Bogani				  0x0 0x40000000
21046f26ec7SAlessio Igor Bogani
21146f26ec7SAlessio Igor Bogani				  0x01000000 0x0 0x00000000
21246f26ec7SAlessio Igor Bogani				  0x01000000 0x0 0x00000000
21346f26ec7SAlessio Igor Bogani				  0x0 0x00400000>;
21446f26ec7SAlessio Igor Bogani		};
21546f26ec7SAlessio Igor Bogani	};
21646f26ec7SAlessio Igor Bogani
21746f26ec7SAlessio Igor Bogani	pci1: pcie@fef09000 {
21846f26ec7SAlessio Igor Bogani		reg = <0xfef09000 0x1000>;
21946f26ec7SAlessio Igor Bogani		ranges = <0x02000000 0x0 0xc0000000 0xc0000000 0x0 0x20000000
22046f26ec7SAlessio Igor Bogani			  0x01000000 0x0 0x00000000 0xfe400000 0x0 0x00400000>;
22146f26ec7SAlessio Igor Bogani
22246f26ec7SAlessio Igor Bogani		pcie@0 {
22346f26ec7SAlessio Igor Bogani			ranges = <0x02000000 0x0 0xc0000000
22446f26ec7SAlessio Igor Bogani				  0x02000000 0x0 0xc0000000
22546f26ec7SAlessio Igor Bogani				  0x0 0x20000000
22646f26ec7SAlessio Igor Bogani
22746f26ec7SAlessio Igor Bogani				  0x01000000 0x0 0x00000000
22846f26ec7SAlessio Igor Bogani				  0x01000000 0x0 0x00000000
22946f26ec7SAlessio Igor Bogani				  0x0 0x00400000>;
23046f26ec7SAlessio Igor Bogani		};
23146f26ec7SAlessio Igor Bogani	};
23246f26ec7SAlessio Igor Bogani};
233334479d1SAlessio Igor Bogani
234334479d1SAlessio Igor Bogani/include/ "mpc8641si-post.dtsi"
235