// SPDX-License-Identifier: GPL-2.0-only
/*
 * Device tree for LEGO MINDSTORMS EV3
 *
 * Copyright (C) 2017 David Lechner <david@lechnology.com>
 */

/dts-v1/;

/ {
	#address-cells = <1>;
	#size-cells = <1>;
	compatible = "lego,ev3", "ti,da850";
	model = "LEGO MINDSTORMS EV3";

	aliases {
		serial1 = &serial1;
		spi0 = &spi0;
	};

	chosen {
		stdout-path = &serial1;
	};

	memory@c0000000 {
		device_type = "memory";
		reg = <0xc0000000 0x04000000>;
	};

	arm {
		#address-cells = <1>;
		#size-cells = <1>;
		ranges;
		intc: interrupt-controller@fffee000 {
			compatible = "ti,cp-intc";
			interrupt-controller;
			#interrupt-cells = <1>;
			ti,intc-size = <101>;
			reg = <0xfffee000 0x2000>;
		};
	};

	soc@1c00000 {
		compatible = "simple-bus";
		model = "da850";
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0x0 0x01c00000 0x400000>;
		interrupt-parent = <&intc>;

		mmc0: mmc@40000 {
			compatible = "ti,da830-mmc";
			reg = <0x40000 0x1000>;
			cap-sd-highspeed;
			cap-mmc-highspeed;
			interrupts = <16>;
			max-frequency = <50000000>;
			bus-width = <4>;
		};

		spi0: spi@41000 {
			#address-cells = <1>;
			#size-cells = <0>;
			compatible = "ti,da830-spi";
			reg = <0x41000 0x1000>;
			num-cs = <6>;
			ti,davinci-spi-intr-line = <1>;
			interrupts = <20>;

			flash@0 {
				compatible = "micron,n25q128a13", "jedec,spi-nor", "spi-flash";
				reg = <0>;
				spi-max-frequency = <50000000>;
			};
		};

		serial1: serial@10c000 {
			compatible = "ti,da830-uart", "ns16550a";
			reg = <0x10c000 0x100>;
			reg-io-width = <4>;
			reg-shift = <2>;
			interrupts = <53>;
		};
	};
};
