xref: /rk3399_rockchip-uboot/arch/sandbox/dts/sandbox.dts (revision 8d3a25685e4aac7070365a2b3c53c2c81b27930f)
1714a5621SSimon Glass/dts-v1/;
2714a5621SSimon Glass
34c3db41aSSimon Glass#define USB_CLASS_HUB			9
44c3db41aSSimon Glass
5714a5621SSimon Glass/ {
60b304a24SSimon Glass	#address-cells = <1>;
720806e74SSimon Glass	#size-cells = <1>;
8*d63b5b4fSSimon Glass	model = "sandbox";
90b304a24SSimon Glass
109569c406SSimon Glass	aliases {
1122f68524SJoe Hershberger		eth5 = "/eth@90000000";
1246af3608SSimon Glass		i2c0 = &i2c_0;
139569c406SSimon Glass		pci0 = &pci;
1446af3608SSimon Glass		rtc0 = &rtc_0;
159569c406SSimon Glass	};
169569c406SSimon Glass
172a9ae6e0SSimon Glass	chosen {
182a9ae6e0SSimon Glass		stdout-path = "/serial";
192a9ae6e0SSimon Glass	};
202a9ae6e0SSimon Glass
213fbb7871SSimon Glass	cros_ec: cros-ec@0 {
223fbb7871SSimon Glass		reg = <0 0>;
233fbb7871SSimon Glass		compatible = "google,cros-ec-sandbox";
2439741c01SSimon Glass
2539741c01SSimon Glass		/*
2639741c01SSimon Glass		 * This describes the flash memory within the EC. Note
2739741c01SSimon Glass		 * that the STM32L flash erases to 0, not 0xff.
2839741c01SSimon Glass		 */
2939741c01SSimon Glass		#address-cells = <1>;
3039741c01SSimon Glass		#size-cells = <1>;
3139741c01SSimon Glass		flash@8000000 {
3239741c01SSimon Glass			reg = <0x08000000 0x20000>;
3339741c01SSimon Glass			erase-value = <0>;
3439741c01SSimon Glass			#address-cells = <1>;
3539741c01SSimon Glass			#size-cells = <1>;
3639741c01SSimon Glass
3739741c01SSimon Glass			/* Information for sandbox */
3839741c01SSimon Glass			ro {
3939741c01SSimon Glass				reg = <0 0xf000>;
4039741c01SSimon Glass			};
4139741c01SSimon Glass			wp-ro {
4239741c01SSimon Glass				reg = <0xf000 0x1000>;
4339741c01SSimon Glass			};
4439741c01SSimon Glass			rw {
4539741c01SSimon Glass				reg = <0x10000 0x10000>;
4639741c01SSimon Glass			};
4739741c01SSimon Glass		};
4839741c01SSimon Glass	};
4939741c01SSimon Glass
50f4d84576SSimon Glass	eth@10002000 {
51f4d84576SSimon Glass		compatible = "sandbox,eth";
52f4d84576SSimon Glass		reg = <0x10002000 0x1000>;
53f4d84576SSimon Glass		fake-host-hwaddr = [00 00 66 44 22 00];
54f4d84576SSimon Glass	};
55f4d84576SSimon Glass
56f4d84576SSimon Glass	eth@80000000 {
57f4d84576SSimon Glass		compatible = "sandbox,eth-raw";
58f4d84576SSimon Glass		reg = <0x80000000 0x1000>;
59f4d84576SSimon Glass		host-raw-interface = "eth0";
60f4d84576SSimon Glass	};
61f4d84576SSimon Glass
62f4d84576SSimon Glass	eth@90000000 {
63f4d84576SSimon Glass		compatible = "sandbox,eth-raw";
64f4d84576SSimon Glass		reg = <0x90000000 0x1000>;
65f4d84576SSimon Glass		host-raw-interface = "lo";
6639741c01SSimon Glass	};
6739741c01SSimon Glass
68a02af4aeSSimon Glass	gpio_a: gpios@0 {
694bc9a193SSimon Glass		gpio-controller;
704bc9a193SSimon Glass		compatible = "sandbox,gpio";
714bc9a193SSimon Glass		#gpio-cells = <1>;
724bc9a193SSimon Glass		gpio-bank-name = "a";
734bc9a193SSimon Glass		num-gpios = <20>;
744bc9a193SSimon Glass	};
754bc9a193SSimon Glass
76a02af4aeSSimon Glass	gpio_b: gpios@1 {
77a02af4aeSSimon Glass		gpio-controller;
78a02af4aeSSimon Glass		compatible = "sandbox,gpio";
79a02af4aeSSimon Glass		#gpio-cells = <2>;
80a02af4aeSSimon Glass		gpio-bank-name = "b";
81a02af4aeSSimon Glass		num-gpios = <10>;
82a02af4aeSSimon Glass	};
83a02af4aeSSimon Glass
84f4d84576SSimon Glass	hexagon {
85f4d84576SSimon Glass		compatible = "demo-simple";
86f4d84576SSimon Glass		colour = "white";
87f4d84576SSimon Glass		sides = <6>;
88f4d84576SSimon Glass	};
89f4d84576SSimon Glass
9046af3608SSimon Glass	i2c_0: i2c@0 {
91776f96f5SSimon Glass		#address-cells = <1>;
92776f96f5SSimon Glass		#size-cells = <0>;
9320806e74SSimon Glass		reg = <0 0>;
94776f96f5SSimon Glass		compatible = "sandbox,i2c";
95776f96f5SSimon Glass		clock-frequency = <400000>;
969c6a3c67SMasahiro Yamada		pinctrl-names = "default";
979c6a3c67SMasahiro Yamada		pinctrl-0 = <&pinctrl_i2c0>;
98776f96f5SSimon Glass		eeprom@2c {
99776f96f5SSimon Glass			reg = <0x2c>;
100776f96f5SSimon Glass			compatible = "i2c-eeprom";
101776f96f5SSimon Glass			emul {
102776f96f5SSimon Glass				compatible = "sandbox,i2c-eeprom";
103776f96f5SSimon Glass				sandbox,filename = "i2c.bin";
104776f96f5SSimon Glass				sandbox,size = <128>;
105776f96f5SSimon Glass			};
106776f96f5SSimon Glass		};
10746af3608SSimon Glass
10846af3608SSimon Glass		rtc_0: rtc@43 {
10946af3608SSimon Glass			reg = <0x43>;
11046af3608SSimon Glass			compatible = "sandbox-rtc";
11146af3608SSimon Glass			emul {
11246af3608SSimon Glass				compatible = "sandbox,i2c-rtc";
11346af3608SSimon Glass			};
11446af3608SSimon Glass		};
1159038cd53SPrzemyslaw Marczak		sandbox_pmic: sandbox_pmic {
1169038cd53SPrzemyslaw Marczak			reg = <0x40>;
1179038cd53SPrzemyslaw Marczak		};
118776f96f5SSimon Glass	};
119776f96f5SSimon Glass
120f4d84576SSimon Glass	lcd {
1213ade5bc4SSimon Glass		u-boot,dm-pre-reloc;
122f4d84576SSimon Glass		compatible = "sandbox,lcd-sdl";
123f4d84576SSimon Glass		xres = <1366>;
124f4d84576SSimon Glass		yres = <768>;
1250b304a24SSimon Glass	};
1260b304a24SSimon Glass
127a89c3a04SSimon Glass	leds {
128a89c3a04SSimon Glass		compatible = "gpio-leds";
129a89c3a04SSimon Glass
130a89c3a04SSimon Glass		iracibble {
131a89c3a04SSimon Glass			gpios = <&gpio_a 1 0>;
132a89c3a04SSimon Glass			label = "sandbox:red";
133a89c3a04SSimon Glass		};
134a89c3a04SSimon Glass
135a89c3a04SSimon Glass		martinet {
136a89c3a04SSimon Glass			gpios = <&gpio_a 2 0>;
137a89c3a04SSimon Glass			label = "sandbox:green";
138a89c3a04SSimon Glass		};
139a89c3a04SSimon Glass	};
140a89c3a04SSimon Glass
1419569c406SSimon Glass	pci: pci-controller {
1429569c406SSimon Glass		compatible = "sandbox,pci";
1439569c406SSimon Glass		device_type = "pci";
1449569c406SSimon Glass		#address-cells = <3>;
1459569c406SSimon Glass		#size-cells = <2>;
1469569c406SSimon Glass		ranges = <0x02000000 0 0x10000000 0x10000000 0 0x2000
1479569c406SSimon Glass				0x01000000 0 0x20000000 0x20000000 0 0x2000>;
1489569c406SSimon Glass		pci@1f,0 {
1499569c406SSimon Glass			compatible = "pci-generic";
1509569c406SSimon Glass			reg = <0xf800 0 0 0 0>;
1519569c406SSimon Glass			emul@1f,0 {
1529569c406SSimon Glass				compatible = "sandbox,swap-case";
1539569c406SSimon Glass			};
1549569c406SSimon Glass		};
1559569c406SSimon Glass	};
1569569c406SSimon Glass
1579c6a3c67SMasahiro Yamada	pinctrl {
1589c6a3c67SMasahiro Yamada		compatible = "sandbox,pinctrl";
1599c6a3c67SMasahiro Yamada
1609c6a3c67SMasahiro Yamada		pinctrl_i2c0: i2c0 {
1619c6a3c67SMasahiro Yamada			groups = "i2c";
1629c6a3c67SMasahiro Yamada			function = "i2c";
1639c6a3c67SMasahiro Yamada			bias-pull-up;
1649c6a3c67SMasahiro Yamada		};
1659c6a3c67SMasahiro Yamada
1669c6a3c67SMasahiro Yamada		pinctrl_serial0: uart0 {
1679c6a3c67SMasahiro Yamada			groups = "serial_a";
1689c6a3c67SMasahiro Yamada			function = "serial";
1699c6a3c67SMasahiro Yamada		};
1709c6a3c67SMasahiro Yamada	};
1719c6a3c67SMasahiro Yamada
1727bb91dd1SSimon Glass	reset@1 {
1737bb91dd1SSimon Glass		compatible = "sandbox,reset";
1747bb91dd1SSimon Glass	};
1757bb91dd1SSimon Glass
176f4d84576SSimon Glass	spi@0 {
177f4d84576SSimon Glass		#address-cells = <1>;
178f4d84576SSimon Glass		#size-cells = <0>;
179f4d84576SSimon Glass		reg = <0 0>;
180f4d84576SSimon Glass		compatible = "sandbox,spi";
181f4d84576SSimon Glass		cs-gpios = <0>, <&gpio_a 0>;
182f4d84576SSimon Glass		firmware_storage_spi: flash@0 {
183f4d84576SSimon Glass			reg = <0>;
184f4d84576SSimon Glass			compatible = "spansion,m25p16", "sandbox,spi-flash";
185f4d84576SSimon Glass			spi-max-frequency = <40000000>;
186f4d84576SSimon Glass			sandbox,filename = "spi.bin";
187f4d84576SSimon Glass		};
1883ea143abSJoe Hershberger	};
189a346ca79SJoe Hershberger
190a091a8f0SSimon Glass	spl-test {
191a091a8f0SSimon Glass		u-boot,dm-pre-reloc;
192a091a8f0SSimon Glass		compatible = "sandbox,spl-test";
193a091a8f0SSimon Glass		boolval;
194a091a8f0SSimon Glass		intval = <1>;
195a091a8f0SSimon Glass		intarray = <2 3 4>;
196a091a8f0SSimon Glass		byteval = [05];
197a091a8f0SSimon Glass		bytearray = [06];
198a091a8f0SSimon Glass		longbytearray = [09 0a 0b 0c 0d 0e 0f 10 11];
199a091a8f0SSimon Glass		stringval = "message";
200a091a8f0SSimon Glass		stringarray = "multi-word", "message";
201a091a8f0SSimon Glass	};
202a091a8f0SSimon Glass
203a091a8f0SSimon Glass	spl-test2 {
204a091a8f0SSimon Glass		u-boot,dm-pre-reloc;
205a091a8f0SSimon Glass		compatible = "sandbox,spl-test";
206a091a8f0SSimon Glass		intval = <3>;
207a091a8f0SSimon Glass		intarray = <5>;
208a091a8f0SSimon Glass		byteval = [08];
209a091a8f0SSimon Glass		bytearray = [01 23 34];
210a091a8f0SSimon Glass		longbytearray = [09 0a 0b 0c];
211a091a8f0SSimon Glass		stringval = "message2";
212a091a8f0SSimon Glass		stringarray = "another", "multi-word", "message";
213a091a8f0SSimon Glass	};
214a091a8f0SSimon Glass
215a091a8f0SSimon Glass	spl-test3 {
216a091a8f0SSimon Glass		u-boot,dm-pre-reloc;
217a091a8f0SSimon Glass		compatible = "sandbox,spl-test";
218a091a8f0SSimon Glass		stringarray = "one";
219a091a8f0SSimon Glass	};
220a091a8f0SSimon Glass
2216b6024a3SSimon Glass	spl-test4 {
2226b6024a3SSimon Glass		u-boot,dm-pre-reloc;
2236b6024a3SSimon Glass		compatible = "sandbox,spl-test.2";
2246b6024a3SSimon Glass	};
2256b6024a3SSimon Glass
226f4d84576SSimon Glass	square {
227f4d84576SSimon Glass		compatible = "demo-shape";
228f4d84576SSimon Glass		colour = "blue";
229f4d84576SSimon Glass		sides = <4>;
230a346ca79SJoe Hershberger	};
23122f68524SJoe Hershberger
2329961a0b6SThomas Chou	timer {
2339961a0b6SThomas Chou		compatible = "sandbox,timer";
234f838f124SBin Meng		clock-frequency = <1000000>;
2359961a0b6SThomas Chou	};
2369961a0b6SThomas Chou
23721baf15bSSimon Glass	tpm {
23821baf15bSSimon Glass		compatible = "google,sandbox-tpm";
23921baf15bSSimon Glass	};
24021baf15bSSimon Glass
241f4d84576SSimon Glass	triangle {
242f4d84576SSimon Glass		compatible = "demo-shape";
243f4d84576SSimon Glass		colour = "cyan";
244f4d84576SSimon Glass		sides = <3>;
245f4d84576SSimon Glass		character = <83>;
246f4d84576SSimon Glass		light-gpios = <&gpio_a 2>, <&gpio_b 6 0>;
247f4d84576SSimon Glass	};
248f4d84576SSimon Glass
249f4d84576SSimon Glass	/* Needs to be available prior to relocation */
250f4d84576SSimon Glass	uart0: serial {
251f4d84576SSimon Glass		compatible = "sandbox,serial";
252f4d84576SSimon Glass		sandbox,text-colour = "cyan";
2539c6a3c67SMasahiro Yamada		pinctrl-names = "default";
2549c6a3c67SMasahiro Yamada		pinctrl-0 = <&pinctrl_serial0>;
25522f68524SJoe Hershberger	};
2564c3db41aSSimon Glass
2574c3db41aSSimon Glass	usb@0 {
2584c3db41aSSimon Glass		compatible = "sandbox,usb";
2594c3db41aSSimon Glass		status = "disabled";
2604c3db41aSSimon Glass		hub {
2614c3db41aSSimon Glass			compatible = "sandbox,usb-hub";
2624c3db41aSSimon Glass			#address-cells = <1>;
2634c3db41aSSimon Glass			#size-cells = <0>;
2644c3db41aSSimon Glass			flash-stick {
2654c3db41aSSimon Glass				reg = <0>;
2664c3db41aSSimon Glass				compatible = "sandbox,usb-flash";
2674c3db41aSSimon Glass			};
2684c3db41aSSimon Glass		};
2694c3db41aSSimon Glass	};
2704c3db41aSSimon Glass
2714c3db41aSSimon Glass	usb@1 {
2724c3db41aSSimon Glass		compatible = "sandbox,usb";
2734c3db41aSSimon Glass		hub {
2744c3db41aSSimon Glass			compatible = "usb-hub";
2754c3db41aSSimon Glass			usb,device-class = <USB_CLASS_HUB>;
2764c3db41aSSimon Glass			hub-emul {
2774c3db41aSSimon Glass				compatible = "sandbox,usb-hub";
2784c3db41aSSimon Glass				#address-cells = <1>;
2794c3db41aSSimon Glass				#size-cells = <0>;
2804c3db41aSSimon Glass				flash-stick {
2814c3db41aSSimon Glass					reg = <0>;
2824c3db41aSSimon Glass					compatible = "sandbox,usb-flash";
2834c3db41aSSimon Glass					sandbox,filepath = "flash.bin";
2844c3db41aSSimon Glass				};
2854c3db41aSSimon Glass			};
2864c3db41aSSimon Glass		};
2874c3db41aSSimon Glass	};
2884c3db41aSSimon Glass
2894c3db41aSSimon Glass	usb@2 {
2904c3db41aSSimon Glass		compatible = "sandbox,usb";
2914c3db41aSSimon Glass		status = "disabled";
2924c3db41aSSimon Glass	};
2934c3db41aSSimon Glass
294d33776e4SMateusz Kulikowski	spmi: spmi@0 {
295d33776e4SMateusz Kulikowski		compatible = "sandbox,spmi";
296d33776e4SMateusz Kulikowski		#address-cells = <0x1>;
297d33776e4SMateusz Kulikowski		#size-cells = <0x1>;
298d33776e4SMateusz Kulikowski		pm8916@0 {
299d33776e4SMateusz Kulikowski			compatible = "qcom,spmi-pmic";
300d33776e4SMateusz Kulikowski			reg = <0x0 0x1>;
301d33776e4SMateusz Kulikowski			#address-cells = <0x1>;
302d33776e4SMateusz Kulikowski			#size-cells = <0x1>;
303d33776e4SMateusz Kulikowski
304d33776e4SMateusz Kulikowski			spmi_gpios: gpios@c000 {
305d33776e4SMateusz Kulikowski				compatible = "qcom,pm8916-gpio";
306d33776e4SMateusz Kulikowski				reg = <0xc000 0x400>;
307d33776e4SMateusz Kulikowski				gpio-controller;
308d33776e4SMateusz Kulikowski				gpio-count = <4>;
309d33776e4SMateusz Kulikowski				#gpio-cells = <2>;
310d33776e4SMateusz Kulikowski				gpio-bank-name="spmi";
311d33776e4SMateusz Kulikowski			};
312d33776e4SMateusz Kulikowski		};
313d33776e4SMateusz Kulikowski	};
314714a5621SSimon Glass};
3153fbb7871SSimon Glass
3163fbb7871SSimon Glass#include "cros-ec-keyboard.dtsi"
3179038cd53SPrzemyslaw Marczak#include "sandbox_pmic.dtsi"
318