boards: arm: Add support for SiLabs EFR32MG21 BRD4180A board
This commit adds support for Silicon Labs BRD4180A (a.k.a. SLWRB4180A) Mighty Gecko Radio Board Signed-off-by: Steven Lemaire <steven.lemaire@zii.aero>
This commit is contained in:
parent
3d5f4187af
commit
4e4d008c82
|
@ -6,13 +6,10 @@
|
||||||
config BOARD_EFR32_RADIO
|
config BOARD_EFR32_RADIO
|
||||||
bool
|
bool
|
||||||
|
|
||||||
if BOARD_EFR32_RADIO
|
|
||||||
|
|
||||||
config BOARD_INIT_PRIORITY
|
config BOARD_INIT_PRIORITY
|
||||||
int
|
int
|
||||||
default KERNEL_INIT_PRIORITY_DEFAULT
|
default KERNEL_INIT_PRIORITY_DEFAULT
|
||||||
|
depends on BOARD_EFR32_RADIO
|
||||||
help
|
help
|
||||||
Board initialization priority. This must be bigger than
|
Board initialization priority. This must be bigger than
|
||||||
GPIO_GECKO_COMMON_INIT_PRIORITY.
|
GPIO_GECKO_COMMON_INIT_PRIORITY.
|
||||||
|
|
||||||
endif # BOARD_EFR32_RADIO
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
# EFR32BG13 BRD4104A board
|
# EFR32BG13 BRD4104A / EFR32MG21 BRD4180A board
|
||||||
|
|
||||||
# Copyright (c) 2020 Piotr Mienkowski
|
# Copyright (c) 2020 Piotr Mienkowski
|
||||||
|
# Copyright (c) 2020 TriaGnoSys GmbH
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
config BOARD_EFR32_RADIO_BRD4104A
|
config BOARD_EFR32_RADIO_BRD4104A
|
||||||
|
@ -14,3 +15,9 @@ config BOARD_EFR32_RADIO_BRD4250B
|
||||||
depends on SOC_SERIES_EFR32FG1P
|
depends on SOC_SERIES_EFR32FG1P
|
||||||
select BOARD_EFR32_RADIO
|
select BOARD_EFR32_RADIO
|
||||||
select SOC_PART_NUMBER_EFR32FG1P133F256GM48
|
select SOC_PART_NUMBER_EFR32FG1P133F256GM48
|
||||||
|
|
||||||
|
config BOARD_EFR32_RADIO_BRD4180A
|
||||||
|
bool "Silicon Labs BRD4180A (Mighty Gecko Radio Board)"
|
||||||
|
depends on SOC_SERIES_EFR32MG21
|
||||||
|
select BOARD_EFR32_RADIO
|
||||||
|
select SOC_PART_NUMBER_EFR32MG21A020F1024IM32
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
# EFR32 radio board
|
# EFR32 radio board
|
||||||
|
|
||||||
# Copyright (c) 2020 Piotr Mienkowski
|
# Copyright (c) 2020 Piotr Mienkowski
|
||||||
|
# Copyright (c) 2020 TriaGnoSys GmbH
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
if BOARD_EFR32_RADIO
|
if BOARD_EFR32_RADIO
|
||||||
|
@ -8,6 +9,7 @@ if BOARD_EFR32_RADIO
|
||||||
config BOARD
|
config BOARD
|
||||||
default "efr32_radio_brd4104a" if BOARD_EFR32_RADIO_BRD4104A
|
default "efr32_radio_brd4104a" if BOARD_EFR32_RADIO_BRD4104A
|
||||||
default "efr32_radio_brd4250b" if BOARD_EFR32_RADIO_BRD4250B
|
default "efr32_radio_brd4250b" if BOARD_EFR32_RADIO_BRD4250B
|
||||||
|
default "efr32_radio_brd4180a" if BOARD_EFR32_RADIO_BRD4180A
|
||||||
|
|
||||||
config CMU_HFXO_FREQ
|
config CMU_HFXO_FREQ
|
||||||
default 38400000
|
default 38400000
|
||||||
|
@ -15,25 +17,16 @@ config CMU_HFXO_FREQ
|
||||||
config CMU_LFXO_FREQ
|
config CMU_LFXO_FREQ
|
||||||
default 32768
|
default 32768
|
||||||
|
|
||||||
if LOG_BACKEND_SWO
|
|
||||||
|
|
||||||
config LOG_BACKEND_SWO_FREQ_HZ
|
config LOG_BACKEND_SWO_FREQ_HZ
|
||||||
default 875000
|
default 875000
|
||||||
|
depends on LOG_BACKEND_SWO
|
||||||
endif # LOG_BACKEND_SWO
|
|
||||||
|
|
||||||
if SERIAL
|
|
||||||
|
|
||||||
config UART_GECKO
|
config UART_GECKO
|
||||||
default y
|
default y
|
||||||
|
depends on SERIAL
|
||||||
endif # SERIAL
|
|
||||||
|
|
||||||
if COUNTER
|
|
||||||
|
|
||||||
config COUNTER_GECKO_RTCC
|
config COUNTER_GECKO_RTCC
|
||||||
default y
|
default y
|
||||||
|
depends on COUNTER
|
||||||
endif # COUNTER
|
|
||||||
|
|
||||||
endif # BOARD_EFR32_RADIO
|
endif # BOARD_EFR32_RADIO
|
||||||
|
|
|
@ -9,8 +9,13 @@
|
||||||
#include <sys/printk.h>
|
#include <sys/printk.h>
|
||||||
|
|
||||||
/* This pin is used to enable the serial port using the board controller */
|
/* This pin is used to enable the serial port using the board controller */
|
||||||
|
#ifdef CONFIG_BOARD_EFR32_RADIO_BRD4180A
|
||||||
|
#define VCOM_ENABLE_GPIO_NAME "GPIO_D"
|
||||||
|
#define VCOM_ENABLE_GPIO_PIN 4
|
||||||
|
#else
|
||||||
#define VCOM_ENABLE_GPIO_NAME "GPIO_A"
|
#define VCOM_ENABLE_GPIO_NAME "GPIO_A"
|
||||||
#define VCOM_ENABLE_GPIO_PIN 5
|
#define VCOM_ENABLE_GPIO_PIN 5
|
||||||
|
#endif /* CONFIG_BOARD_EFR32_RADIO_BRD4180A */
|
||||||
|
|
||||||
static int efr32_radio_init(struct device *dev)
|
static int efr32_radio_init(struct device *dev)
|
||||||
{
|
{
|
||||||
|
|
|
@ -6,6 +6,8 @@ if(CONFIG_BOARD_EFR32_RADIO_BRD4104A)
|
||||||
board_runner_args(jlink "--device=EFR32BG13PxxxF512")
|
board_runner_args(jlink "--device=EFR32BG13PxxxF512")
|
||||||
elseif(CONFIG_BOARD_EFR32_RADIO_BRD4250B)
|
elseif(CONFIG_BOARD_EFR32_RADIO_BRD4250B)
|
||||||
board_runner_args(jlink "--device=EFR32FG1PxxxF256")
|
board_runner_args(jlink "--device=EFR32FG1PxxxF256")
|
||||||
|
elseif(CONFIG_BOARD_EFR32_RADIO_BRD4180A)
|
||||||
|
board_runner_args(jlink "--device=EFR32MG21AxxxF1024")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
include(${ZEPHYR_BASE}/boards/common/openocd.board.cmake)
|
include(${ZEPHYR_BASE}/boards/common/openocd.board.cmake)
|
||||||
|
|
162
boards/arm/efr32_radio/doc/brd4180a.rst
Normal file
162
boards/arm/efr32_radio/doc/brd4180a.rst
Normal file
|
@ -0,0 +1,162 @@
|
||||||
|
.. _efr32_radio_brd4180a:
|
||||||
|
|
||||||
|
EFR32 BRD4180A (SLWRB4180A)
|
||||||
|
###########################
|
||||||
|
|
||||||
|
Overview
|
||||||
|
********
|
||||||
|
|
||||||
|
The EFR32MG21 Mighty Gecko Radio Board is one of the two
|
||||||
|
radio boards delivered with `EFR32-SLWSTK6006A Website`_. It contains
|
||||||
|
a Wireless System-On-Chip from the EFR32MG21 family built on an
|
||||||
|
ARM Cortex®-M33F processor with excellent low power capabilities.
|
||||||
|
|
||||||
|
.. figure:: ./efr32mg21-slwrb4180a.jpg
|
||||||
|
:height: 260px
|
||||||
|
:align: center
|
||||||
|
:alt: SLWRB4180A Mighty Gecko Radio Board
|
||||||
|
|
||||||
|
SLWRB4180A (image courtesy of Silicon Labs)
|
||||||
|
|
||||||
|
The BRD4180A a.k.a. SLWRB4180A radio board plugs into the Wireless Starter Kit
|
||||||
|
Mainboard BRD4001A and is supported as one of :ref:`efr32_radio`.
|
||||||
|
|
||||||
|
Hardware
|
||||||
|
********
|
||||||
|
|
||||||
|
- EFR32MG21A020F1024IM32 Mighty Gecko SoC
|
||||||
|
- CPU core: ARM Cortex®-M33 with FPU
|
||||||
|
- Flash memory: 1024 kB
|
||||||
|
- RAM: 96 kB
|
||||||
|
- Transmit power: up to +20 dBm
|
||||||
|
- Operation frequency: 2.4 GHz
|
||||||
|
- Crystals for LFXO (32.768 kHz) and HFXO (38.4 MHz).
|
||||||
|
|
||||||
|
For more information about the EFR32MG21 SoC and BRD4180A board, refer to these
|
||||||
|
documents:
|
||||||
|
|
||||||
|
- `EFR32MG21 Website`_
|
||||||
|
- `EFR32MG21 Datasheet`_
|
||||||
|
- `EFR32xG21 Reference Manual`_
|
||||||
|
- `EFR32-SLWSTK6006A Website`_
|
||||||
|
- `BRD4180A User Guide`_
|
||||||
|
|
||||||
|
Supported Features
|
||||||
|
==================
|
||||||
|
|
||||||
|
The board configuration supports the following hardware features:
|
||||||
|
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| Interface | Controller | Driver/Component |
|
||||||
|
+===========+============+=====================================+
|
||||||
|
| MPU | on-chip | memory protection unit |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| NVIC | on-chip | nested vector interrupt controller |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| SYSTICK | on-chip | systick |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| COUNTER | on-chip | rtcc |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| FLASH | on-chip | flash memory |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| GPIO | on-chip | gpio |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| UART | on-chip | serial port-polling; |
|
||||||
|
| | | serial port-interrupt |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| I2C | on-chip | i2c port-polling |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
| WATCHDOG | on-chip | watchdog |
|
||||||
|
+-----------+------------+-------------------------------------+
|
||||||
|
|
||||||
|
Other hardware features are currently not supported by the port.
|
||||||
|
|
||||||
|
Connections and IOs
|
||||||
|
===================
|
||||||
|
|
||||||
|
In the following table, the column **Name** contains Pin names. For example, PA2
|
||||||
|
means Pin number 2 on PORTA, as used in the board's datasheets and manuals.
|
||||||
|
|
||||||
|
+-------+-------------+-------------------------------------+
|
||||||
|
| Name | Function | Usage |
|
||||||
|
+=======+=============+=====================================+
|
||||||
|
| PB0 | GPIO | LED0 |
|
||||||
|
+-------+-------------+-------------------------------------+
|
||||||
|
| PB1 | GPIO | LED1 |
|
||||||
|
+-------+-------------+-------------------------------------+
|
||||||
|
| PD2 | GPIO | Push Button PB0 |
|
||||||
|
+-------+-------------+-------------------------------------+
|
||||||
|
| PD3 | GPIO | Push Button PB1 |
|
||||||
|
+-------+-------------+-------------------------------------+
|
||||||
|
| PD4 | GPIO | Board Controller Enable |
|
||||||
|
| | | EFM_BC_EN |
|
||||||
|
+-------+-------------+-------------------------------------+
|
||||||
|
| PA5 | USART1_TX | UART Console EFM_BC_TX US1_TX |
|
||||||
|
+-------+-------------+-------------------------------------+
|
||||||
|
| PA6 | USART1_RX | UART Console EFM_BC_RX US1_RX |
|
||||||
|
+-------+-------------+-------------------------------------+
|
||||||
|
|
||||||
|
The default configuration can be found in the defconfig file:
|
||||||
|
|
||||||
|
``boards/arm/efr32_radio/efr32_radio_brd4180a_defconfig``
|
||||||
|
|
||||||
|
System Clock
|
||||||
|
============
|
||||||
|
|
||||||
|
The EFR32MG21 SoC is configured to use the 38.4 MHz external oscillator on the
|
||||||
|
board.
|
||||||
|
|
||||||
|
Serial Port
|
||||||
|
===========
|
||||||
|
|
||||||
|
The EFR32MG21 SoC has three USARTs.
|
||||||
|
USART0 is connected to the board controller and is used for the console.
|
||||||
|
|
||||||
|
Programming and Debugging
|
||||||
|
*************************
|
||||||
|
|
||||||
|
Please refer to
|
||||||
|
:ref:`Programming and Debugging EFR32 Radio Board <efr32_radio_programming>`
|
||||||
|
for details on the supported debug interfaces.
|
||||||
|
|
||||||
|
Flashing
|
||||||
|
========
|
||||||
|
|
||||||
|
Connect the BRD4001A board with a mounted BRD4180A radio module to your host
|
||||||
|
computer using the USB port.
|
||||||
|
|
||||||
|
Here is an example for the :ref:`hello_world` application.
|
||||||
|
|
||||||
|
.. zephyr-app-commands::
|
||||||
|
:zephyr-app: samples/hello_world
|
||||||
|
:board: efr32_radio_brd4180a
|
||||||
|
:goals: flash
|
||||||
|
|
||||||
|
Open a serial terminal (minicom, putty, etc.) with the following settings:
|
||||||
|
|
||||||
|
- Speed: 115200
|
||||||
|
- Data: 8 bits
|
||||||
|
- Parity: None
|
||||||
|
- Stop bits: 1
|
||||||
|
|
||||||
|
Reset the board and you should see the following message in the terminal:
|
||||||
|
|
||||||
|
.. code-block:: console
|
||||||
|
|
||||||
|
Hello World! efr32_radio_brd4180a
|
||||||
|
|
||||||
|
|
||||||
|
.. _EFR32-SLWSTK6006A Website:
|
||||||
|
https://www.silabs.com/products/development-tools/wireless/efr32xg21-wireless-starter-kit
|
||||||
|
|
||||||
|
.. _BRD4180A User Guide:
|
||||||
|
https://www.silabs.com/documents/public/user-guides/ug385-brd4180a-user-guide.pdf
|
||||||
|
|
||||||
|
.. _EFR32MG21 Website:
|
||||||
|
https://www.silabs.com/products/wireless/mesh-networking/efr32mg21-series-2-socs
|
||||||
|
|
||||||
|
.. _EFR32MG21 Datasheet:
|
||||||
|
https://www.silabs.com/documents/public/data-sheets/efr32mg21-datasheet.pdf
|
||||||
|
|
||||||
|
.. _EFR32xG21 Reference Manual:
|
||||||
|
https://www.silabs.com/documents/public/reference-manuals/efr32xg21-rm.pdf
|
BIN
boards/arm/efr32_radio/doc/efr32mg21-slwrb4180a.jpg
Normal file
BIN
boards/arm/efr32_radio/doc/efr32mg21-slwrb4180a.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 40 KiB |
|
@ -8,6 +8,7 @@ EFR32 Radio Boards
|
||||||
|
|
||||||
brd4104a.rst
|
brd4104a.rst
|
||||||
brd4250b.rst
|
brd4250b.rst
|
||||||
|
brd4180a.rst
|
||||||
|
|
||||||
Overview
|
Overview
|
||||||
********
|
********
|
||||||
|
@ -17,6 +18,7 @@ Support for EFR32 Radio boards is provided by one of the starter kits
|
||||||
- `SLWSTK6020B Bluetooth SoC Starter Kit`_
|
- `SLWSTK6020B Bluetooth SoC Starter Kit`_
|
||||||
- `SLWSTK6000B Mighty Gecko Wireless Starter Kit`_
|
- `SLWSTK6000B Mighty Gecko Wireless Starter Kit`_
|
||||||
- `SLWSTK6061B Proprietary Wireless Starter Kit`_
|
- `SLWSTK6061B Proprietary Wireless Starter Kit`_
|
||||||
|
- `SLWSTK6006A Mighty Gecko Wireless Starter Kit`_
|
||||||
|
|
||||||
.. figure:: ./efr32_slwstk6020b.jpg
|
.. figure:: ./efr32_slwstk6020b.jpg
|
||||||
:width: 490px
|
:width: 490px
|
||||||
|
@ -34,12 +36,14 @@ Wireless Starter Kit Mainboard:
|
||||||
consumption of an application or prototype design.
|
consumption of an application or prototype design.
|
||||||
- Ultra-low power 128x128 pixel memory LCD
|
- Ultra-low power 128x128 pixel memory LCD
|
||||||
- 2 user buttons and 2 LEDs
|
- 2 user buttons and 2 LEDs
|
||||||
|
- 20 pin expansion header
|
||||||
- Si7021 Humidity and Temperature Sensor
|
- Si7021 Humidity and Temperature Sensor
|
||||||
- On-board Segger J-Link USB and Ethernet debugger
|
- On-board Segger J-Link USB and Ethernet debugger
|
||||||
|
|
||||||
For more information about the BRD4001A board, refer to these documents:
|
For more information about the BRD4001A board, refer to these documents:
|
||||||
|
|
||||||
- `EFR32BG13 Blue Gecko Bluetooth Starter Kit User's Guide`_
|
- `EFR32BG13 Blue Gecko Bluetooth Starter Kit User's Guide`_
|
||||||
|
- `EFR32MG21 Mighty Gecko Wireless Starter Kit User's Guide`_
|
||||||
- `WSTK Main Board BRD4001A Schematics`_
|
- `WSTK Main Board BRD4001A Schematics`_
|
||||||
|
|
||||||
.. _efr32_radio_supported_features:
|
.. _efr32_radio_supported_features:
|
||||||
|
@ -165,9 +169,15 @@ Reset the board and you should see the following message in the terminal:
|
||||||
.. _SLWSTK6061B Proprietary Wireless Starter Kit:
|
.. _SLWSTK6061B Proprietary Wireless Starter Kit:
|
||||||
https://www.silabs.com/products/development-tools/wireless/proprietary/slwstk6061b-efr32-flex-gecko-868-mhz-2-4-ghz-and-sub-ghz-starter-kit
|
https://www.silabs.com/products/development-tools/wireless/proprietary/slwstk6061b-efr32-flex-gecko-868-mhz-2-4-ghz-and-sub-ghz-starter-kit
|
||||||
|
|
||||||
|
.. _SLWSTK6006A Mighty Gecko Wireless Starter Kit:
|
||||||
|
https://www.silabs.com/products/development-tools/wireless/efr32xg21-wireless-starter-kit
|
||||||
|
|
||||||
.. _EFR32BG13 Blue Gecko Bluetooth Starter Kit User's Guide:
|
.. _EFR32BG13 Blue Gecko Bluetooth Starter Kit User's Guide:
|
||||||
https://www.silabs.com/documents/public/user-guides/ug279-brd4104a-user-guide.pdf
|
https://www.silabs.com/documents/public/user-guides/ug279-brd4104a-user-guide.pdf
|
||||||
|
|
||||||
|
.. _EFR32MG21 Mighty Gecko Wireless Starter Kit User's Guide:
|
||||||
|
https://www.silabs.com/documents/public/user-guides/ug385-brd4180a-user-guide.pdf
|
||||||
|
|
||||||
.. _WSTK Main Board BRD4001A Schematics:
|
.. _WSTK Main Board BRD4001A Schematics:
|
||||||
https://www.silabs.com/documents/public/schematic-files/WSTK-Main-BRD4001A-A01-schematic.pdf
|
https://www.silabs.com/documents/public/schematic-files/WSTK-Main-BRD4001A-A01-schematic.pdf
|
||||||
|
|
||||||
|
|
146
boards/arm/efr32_radio/efr32_radio_brd4180a.dts
Normal file
146
boards/arm/efr32_radio/efr32_radio_brd4180a.dts
Normal file
|
@ -0,0 +1,146 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2020 TriaGnoSys GmbH
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
#include <silabs/efr32mg21a020f1024im32.dtsi>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "Silicon Labs BRD4180A (Mighty Gecko Radio Board)";
|
||||||
|
compatible = "silabs,efr32mg21_brd4180a", "silabs,efr32mg21";
|
||||||
|
|
||||||
|
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;
|
||||||
|
watchdog0 = &wdog0;
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
led0: led_0 {
|
||||||
|
gpios = <&gpiob 0 0>;
|
||||||
|
label = "LED 0";
|
||||||
|
};
|
||||||
|
led1: led_1 {
|
||||||
|
gpios = <&gpiob 1 0>;
|
||||||
|
label = "LED 1";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
buttons {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
button0: button_0 {
|
||||||
|
/* gpio flags need validation */
|
||||||
|
gpios = <&gpiod 2 GPIO_ACTIVE_LOW>;
|
||||||
|
label = "User Push Button 0";
|
||||||
|
};
|
||||||
|
button1: button_1 {
|
||||||
|
/* gpio flags need validation */
|
||||||
|
gpios = <&gpiod 3 GPIO_ACTIVE_LOW>;
|
||||||
|
label = "User Push Button 1";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu0 {
|
||||||
|
clock-frequency = <38400000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&usart0 {
|
||||||
|
current-speed = <115200>;
|
||||||
|
location-rx = <GECKO_LOCATION(0) GECKO_PORT_C GECKO_PIN(1)>;
|
||||||
|
location-tx = <GECKO_LOCATION(0) GECKO_PORT_C GECKO_PIN(0)>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&rtcc0 {
|
||||||
|
prescaler = <1>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpio {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpioa {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpiob {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpioc {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpiod {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&wdog0 {
|
||||||
|
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 48 kB for the bootloader */
|
||||||
|
boot_partition: partition@0 {
|
||||||
|
label = "mcuboot";
|
||||||
|
reg = <0x0 0x0000c000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Reserve 464 kB for the application in slot 0 */
|
||||||
|
slot0_partition: partition@c000 {
|
||||||
|
label = "image-0";
|
||||||
|
reg = <0x0000c000 0x00074000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Reserve 464 kB for the application in slot 1 */
|
||||||
|
slot1_partition: partition@80000 {
|
||||||
|
label = "image-1";
|
||||||
|
reg = <0x00080000 0x00074000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Reserve 32 kB for the scratch partition */
|
||||||
|
scratch_partition: partition@f4000 {
|
||||||
|
label = "image-scratch";
|
||||||
|
reg = <0x000f4000 0x00008000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Set 16Kb of storage at the end of the 1024Kb of flash */
|
||||||
|
storage_partition: partition@fc000 {
|
||||||
|
label = "storage";
|
||||||
|
reg = <0x000fc000 0x00004000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
20
boards/arm/efr32_radio/efr32_radio_brd4180a.yaml
Normal file
20
boards/arm/efr32_radio/efr32_radio_brd4180a.yaml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
identifier: efr32_radio_brd4180a
|
||||||
|
name: BRD4180A
|
||||||
|
type: mcu
|
||||||
|
arch: arm
|
||||||
|
ram: 96
|
||||||
|
flash: 1024
|
||||||
|
toolchain:
|
||||||
|
- zephyr
|
||||||
|
- gnuarmemb
|
||||||
|
- xtools
|
||||||
|
supported:
|
||||||
|
- counter
|
||||||
|
- gpio
|
||||||
|
- nvs
|
||||||
|
- uart
|
||||||
|
- watchdog
|
||||||
|
testing:
|
||||||
|
ignore_tags:
|
||||||
|
- net
|
||||||
|
- bluetooth
|
12
boards/arm/efr32_radio/efr32_radio_brd4180a_defconfig
Normal file
12
boards/arm/efr32_radio/efr32_radio_brd4180a_defconfig
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
CONFIG_SOC_SERIES_EFR32MG21=y
|
||||||
|
CONFIG_BOARD_EFR32_RADIO_BRD4180A=y
|
||||||
|
CONFIG_ARM_MPU=y
|
||||||
|
CONFIG_CONSOLE=y
|
||||||
|
CONFIG_UART_CONSOLE=y
|
||||||
|
CONFIG_SERIAL=y
|
||||||
|
CONFIG_CORTEX_M_SYSTICK=y
|
||||||
|
CONFIG_GPIO=y
|
||||||
|
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=38400000
|
||||||
|
CONFIG_CMU_HFCLK_HFXO=y
|
Loading…
Reference in a new issue