Commit graph zephyr/modules
Author SHA1 Message Date
Holt Sun
87f8264c65 drivers: counter: add counter driver for NXP E31B.
add counter rtc jdp driver for MCXE31B.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-11-13 20:41:39 -05:00
Yuriy Vynnychek
06b5198b3a soc: infineon: xmc7200: extend CYT4BFxx MPNs support
- Add Cortex M0+, M7(0) and M7(1) selection.
- Add TEQFP_176 and BGA_320 package support.

Signed-off-by: Yuriy Vynnychek <Yuriy.Vynnychek-EE@infineon.com>
2025-11-13 20:38:52 -05:00
Khoa Tran
7c529fbd0c drivers: spi: Initial driver support for SCI B SPI on Renesas RA
Add SCI B SPI driver support for Renesas RA

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Lukas Woodtli
c53a370c85 soc: Add support for Silabs EFM32TG
* ARM Cortex-M3 processor
* Up to 32 kB Flash and 4 kB RAM memory
* Energy efficient and autonomous peripherals
* Ultra low power Energy Modes
* Fast wake-up

Signed-off-by: Lukas Woodtli <woodtli.lukas@gmail.com>
2025-11-13 20:30:55 -05:00
Jamie McCrae
6963092375 lorawan: Move invalid requirement of 2KiB system workqueue
The LoRaWAN subsystem does not require 2KiB of system workqueue,
testing on nrf54l15 flpr (RISCV) CPU (with custom cryptography code)
shows it uses about 700 bytes of the system workqueue, therefore it
is assumed that the real requirement for 2KiB is the software
cryptography features, not the LoRaWAN stack itself, and the
cryptography parts of LoRaWAN can be replaced with alternatives
that do not need this high of a memory requirement, so the
requirement has been moved to the specific Kconfig for software
cryptography instead

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-11-13 23:21:49 +02:00
Cristian Bulacu
5b8b5df90e openthread: platform: udp: init udp fds before external net connection
When OpenThread iface is brought up `ot ifconfig up` there are several
modules that will attempt to open a platform socket and perform bind
and bind to netif operation.
Since now, `sockfd_upd` structure was initialized after the backbone
interface announced connectivity, but this implies that OpenThread
interface will always be brought up only after this event, which is not
true, or imposed.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-13 23:19:38 +02:00
Valerio Setti
263d7c1dbc modules: mbedtls: use CONFIG_CSPRNG_NEEDED to simplify CSPRNG enablement
Use the newly created CONFIG_CSPRNG_NEEDED to simplify the enablement of
CSPRNG for the PSA Crypto Core.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-11-13 23:12:29 +02:00
Valerio Setti
f95e815a1a random: rename CSPRNG_AVAILABLE to ENTROPY_NODE_ENABLED
The initial goal of CONFIG_CSPRNG_AVAILABLE was to declare that there was
an entropy node declared in the DT so that if CONFIG_ENTROPY_GENERATOR
was enabled, then the corresponding driver could be enabled.
This works in most of the cases, but not all. A counter example is the
"entropy_bt_hci" driver which is only enabled if CONFIG_BT_HCI_HOST is also
enabled. This means that in a build where the BT stack is not enabled
that driver won't be enabled even if the DT node is still present.

An example of this are the nrf5340[dk|bsim] boards.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-11-13 23:12:29 +02:00
Jamie McCrae
9812e073bb modules: hal_nxp: Remove HWMv1 checks
Removes outdated checks that have not been used for a long time

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-13 23:09:55 +02:00
Jordan Yates
74a23eacd5 modules: tf-m: generate tfm_merged.bin from tfm_merged.hex
Since `tfm_merged.bin` now contains BL2, it can only be used for the
same purposes as `tfm_merged.hex` (intial firmware loading). Therefore
it should be using the confirmed images that `tfm_merged.hex` does.

Since the only difference between the two files with that change is now
the output format, we can directly generate `tfm_merged.bin` from
`tfm_merged.hex` with `objcopy` instead of going through `mergehex.py`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-07 19:23:26 +02:00
Jordan Yates
db339e46b5 modules: tf-m: generate tfm_s_zephyr_ns_signed.bin
Generate a binary version of `tfm_s_zephyr_ns_signed.hex` with objcopy.
This file is valid for performing OTA upgrades, unlike `tfm_merged.bin`,
which contains BL2.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-07 19:23:26 +02:00
Jordan Yates
15e8305ce9 modules: tf-m: remove S_NS_CONFIRMED_HEX_FILE
`S_NS_CONFIRMED_HEX_FILE` was never generating a confirmed file, just
the same file contents as `S_NS_HEX_FILE`. Since no logic needs a
confirmed merge of `tfm_s.hex` and `zephyr.hex`, just remove the logic
instead of fixing it.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-07 19:23:26 +02:00
Jordan Yates
2219a875b2 modules: tf-m: fix CMake formatting
Fix formatting errors that cause CI to complain.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-07 19:23:26 +02:00
Aksel Skauge Mellbye
28edc26cc0 modules: hal_silabs: Simplify HFRCO frequency selection
Recent versions of the HAL rely on interpreting the HFRCO frequency
selection as a plain integer in preprocessor comparisons. The
adaptation layer in Zephyr created a C expression that was not
possible to evaluate by the preprocessor. Simplify the logic to
directly passing the devicetree value to the driver.

This slightly changes the behavior of the code by no longer accepting
arbitrary frequencies and mapping them to the closest HFRCO band.
However, the binding documentation already states that the frequency
should match the band.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-11-07 06:51:31 -05:00
Maochen Wang
a7f4150cd9 hostap: avoid configuring region domain when SAP is enabled
Configuring the region domain while SAP is enabled may lead to instability
in SAP's state and functionality. This change ensures the region domain
is not set when SAP is active.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-11-06 12:30:46 +02:00
Robert Lubos
587d9e6a4a net: icmp: Verify the address family before calling the callback
Check the address family of the packet before passing it to a ICMP
handler, to avoid scenarios where ICMPv4 packet is paseed to a ICMPv6
handler and vice versa.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-05 13:19:03 -05:00
Jérôme Pouiller
2113d56c68 soc: silabs: Fix SL_CODE_CLASSIFY conflict
SL_CODE_CLASSIFY() is a macro used by the upstream Simplicity SDK to mark
time sensitive functions (in order to relocate them in RAM). This macro
place the function in specific sections. So build scripts can identify
them.

However, Wiseconnect is not able to leverage this feature. Worse, this
mechanism conflict with gen_relocate_app.py and zephyr_code_relocate(). So,
we really need to disable this mechanism for Wiseconnect on Zephyr.

Fortunately, SLI_CODE_CLASSIFICATION_DISABLE allow to disable
SL_CODE_CLASSIFY().

Note that on Simplicity SDK, these macro also conflict with
zephyr_code_relocate(). However, the mechanism is officially supported by
Simplicity SDK and we could leverage the feature for the on going support
of Series-3.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-11-04 13:48:41 -05:00
Cristian Bulacu
11d74f2bfe modules: openthread: platform: udp: Fix otPlatUdpClose bug
This commit fixes a bug which occurred when a socket was closed.

It was observed when multiple attempts to obtain dataset using ephemeral
key were performed. Failure was seen starting with attempt number 2,
incoming packets were not processed.

In a open-close-open scenario, incoming traffic was dropped, most likely
because there was stale data in the corresponding socket service
structure.

By calling, `net_socket_service_register` after a socket in closed, the
problem was resolved, and data shown in `net sockets` cli command is now
updated and correct.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-04 16:55:31 +02:00
Marcin Jelinski
0a9f28fdef modules: nordic: select correct timer for NFCT on nRF54L
Set the appropriate default NFC timer for the nRF54L series SoCs.

Ref: NCSDK-31244

Signed-off-by: Marcin Jelinski <marcin.jelinski@nordicsemi.no>
2025-10-30 15:14:48 +02:00
Jordan Yates
bfd033df81 modules: nrf_wifi: add missing Kconfig dependency
`ZVFS_OPEN_ADD_SIZE_NRF70_ENABLE_DUAL_VIF` should only exist in the
build if `NRF70_ENABLE_DUAL_VIF`, not for every application in tree.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-30 15:13:13 +02:00
S Mohamed Fiaz
ff2e9b5836 modules: wiseconnect: kernel sleeptimer bug fix siwx91x
The fix resolves the drift test failure as part of kernel
timer behaviour and timer api test suite.
Moved sleeptimer-related source files to RAM using zephyr_code_relocate
when CONFIG_SILABS_SISDK_SLEEPTIMER is enabled, and removed duplicate
listing from PMGR backend.Updated Kconfig to select SRAM_VECTOR_TABLE
and CODE_DATA_RELOCATION_SRAM for the sleeptimer service.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-10-29 11:47:10 +00:00
Anas Nashif
303af992e5 style: fix 'if (' usage in cmake files
Replace with 'if(' and 'else(' per the cmake style guidelines.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-29 11:44:13 +02:00
Felix Wang
3621caaca6 drivers: Counter: STM Support on Zephyr
1.Add nxp,stm.yaml dts bindings
  2.Provide counter driver based on FTM driver from mcux-sdk-ng.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-25 10:47:09 +03:00
Jiafei Pan
8ea7b114a6 modules: lvgl: fix build warning for print format
Fix the following building warning:
modules/lvgl/lvgl_shell.c:62:41: warning: format '%u' expects argument
of type 'unsigned int', but argument 3 has type 'size_t' {aka 'long
unsigned int'} [-Wformat=]

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-24 20:19:17 -04:00
Ruoshan Shi
a541647a6e drivers: mipi dsi: Add dsi nxp dwc driver support
Added mipi dsi nxp dwc driver support

Signed-off-by: Ruoshan Shi <ruoshan.shi@nxp.com>
2025-10-24 20:19:17 -04:00
Winteri Wang
a13c3f001b driver: mcux_lcdifv3: add mcux_lcdifv3 driver support
Added mcux_lcdifv3 driver and enabled runtime mmio configuration.

Signed-off-by: Winteri Wang <dongjie.wang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Ruoshan Shi <ruoshan.shi@nxp.com>
2025-10-24 20:19:17 -04:00
Valerio Setti
25a71f3972 modules: mbedtls: let CSPRNG_AVAILABLE select ENTROPY_GENERATOR
It might happen that some boards have "zephyr,entropy" node set, but under
the hood the driver is not available (ex: entropy_bt_hci not being
available because CONFIG_BT_HOST is not enabled in the build).

This commit changes the behavior so that:
1. if "zephyr,entropy" is set in the DT then CONFIG_CSPRNG_AVAILABLE get
   enabled;
2. CONFIG_CSPRNG_AVAILABLE selects CONFIG_ENTROPY_GENERATOR
3. if there really is a driver available then CONFIG_ENTROPY_HAS_DRIVER
   will be enabled by that driver;
4. CONFIG_ENTROPY_HAS_DRIVER selects CONFIG_CSPRNG_ENABLED;
4. Mbed TLS can consume the CONFIG_CSPRNG_ENABLED information to
   decide whethere to enable CONFIG_MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG or
   the legacy CONFIG_MBEDTLS_PSA_CRYPTO_LEGACY_RNG.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 23:06:47 +03:00
Valerio Setti
1962ab564a modules: mbedtls: fix prompts and help messages for Kconfigs
Minor fixes to prompt and help messages for some of the Mbed TLS' Kconfigs.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
a60803bebe modules: mbedtls: add a specific file for deprecated Kconfigs
This is to preserve backward compatibility until the deprecation period of
the old names expires. After that time entries from that file can be
removed.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
315fbc5932 modules: mbedtls: rename MBEDTLS_HMAC_DRBG_ENABLED
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
f8c94f2f44 modules: mbedtls: rename MBEDTLS_CTR_DRBG_ENABLED
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
69e27673fa modules: mbedtls: rename MBEDTLS_TLS_SESSION_TICKETS
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
62f0b2c5c8 modules: mbedtls: rename MBEDTLS_TLS_VERSION_1_3
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
fa911df90c modules: mbedtls: rename MBEDTLS_DTLS
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
f960db846c modules: mbedtls: rename MBEDTLS_TLS_VERSION_1_2
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
851a20481b modules: mbedtls: rename MBEDTLS_LMS
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
e1117f18fc modules: mbedtls: rename MBEDTLS_MD
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
BUDKE Gerson Fernando
bbc73af78f trusted-firmware-m: Generate tfm_merged.bin
When CONFIG_TFM_MCUBOOT_IMAGE_NUMBER is 1, all images are merged.
Currently, there is no tfm_merged.bin file for use in FOTA. This
adds file generation to fulfill that requirement.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
d1534c5395 trusted-firmware-m: Prepare to generate tfm_merged.bin
When CONFIG_TFM_MCUBOOT_IMAGE_NUMBER is 1, the process to create the
final tfm_merged.bin file is more complex. This prepares the content
to introduce the generation of tfm_merged.bin for use in FOTA
applications.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
7fe5574fa2 trusted-firmware-m: Use cmake_parse_arguments in tfm_sign
Use cmake_parse_arguments() for more idiomatic code. This makes the
code more readable and easier to extend with new options.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
5b4cd27f55 trusted-firmware-m: Create multi image bin files
A fundamental use of Trusted Firmware-M is to provide security for
IoT applications, where firmware upgrades (FOTA) are almost always
mandatory. The current file signing process does not produce the
necessary binaries for multi-image S/NS FWU, since hex images are
not suitable for this use case. This introduces the missing signed
binary files for use by the FWU partition. The changes were tested
in multi-image FWU scenarios, and support for single-image scenarios
can be easily added in the future.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
69f277cdcb trusted-firmware-m: Make hex files variables explicit
Make variables that define output files explicitly include 'HEX' in the
name. This refactoring step allows for the introduction of BIN file
generation.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
6cee10c5b9 trusted-firmware-m: Set --confirm when signing
The current behavior when signing an image adds --pad but does not
confirm the image. This appears to be a mistake, as the user should
inspect the image status in the Firmware Upgrade software. If an image
is not --confirmed, the FSM cannot infer the correct states. This sets
the image as confirmed to resolve the issue.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
b21ea79784 trusted-firmware-m: Define header and trailer options
The current behavior when signing an image is to always set --pad and
--pad-header for all images unless TFM_USE_NS_APP is set. This does not
allow for easy creation of signed images for FOTA applications. Rewrite
the PAD parameter as HEADER and TRAILER to simplify the setup of more
signing options.

Another important reason for this change is that the NS image, when
signed without --pad, runs on the hardware but does not perform the
MCUboot test, and the FWU never upgrades the image. This fixes the NS
image signing process to correctly support TF-M FWU using the PSA API
functions.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
99a2e4931e trusted-firmware-m: Set --max-sectors when signing
The --max-sectors option helps catch problems with flash overlap when
merging images. If there is a misalignment in flash partitions, the
merge process usually fails. This uses information from Zephyr flash
partitions and the flash controller to automatically determine the
max sectors value and apply it when signing an image.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
debb59830b trusted-firmware-m: Set --align when signing
The current version of TF-M script that sign MCUboot image uses a
default alignment of 1. This value varies between flash devices
and not all accept the default 1. This improve the script picking
the write-block-size property from the current flash controller
and pass as the --align parameter when signing an image.

Note: This solution works out-of-box for the vast majority of
devices in the Zephyr tree and an exception will throw when
a device is not supported.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
2697953876 modules: tf-m: Kconfig.tfm: Update TFM_BOARD
Reorder TFM_BOARD entries by vendor name for improved clarity.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
Jamie McCrae
298a35b714 modules: tf-m: Remove some download Kconfigs
Removes two Kconfig which seemed to indicate downloading of a
project would happen automatically, which does not abide by how
to get additional module code in Zephyr. Due to TF-M always setting
these to "DOWNLOAD" in the repo, they are set even if the modules
do not exist so that they do not download e.g. in CI. Unfortunately
it seems that the qcbor one cannot be removed at this time due to
being needed in some applications and is not apache licensed,
though instructions should be provided to users instead describing
how to add it to a module manifest instead, in a later task

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-24 09:00:59 -07:00
Fengming Ye
514d7e2b5a modules: hostap: fix hostapd_cli cannot find default hostapd iface
Default find soft ap wifi iface in hostapd_cli shell command.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-10-24 09:00:18 -07:00
Ruijia Wang
e8bb85ee69 drivers: xspi: add NXP xspi driver
Add mcux xspi driver suppport. Add the flash and psram driver support
based on xspi driver.

Signed-off-by: Ruijia Wang <ruijia.wang@nxp.com>
2025-10-24 08:56:59 -07:00