/* SPDX-License-Identifier: Apache-2.0 */

/dts-v1/;

#include <mem.h>

#define DT_FLASH_SIZE		DT_SIZE_K(192)
#define DT_SRAM_SIZE		DT_SIZE_K(52)

#include "intel_curie.dtsi"

/ {
	model = "tinytile board";
	compatible = "intel,tinytile", "intel,quark_se_c100";

	aliases {
		led0 = &led0;
		uart-0 = &uart0;
		uart-1 = &uart1;
	};

	chosen {
		zephyr,sram = &sram0;
		zephyr,flash = &flash0;
		zephyr,console = &uart1;
		zephyr,shell-uart = &uart1;
		zephyr,bt-uart = &uart0;
		zephyr,uart-pipe = &uart1;
		zephyr,bt-mon-uart = &uart1;
	};

	leds {
		compatible = "gpio-leds";
		led0: led_0 {
			gpios = <&gpio0 8 0>;
			label = "LED";
		};
	};
};

&uart0 {
	status = "ok";
	current-speed = <1000000>;
};

&uart1 {
	status = "ok";
	current-speed = <115200>;
};

&i2c0 {
	status = "ok";
	clock-frequency = <I2C_BITRATE_FAST>;
};

&i2c1 {
	status = "ok";
	clock-frequency = <I2C_BITRATE_FAST>;
};
