zephyr/boards/silabs/efm32gg_slwstk6121a/efm32gg_slwstk6121a.dts

170 lines
3.3 KiB
Plaintext

/*
* Copyright (c) 2019 Interay Solutions B.V.
* Copyright (c) 2019 Oane Kingma
* Copyright (c) 2020 Thorvald Natvig
*
* SPDX-License-Identifier: Apache-2.0
*/
/dts-v1/;
#include <silabs/efm32gg11b820f2048gl192.dtsi>
#include <zephyr/dt-bindings/input/input-event-codes.h>
#include "efm32gg_slwstk6121a-pinctrl.dtsi"
/ {
model = "Silicon Labs EFM32GG SLWSTK6121A board";
compatible = "silabs,efm32gg_slwstk6121a", "silabs,efm32gg11b";
chosen {
zephyr,console = &usart0;
zephyr,shell-uart = &usart0;
zephyr,sram = &sram0;
zephyr,flash = &flash0;
};
/* These aliases are provided for compatibility with samples */
aliases {
led0 = &led0;
led1 = &led1;
sw0 = &button0;
sw1 = &button1;
watchdog0 = &wdog0;
};
leds {
compatible = "gpio-leds";
led0: led_0 {
gpios = <&gpioa 4 0>;
label = "LED 0";
};
led1: led_1 {
gpios = <&gpioa 5 0>;
label = "LED 1";
};
};
buttons {
compatible = "gpio-keys";
button0: button_0 {
/* gpio flags need validation */
gpios = <&gpiod 6 GPIO_ACTIVE_LOW>;
label = "User Push Button 0";
zephyr,code = <INPUT_KEY_0>;
};
button1: button_1 {
/* gpio flags need validation */
gpios = <&gpiod 8 GPIO_ACTIVE_LOW>;
label = "User Push Button 1";
zephyr,code = <INPUT_KEY_1>;
};
};
};
/* Connected to the WSTK VCOM */
&usart0 {
current-speed = <115200>;
pinctrl-0 = <&usart0_default>;
pinctrl-names = "default";
status = "okay";
};
/* i2c unit 0 is not used on the board, but must be defined for i2c unit 1
* to work properly.
*/
&i2c0 {
pinctrl-0 = <&i2c0_default>;
pinctrl-names = "default";
status = "okay";
};
/* Connected to Si7021 sensor on WSTK */
&i2c1 {
pinctrl-0 = <&i2c1_default>;
pinctrl-names = "default";
status = "okay";
};
&rtcc0 {
prescaler = <1>;
status = "okay";
};
&gpio {
location-swo = <0>;
status = "okay";
};
&gpioa {
status = "okay";
};
&gpiob {
status = "okay";
};
&gpioc {
status = "okay";
};
&gpiod {
status = "okay";
};
&gpioe {
status = "okay";
};
&gpiof {
status = "okay";
};
&eth0 {
/* PHY address = 0 */
phy-address = <0>;
/* PHY management pins */
location-mdio = <GECKO_LOCATION(3)>;
location-phy_mdc = <GECKO_LOCATION(3) GECKO_PORT_A GECKO_PIN(6)>;
location-phy_mdio = <GECKO_LOCATION(3) GECKO_PORT_A GECKO_PIN(15)>;
/* RMII interface pins */
location-rmii = <GECKO_LOCATION(0)>;
location-rmii_refclk = <GECKO_LOCATION(0) GECKO_PORT_A GECKO_PIN(3)>;
location-rmii_crs_dv = <GECKO_LOCATION(0) GECKO_PORT_A GECKO_PIN(4)>;
location-rmii_txd0 = <GECKO_LOCATION(0) GECKO_PORT_E GECKO_PIN(15)>;
location-rmii_txd1 = <GECKO_LOCATION(0) GECKO_PORT_E GECKO_PIN(14)>;
location-rmii_tx_en = <GECKO_LOCATION(0) GECKO_PORT_A GECKO_PIN(0)>;
location-rmii_rxd0 = <GECKO_LOCATION(0) GECKO_PORT_A GECKO_PIN(2)>;
location-rmii_rxd1 = <GECKO_LOCATION(0) GECKO_PORT_A GECKO_PIN(1)>;
location-rmii_rx_er = <GECKO_LOCATION(0) GECKO_PORT_A GECKO_PIN(5)>;
status = "okay";
};
&flash0 {
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
/* Set 12Kb of storage at the end of the 2048Kb of flash */
storage_partition: partition@1fd000 {
label = "storage";
reg = <0x001fd000 0x00003000>;
};
};
};
&wdog0 {
status = "okay";
};
&trng0 {
status = "okay";
};
&cpu0 {
clock-frequency = <72000000>;
};