1/*
2 * Device tree for LEGO MINDSTORMS EV3
3 *
4 * Copyright (C) 2017 David Lechner <david@lechnology.com>
5 *
6 * SPDX-License-Identifier:	GPL-2.0+
7 *
8 * This is an absolute minimum device tree instead of using the one from Linux
9 * because the bootloader on the EV3 is limited to 256k. This saves us >10k.
10 */
11
12/dts-v1/;
13
14/ {
15	#address-cells = <1>;
16	#size-cells = <1>;
17	compatible = "lego,ev3", "ti,da850";
18	model = "LEGO MINDSTORMS EV3";
19
20	aliases {
21		serial1 = &serial1;
22		spi0 = &spi0;
23	};
24
25	chosen {
26		stdout-path = &serial1;
27	};
28
29	memory {
30		device_type = "memory";
31		reg = <0xc0000000 0x04000000>;
32	};
33
34	arm {
35		#address-cells = <1>;
36		#size-cells = <1>;
37		ranges;
38		intc: interrupt-controller@fffee000 {
39			compatible = "ti,cp-intc";
40			interrupt-controller;
41			#interrupt-cells = <1>;
42			ti,intc-size = <101>;
43			reg = <0xfffee000 0x2000>;
44		};
45	};
46
47	soc@1c00000 {
48		compatible = "simple-bus";
49		model = "da850";
50		#address-cells = <1>;
51		#size-cells = <1>;
52		ranges = <0x0 0x01c00000 0x400000>;
53		interrupt-parent = <&intc>;
54
55		mmc0: mmc@40000 {
56			compatible = "ti,da830-mmc";
57			reg = <0x40000 0x1000>;
58			cap-sd-highspeed;
59			cap-mmc-highspeed;
60			interrupts = <16>;
61			max-frequency = <50000000>;
62			bus-width = <4>;
63		};
64
65		spi0: spi@41000 {
66			#address-cells = <1>;
67			#size-cells = <0>;
68			compatible = "ti,da830-spi";
69			reg = <0x41000 0x1000>;
70			num-cs = <6>;
71			ti,davinci-spi-intr-line = <1>;
72			interrupts = <20>;
73
74			flash@0 {
75				compatible = "micron,n25q128a13", "jedec,spi-nor", "spi-flash";
76				reg = <0>;
77				spi-max-frequency = <50000000>;
78			};
79		};
80
81		serial1: serial@10c000 {
82			compatible = "ti,da830-uart", "ns16550a";
83			reg = <0x10c000 0x100>;
84			reg-io-width = <4>;
85			reg-shift = <2>;
86			interrupts = <53>;
87		};
88	};
89};
90