blob: 82a8e947b2a6368c501a2a2561562b1373d75817 [file] [log] [blame]
/*
* Copyright (c) 2021 Sateesh Kotapati
*
* SPDX-License-Identifier: Apache-2.0
*/
/dts-v1/;
#include <silabs/efr32bg22c224f512im40.dtsi>
#include <silabs/efr32bg22-pinctrl.dtsi>
/ {
model = "Silicon Labs EFR32BG SLTB010A (aka Thunderboard BG22)";
compatible = "silabs,efr32bg_sltb010a", "silabs,efr32bg22";
/* These aliases are provided for compatibility with samples */
aliases {
led0 = &led0;
sw0 = &button0;
spi-flash0 = &mx25r80;
spi0 = &usart0;
watchdog0 = &wdog0;
};
chosen {
zephyr,console = &usart1;
zephyr,shell-uart = &usart1;
zephyr,sram = &sram0;
zephyr,flash = &flash0;
};
leds {
compatible = "gpio-leds";
led0: led_0 {
gpios = <&gpiob GECKO_PIN(0) GPIO_ACTIVE_HIGH>;
label = "LED 0";
};
};
buttons {
compatible = "gpio-keys";
button0: button_0 {
gpios = <&gpiob GECKO_PIN(1) GPIO_ACTIVE_LOW>;
label = "User Push Button 0";
};
};
wake_up_trigger: gpio-wake-up {
compatible = "silabs,gecko-wake-up-trigger";
gpios = <&gpioa GECKO_PIN(5) GPIO_ACTIVE_LOW>;
};
spi_enable: peripheral-enable {
compatible = "regulator-fixed";
regulator-name = "spi-enable-ctrl";
enable-gpios = <&gpiob GECKO_PIN(4) GPIO_ACTIVE_HIGH>;
};
};
&cpu0 {
clock-frequency = <76800000>;
};
&usart0 {
status = "okay";
pinctrl-0 = <&usart0_default>;
pinctrl-names = "default";
cs-gpios = <&gpioc 3 GPIO_ACTIVE_LOW>;
mx25r80: mx25r8035f@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <80000000>;
size = <0x800000>;
jedec-id = [c2 28 14];
sfdp-bfp = [
e5 20 f1 ff ff ff 7f 00 44 eb 08 6b 08 3b 04 bb
ee ff ff ff ff ff 00 ff ff ff 00 ff 0c 20 0f 52
10 d8 00 ff 23 72 f5 00 82 ed 04 b7 44 83 38 44
30 b0 30 b0 f7 c4 d5 5c 00 be 29 ff f0 d0 ff ff
];
};
};
&usart1 {
current-speed = <115200>;
status = "okay";
pinctrl-0 = <&usart1_default>;
pinctrl-names = "default";
};
&wdog0 {
status = "okay";
};
&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 = <0x0008000 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>;
};
};
};
&gpio {
location-swo = <0>;
status = "okay";
};
&gpioa {
status = "okay";
};
&gpiob {
status = "okay";
};
&gpioc {
status = "okay";
};
&stimer0 {
status = "okay";
};
&trng {
status = "okay";
};
&i2c0 {
location-sda = <GECKO_LOCATION(3) GECKO_PORT_D GECKO_PIN(2)>;
location-scl = <GECKO_LOCATION(3) GECKO_PORT_D GECKO_PIN(3)>;
status = "okay";
};