/*
 * Copyright (c) 2020 Piotr Mienkowski
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/dts-v1/;
#include <silabs/efr32mg12p433f1024gm68.dtsi>
#include <silabs/efr32xg12p-pinctrl.dtsi>
#include "efr32_radio.dtsi"

/ {
	model = "Silicon Labs BRD4170A (Mighty Gecko Radio Board)";
	compatible = "silabs,efr32_radio_brd4170a", "silabs,efr32mg12p";

	aliases {
		spi-flash0 = &mx25r80;
	};
};

&cpu0 {
	clock-frequency = <38400000>;
};

&flash0 {
	partitions {
		compatible = "fixed-partitions";
		#address-cells = <1>;
		#size-cells = <1>;

		/* Reserve 32 kB for the bootloader */
		boot_partition: partition@0 {
			label = "mcuboot";
			reg = <0x0 0x00008000>;
			read-only;
		};

		/* Reserve 220 kB for the application in slot 0 */
		slot0_partition: partition@8000 {
			label = "image-0";
			reg = <0x00008000 0x00037000>;
		};

		/* Reserve 220 kB for the application in slot 1 */
		slot1_partition: partition@3f000 {
			label = "image-1";
			reg = <0x0003f000 0x00037000>;
		};

		/* Reserve 32 kB for the scratch partition */
		scratch_partition: partition@76000 {
			label = "image-scratch";
			reg = <0x00076000 0x00008000>;
		};

		/* Set 8Kb of storage at the end of the 512KB of flash */
		storage_partition: partition@7e000 {
			label = "storage";
			reg = <0x0007e000 0x00002000>;
		};

	};
};

&usart0 {
	current-speed = <115200>;
	pinctrl-0 = <&usart0_default>;
	pinctrl-names = "default";
	status = "okay";
};
