Commit graph

136,983 commits

Author SHA1 Message Date
Robert Lubos
955db5976f tests: net: mld: Cleanup test_verify_join_leave testcase properly
The test_verify_join_leave test case was leaving a dangling multicast
address on the interface, fix it.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
c8644d6899 net: iface: Join multicast IPv6 addresses only once on iface up
Make sure autoconfigured multicast IPv6 addresses are added (and thus
referenced) only once when the interface goes up to avoid mounting refs
for a given address.

Even if address is already present and net_ipv6_mld_join() is skipped
for a given address it's not an issue as all unjoined addresses have
their reports sent on interface going up via net_ipv6_mld_rejoin().

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
79e0a01ab1 net: iface: Clear is_joined flag when allocating mcast address
When allocating new multicast address, clear the is_joined flag as it
could've still be set from the previous allocation.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
e62a77ddf3 net: shell: ipv4: Print also multicast address details
For each interface, print also details about registered multicast
addresses.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
4ea96483b4 net: shell: ipv6: Print also multicast address details
For each interface, print also details about registered multicast
addresses.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
6ec8a43045 net: iface: Don't re-register mcast addresses on iface up
We just need to resend the report, not add the address again.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
cb4a2eb534 net: ipv6: mld: Add helper function to rejoin mcast groups
Add helper function that allows to rejoin multicast groups without
registering an address. This is needed in case we just want to send
report w/o increasing the ref count of the multicast address (when
interface goes up for example).

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
a9f78d65b1 net: ipv4: igmp: Add helper function to rejoin mcast groups
Add helper function that allows to rejoin multicast groups without
registering an address. This is needed in case we just want to send
report w/o increasing the ref count of the multicast address (when
interface goes up for example).

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
062942fe89 tests: net: mld: Add test case verifying mcast ref counting
Add test case verifying that if multicast address is added multiple
times, join event is only sent on the first attempt and leave event is
only sent when the ref count drops to 0.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
075c264ef8 tests: net: igmp: Add test case verifying mcast ref counting
Add test case verifying that if multicast address is added multiple
times, join event is only sent on the first attempt and leave event is
only sent when the ref count drops to 0.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
4e2abc0118 net: ipv6: mld: Remove redundant inteface state check
Network interface state is now checked down the line in
net_try_send_data() so a separate check in the MLD code was redudant,
hence remove it to simplify the code.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
2f17aaa5c7 net: ipv6: mld: Make use of mcast address ref counting
Don't send MLD report on join if the address was already joined,
only increase the ref count by calling net_if_ipv6_maddr_add().

On leave, only send report if the address was removed from the system
(i.e. is no longer in use).

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
3740a03136 net: ipv4: igmp: Make use of mcast address ref counting
Don't send IGMP report on join if the address was already joined,
only increase the ref count by calling net_if_ipv6_maddr_add().

On leave, only send report if the address was removed from the system
(i.e. is no longer in use).

For IGMPv3 specifically, if the address with non-empty include/exclude
list was already registered, return an error as registering lists from
different sources is currently not supported.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
e1854efd3b net: iface: Add multicast address ref counting
Add ref counting for multicast addresses, so that if a multicast address
is registered from different subsystems, they won't interfere with each
other. That way, if one subsystem decides to remove a multicast address,
it won't affect other subsystems that may still need it.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Szymon Janc
743974d175 tests: Bluetooth: Update ICS to TCRL pkg102
Updated to TCRL pkg102. No functional changes.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2026-03-04 16:43:31 +00:00
Elmo Lan
093bf33459 drivers: i2c_dw: fix incorrect macro usage for sda_hold_rx
Corrected the DT_INST_PROP_OR mapping for sda_hold_rx.
It was mistakenly using scl_hold_rx as the property name.

Signed-off-by: Elmo Lan <elmo_lan@realtek.com>
2026-03-04 16:42:03 +00:00
Emil Gydesen
0e07f62e3a Bluetooth: CCP: Fix bad uses of TBS_MAX_PROVIDER_NAME_LENGTH
Several places used CONFIG_BT_TBS_MAX_PROVIDER_NAME_LENGTH
instead of
CONFIG_BT_CCP_CALL_CONTROL_SERVER_PROVIDER_NAME_MAX_LENGTH.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-03-04 14:34:10 +00:00
Emil Gydesen
f5f9a0e0f3 Bluetooth: CCP: Modify get_bearer_provider_name to use output buffer
Modify bt_ccp_call_control_server_get_bearer_provider_name to
store the bearer provider name in an output buffer, instead of just
providing the pointer.

The reason for this is to make the result thread safe, and
avoid the user/application having a direct pointer to
internal storage.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-03-04 14:34:10 +00:00
Holt Sun
1b5f4f147e drivers: counter: mcux_rtc_jdp: fix alarm timing with safety window
Replace busy-wait synchronization delay with a safety window mechanism
to prevent missed alarm compares when set too close to current counter
value.

- Remove k_busy_wait(100U) after setting API compare value
- Use MINIMUM_RTCVAL/MINIMUM_APIVAL as safety window thresholds
- Trigger SW-pending interrupts for alarms within safety window
- Fix absolute alarm late-to-set detection using forward distance
- Reduce counter test iterations from 100 to 1

This ensures reliable alarm delivery without blocking delays.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-03-04 14:32:18 +00:00
Jamie McCrae
3b66505205 cmake: mcuboot: Do not make a RAM load slot 1 bin file
This file is superfluous because it is exactly the same as the
normal bin file without the slot 1 designation, therefore exclude
it to prevent confusion to user

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-03-04 14:32:01 +00:00
Jamie McCrae
57ea6333e8 dts: vendor: nordic: nrf7120_enga: Rename DTS node
Fixes a name mismatch with nrf54l devices

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-03-04 14:31:50 +00:00
Serhiy Katsyuba
ce3343422b drivers: uaol: add streams mapping retrieval
Extends the UAOL API with uaol_get_mapped_hda_link_stream_id() to get
the HDA link stream ID mapped in HW to its UAOL stream ID. The streams
mapping is stored in the device tree.

Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
2026-03-04 14:31:13 +00:00
Serhiy Katsyuba
e1a4841727 dts: intel_adsp: add UAOL device for ACE4
Adds USB Audio Offload Link (UAOL) device tree definition for
Intel ACE4 platform.

Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
2026-03-04 14:31:13 +00:00
Tomasz Lissowski
33b482235a drivers: dai: intel: uaol: add a driver for Intel UAOL DAI
This adds a DAI driver for USB Audio Offload Link (UAOL)
individual streams on Intel ACE2.0 and ACE3.0 platforms.

Signed-off-by: Tomasz Lissowski <tomasz.lissowski@intel.com>
Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
2026-03-04 14:31:13 +00:00
Tomasz Lissowski
b50fcbd6ee drivers: uaol: add a driver for Intel UAOL IP
This adds a driver for USB Audio Offload Link (UAOL) IP
on Intel ACE2.0 and ACE3.0 platforms.

Signed-off-by: Tomasz Lissowski <tomasz.lissowski@intel.com>
Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
2026-03-04 14:31:13 +00:00
Appana Durga Kedareswara rao
65c641dffe tests: arch: arm: Add Cortex-R5 support to arm_interrupt test
Add support for ARM Cortex-R processors to the arm_interrupt test
suite by implementing an interrupt controller abstraction layer that
works with both NVIC (Cortex-M) and GIC (Cortex-R).

Key changes:

- Add interrupt controller abstraction layer with compile-time
  selection between NVIC (Cortex-M) and GIC SGI (Cortex-R)

- Implement GIC Software Generated Interrupt (SGI) support for
  Cortex-R using gic_raise_sgi() with IRQ IDs 0-15

- Add flag-based control to handle GIC SGI's synchronous behavior
  vs NVIC's asynchronous pending model during IRQ selection

- Wrap Cortex-M-specific tests (ESF collection, spurious IRQ) with
  appropriate CONFIG_ARMV6_M_ARMV8_M_BASELINE/
  CONFIG_ARMV7_M_ARMV8_M_MAINLINE conditionals

- Add Cortex-R-specific memory barriers and processing delays to
  accommodate immediate SGI delivery

- Update testcase.yaml filter to include CONFIG_ARMV7_R

The test now passes successfully on both Cortex-M (qemu_cortex_m3)
and Cortex-R5 (versal_rpu) platforms, with intentional fault
triggering working correctly on both architectures.

Tested-on: versal_rpu, qemu_cortex_m3

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-03-04 14:30:50 +00:00
Appana Durga Kedareswara rao
890e9eb3c9 tests: syscalls: Fix FAULTY_ADDRESS for Versal RPU on real hardware
The previous FAULTY_ADDRESS (0xBFFFFFFF) for CONFIG_BOARD_VERSAL_RPU
caused a Synchronous External Abort (bus error) on physical hardware
when accessing peripheral address space, instead of the expected MPU
fault. This resulted in test_string_nlen failure with a CPU exception.

Change FAULTY_ADDRESS to 0x3FFFFFFF, which points to unmapped address
space below 1GB. This address triggers a clean MPU violation on both
QEMU and real Versal RPU hardware, allowing the test to properly
validate syscall parameter checking.

The address 0xBFFFFFFF works in QEMU emulation but maps to peripheral
space on actual Versal hardware, causing a bus-level abort rather than
an MPU permission fault.

Fixes test_string_nlen on physical Versal RPU boards.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-03-04 14:30:50 +00:00
Appana Durga Kedareswara rao
9abcec4223 tests: kernel: sleep: Add Versal RPU to QEMU timing margin
Extend the QEMU timing instability workaround to include AMD Versal
RPU platform. The Xilinx QEMU emulation used for both ZynqMP and
Versal platforms exhibits timing instability that causes the sleep
test to occasionally fail with tick counts slightly over the expected
value (e.g., 1002 ticks instead of 1000).

Increase TICK_MARGIN to 5 for Versal RPU to match the existing
ZynqMP configuration, allowing the test to pass reliably on QEMU
while maintaining strict timing requirements on real hardware.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-03-04 14:30:50 +00:00
Appana Durga Kedareswara rao
d21094a432 boards: amd: Add generic board support for Versal RPU
Add generic board support for the AMD Versal RPU platform. This enables
basic application development on Versal RPU cores using standard board
configuration.

Includes board definition files, defconfig, and device tree integration
for the Versal RPU board.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-03-04 14:30:50 +00:00
Appana Durga Kedareswara rao
ae1b3da68f soc: xlnx: versal: Add MPU region configuration and cache support
Implement comprehensive Memory Protection Unit (MPU) support for
Xilinx Versal RPU with the following enhancements:

MPU Region Configuration:
- Add arm_mpu_regions.c with MPU region definitions supporting
  multiple memory layouts:
  * TCM-only layout
  * Contiguous DDR layout
  * Non-contiguous DDR layout for Linux shared memory scenarios
- Configure memory regions for PL, PS peripherals, and DDR with
  appropriate memory attributes (Normal, Device, Strongly-ordered)

SoC Initialization:
- Add soc_early_init_hook() for instruction and data cache
  enablement during early boot

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-03-04 14:30:50 +00:00
Appana Durga Kedareswara rao
24034206a0 soc: xlnx: versal: Remove unused CRL_RST_TTC macro
Remove the unused CRL_RST_TTC register address definition from soc.h.
This macro is not referenced anywhere in the codebase.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-03-04 14:30:50 +00:00
Emil Gydesen
1e18bce758 doc: releases: Add entry for BT CIS disconnect changes
Add entry for change in behavior when disconnecting ACLs
with accompanying CIS.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-03-04 14:30:00 +00:00
Emil Gydesen
d0dae06458 Bluetooth: Host: Make ACL/CIS disconnect order deterministic
Currently the other of the ACL and CIS disconnect callbacks
depend on the order of the HCI events received. Since this
order is not specified by the core spec, it means that any
users/applications of ISO will need to wait for all CIS
disconnects callbacks and the ACL disconnect callback before
attempting to reuse any of them.

From an API perspective this is not ideal, and the API will
be much simpler if the order of ACL and ISO disconnect
callbacks were deterministic, regardless of the controller.

This change postpones the finalization of the ACL disconnect
until all the CIS associated with it has been disconnected.
This will also make the API more similar to e.g. the L2CAP
disconnect order.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-03-04 14:30:00 +00:00
Philipp Affeltranger
ef2d74ad9a west.yml: update hal_stm32 to enable stm32n6 SDIO HAL support
- incorporates changes from https://github.com/zephyrproject-rtos/hal_stm32/pull/345
 - enables SDIO HAL module for STM32N6

Signed-off-by: Philipp Affeltranger <affeltranger@piomic.com>
2026-03-04 14:29:31 +00:00
Sebastian Głąb
789aa1e030 samples: drivers: Enable soc_flash_nrf on nrf54lm20dk
Enable soc_flash_nrf test on nrf54lm20a and nrf54lm20b.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2026-03-04 14:29:16 +00:00
Sebastian Głąb
e937492426 tests: drivers: flash: Enable flash negative_test on nrf54lm20b
Add nrf54lm20b to the platform allow list.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2026-03-04 14:29:16 +00:00
Sebastian Głąb
2062409a27 tests: drivers: flash: Enable flash common test on nrf54lm20b
Add overlay required to run the flash common test on nrf54lm20b.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2026-03-04 14:29:16 +00:00
Sebastian Głąb
75678e5f47 tests: boards: nrf: Enable comp test on nrf54lm20b
Add overlay required to run the comp test on nrf54lm20b.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2026-03-04 14:29:16 +00:00
Sebastian Głąb
0c9f5c4b48 tests: drivers: mbox: Enable mbox_error_cases on nrf54lm20b
Add overlay required to run the mbox_error_cases test on nrf54lm20b.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2026-03-04 14:29:16 +00:00
Sebastian Głąb
ce8f159f92 tests: drivers: mbox_error_cases: Move test parametrization to Kconfig
Improve mbox_error_cases test. Move test parametrization from
source code to Kconfigs.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2026-03-04 14:29:16 +00:00
Sebastian Głąb
450ac4b12a samples: drivers: Enable MBOX sample on nrf54lm20b
Add overlays required to run the MBOX sample on nrf54lm20b targets.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2026-03-04 14:29:16 +00:00
Robert Lubos
e8d285a76f tests: net: http_server: core: Increase connect delay after restart
It's been observed that test_http_server_start_stop test case sometimes
fail under heavy load with ECONNREFUSED error. It's hard to reproduce,
however it could be an issue that the server thread has not enough time
to setup the server before the connection attempt. After increasing the
connect delay I was no longer able to reproduce the failure locally.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 14:28:59 +00:00
Keith Packard
bbb6e78229 drivers/serial: Add missing declarations in uart_max32.c
When UART_INTERRUPT_DRIVE, PM and UART_CONSOLE_INPUT_EXPIRED are all
defined the driver uses the device flags without the necessary declaratoins
or fetching the hardware register.

Signed-off-by: Keith Packard <keithp@keithp.com>
2026-03-04 14:28:47 +00:00
Mathieu Choplain
97448bea75 soc: st: stm32: regroup Kconfig.defconfig.<soc> files in a single one
Regroup the Kconfig.defconfig.<soc> files of various series which have
identical contents for all SoCs into the per-series root file instead
(stm32XXx/Kconfig.defconfig). This reduces the number of files and is
easier to understand.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-03-04 13:38:44 +01:00
Tomi Fontanilles
8c0b27b0be modules: mbedtls: remove explicit enabling of CONFIG_MBEDTLS_BUILTIN
It's already the default in Zephyr. Do not enable it explicitly.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2026-03-04 13:38:00 +01:00
Jamie McCrae
da1a4f3843 cmake: mcuboot: Use relative path for signed files
Uses relative paths for the signed images, instead of absolute
paths, to allow transferring test files to other machines

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-03-04 13:37:28 +01:00
Aksel Skauge Mellbye
ac4761c207 drivers: i2c: silabs: Support scatter/gather transactions
Support gathering multiple message buffers into a single write
transaction, and scattering read data from a single transaction
to multiple message buffers.

This is required for the i2c_burst_write() API to function as
expected.

The implementation uses a driver-internal buffer whose size is
configurable through the `zephyr,concat-buf-size` devicetree
property for similarity with other I2C drivers in the tree.

Gather write is implemented for both interrupt and DMA based
transfers, while scatter read is only implemented for interrupt
based transfers at this time. In the future, DMA based gather
write should be delegated to the DMA engine to perform
autonomously without needing a temporary buffer.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2026-03-04 13:37:04 +01:00
Aksel Skauge Mellbye
3899fc7cd4 drivers: i2c: silabs: Fix write-read transaction logic
I2C_MSG_WRITE is not a bit in `flags`, it's a value of `0`, meaning
the condition is always true. Check for the absence of READ instead,
to avoid mistaking read-read transactions as write-read ones.

Combined write-read transactions should only happen if the RESTART
flag is set on the read message, so check for that too.

Finally, the message index was incremented by one too much for
interrupt-based transfers, causing the next message after a write-read
transaction to be dropped.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2026-03-04 13:37:04 +01:00
Aksel Skauge Mellbye
82390b211c dts: arm: silabs: Use series2 hwinfo binding
Consistently make use of silabs,series2-hwinfo compatible in
Series 2 .dtsi files. The compatible is not directly used to
select the hwinfo driver, but change it for consistency.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2026-03-04 13:36:35 +01:00
Aksel Skauge Mellbye
18592f8434 dts: arm: silabs: Fix clock branch definitions
Fix clock branch definitions for Series 2 devices to align with
2025.12 HAL.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2026-03-04 13:36:35 +01:00