Skip to content

boards: silabs: Add support for Silabs EFR32ZG28 SoC #89597

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

shontal1005
Copy link

@shontal1005 shontal1005 commented May 7, 2025

Adds support for Silicon Labs EFR32ZG28 SoC and BRD4401C Radio Board.

Copy link

github-actions bot commented May 7, 2025

Hello @shontal1005, and thank you very much for your first pull request to the Zephyr project!
Our Continuous Integration pipeline will execute a series of checks on your Pull Request commit messages and code, and you are expected to address any failures by updating the PR. Please take a look at our commit message guidelines to find out how to format your commit messages, and at our contribution workflow to understand how to update your Pull Request. If you haven't already, please make sure to review the project's Contributor Expectations and update (by amending and force-pushing the commits) your pull request if necessary.
If you are stuck or need help please join us on Discord and ask your question there. Additionally, you can escalate the review when applicable. 😊

kartben
kartben previously requested changes May 7, 2025
Copy link
Contributor

@kartben kartben left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is missing a documentation page
see https://github.com/zephyrproject-rtos/zephyr/blob/76e1fc7713a4a3f2b50c497afddec0364a34c10b/doc/templates/board.tmpl or other SiLabs boards for examples

Thanks!

@jerome-pouiller
Copy link
Contributor

jerome-pouiller commented May 7, 2025

The commit is large. Would you mind to split it in two parts (or more)? Maybe one commit for the soc and one commit for the board?

BTW, don't this PR require any change on the hal? If yes, you need to update west.yml.

compatible = "fixed-factor-clock";
clocks = <&lfrco>;
};
wdog0clk: wdog0clk {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

peripherals need to be disabled in the base dts file, then enabled as-needed by boards

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems that on all other platforms the peripherals are not disabled

Comment on lines 24 to 25
config SOC_GECKO_SDID
default 235 if SOC_SERIES_EFR32ZG28
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if this is an existing symbol, put it in Kconfig.defconfig

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't understand, it seems like all the other platforms do the same thing as I did

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Then they need to move Kconfig adds new symbols, if you are changing the default of an existing symbol then it goes in Kconfig.defconfig

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@shontal1005, do you want to carry this change or you prefer I open a PR?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the change I made is what you meant, I can open another PR.

@github-actions github-actions bot added area: UART Universal Asynchronous Receiver-Transmitter area: ADC Analog-to-Digital Converter (ADC) labels May 11, 2025
@github-actions github-actions bot requested review from anangl and dcpleung May 11, 2025 20:05
@rettichschnidi rettichschnidi removed their request for review May 12, 2025 07:40
@shontal1005 shontal1005 force-pushed the main branch 3 times, most recently from 38254e0 to f52e20c Compare August 7, 2025 09:29
@shontal1005 shontal1005 requested a review from asmellby August 7, 2025 09:30
Add support for Silicon Labs EFR32ZG28 SoC.

Signed-off-by: Shontal Biton <shontal1005@gmail.com>
Add support for Silicon Labs BRD4401C (a.k.a xG28-RB4401C) Radio Board.

Signed-off-by: Shontal Biton <shontal1005@gmail.com>
Added support for xg28 in eeprom test.

Signed-off-by: Shontal Biton <shontal1005@gmail.com>
Copy link

@shontal1005 shontal1005 requested a review from asmellby August 10, 2025 12:05
Silicon Labs EFM32PG28 Series MCU
Silicon Labs EFR32ZG28 Series MCU

config SOC_SILABS_XG28
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why did you move this symbol? Following the principle of declaration before use, it should stay at the top of the file. By moving this, you are also introducing an unnecessary diff that makes it harder to review the PR.

@@ -185,7 +186,9 @@
pstate_em1: em1 {
compatible = "zephyr,power-state";
power-state-name = "runtime-idle";
min-residency-us = <4>;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These still need to be removed, see previous thread.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: ADC Analog-to-Digital Converter (ADC) area: Clock Control area: DMA Direct Memory Access area: EEPROM area: Pinctrl area: UART Universal Asynchronous Receiver-Transmitter Binary Blobs Added Binary Blobs Modified DNM (manifest) This PR should not be merged (controlled by action-manifest) manifest manifest-hal_silabs platform: Silabs Silicon Labs
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants