234 lines
4.4 KiB
Plaintext
234 lines
4.4 KiB
Plaintext
/*
|
|
* Copyright (c) 2018 Diego Sueiro
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
/dts-v1/;
|
|
#include <silabs/efr32mg12p332f1024gl125.dtsi>
|
|
#include "sltb004a-pinctrl.dtsi"
|
|
#include <zephyr/dt-bindings/input/input-event-codes.h>
|
|
|
|
/ {
|
|
model = "Silabs EFR32MG12 SLTB004A board (aka Thunderboard Sense 2)";
|
|
compatible = "silabs,sltb004a", "silabs,efr32mg";
|
|
|
|
/* These aliases are provided for compatibility with samples */
|
|
aliases {
|
|
led0 = &led0;
|
|
led1 = &led1;
|
|
pwm-led0 = &pwm_led0;
|
|
sw0 = &button0;
|
|
sw1 = &button1;
|
|
watchdog0 = &wdog0;
|
|
watchdog1 = &wdog1;
|
|
};
|
|
|
|
chosen {
|
|
zephyr,console = &usart0;
|
|
zephyr,shell-uart = &usart0;
|
|
zephyr,sram = &sram0;
|
|
zephyr,flash = &flash0;
|
|
};
|
|
|
|
leds {
|
|
compatible = "gpio-leds";
|
|
led0: led_0 {
|
|
gpios = <&gpiod 8 0>;
|
|
label = "LED 0";
|
|
};
|
|
led1: led_1 {
|
|
gpios = <&gpiod 9 0>;
|
|
label = "LED 1";
|
|
};
|
|
};
|
|
|
|
buttons {
|
|
compatible = "gpio-keys";
|
|
button0: button_0 {
|
|
/* gpio flags need validation */
|
|
gpios = <&gpiod 14 GPIO_ACTIVE_LOW>;
|
|
label = "User Push Button 0";
|
|
zephyr,code = <INPUT_KEY_0>;
|
|
};
|
|
button1: button_1 {
|
|
/* gpio flags need validation */
|
|
gpios = <&gpiod 15 GPIO_ACTIVE_LOW>;
|
|
label = "User Push Button 1";
|
|
zephyr,code = <INPUT_KEY_1>;
|
|
};
|
|
};
|
|
|
|
pwmleds {
|
|
compatible = "pwm-leds";
|
|
status = "okay";
|
|
pwm_led0: pwm_led0 {
|
|
pwms = <&pwm0 0 PWM_MSEC(20) PWM_POLARITY_NORMAL>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&cpu0 {
|
|
clock-frequency = <38400000>;
|
|
};
|
|
|
|
&usart0 {
|
|
current-speed = <115200>;
|
|
pinctrl-0 = <&usart0_default>;
|
|
pinctrl-names = "default";
|
|
status = "okay";
|
|
};
|
|
|
|
&usart2 {
|
|
compatible = "silabs,gecko-spi-usart";
|
|
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
location-rx = <GECKO_LOCATION(30) GECKO_PORT_K GECKO_PIN(2)>;
|
|
location-tx = <GECKO_LOCATION(29) GECKO_PORT_K GECKO_PIN(0)>;
|
|
location-clk = <GECKO_LOCATION(18) GECKO_PORT_F GECKO_PIN(7)>;
|
|
|
|
cs-gpios = <&gpiok 1 GPIO_ACTIVE_LOW>;
|
|
|
|
status = "okay";
|
|
|
|
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
|
|
];
|
|
};
|
|
};
|
|
|
|
&leuart0 {
|
|
current-speed = <9600>;
|
|
location-rx = <GECKO_LOCATION(27) GECKO_PORT_F GECKO_PIN(4)>;
|
|
location-tx = <GECKO_LOCATION(27) GECKO_PORT_F GECKO_PIN(3)>;
|
|
status = "okay";
|
|
};
|
|
|
|
&pinctrl {
|
|
i2c0_default: i2c0_default {
|
|
group1 {
|
|
psels = <GECKO_PSEL(I2C_SDA, C, 10)>,
|
|
<GECKO_PSEL(I2C_SCL, C, 11)>,
|
|
<GECKO_LOC(I2C_SDA, 15)>,
|
|
<GECKO_LOC(I2C_SCL, 15)>;
|
|
};
|
|
};
|
|
|
|
i2c1_default: i2c1_default {
|
|
group1 {
|
|
psels = <GECKO_PSEL(I2C_SDA, B, 6)>,
|
|
<GECKO_PSEL(I2C_SCL, B, 7)>,
|
|
<GECKO_LOC(I2C_SDA, 6)>,
|
|
<GECKO_LOC(I2C_SCL, 6)>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&i2c0 {
|
|
pinctrl-0 = <&i2c0_default>;
|
|
pinctrl-names = "default";
|
|
status = "okay";
|
|
};
|
|
|
|
&i2c1 {
|
|
/* This set selects for CCS811_I2C supporting CCS811 */
|
|
pinctrl-0 = <&i2c1_default>;
|
|
pinctrl-names = "default";
|
|
status = "okay";
|
|
|
|
ccs811: ccs811@5a {
|
|
compatible = "ams,ccs811";
|
|
reg = <0x5a>;
|
|
supply-gpios = <&gpiof 14 GPIO_ACTIVE_HIGH>;
|
|
irq-gpios = <&gpiof 13 GPIO_ACTIVE_LOW>;
|
|
wake-gpios = <&gpiof 15 GPIO_ACTIVE_LOW>;
|
|
};
|
|
|
|
/* This set selects for ENV_I2C supporting Si7021, Si11330, BMP280 */
|
|
/*
|
|
location-sda = <GECKO_LOCATION(17) GECKO_PORT_C GECKO_PIN(4)>;
|
|
location-scl = <GECKO_LOCATION(17) GECKO_PORT_C GECKO_PIN(5)>;
|
|
*/
|
|
|
|
/* This set selects for HALL_I2C supporting Si7210 */
|
|
/*
|
|
location-sda = <GECKO_LOCATION(8) GECKO_PORT_B GECKO_PIN(8)>;
|
|
location-scl = <GECKO_LOCATION(8) GECKO_PORT_B GECKO_PIN(9)>;
|
|
*/
|
|
};
|
|
|
|
&rtcc0 {
|
|
prescaler = <1>;
|
|
status = "okay";
|
|
};
|
|
|
|
&timer0 {
|
|
status = "okay";
|
|
|
|
pwm0: pwm {
|
|
status = "okay";
|
|
pin-location = <GECKO_LOCATION(17) GECKO_PORT_D GECKO_PIN(9)>;
|
|
prescaler = <1024>;
|
|
};
|
|
};
|
|
|
|
&gpio {
|
|
location-swo = <0>;
|
|
status = "okay";
|
|
};
|
|
|
|
&gpioa {
|
|
status = "okay";
|
|
};
|
|
|
|
&gpiod {
|
|
status = "okay";
|
|
};
|
|
|
|
&gpiof {
|
|
status = "okay";
|
|
};
|
|
|
|
&gpiok {
|
|
status = "okay";
|
|
};
|
|
|
|
&wdog0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&wdog1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&flash0 {
|
|
|
|
partitions {
|
|
compatible = "fixed-partitions";
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
|
|
/* Set 6Kb of storage at the end of the 1024Kb of flash */
|
|
storage_partition: partition@fe800 {
|
|
label = "storage";
|
|
reg = <0x000fe800 0x00001800>;
|
|
};
|
|
|
|
};
|
|
};
|
|
|
|
&trng0 {
|
|
status = "okay";
|
|
};
|