Linux preempt-rt

Check our new training course

Real-Time Linux with PREEMPT_RT

Check our new training course
with Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

/*
 * Copyright (c) 2018 Christian Taedcke
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/dts-v1/;
#include <silabs/efr32fg1p133f256gm48.dtsi>

/ {
	model = "Silicon Labs EFR32 SLWSTK6061A board";
	compatible = "silabs,efr32_slwstk6061a", "silabs,efr32fg1p";

	chosen {
		zephyr,console = &usart0;
		zephyr,shell-uart = &usart0;
		zephyr,sram = &sram0;
		zephyr,flash = &flash0;
		zephyr,code-partition = &slot0_partition;
	};

	/* These aliases are provided for compatibility with samples */
	aliases {
		led0 = &led0;
		led1 = &led1;
		sw0 = &button0;
		sw1 = &button1;
	};

	leds {
		compatible = "gpio-leds";
		led0: led_0 {
			gpios = <&gpiof 4 0>;
			label = "LED 0";
		};
		led1: led_1 {
			gpios = <&gpiof 5 0>;
			label = "LED 1";
		};
	};

	buttons {
		compatible = "gpio-keys";
		button0: button_0 {
			/* gpio flags need validation */
			gpios = <&gpiof 6 GPIO_INT_ACTIVE_LOW>;
			label = "User Push Button 0";
		};
		button1: button_1 {
			/* gpio flags need validation */
			gpios = <&gpiof 7 GPIO_INT_ACTIVE_LOW>;
			label = "User Push Button 1";
		};
	};

};

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

&usart0 {
	current-speed = <115200>;
	location-rx = <GECKO_LOCATION(0) GECKO_PORT_A GECKO_PIN(1)>;
	location-tx = <GECKO_LOCATION(0) GECKO_PORT_A GECKO_PIN(0)>;
	status = "okay";
};

&rtcc0 {
	prescaler = <1>;
	status = "okay";
};

&gpio {
	location-swo = <0>;
	status = "okay";
};

&flash0 {
	/*
	 * If the chosen node has no zephyr,code-partition property, the
	 * application image link uses the entire flash device. If a
	 * zephyr,code-partition property is defined, the application link
	 * will be restricted to that partition.
	 *
	 * For more information, see:
	 * http://docs.zephyrproject.org/latest/guides/dts/index.html#flash-partitions
	 */
	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 94 kB for the application in slot 0 */
		slot0_partition: partition@8000 {
			label = "image-0";
			reg = <0x0008000 0x00017800>;
		};

		/* Reserve 94 kB for the application in slot 1 */
		slot1_partition: partition@1f800 {
			label = "image-1";
			reg = <0x0001f800 0x00017800>;
		};

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

		/* Set 4Kb of storage at the end of the 256Kb of flash */
		storage_partition: partition@3f000 {
			label = "storage";
			reg = <0x0003f000 0x00001000>;
		};

	};
};