1/*
2 * Copyright (c) 2020 Rafael Dias Menezes <rdmeneze@gmail.com>
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7/ {
8	model = "Silicon Labs EFM32PG STK3401A board";
9
10	chosen {
11		zephyr,console = &usart0;
12		zephyr,shell-uart = &usart0;
13		zephyr,sram = &sram0;
14		zephyr,flash = &flash0;
15		watchdog0 = &wdog0;
16	};
17
18	/* These aliases are provided for compatibility with samples */
19	aliases {
20		led0 = &led0;
21		led1 = &led1;
22		sw0 = &button0;
23		sw1 = &button1;
24	};
25
26	leds {
27		compatible = "gpio-leds";
28		led0: led_0 {
29			gpios = <&gpiof 4 0>;
30			label = "LED 0";
31		};
32		led1: led_1 {
33			gpios = <&gpiof 5 0>;
34			label = "LED 1";
35		};
36	};
37
38	buttons {
39		compatible = "gpio-keys";
40		button0: button_0 {
41			/* gpio flags need validation */
42			gpios = <&gpiof 6 GPIO_ACTIVE_LOW>;
43			label = "User Push Button 0";
44		};
45		button1: button_1 {
46			/* gpio flags need validation */
47			gpios = <&gpiof 7 GPIO_ACTIVE_LOW>;
48			label = "User Push Button 1";
49		};
50	};
51};
52
53&cpu0 {
54	clock-frequency = <40000000>;
55};
56
57&usart0 {
58	current-speed = <115200>;
59	location-rx = <GECKO_LOCATION(0) GECKO_PORT_A GECKO_PIN(1)>;
60	location-tx = <GECKO_LOCATION(0) GECKO_PORT_A GECKO_PIN(0)>;
61	status = "okay";
62};
63
64&leuart0 {
65	current-speed = <9600>;
66	location-rx = <GECKO_LOCATION(18) GECKO_PORT_D GECKO_PIN(11)>;
67	location-tx = <GECKO_LOCATION(18) GECKO_PORT_D GECKO_PIN(10)>;
68	status = "okay";
69};
70
71&i2c0 {
72	location-sda = <GECKO_LOCATION(15) GECKO_PORT_C GECKO_PIN(10)>;
73	location-scl = <GECKO_LOCATION(15) GECKO_PORT_C GECKO_PIN(11)>;
74	status = "okay";
75};
76
77&rtcc0 {
78	prescaler = <1>;
79	status = "okay";
80};
81
82&gpio {
83	location-swo = <0>;
84	status = "okay";
85};
86
87&gpioa {
88	status = "okay";
89};
90
91&gpiob {
92	status = "okay";
93};
94
95&gpioc {
96	status = "okay";
97};
98
99&gpiod {
100	status = "okay";
101};
102
103&gpiof {
104	status = "okay";
105};
106
107&wdog0 {
108	status = "okay";
109};
110
111&flash0 {
112
113	partitions {
114		compatible = "fixed-partitions";
115		#address-cells = <1>;
116		#size-cells = <1>;
117
118		/* Set 6Kb of storage at the end of the 256Kb of flash */
119		storage_partition: partition@fe800 {
120			label = "storage";
121			reg = <0x0003e800 0x00001800>;
122		};
123
124	};
125};
126