Commit graph

67 commits

Author SHA1 Message Date
Aksel Skauge Mellbye
e4164963f2 boards: silabs: Add xG29-RB4412A radio board
Add radio board for EFR32MG29 device.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-01-20 16:34:50 +01:00
Stephanos Ioannidis
fe87abe0b9 boards: Remove 'xtools' toolchain variant references
This commit removes all references to the `xtools` toolchain variant in the
board YAML files.

Note that the `xtools` toolchain variant has been deprecated since Zephyr
v3.3.0 and now removed.

The removal process was automated using the following command line:

  git grep -l xtools -- boards/*.{yml,yaml} | \
  xargs -n 1 -P $(nproc) \
  yq -i 'del(.toolchain[] | select(. == "xtools"))'

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-01-17 10:50:07 +01:00
Yishai Jaffe
62ea40bb9e drivers: spi: silabs: remove gecko from name
Gecko is being phased out so we changed every mention of gecko in the
silabs spi drivers

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-01-16 22:43:59 +01:00
Yishai Jaffe
3414619eec boards: silabs: xg23_rb4210a: use new eusart driver
Example for using new EUSART driver. Will remove this commit later.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-01-16 22:37:40 +01:00
Aksel Skauge Mellbye
e77ea215bd drivers: hwinfo: silabs: Add hwinfo driver for Series 2
Add hwinfo driver for Silicon Labs Series 2 devices. The driver
is separate from the Series 0/1 Gecko driver because the available
reset causes are completely different.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-01-14 13:26:23 +01:00
Jérôme Pouiller
3bf8bcee45 boards: silabs: Drop clock configurations for Series-2
Since commit bda8ae8c3f ("drivers: clock_control: silabs: Add clock
control driver"), clock configuration is defined in Device Tree.

We can drop now unused configurations existing in board definitions.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-01-07 20:34:12 +01:00
Yishai Jaffe
0f948fdb1c soc: silabs: efr32xg23: add DMA support
Added DMA support to efr32xg23 socs and boards containing them.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2024-12-30 19:47:19 +01:00
Daniel Fuchs
da91dbdd52 doc: silabs: fix J-Link firmware update instructions
J-Link firmware images for silabs boards are not distributed by
SEGGER, fw update should be done with Simplicity Studio instead.

Signed-off-by: Daniel Fuchs <software@sagacioussuricata.com>
2024-12-30 08:43:12 +01:00
Daniel Fuchs
32e39c164c boards: silabs: add EK2703A support
Based on board files for DK2601B. The EFR32xG24 Explorer Kit
(xG24-EK2703A) is similar to the DK2601B but does not have any
sensors onboard.

Signed-off-by: Daniel Fuchs <software@sagacioussuricata.com>
2024-12-30 08:43:12 +01:00
Yishai Jaffe
99a503e661 boards: silabs: xg23_rb4210a: added more supported hardware
Added more supported hardware to xg23_rb4210a.yaml

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2024-12-27 15:42:54 +01:00
Yishai Jaffe
503721bbcc boards: silabs: removed FLASH_BASE_ADDRESS
Removed FLASH_BASE_ADDRESS configuration from various boards' Kconfig.
The only thing needed in order to do this was to update the relevant dtsi
files so that the flash0 node has its reg property configured properly.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2024-12-20 16:06:04 +01:00
Yishai Jaffe
2ca889f617 boards: silabs: Add support for SiLabs EFR32ZG23 BRD4210A board
Add support for Silicon Labs BRD4210A (a.k.a xG23-RB4210A) Radio Board.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2024-12-18 20:32:46 +01:00
Yishai Jaffe
3d68d0543e boards: silabs: radio_boards: fix board.yml format
Fixed board.yml format for the silabs radio_boards and added the silabs
vendor line.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2024-12-18 01:00:18 +01:00
Martin Hoff
31b6c250c5 boards: silabs: update board description about dma
Update sltb010a,slwrb4180a, xg24_dk2601b and xg27_dk2602a boards
descriptions in order to run dma test. Also update boards
documentations.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2024-12-16 18:24:51 +01:00
Johan Hedberg
c49881870f boards: silabs: Remove redundant enabling of BT_SEND_ECC_EMULATION
This option gets the default value "y" whenever HAS_BT_CTLR is enabled, and
since the EFR32 HCI driver now selects HAS_BT_CTLR the right thing happens
either way.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2024-12-06 22:21:21 +01:00
Evgenii Kosenko
38e799fe2d boards: silabs: add ecc config to silabs bt boards
Adds CONFIG_BT_SEND_ECC_EMULATION on silabs bluetooth boards.

Signed-off-by: Evgenii Kosenko <Evgenii.Kosenko@silabs.com>
2024-11-29 14:50:13 +01:00
Evgenii Kosenko
0f2f158336 boards: silabs: add default uart-pipe options
Add uart-pipe driver default option in device trees for silabs boards.
It enables vcom for the boards, handy to have for sample application, for
example tester app.

Signed-off-by: Evgenii Kosenko <Evgenii.Kosenko@silabs.com>
2024-11-29 14:50:13 +01:00
Aksel Skauge Mellbye
26215a7d3b boards: silabs: Remove usage of no-op pin number macro
The GECKO_PIN() macro does not do anything except pass the
argument through unaltered. It only serves to make DeviceTree
files more verbose. It was inconsistently used, make the .dts
files consistent by never using it.

The DBUS pinctrl driver doesn't use the port or location macros
from the gpio_gecko.h header. The pin number macro is the only
other thing defined in this header. Stop including the header on
Series 2 based boards.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-11-27 22:51:55 -05:00
Aksel Skauge Mellbye
a40a26db32 boards: silabs: Use DBUS pinctrl driver for Series 2 boards
Swap from silabs,gecko-pinctrl to silabs,dbus-pinctrl for all boards
with Series 2 SoCs. Explicitly declare pin properties as part of
pinctrl pinout configuration.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-11-27 22:51:55 -05:00
Johan Hedberg
b5017dbb7c boards: silabs: Remove explicit enabling of PINCTRL
The PINCTRL option should instead be selected by those individual drivers
which depend on it.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2024-11-26 15:42:02 -05:00
Tarang Raval
532c775787 board: silabs: slstk3701a: add i2c2 node
Enable the I2C2 node on the EFM32GG11 SLSTK3701A board

Signed-off-by: Tarang Raval <tarang.raval@siliconsignals.io>
2024-11-16 13:37:28 -05:00
Benjamin Cabé
14d0a19cc2 doc: fix occurrences of broken zephyr_file: links
In preparation of adding a check for dead references, this commit fixes
currently broken zehpyr_file: links.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-10-30 09:43:50 -07:00
Reto Schneider
7dc6dd9b8a boards: silabs: sim3u1xx_dk: Enable crypto support
Using the HW acceleration is much faster than either Mbed TLS or
tinycrypt.

Signed-off-by: Reto Schneider <reto.schneider@husqvarnagroup.com>
2024-10-24 17:52:05 +02:00
Benjamin Cabé
ba09b12735 boards: silabs: adopt new zephyr:board directive and role
This updates the documentation of all the Silicon Labs boards to use
the new `zephyr:board::` directive.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-10-24 17:51:15 +02:00
Aksel Skauge Mellbye
51194bf03f soc: silabs: Default to sleeptimer for OS timer on Series 2
Disable BURTC timer in board defconfigs, as it's no longer used.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-10-24 17:51:01 +02:00
Aksel Skauge Mellbye
f302daf67a dts: arm: silabs: Describe RTC timers correctly
The DT node "stimer0" represented two different hardware timers,
RTCC and SYSRTC. Use the correct peripheral names for the nodes.
Add interrupt names and missing interrupt numbers.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-10-24 17:51:01 +02:00
Aksel Skauge Mellbye
cfccd11026 drivers: timer: gecko: Remove clock configuration
Clock setup is now done by the clock manager based
on device tree configuration.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-10-22 20:41:23 +02:00
Aksel Skauge Mellbye
c6c3e194d9 boards: silabs: Remove clock configuration
Clock setup is now done by the clock manager based
on device tree configuration.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-10-22 20:41:23 +02:00
Aksel Skauge Mellbye
634976f535 dts: silabs: Add clock bindings and clock tree
Introduce bindings for Series 2 oscillators: HFRCODPLL, HFRCOEM23,
LFRCO and LFXO.

Add clock tree representation in devicetree `clocks` node.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-10-22 20:41:23 +02:00
Aksel Skauge Mellbye
25e998fc04 soc: silabs: Enable device init on EFR32MG21
Switch EFR32MG21 to use the device init HAL. This makes the init sequence
the same as the rest of Series 2.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-10-22 20:41:23 +02:00
Aksel Skauge Mellbye
046766573d soc: silabs: Derive SYS_CLOCK_HW_CYCLES_PER_SEC from DT
On Series 2, set the SYS_CLOCK_HW_CYCLES_PER_SEC Kconfig option from
DeviceTree, rather than separately configuring it in board-level
defconfig.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-10-22 20:41:23 +02:00
Aksel Skauge Mellbye
3d0909ed18 soc: silabs: Initialize DCDC from device tree
The DC-DC converter was unconditionally initialized with default
settings on Series 2. Add device tree binding and nodes, and guard
call to init function. Map DT options to config header from HAL.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-10-22 20:41:23 +02:00
Benjamin Cabé
05d59f7207 boards: Set full_name for all boards
Full name was set based on the information available either in board
documentation or in Twister files.
Whenever applicable, vendor name was dropped from the full name so that
all boards have a consistent naming scheme.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-10-10 20:22:21 -04:00
Yong Cong Sin
52a202309b zephyr: bulk update to DT_NODE_HAS_STATUS_OKAY
Change instances of:

DT_NODE_HAS_STATUS(<node_id>, okay)

to

DT_NODE_HAS_STATUS_OKAY(<node_id>)

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2024-10-03 17:06:52 +01:00
Aksel Skauge Mellbye
bda8ae8c3f drivers: clock_control: silabs: Add clock control driver
Add clock control driver for Silicon Labs Series 2 and newer.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-09-30 17:12:01 +01:00
Jérôme Pouiller
bf700beac4 boards: silabs: Uniformize board.cmake
All the board.cmake contains more or less the same data. This patch
applies the cosmetics changes to align the structure of all these files.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2024-09-28 08:15:38 -05:00
Jérôme Pouiller
322a086269 boards: silabs: Drop useless comments
Most of the Kconfig files in boards/silabs start with a comment
describing the board. This comment is redundant with the content of
board.yaml. Let's don't repeat ourselves.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2024-09-28 08:15:38 -05:00
Jérôme Pouiller
b695d18a1d boards: silabs: Add chipset reference to "sltb004a"
Usually commercial names mention the chipset included on the board.
"Thunderboard Sense 2" is the only exception in the Silabs boards.

This information is probably useful, so add it to the description of
this board.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2024-09-28 08:15:38 -05:00
Jérôme Pouiller
c08001b115 boards: silabs: Add internal board references
Yaml files allows the user to find the internal name for their board
using the "name" field.

In addition of the commercial names/references, Silabs boards have
internal board references. These references are not advertised, but can
be found printed on (every) boards.

It makes sense to add this reference to the Yaml file in case a user
would have the idea to grep it.

This patch also fixes some commercial names of very old boards.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2024-09-28 08:15:38 -05:00
Reto Schneider
23eca6362d boards: silabs: slstk3401a: Fix unit and first address mismatch
This fixes the following warning:

> unit address and first address in 'reg' (0x3e800) don't match for
> /soc/flash-controller@400e0000/flash@0/partitions/partition@fe800

Signed-off-by: Reto Schneider <reto.schneider@husqvarnagroup.com>
2024-09-16 13:52:07 +02:00
Benjamin Cabé
9a16b93868 samples: hello_world: use zephyr:code-sample directive
Adds missing code-sample directive to the Hello World sample in
preparation for upcoming changes to the Zephyr documentation that will
be leveraging the provided description and metadata.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-09-16 10:05:18 +02:00
Benjamin Cabé
df294e34e1 doc: sphinx-lint: fix bad usage of "default role"
Fixes bad usage of single backticks in lieu of double backticks for
rendering inline literals, or simple '*' for italics.

When appropriate, a better construct than double backticks has been
selected (ex. :file:, :kconfig:option:, :c:func:, ...), or proper :ref:
have been used if the original intention was to have a link.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-09-13 11:42:51 -05:00
Reto Schneider
57064f7e08 boards: silabs: sim3u1xx_dk: Declare DMA support
This allows the users to know about the supported features and to run
(some of) the tests/drivers/dma tests on this board.

Signed-off-by: Reto Schneider <reto.schneider@husqvarnagroup.com>
2024-09-10 12:38:36 -04:00
Benjamin Cabé
d23d19d7f0 samples: bluetooth: use zephyr:code-sample directive
Describe the samples using code-sample directive in preparation for
upcoming changes to the Zephyr documentation that will be leveraging
the provided description and metadata.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-09-05 16:58:32 -04:00
Johan Hedberg
d47a9e211c boards: silabs: Don't explicitly ignore bluetooth and net tags
These boards support Bluetooth, so it should be listed under "supported".
There's also no (known) good reason to explicitly skip "net" tags, so
remove that from the ignore_tags list as well. We don't particularly know
or care about relevant net tests for these boards, so "net" is left out for
now from the "supported" list.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2024-08-28 14:01:32 -04:00
Johan Hedberg
5dd980c00b boards: silabs: Disable Bluetooth for boards which lack binary blobs
These boards don't currently have the necessary binary blobs available
for Bluetooth, so keep their Bluetooth HCI DT node disabled.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2024-08-28 14:01:32 -04:00
Reto Schneider
1c8a15867e boards: silabs: Add SiM3U1xx-B-DK
SiM3U1xx-B-DK is the official development kit offered by Silicon Labs.

Signed-off-by: Reto Schneider <reto.schneider@husqvarnagroup.com>
2024-08-26 18:51:36 +02:00
Pisit Sawangvonganan
535b854d87 style: boards: comply with MISRA C:2012 Rule 15.6
Add missing braces to comply with MISRA C:2012 Rule 15.6 and
also following Zephyr's style guideline.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2024-08-20 10:33:51 +02:00
Yong Cong Sin
19e4cb8f89 libc: cleanup deprecated heap-related Kconfigs
The following heap-related Kconfigs shared by the picolibc &
minimal libc have been deprecated for more than 2 releases,
remove them and update the Kconfigs accordingly:

- `CONFIG_MINIMAL_LIBC_MALLOC_ARENA_SIZE`
- `CONFIG_MINIMAL_LIBC_REALLOCARRAY`

Cleanup the handling to support the deprecated malloc arena
size configuration values.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2024-06-18 14:33:58 -04:00
Aksel Skauge Mellbye
09a6849a1b doc: boards: silabs: Document board naming scheme
Update Sphinx documentation to explain how Silicon Labs boards
are named in Zephyr, now that all boards are consistently
named.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-06-12 12:52:28 -04:00