Commit graph zephyr/modules
Author SHA1 Message Date
Chaitanya Tata
c08310b708 modules: hostap: Link chap.c for EAP-TTLS with legacy crypto
WIFI_NM_WPA_SUPPLICANT_LEGACY_CRYPTO drops CONFIG_FIPS, which re-enables
EAP-TTLS phase-2 CHAP and the chap_md5() call in eap_ttls.c. chap.c was
never added to the Zephyr CMake source list, so enterprise builds with
EAP-TTLS fail to link once LEGACY_CRYPTO defaults to enabled.

Link eap_common/chap.c when LEGACY_CRYPTO is on and EAP-TTLS (peer or
server) is enabled. md5_vector still comes from md5-internal.c or PSA
as today.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Assisted-by: Cursor:Auto
2026-06-18 08:57:02 -04:00
Chaitanya Tata
47a9a345eb modules: hostap: Merge WEP under LEGACY_CRYPTO
WEP is legacy broken crypto and belongs under the same opt-in as RC4,
MD5, and the CONFIG_FIPS strip. LEGACY_CRYPTO implies
WIFI_NM_WPA_SUPPLICANT_WEP by default; CMake defines CONFIG_WEP when
both are enabled.

Keep WIFI_NM_WPA_SUPPLICANT_WEP as a hidden symbol without depends on
LEGACY_CRYPTO so existing prj.conf references keep parsing. Only WEP
selects DEPRECATED (it predates LEGACY_CRYPTO). Build-time WEP effect
requires LEGACY_CRYPTO.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Assisted-by: Cursor:Auto
2026-06-18 08:57:02 -04:00
Chaitanya Tata
06e5814c83 modules: hostap: Add legacy crypto opt-in for WPA/TKIP interop
The supplicant is built with CONFIG_FIPS, which strips the broken and
legacy crypto call sites (HMAC-MD5, RC4, DES, ...) so that the default
build stays robust. This is not real FIPS validation, MbedTLS is not
FIPS validated, it is just a convenient switch to drop algorithms that
modern Wi-Fi no longer needs.

Some deployments still have to associate with old WPA-PSK/TKIP access
points or run legacy interop/QuickTrack test cases, which rely on the
EAPOL-Key descriptor version 1 (HMAC-MD5 4-way MIC and RC4 group-key
unwrap). Add WIFI_NM_WPA_SUPPLICANT_LEGACY_CRYPTO to drop CONFIG_FIPS
for those builds instead of patching the supplicant core sources.

When enabled, CMake links hostap rc4.c for group-key unwrap and, when
PSA_WANT_ALG_MD5 is off, md5-internal.c and md5.c so EAPOL-Key v1
HMAC-MD5 does not depend on PSA (for example Oberon does not implement
PSA_ALG_MD5). The option selects NOT_SECURE.

The option defaults to enabled so WPA/TKIP interop works out of the box.
Enabling it disables CONFIG_FIPS wholesale and brings back the entire
legacy crypto surface, not just TKIP. TKIP is deprecated and not allowed
in current Wi-Fi Alliance certification programs.

Enabled by default for now. The default will change to disabled in a
future Zephyr release. Set WIFI_NM_WPA_SUPPLICANT_LEGACY_CRYPTO
explicitly if you need WPA/TKIP or other legacy AP interop.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Assisted-by: Cursor:Auto
2026-06-18 08:57:02 -04:00
Łukasz Stępnicki
d5ce0c2390 drivers: watchdog: gswdt with config service
Added option to nrf gswdt drivers to be able to configure
maximum timeout window and also to be able to stop gswdt.
This features are only available when gswdt service is
supported by local domain, otherwise gswdt can still be
used but with fixed timeout and cant be stopped.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2026-06-17 16:34:11 -04:00
Robert Lubos
731bcf72c7 lib: os: zvfs: Add additive eventfd count mechanism
Similarly to the existing CONFIG_ZVFS_OPEN_ADD_SIZE_* mechanism used to
size the file descriptor table, allow subsystems to declare their eventfd
count requirements via CONFIG_ZVFS_EVENTFD_ADD_SIZE_* Kconfig options.
These are summed up at build time and compared against
CONFIG_ZVFS_EVENTFD_MAX, with the larger of the two values used to size
the eventfd table, exposed as the ZVFS_EVENTFD_SIZE compile definition.

A new CONFIG_ZVFS_EVENTFD_IGNORE_MIN option allows to override the
calculated requirement and use CONFIG_ZVFS_EVENTFD_MAX as-is.

As each eventfd also consumes a file descriptor, the resulting eventfd
count is now reserved in the file descriptor table as well, replacing the
former CONFIG_ZVFS_OPEN_ADD_SIZE_EVENTFD option which only accounted for
CONFIG_ZVFS_EVENTFD_MAX.

The WPA supplicant requirement is moved from a CONFIG_ZVFS_EVENTFD_MAX
default into a dedicated
CONFIG_ZVFS_EVENTFD_ADD_SIZE_WIFI_NM_WPA_SUPPLICANT option.

Assisted-by: Cursor:Claude Opus 4.8
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-06-17 11:59:43 -04:00
Chaitanya Tata
73f99efcf9 drivers: wifi: nrf70: log RPU writes that fail in the bus shim
zep_shim_qspi_cpy_to() discarded the return value of the bus write, so a
failed SPI/QSPI transfer to the RPU went unnoticed and only surfaced much
later as a firmware boot signature mismatch. Check the return code and
log an error so the actual point of failure is visible.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Assisted-by: Cursor:Auto
2026-06-17 10:06:41 -04:00
James Bennion-Pedley
d9bc08b6a6 soc: wch: add CH32V305 and CH32V317
Adds WCH CH32V305 and CH32V317, completing the SOC family

Signed-off-by: James Bennion-Pedley <james@bojit.org>
2026-06-17 10:04:46 -04:00
Michael Zimmermann
8a7ae0bed1 modules: hal_silabs: rename gecko kconfigs
- Kconfigs in modules/ should not define configs with an SOC_ prefix.
  Furthermore, these options are SDK specific, not SoC specific.
- The simplicity_sdk configs do the same.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2026-06-17 08:05:45 +02:00
Aksel Skauge Mellbye
78cb20678a manifest: Update hal_silabs for SiWx91x
Update hal_silabs with latest NWP firmware, which fixes issues
related to privacy for BLE Central mode and TWT for Wi-Fi.
Update the version check to match the new firmware version.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2026-06-15 12:14:26 -04:00
Carlo Caione
a5aa7f6ab2 modules: lvgl: treat BTN_LEFT as touch in pointer input
Mice and tablet devices report BTN_LEFT rather than BTN_TOUCH.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2026-06-15 10:24:27 +02:00
Holt Sun
40d4cc9180 drivers: counter: add MCUX wake timer driver
Add a counter driver for the MCUX wake timer. The hardware is a
one-shot down-counter with one load/count register, so the driver
uses the register either for periodic top handling or for relative
single-shot alarms.

Absolute alarms are reported as unsupported because programming an
alarm reloads the hardware counter and changes the value space that
an absolute target would be measured against. Clear stale pending IRQ
state around start, stop, cancel, and alarm setup.

Built and ran tests/drivers/counter/counter_basic_api on frdm_mcxa153
with CONFIG_COUNTER_MCUX_WAKE_TIMER_ALARM=y.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-06-15 10:22:32 +02:00
Pieter De Gendt
3c72cc5784 modules: lvgl: add lvgl_timer_handler_pause/_resume API
Provide explicit control over the LVGL timer handler running on the
internal workqueue, allowing applications to halt rendering activity
(e.g. while the display is off) and resume it later.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-06-15 10:20:54 +02:00
Sreeram Tatapudi
f7f1413fac boards: kit_pse84_ai: add tfm non-secure variant
Add TF-M non-secure variant for the PSE84 AI Kit board, enabling
secure/non-secure partitioning. The NS variant is configured with
TF-M medium profile, clock control, GPIO and UART console.

Assisted-by: GitHub Copilot:claude-sonnet-4.5

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
Co-authored-by: Laura Carlesso <laura.carlesso@infineon.com>
2026-06-12 21:44:42 +02:00
Laura Carlesso
0b1a9085c6 modules: infineon: Use local copies of board files for TF-M
TF-m includes a GeneratedSource folder with default generated
sources files that are the standard use case for the kit_pse84_eval
board with EPC2. When supporting different boards we'd need a TF-m
PR to update those files and the cherry pick that into Zephyr's
fork and then directing the build properly. It makes more sense
to host a copies of these files and give them as inputs to the
TF-m build so that they are more easily maintainable.

Signed-off-by: Laura Carlesso <laura.carlesso@infineon.com>
2026-06-12 21:44:42 +02:00
Laura Carlesso
2c23280199 manifest: Get restructured hal-infineon zephyr-ifx-cycfg
Fetch hal-infineon commit that include the restructuring
of zephyr-ifx-cycfg.

Signed-off-by: Laura Carlesso <laura.carlesso@infineon.com>
2026-06-12 21:44:42 +02:00
Alain Volmat
668459fd43 modules: lvgl: include lvgl_private.h in lvgl_zephy_osal
Starting from LVGL 9.5.0, LVGL has changed way to include
lvgl_os_private.h. Directly include the lvgl_private.h
header into lvgl_zephyr_osal.c instead of relying on the
LV_USE_PRIVATE_API.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-06-12 10:07:30 +02:00
Alain Volmat
1cd6a3b440 modules: lvgl: update CMakeLists to avoid file list
Automatically generate the list of files to be compiled
and apply exclude pattern on the file list in order to
avoid having to manually update the CMakeLists at each
update of LVGL.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-06-12 10:07:30 +02:00
Anas Nashif
af87585e1a cmsis-nn: make it build with clang
Ignore attribute warnings when building with clang.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2026-06-12 07:51:32 +02:00
Holt Sun
9fd318dd63 drivers: cache: add NXP MCM LPCAC support
Add a Zephyr cache backend for NXP LPCAC instances whose control
signals are wired through the MCM CPCR2 register. The backend exposes
instruction-cache enable, disable, and full invalidation through the
standard cache API.

Select the matching MCUX cache_lpcac HAL component with the new
HAS_MCUX_MCM_LPCAC capability. This keeps MCM-controlled LPCAC separate
from the existing SYSCON LPCAC backend.

Build coverage is provided by the MCXW7xx enablement that uses this
backend in the following commit.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-06-12 07:50:27 +02:00
Laura Carlesso
2e56686297 modules: infineon: Update included necessary files for SRF Multicore
When enabling SRF Multicore support both the cm33ns and the cm55
cores need additional files to be included in the build to be
successful and functional.
On cm33s we need to instruct TF-M to enable the CM55 present flag and
the mailbox support.
On cm33ns side we need to enable the custom process request handling
for IPC SRF requests specify custom IPC packets and handle the address
remapping for CM55 addresses.
On cm55 side we have to reference files built durint TF-M install
and add the custom IPC handling for SRF requests. Additionally we need
to link its source files to the same one used by TF-M in ifx-cycfg.
Also added check for defines to avoid redefining in infineon_kconfig.h

Signed-off-by: Laura Carlesso <laura.carlesso@infineon.com>
2026-06-11 23:14:30 +02:00
Laura Carlesso
4c8bc3bc5c modules: infineon: abstraction-rtos: Handle pre kernel semaphores
Specify timeout as no wait for pre-kernel semaphore take as
it cannot block before the kernel is started.
Also force select of EVENTS for rtoe events operations to be
functional.

Signed-off-by: Laura Carlesso <laura.carlesso@infineon.com>
2026-06-11 23:14:30 +02:00
Laura Carlesso
8c30559cbb modules: infineon: Add mtb-ipc
Add CMakeLists for mtb-ipc asset.

Signed-off-by: Laura Carlesso <laura.carlesso@infineon.com>
2026-06-11 23:14:30 +02:00
Michael Zimmermann
d6c813e0b7 soc: silabs: add support for efr32mg13p732f512gm48
This SoC is used by the Tuya TYZS3.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2026-06-11 15:03:30 -04:00
Hui Bai
b31711769f net: l2: wifi: Add SSID protection parameter for STA and AP.
Add new parameter -C to enable or disable SSID protection in wifi connect
and wifi ap enable commands. The SSID protection is disabled by default.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2026-06-11 15:02:14 -04:00
Anton Rejoe
36cc4c9639 modules: hostap: add support for OWE
Adding OWE support for the wpa supplicant API

Signed-off-by: Anton Rejoe <antonrejoe@gmail.com>
2026-06-11 15:01:41 -04:00
Qingling Wu
b70dd015a7 hostap: net: add support for NAN
Add Wi-Fi NAN (Neighbor Awareness Networking) support to Zephyr
including event handling, management API, and shell commands.
NAN enables devices to discover services and communicate with
nearby devices without requiring a traditional access point.

This commit includes:
- NAN management APIs and event handling
- Shell commands for NAN operations (publish, subscribe, transmit)
- Build test configuration and documentation

Signed-off-by: Qingling Wu <qingling.wu@nxp.com>
2026-06-11 14:12:06 +02:00
Tomi Fontanilles
63b2f70648 modules: mbedtls: auto-enable HMAC when needed
HMAC is a direct dependency of certain algs. TF-PSA-Crypto enables it
automatically under the hood in `crypto_adjust_config_dependencies.h`,
so enable it at the Kconfig level too.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2026-06-10 13:12:29 +02:00
Tomi Fontanilles
15939225f8 modules: tf-m: add CONFIG_TFM_T_COSE_PATH
Add a Kconfig option to configure the path to the t_cose repository
just as exists for the QCBOR one.
Zephyr won't ship with t_cose for now either because having Initial
Attestation work would require shipping both t_cose and QCBOR and for
the latter the licensing issue should be resolved first.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2026-06-10 13:12:22 +02:00
Johan Hedberg
297bb684ee modules: openthread: platform: ble: Use bt_conn_drop()
Replace the two-line pattern:

  bt_conn_unref(ot_plat_ble_connection);
  ot_plat_ble_connection = NULL;

with bt_conn_drop(&ot_plat_ble_connection) which performs both
operations atomically in a single step.

Assisted-by: GitHub Copilot:claude-opus-4.7
Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2026-06-10 10:53:36 +02:00
Xiaodong Xie
f855fe00fd samples: Add a NXP Neutron sample program
Add NXP Neutron NPU support for mcxn and mimxrt700evk.
    Add a TFLite Micro sample that run inferences on NXP Neutron.

Signed-off-by: Xiaodong Xie <xiaodong.xie@nxp.com>
2026-06-10 09:34:27 +02:00
Anas Nashif
f5d297d17f modules: realtek: fix Kconfig leak
Maybe there is a better way to do that, but this plugs a kconfig leak.
Anything you build has a whole lot of Kconfig specific to Realtek right
now, for example, building hello_world for native_sim, gets you this:

	#
	# HAL Realtek Bee Drivers
	#
	# CONFIG_REALTEK_BEE_ADC is not set
	# CONFIG_REALTEK_BEE_CAN is not set
	# CONFIG_REALTEK_BEE_CODEC is not set
	# CONFIG_REALTEK_BEE_DMA is not set
	# CONFIG_REALTEK_BEE_GPIO is not set
	# CONFIG_REALTEK_BEE_I2C is not set
	# CONFIG_REALTEK_BEE_I2S is not set
	# CONFIG_REALTEK_BEE_IR is not set
	CONFIG_REALTEK_BEE_NVIC=y
	# CONFIG_REALTEK_BEE_KEYSCAN is not set
	# CONFIG_REALTEK_BEE_MAC_802154 is not set
	# CONFIG_REALTEK_BEE_PINMUX is not set
	# CONFIG_REALTEK_BEE_PWM is not set
	# CONFIG_REALTEK_BEE_QDEC is not set
	# CONFIG_REALTEK_BEE_AON_QDEC is not set
	# CONFIG_REALTEK_BEE_LPQDEC is not set
	# CONFIG_REALTEK_BEE_RCC is not set
	# CONFIG_REALTEK_BEE_RTC is not set
	# CONFIG_REALTEK_BEE_GRTC is not set
	# CONFIG_REALTEK_BEE_SDHC is not set
	# CONFIG_REALTEK_BEE_SPI is not set
	# CONFIG_REALTEK_BEE_TIMER is not set
	# CONFIG_REALTEK_BEE_ENHTIMER is not set
	# CONFIG_REALTEK_BEE_UART is not set
	# CONFIG_REALTEK_BEE_USB is not set
	# CONFIG_REALTEK_BEE_USING_USB_HAL is not set
	# CONFIG_REALTEK_BEE_AON_WDT is not set
	# CONFIG_REALTEK_BEE_CORE_WDT is not set
	# end of HAL Realtek Bee Drivers

	CONFIG_REALTEK_BEE_COMMON_DRIVER=y
	CONFIG_WRAP_REALTEK_BEE_NVIC=y
	# CONFIG_USE_REALTEK_BEE_OS_INTERFACE is not set
	# end of hal_realtek (/home/nashif/zephyrproject/modules/hal/realtek)

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2026-06-10 07:45:46 +02:00
minyuan xue
02e33d0328 drivers: flash: add ameba flash driver
Add realtek ameba flash driver.

Signed-off-by: minyuan xue <minyuan_xue@realsil.com.cn>
2026-06-09 19:54:32 +02:00
Tomi Fontanilles
5ef6b3ae46 modules: mbedtls: make MBEDTLS depend on PSA_CRYPTO
Even though the repos are split between Mbed TLS and TF-PSA-Crypto,
successful compilation of Mbed TLS requires TF-PSA-Crypto to be
available.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2026-06-09 11:56:09 +02:00
Holt Sun
924033d97e soc: nxp: mcxe24x: fix watchdog reset loop
CMSIS SystemInit() disables the internal hardware watchdog by default
(DISABLE_WDOG defaults to 1). MCXE24x previously forced DISABLE_WDOG=0
as a global compile definition from the SoC CMakeLists, leaving the
watchdog running even when no driver was responsible for servicing it.
On frdm_mcxe247 this made every application reset-loop.

Scope the bridge to the MCUX HAL library instead of the whole build and
drive it from Kconfig, so a SoC opts in only when its CMSIS SystemInit
honors DISABLE_WDOG:

- HAS_MCUX_SYSINIT_DISABLE_WDOG: capability selected by the SoC.
- MCUX_SYSINIT_KEEP_WATCHDOG: enabled only when an enabled watchdog
  driver supports the boot-time disable policy and the application asks
  to keep the watchdog running (WATCHDOG && HAS_WDT_DISABLE_AT_BOOT &&
  !WDT_DISABLE_AT_BOOT).

The MCUX HAL CMake then applies DISABLE_WDOG=0 to the hal_nxp library
only; MCXE24x selects the capability and the SoC CMakeLists no longer
defines the macro globally.

Tested on frdm_mcxe247 over MCU-Link: tests/kernel/common (the reset
loop reproducer from #109911) boots once and runs to PROJECT EXECUTION
SUCCESSFUL, and samples/hello_world boots cleanly. Confirmed that
DISABLE_WDOG=0, when active, is applied only to the hal_nxp library
sources (including system_MCXE247.c) and to no kernel or application
source.

Fixes #109911

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-06-09 10:31:14 +02:00
Petri Pitkanen
e9682ef384 modules: hal_silabs: Always allocate a connection for PAwR responses
The Silicon Labs Link Layer allocates a connection context when PAwR
with response discovers an advertiser to synchronize with.

Since this procedure currently relies on connection resources, ensure
that at least one connection is configured whenever PAwR responses are
enabled.

Signed-off-by: Petri Pitkanen <petri.pitkanen@silabs.com>
2026-06-09 08:43:19 +02:00
Silesh C V
e11025804e arch: arm: introduce ARMv8-A AArch32 support
Add a new AARCH32_ARMV8_A Kconfig symbol for ARMv8-A processors
running in AArch32 execution state, modelled after the existing
ARMv8-R AArch32 support. ARMv8-A AArch32 execution state is used
by processors such as the Cortex-A32 that implement only the AArch32
state as well as by other ARMv8-A processors that support AArch32
at specific exception levels.

A dedicated Kconfig symbol is needed (compared to simply reusing
ARMV7_A)because ARMv8-A AArch32 shares some code paths with ARMv7-A
and others with ARMv8-R AArch32. This also means that rather than
introducing a new standalone architecture port, the implementation
selectively extends the code paths used by either of these
architectures based on the architectural requirements as detailed
below.

MMU/fault handling: The implementation uses the existing short
descriptor translation table format used by ARMv7-A, sharing
the MMU programming and FSR encodings.

exception modes stack initialization: ARMv8-A AArch32 implements the
same exception modes as ARMv7-A and so reuses the ARMv7-A exception
mode stack initialization framework directly.

VBAR programming: Unlike ARMv7-A, ARMv8-A AArch32 mandates the use of
VBAR to store the vector table base address. So extend the vector
table relocation support already used by ARMv8-R AArch32. Also map
the vectors region from arch-level code rather than requiring each
SoC to provide this.

Arm generic timer support: The Generic Timer is mandatory in ARMv8-A
AArch32 and is accessed via the system register interface rather than
the memory-mapped I/O interface used by some ARMv7-A implementations.
The system-register-based timer path is therefore shared with ARMv8-R
AArch32.

interrupt masking: Reuse the CPSR based interrupt masking used by
ARMv7-A and ARMv8-R AArch32.

SVC based fatal error path: Reuse the SVC based fatal error path
shared by ARMv7-A and ARMv8-R AArch32.

Signed-off-by: Silesh C V <silesh@alifsemi.com>
2026-06-09 08:41:24 +02:00
Laura Carlesso
60ccc404bf soc: infineon: pse84: Set UART off in tf-m builds
Specifically configure IFX_UART_ENABLED as OFF for
Zephyr's integration of tf-m for pse84.
Additionally move the pse84 specific configuration
from the tf-m CMakeLists to the soc level one.

Signed-off-by: Laura Carlesso <laura.carlesso@infineon.com>
2026-06-08 16:34:57 +02:00
Laura Carlesso
b041ceae4f modules: hal_infineon: Correct path for tf-m include files
Update the path for Infineon tf-m generated source
accordingly to the updated platform chanfes fone in
the trusted-firmware-m module.

Signed-off-by: Laura Carlesso <laura.carlesso@infineon.com>
2026-06-08 16:34:57 +02:00
Tomi Fontanilles
38f867fb0e modules: hostap: make WIFI_NM_WPA_SUPPLICANT_CRYPTO_ALT enable HMAC
CONFIG_PSA_WANT_ALG_HMAC is a dependency of CONFIG_PSA_WANT_ALG_HKDF,
so enable it.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2026-06-08 13:58:25 +02:00
Tomi Fontanilles
0c4650be17 modules: mbedtls: add dependencies to PSA_WANT_* Kconfig options
Add some dependencies to Kconfig options in `Kconfig.psa.auto` that
wouldn't make sense to enable without their dependencies.

This is just a first version with few additions, more can be added
later.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2026-06-08 13:58:25 +02:00
Laurent Clementine
a0249f66d9 soc: nxp: rw61x: add configuration for rw61x zigbee
- enable MONOLITHIC_NBU for NXP_IEEE802154_MAC for rw61x
- update hal_nxp ieee_802_15_4 module to 26.06.00-pvw2

Signed-off-by: Laurent Clementine <laurent.clementine@nxp.com>
Signed-off-by: George Stefan <george.stefan@nxp.com>
2026-06-08 13:56:47 +02:00
Pieter De Gendt
24811beea3 drivers: bbram: Add NXP i.MX SNVS GPR
New driver exposing the SNVS Low-Power General Purpose Registers as a
battery backed RAM.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-06-08 13:55:41 +02:00
Benjamin Cabé
d0402d79b8 modules: lvgl: derive 24-bit channel swap from panel format
LVGL RGB888 and PIXEL_FORMAT_RGB_888 share the same byte order, so the
default-on LV_Z_COLOR_24_BGR_TO_RGB swap actually corrupted RGB_888
displays. Swap only when the driver reports PIXEL_FORMAT_BGR_888 and drop
the Kconfig option.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-06-08 10:45:31 +01:00
Qiang Zhao
0b58be9f22 modules: hal_nxp: mcux: disable device.system component for i.MX952
Disable the device.system component in the MCUX SDK device
configuration for i.MX952 to avoid conflicts with Zephyr device
initialization system.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2026-06-04 08:41:59 +02:00
Qiang Zhao
a53ce770bf modules: hal_nxp: mcux: enable MU1 driver component
Enable the MU1 (Messaging Unit 1) driver component in the
MCUX SDK driver configuration to support inter-core
communication on i.MX952.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2026-06-04 08:41:59 +02:00
Jérôme Pouiller
4c55936506 drivers: dma: siwx91x: udma: Rename driver
SiWx91x provide two DMA hardware block: GPDMA and UDMA, The GPDMA is
properly named: silabs,gpdma. However, the UDMA is named
"silabs,siwx91x-dma" without any reference to the hardware block it is
supposed to run.

Rename the UDMA driver to fix this inconsistency.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2026-06-03 13:05:03 +02:00
David Boullie
3fcb1466a4 modules: hal_silabs: Add openthread init function
Add compilation of sl_openthread library to silabs 15.4 radio
driver to enable RAIL operations for OpenThread.

Co-Authored-by: David Boullie <David.Boullie@silabs.com>
Co-Authored-by: Sree Sreerajatha <sree.sreerajatha@silabs.com>
Signed-off-by: David Boullie <David.Boullie@silabs.com>
2026-06-02 20:18:17 -04:00
David Boullie
e8cc8631fa modules: hal_silabs: Modify CMake target for IEEE 802.15.4 Radio Driver
Add inclusion of RAIL headers.

Co-Authored-by: David Boullie <David.Boullie@silabs.com>
Co-Authored-by: Sree Sreerajatha <sree.sreerajatha@silabs.com>
Signed-off-by: David Boullie <David.Boullie@silabs.com>
2026-06-02 20:18:17 -04:00
Scott Shawcroft
bd05a26a67 modules: hal_rpi_pico: fix sdk uninitialized data
The pico-sdk rand module places rng_state in a .uninitialized_data
section that must not be initialized at boot. The linker fragment was
added via zephyr_linker_sources(DATA_SECTIONS ...), which placed a
(NOLOAD) section in the middle of the initialized data region. This
caused a VMA/LMA mismatch during the boot-time flash-to-RAM copy:
the NOLOAD section consumed VMA but no LMA, shifting all subsequent
section data to the wrong RAM addresses.

On RP2350 boards with USB enabled, this corrupted the USBD context
struct (placed in an iterable section after the NOLOAD gap), causing
USB initialization to fail with "Failed to initialize language
descriptor (-1)" followed by a bus fault.

Fix by using NOINIT instead of DATA_SECTIONS, which places the
uninitialized data in the noinit section where NOLOAD content
belongs. Update the linker fragment to only contribute the section
glob, since the noinit section wrapper is provided by
common-noinit.ld.

Signed-off-by: Scott Shawcroft <scott@tannewt.org>
2026-06-02 20:16:23 -04:00
Kate Wang
c75550fa7e drivers: auxdisplay: Add NXP MCUX segmented LCD driver
Add driver for NXP MCUX Segment LCD (SLCD) controller to support
segment-style auxiliary displays.

The driver provides a unified implementation that handles both
the SLCD controller (nxp,slcd) and a generic SLCD panel.
It supports the generic SLCD panel with common header and binding
which includes the following panel features:
- Segment types(7, 14, 16 segments)
- Configurable front plane pins and back plane COMs
- pin/COM for each segment
- Optional pin/COM for each indicator
- Optional colon/dot indicators

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2026-06-01 12:37:23 -04:00