Compare commits

...

7801 Commits

Author SHA1 Message Date
Martin Stumpf
7923ccc486 MCUmgr: OS: fix set datetime millisecond handling
According to the docs the millis were in the format `.SSSSSS`. In
reality though, it only accepted exactly `.SSS`, not `.SS` or `.SSSS`
and specifically also not `.SSSSSS`, contrary to the docs. Further, it did
not fail with an error message but simply produced the wrong value.

With this change it accepts everything from `.` to `.SSSSSS` and
produces the correct result. This is compatible with the previous
behavior, with the documentation and with everything in between.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
(cherry picked from commit ffb046b797)
2026-01-20 09:35:12 -08:00
Fan Yi
a9bfe57bf1 drivers: eth nxp: Fix NXP DSA default MAC address allocation.
NXP DSA drivers fails to disable random MAC address allocation  by adding
"/delete-property/" tag in front of "random-mac-address" field. This
cause issue when we want to assign a specified MAC address to the board.

Also update the corresponding doc.

Signed-off-by: Fan Yi <fan.yi@mt.com>
2026-01-16 11:50:31 -08:00
Jamie McCrae
9633022a8c doc: hardware: porting: board_porting: Fix outdated merged info
Fixes some information that is very outdated to do with board
Kconfig files, which are not merged, and multiple dts files

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
(cherry picked from commit 88176a795d)
2026-01-16 11:49:42 -08:00
Pieter De Gendt
823ff626c4 net: l2: wifi: mgmt: Fix auto-connect with multiple saved credentials
Using the Wi-Fi credentials system, we need to stop connecting with stored
credentials once a connection has been successful.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
(cherry picked from commit d43b48daf5)
2026-01-16 11:48:50 -08:00
Raffael Rostagno
8ff10705fe drivers: pwm: ledc: esp32: Fix RC_FAST and REF_TICK
Depending on clock config init, some devices might be initialized
with RC_FAST clock enabled but not calibrated. Logic to detect if
clock is calibrated was fixed for this reason. Also, logic to set
RC_FAST and REF_TICK for devices with timer specific clocks (ESP32
and ESP32-S2) was also fixed.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
(cherry picked from commit f9260ae2e5)
2026-01-16 11:47:58 -08:00
Pavel Vasilyev
2427cba661 bluetooth: mesh: pb_adv: check TotalLength against adv buf length
Check that the buffer length of the received advertising data is less
than reported TotalLength in Transaction Start PDU.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
(cherry picked from commit fe5b266ddb)
2026-01-16 11:47:14 -08:00
Pavel Vasilyev
307bd887b2 bluetooth: mesh: pb_adv: check SegN in Transaction Continuation PDU
Check that SegN is not 0. SegN = 0 is invalid as the first segment is
sent in Transaction Start PDU.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
(cherry picked from commit 427cf0da6a)
2026-01-16 11:46:10 -08:00
Pieter De Gendt
ee47e72c30 scripts: west: packages: Print warning on windows or run new command
On non-Windows systems execute a new program, replacing the west packages
call, when trying to install packages using pip.
For Windows, update the documented way of installing python packages,
or using 'west packages pip --install' print a warning.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
(cherry picked from commit 7f97d3dd0a)
2026-01-16 11:45:13 -08:00
Fabian Blatz
467f35f55e modules: lvgl: Prevent false pointer input events
Fixes an issue where input events which have the sync flag set but are
neither X/Y coordiante updates nor press/release updates triggers a false
reporting of input to LVGL.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
(cherry picked from commit 25d96b2589)
2026-01-16 08:59:15 -08:00
Sudan Landge
208680038a arch: arm: fix start of the privileged stack
Make sure that arch.mode is set with appropriate flags before setting up
the privileged stack start.

Fixes #99895

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
(cherry picked from commit 9962bc12cf)
2026-01-16 08:58:12 -08:00
Fabio Baltieri
eccc11dc2b github: ci: drop macos-13
Drop macos-13 from the workflow, this has been retired and jobs using it
are failing and blocking backports.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-15 17:01:21 +00:00
Fabio Baltieri
0ffde735ae ci: twister: download only the arm toolchain
Looks like this workflow is running out of space too. Only install the
arm toolchain.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-15 07:57:01 -05:00
Anas Nashif
bd91f219af ci: update action-zephyr-setup action version to v1.0.11
Use latest version of action-zephyr-setup action.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2026-01-15 07:56:15 -05:00
Fabio Baltieri
57f48e6e8c ci: doc-build: download only the arm toolchain
Sync up the doc-build toolchain in the branch to only use the arm one,
should save some disk space on backport PRs.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-15 11:46:18 +00:00
Mathieu Choplain
915f7bb781 drivers: udc: stm32: fix clock configuration for STM32F7 w/ USBPHYC
OTGHS using the USBPHYC on STM32F723 and some STM32F730 requires
special clock configuration to work.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-13 09:42:20 -08:00
Mathieu Choplain
697706d295 drivers: usb: dc: stm32: fix clock configuration for STM32F7 w/ USBPHYC
OTGHS using the USBPHYC on STM32F723 and some STM32F730 requires
special clock configuration to work.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-13 09:42:20 -08:00
Robert Lubos
69947f64a2 tests: net: dns_resolve: Add tests for dns_unpack_name()
Verify that dns_unpack_name() generates a valid DNS name when unpacking
records and that it returns an error in case of overflow.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
(cherry picked from commit 7a9ca8e410)
2025-11-29 13:17:12 -08:00
Robert Lubos
635d5c00e3 net: dns: Fix potential buffer overflow when unpacking labels
As the loop unpacking the DNS name from records checks the current
label length on each iteration, it's also needed to update the remaining
buffer length on each iteration, otherwise the buffer length checks
doesn't work as expected.

Additionally, the remaining buffer checks while technically worked, they
were conceptually wrong and unintuitive. The buf->data pointer doesn't
move, so comparing against this pointer when adding new labels doesn't
make sense. It's more intuitive to simply compare the label size vs
the remaining buffer space.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
(cherry picked from commit 7bd45cd39b)
2025-11-29 13:17:12 -08:00
Sudan Landge
53f776a934 tests: arm: exclude mps2/an385 on user stack test
Temporarily disable running the user stack tests on mps2/an385 to
unblock ci issues reported in #98494.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
(cherry picked from commit 2408b808d2)
2025-11-17 11:40:11 -08:00
Sudan Landge
bf194b3d43 tests: fix arch.arm.user.stack test failure
Fixes #97473 by:
- Marking the test as passed if the hardware executes user threads for a
  while without triggering a stack corruption, instead of waiting
    indefinitely.
- Adding a timeout to ensure the test exists gracefully if the issue is
  not reproduced.

Also fixes a stack corruption issue on QEMU targets, caused by
insufficient stack size and revealed by the timer change.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
(cherry picked from commit a55053b216)
2025-11-17 11:40:11 -08:00
Alberto Escolar Piedras
cb7ce14654 drivers/ethernet/eth_native_tap: Fix use of deprecated kconfig
In 200b886d3c a deprecated kconfig
option was brought back into the driver.
Let's fix it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
(cherry picked from commit 0528554720)
2025-11-14 11:48:42 -08:00
Ali Hozhabri
22f0033e60 drivers: bluetooth: hci: Fix the issue about the TRNG peripheral instance
Fix the issue regarding passing the TRNG peripheral instance to the driver.

Increase the SYSTEM_WORKQUEUE_STACK_SIZE when CONFIG_BT is set.
According to the log of thread analyzer for beacon sample, 1048 bytes
are needed. So, it's been increased to a safer value.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
(cherry picked from commit 7a593ede3e)
2025-11-14 11:47:35 -08:00
Ali Hozhabri
674a54ce39 drivers: entropy: Modify the recover_seed_error function for WB0x
Exclude the WB0x series from discarding data 12 times from the RNG data
register.

Add a comment to the recover_seed_error function explaining the reason
for reading and discarding data from the RNG data register 12 times.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
(cherry picked from commit 57ebf79d87)
2025-11-14 11:47:35 -08:00
Ali Hozhabri
f4dc776671 drivers: entropy: Fix non-stop RNG ISR firing for STM32WB09
Fix the TRNG driver issue regarding non-stop ISR firing for STM32WB09 by
clearing RNG_IRQ_SR_ERROR_IRQ flag.

Fix a typo related to a function input parameter.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-11-14 11:47:35 -08:00
Tomi Fontanilles
1ee1798f50 doc: release-notes-4.2: fix up TF-M version update entry
TF-M had already been updated to 2.2.0 by the time 4.2 was released.
(https://github.com/zephyrproject-rtos/zephyr/pull/91169)

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
(cherry picked from commit 8b032af664)
2025-11-14 11:32:00 -08:00
Robert Lubos
636ad05950 tests: net: icmp: Add test cases for ICMP family mismatch
Add test cases that respective ICMPv4/ICMPv6 handlers are not called for
packets where address family doesn't match (i.e. malformed ICMPv4 packet
imitating ICMPv6 one).

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
(cherry picked from commit 486e8247c6)
2025-11-10 09:04:40 -08:00
Robert Lubos
81ab4dedbe 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>
(cherry picked from commit 587d9e6a4a)
2025-11-10 09:04:40 -08:00
Guotao Zhang
57ab471c3a drivers: bluetooth: h4: Fix check for sufficient buffer size
When alloc the evt buffer,such as the adv report, only compare the
remaining data len, should aslo consider the hdr_len, because the
hdr also copy to alloced buffer.if not consider the hdr, then
hdr + remaining data may larger than alloced buffer, because the
alloced buffer is not enough,then will assert when receive the
remaining data.

Signed-off-by: Guotao Zhang <guotao.zhang@nxp.com>
(cherry picked from commit ec970a635e)
2025-11-03 10:35:01 -08:00
Fabian Blatz
0b8771d299 modules: lvgl: Fix stdlib usage
LVGL already provides an implementation wrapping a C standard library into
its own lv_* functions. Add them to the CMakeLists and set the appropriate
defines for them.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
(cherry picked from commit 076994f492)
2025-10-27 15:11:46 -07:00
Sudan Landge
13dd5cb1ae arch: arm: start threads on privileged stack
Use the privileged stack when starting K_USER threads in arch_new_thread().
Threads entering user mode with k_thread_user_mode_enter() keep their
existing flow. To support both cases, z_arm_userspace_enter() now takes an
internal ABI flag (sp_is_priv) indicating whether PSP already points to
the privileged stack.

Also fix calculation of the privileged stack top: use priv_stack_end
directly instead of priv_stack_start + CONFIG_PRIVILEGED_STACK_SIZE, which
failed to account for guard/FPU offsets applied to priv_stack_start.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
(cherry picked from commit 0438b9f29e)
2025-10-27 15:11:34 -07:00
Rory Piper
be61610d3f drivers: flash_stm32h7: Fix REAL_FLASH_SIZE_KB size
For devices other than the stm32h745/747/755/757 that use
dual-core cortex-M4/cortex-M7, do not multiply flash
controller size by 2. Single-core stm32h7x devices define
their flash-controllers dtsi as a single area, not two banks.
Use the presence of the bank2-flash-size prop to determine if
this is a dual-core stm3h7x or not.

Signed-off-by: Rory Piper <rory.piper@signal-fire.com>
(cherry picked from commit ea1245eb92)
2025-10-27 09:31:42 -07:00
Josuah Demangeon
2c317b081d usb: uvc: respect setup->wLength in responses
Due to the alignment and granularity requirements of memory allocation,
setup->wLength is shorter than the allocated buffer size.
This lead to responses larger than what the host requested, which it
rejected. Fix it by using the minimum between the allocated size, the
struct size, and the wLength requested.

Signed-off-by: Josuah Demangeon <me@josuah.net>
(cherry picked from commit 366c64eca0)
2025-10-09 14:47:53 -07:00
Josuah Demangeon
d7b09179c3 usb: uvc: allow the host to use short probe/commit messages
Some OSes like MacOS use shorter UVC 1.1 probe/commit messages even when
UVC 1.5 is supported, without bUsage, bBitDepthLuma, bmSettings,
bMaxNumberOfRefFramesPlus1, bmRateControlModes bmLayoutPerStream.
Accept messages of arbitrary size to safely be processed, ignoring all
missing fields, improving standard compliance.

Signed-off-by: Josuah Demangeon <me@josuah.net>
(cherry picked from commit ed9327dec2)
2025-10-09 14:47:53 -07:00
Daniel DeGrasse
64e98eb527 release: Zephyr v4.2.1
Set the version to v4.2.1

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
2025-10-07 17:42:43 -05:00
Daniel DeGrasse
4d44e3280b doc: release_notes: add 4.2.1 release notes
Add 4.2.1 release notes, summarizing the issues addressed since 4.2 was
released.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-10-07 17:31:48 -05:00
Julien Racki
6da1cbcb06 drivers: ethernet: stm32: Move the Ethernet API V1 init
Move the Ethernet API v1 Initialization in eth_init_api_v1()
helper function to match the V2 implementation.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-10-07 16:29:52 -05:00
Julien Racki
1e5f5af4eb drivers: ethernet: stm32: Fix the init call order
Fix the init call order for V2 API to be able to configure PTP
as PTP initialization happens before iface initialization.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-10-07 16:29:52 -05:00
Khaoula Bidani
ee29ea2a20 drivers: gpio: stm32: Fix gpio_pin_get_config
This commit updates the function to only set output-related flags
(GPIO_OUTPUT_INIT_HIGH, GPIO_OUTPUT_INIT_LOW) when the pin
is actually configured as output. For input pins, only GPIO_INPUT and
other relevant flags are set.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
(cherry picked from commit e803a10b91)
2025-10-06 14:38:58 -05:00
Detlev Zundel
3d4204036a samples: modules: lvgl: demos: Increase memory pool on native
Due to the added overhead on 64 bit native, we also need to increase
the memory pool size to fix crashes as described in here:

https://github.com/lvgl/lvgl/issues/7648

Signed-off-by: Detlev Zundel <dzu@member.fsf.org>
(cherry picked from commit abd0919bc9)
2025-10-06 14:38:25 -05:00
Detlev Zundel
c60a870b1c samples: modules: lvgl: demos: Increase main stack to fix crash
The increased complexity of the LVGL code now overruns the 4 KiB stack
of the main thread. Increase it to 6 KiB to fix the error.

Fixes: #94473

Signed-off-by: Detlev Zundel <dzu@member.fsf.org>
(cherry picked from commit e05a272817)
2025-10-06 14:38:25 -05:00
Pieter De Gendt
d26b221f53 arch: common: nocache.ld: One nocache MPU region
Combine the load and noload cache regions for a single MPU aligned block.
This is required to have an MPU region with a size that is a power of 2.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
(cherry picked from commit 8f7908694a)
2025-10-06 13:00:31 -05:00
Pieter De Gendt
9cb7b9e4ec linker: Split nocache memory sections into loadable and non-loadable
Commit f9168ae464 made all non-cached memory
loadable by default.

However as nocache memory is typically used for reserving larger buffers to
be shared between peripherals, this comes at fairly large cost towards ROM
usage.

This commit creates two distinct sections for both loadable and
non-loadable nocache memory sections.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
(cherry picked from commit 294f7e52c5)
2025-10-06 13:00:31 -05:00
Benjamin Cabé
e395a9a649 doc: _scripts: ensure twister.yaml file is considered in board catalog
Boards may use twister.yaml file to define Twister platforms, so
board catalog should also parse them.

Fixes: zephyrproject-rtos/zephyr#95721.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
(cherry picked from commit 9f181b6711)
2025-10-06 09:57:10 -07:00
Alen Karnil
9526404c65 dts: arm: st: stm32f303: fix I2C3 address in nodename
Correct stm32f303 I2C3 address in nodename.

Signed-off-by: Alen Karnil <alankarnil@gmail.com>
(cherry picked from commit 4363d14bef)
2025-10-02 16:40:18 -05:00
Samuel Tsai
116c4a9e40 Bluetooth: host: adv: revert 39cb574 to fix spurious error log
Commit 39cb574 changed the log level from LOG_DBG to LOG_ERR in
bt_le_adv_resume(). This causes the error log
"No valid legacy adv to resume" to appear during normal connection
establishment when using bt_le_ext_adv_start(), even though the
system is functioning correctly.

Revert the change to restore the original LOG_DBG level.

Fixes: #94954

Signed-off-by: Samuel Tsai <stsai@atmosic.com>
(cherry picked from commit 07dc0ad40d)
2025-09-30 15:05:15 -07:00
Robert Lubos
46292d748d net: tcp: Fix ACK processing when FIN packet is received
In case FIN packed also acknowledged most recently sent data, not all
ack-related TCP context variables were updated, resulting in invalid SEQ
number values sent in consecutive packets.

Fix this by refactoring the FIN handling in TCP_ESTABLISHED state.
Instead of having a separate block strictly for FIN packet processing,
let the packet be processed by common code responsible for regular
data/ack processing. This should be less error-prone for any future
modifications or not-yet-discovered issues. Only after the common
processing of data/ack is done, we check whether FIN flag was present in
the packet, and mark the connection for closing.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
(cherry picked from commit 178150590c)
2025-09-30 15:04:27 -07:00
Robert Lubos
51e1f38026 tests: net: tcp: Add test for FIN,ACK received after final data
Add a test case for a scenario where the final data sent by one peer is
acknowledged in the FIN,ACK response from the other peer. Verify that
the acknowledgment is handled correctly, and a consecutive sequence
number sent by the TCP stack in such case is set correctly.

This complements the other existing test for FIN packet handling, which
verified that data received in a FIN packet is handled correctly. With
those tests in place it should be safer to update any logic related to
FIN packet handling.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
(cherry picked from commit 99b435788e)
2025-09-30 15:04:27 -07:00
Robert Lubos
87b06394e6 net: tcp: Preallocate TX packet for TCP context
TCP context cannot operate w/o a TX packet for buffering transmitted
data. So far this net_pkt was allocated at runtime from the common
packet pool, but this created some not-obvious memory requirement on TCP
and could lead to TX packet starvation in case many TCP connections are
open in parallel. Therefore, allocate this packet structure statically,
as a part of the TCP context instead.

This increases the memory requirement of the TCP context by ~64 bytes,
however if that's a concern for the application, the maximum number of
TX packets can be lowered instead. In return, we get a clear separation
between the number of TCP connections opened, and the amount of packets
that can be transmitted.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
(cherry picked from commit eda76ad21b)
2025-09-30 15:02:50 -07:00
Robert Lubos
9800d46c69 net: pkt: Add helper function to initialize TX packet
Add helper function to initialize externally allocated TX packet. It's
especially important to configure net_buf slab for the packet so that
net buffers are allocated from a correct pool for the packet.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
(cherry picked from commit b8c7984099)
2025-09-30 15:02:50 -07:00
Robert Lubos
ac91402f71 net: tcp: Use net_buf pointer directly for out-of-order recv queue
Using net_pkt for TCP out-of-order recv queue was an overshot, as the
mechanism mostly used net_buf operations directly anyway. It can be
easily replaced with a direct net_buf pointer, so that it's not longer
needed to hog one net_pkt per TCP context anymore.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
(cherry picked from commit aca511c91f)
2025-09-30 15:02:50 -07:00
Sudan Landge
e58bca83de arch: arm: switch to privilege stack in SVC handler
Initialize the privilege stack and switch PSP to it early in the SVC
handler to ensure `z_arm_do_syscall` does not start on a user-accessible
stack frame.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
(cherry picked from commit 319c697286)
2025-09-30 15:01:53 -07:00
Sudan Landge
91d1416460 boards: arm: mps2: Add dependency to empty_cpu0 for an521/cpu1's app
`west build` does not build the `empty_cpu0` application making
`west build -b mps2/an521/cpu1 -t run` fail because of the missing
empty_cpu0's binary.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
(cherry picked from commit 52151d0b23)
2025-09-30 15:01:53 -07:00
Sudan Landge
cbb43bee3d tests: overwrite return address of stack frame
Introduce a test to overwrite the return address in the exception
stack frame of a lower-priority thread performing an SVC call.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
(cherry picked from commit f80bef31ef)
2025-09-30 15:01:53 -07:00
Jukka Rissanen
989499c8f4 net: context: Make sure TCP allocation is not leaked
If we have allocated a TCP connection, and if after that
we get an error like EADDRINUSE, then we must de-allocate
the TCP connection otherwise there is a buffer leak.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
(cherry picked from commit 909710b598)
2025-09-30 15:01:25 -07:00
Jamie McCrae
6eebe0acf0 cmake: mcuboot: Add dependency to keys
Adds a dependency that causes CMake to re-configure if the input
key files for MCUboot signing/encryption have changed

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
(cherry picked from commit 271dbb4015)
2025-09-21 20:29:28 -07:00
Mickael Bosch
1ea8bb2e0f drivers: i2c: stm32: fix compilation with DMA
fixes:
- implicit declaration of function 'stm32_buf_in_nocache'
- undefined reference to 'stm32_buf_in_nocache'

Signed-off-by: Mickael Bosch <mickael.bosch@linux.com>
(cherry picked from commit 6e018bbf04)
2025-09-12 14:23:09 -04:00
Etienne Carriere
4217df505a drivers: i2c: stm32: exclude stm32f7 family for PM in RTIO driver
Exclude STM32F7 SoC series from PM support since that SoC doees not
yet manage power management in Zephyr and HAL API functions
LL_I2C_EnableWakeUpFromStop() and LL_I2C_DisableWakeUpFromStop()
are not implemented in the H7 HAL/LL drivers.

This change ports into the STM32 RTIO driver the change made in the
non-RTIO driver through commit 1804eb7bc3 ("drivers: i2c: stm32:
exclude stm32f7 family for PM").

Back ported from commit 5ff3dbeeee ("drivers: i2c: stm32: exclude
stm32f7 family for PM in RTIO driver").

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-09-08 14:43:41 -07:00
Etienne Carriere
d1a9ef6b0b drivers: i2c: stm32: sync stm32_v2 RTIO on PM runtime state
Always call pm_device_runtime_get() when registering a target
even if the device is not wakeup capable to prevent I2C target not being
function if the device goes into a SoC Stop mode.

This change ports into the STM32 v2 RTIO driver the change made in the
non-RTIO driver through commit 67f80e35b8 ("i2c: stm32: always call
runtime_get when registering targets").

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
(cherry picked from commit 181e544550)
2025-09-08 14:43:41 -07:00
Stephanos Ioannidis
bf9345a1ec SDK_VERSION: Use Zephyr SDK 0.17.4
This commit updates ZEPHYR_SDK to point to the Zephyr SDK 0.17.4 release.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
(cherry picked from commit 59a5909abb)
2025-09-07 15:41:24 -07:00
Stephanos Ioannidis
7f89472f14 ci: Switch to CI image v0.28.4
This commit updates the CI workflows to use the CI image v0.28.4, which
includes Zephyr SDK 0.17.4.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
(cherry picked from commit 13ba04fd1f)
2025-09-07 15:41:24 -07:00
Andreas Schmidt
e3a55c96ef dts: arm: st: u5: fix wkup-pin@8 referencing non-existent port gpiof
With commit d280d89 the gpiof port got moved from file stm32u5.dtsi to
file stm32u5_extra.dtsi. stm32u5_extra.dtsi is not included for
STM32U535/545. In same file stm32u5.dtsi still node wkup-pin@8 references
non-existent port gpiof.

Fixes #93445

Signed-off-by: Andreas Schmidt <andreas.schmidt@dormakaba.com>
(cherry picked from commit 528ab9d9c2)
2025-09-07 15:39:28 -07:00
Johann Fischer
663da2302b doc: update pyOCD repository links
The repository has been moved to a new organization, see
https://pyocd.io/. Update links to the pyOCD repository.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
(cherry picked from commit 617b71bc17)
2025-09-02 22:15:47 -07:00
Robin Kastberg
4670cb27c7 iar: ltorg directive not supported
Currently this directive is not supported in EWARM 9.70.1,
it will be in future versions, but we want Zephyr 4.2
to work with IAR EWARM 9.70.1.

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
(cherry picked from commit fa165da667)
2025-08-22 18:50:36 -05:00
Tim Pambor
a55b5444c6 twister: Fix race condition in try_making_symlink
Replaces the check-then-create pattern for symlinks with
opportunistic creation. Instead of checking for existence
before creating the symlink, the code now attempts to
create it directly and gracefully handles the case
where it already exists.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
(cherry picked from commit dff24c8c00)
2025-08-22 16:49:22 -07:00
Keith Packard
c1adc507d7 west: Update picolibc to version being proposed for SDK 0.17.4
We're trying to re-synchronize picolibc bits across Zephyr and the Zephyr
SDK. At this point, SDK 0.17.3 is missing some minor updates found in the
module and the module is missing a commit from the SDK.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-21 13:33:13 -07:00
Bas van Loon
e918bdac38 fs/ext2: Fix NULL dereference when fs_stat queries root.
When fs_stat() queries the root / mountpoint it should return its root
i_node but instead it tries to return the parent i_node which does not
exist. Fix this by checking if parent is set otherwise return the root
i_node.

Fixes https://github.com/zephyrproject-rtos/zephyr/issues/94000.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
(cherry picked from commit 1dcf123e2d)
2025-08-21 13:32:22 -07:00
Pieter De Gendt
8b5e0388cf drivers: ethernet: nxp_imx_netc: Fix LAA bit location
The Locally Administered Address (LAA) bit should be set on the first
octet of the MAC address.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
(cherry picked from commit f1b4c7c992)
2025-08-20 18:11:35 -07:00
Pieter De Gendt
3b7610ec5f drivers: ethernet: stm32: Set LAA bit on MAC address based on device ID
The MAC addressed derived from the device ID is not assigned by the
manufacturer and therefor the Locally Administered Address (LAA) bit should
be set.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
(cherry picked from commit 300016c801)
2025-08-20 18:09:50 -07:00
Daniel Flodin
2b0f179079 cmake: assembler optimization options
Commit f499ea0 made it so that the compiler optimization flags are also
passed to the assembler. However, this breaks for the IAR toolchain
since it uses the GNU assembler which does not have the same
optimization flags as the IAR compiler.

This commit separates the compiler and assembler optimizations to make
it possible to specify appropriate flags in a toolchains corresponding
`compiler_flags.cmake`

Signed-off-by: Daniel Flodin <daniel.flodin@iar.com>
(cherry picked from commit a4b66f9214)
2025-08-20 18:03:03 -07:00
Ofir Shemesh
ff9fb454c6 misc: flexram: allow RAM type node to be disabled in DT
Use DT_NODE_HAS_COMPAT_STATUS to skip disabled child nodes. This
avoids build errors when setting a RAM type to 0 banks.

Signed-off-by: Ofir Shemesh <ofirshemesh777@gmail.com>
(cherry picked from commit 169b47ce38)
2025-08-19 13:28:40 -05:00
Marc Lasch
5282c9fdc8 drivers: net: ppp: Fix link-layer address configuration
Restore setting the ppp link-local address either to CONFIG_PPP_MAC_ADDR or
to a random value 00:00:5e:00:53:XX instead of leaving it uninitialized.

Recently the memory handling for the link-layer addresses was changed from
an approach of copying pointers to managing the memory as a member of the
`net_linkaddr` struct (ref ac3cb9dac0).

The piece of code this patch touches however, relied on the use of the
pointers to function properly.

With the recent change, the MAC address was copied to the new member
location before it was even set (either from Kconfig or selected randomly).
As a result, the link-layer address was kept initialized to zero, which
resulted in a IPv6 address of fe80::ff:fe00:0 which is exactly the
link-local EUI-64 representation of the MAC address 00:00:00:00:00:00
(without flipping the "universal/local" bit).

Signed-off-by: Marc Lasch <marc.lasch@husqvarnagroup.com>
(cherry picked from commit 15048337c4)
2025-08-18 11:09:20 -05:00
Fabrice DJIATSA
ee0aecc953 boards: st: nucleo_u385rg_q: update clock domain source for rng
Several tests failed due to a low clock frequency for
the RNG peripheral.
Increase the RNG clock frequency by providing MSIK with
96 MHz as the domain source.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
(cherry picked from commit ac733b1ae9)
2025-08-18 11:08:56 -05:00
Pieter De Gendt
21c942f18c drivers: regulator: shell: Fix regulator parent name completion
Shell functions targeting regulator parents used the auto-completion of
regulator devices instead.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
(cherry picked from commit 576b3daffa)
2025-08-11 10:56:54 -05:00
Maureen Helm
f017af445e drivers: udc: Fix max32 driver high speed support
High speed support has been broken for the max32 driver since commit
faeabc63c9.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
(cherry picked from commit a4c757adc2)
2025-08-11 10:56:19 -05:00
Tahsin Mutlugun
01949d478d tests: drivers: spi: spi_loopback: Update slow rates for MAX32 boards
The requested SPI clock rate and the actual rate that is set can be
different depending on the peripheral clock and divisors available to
the SPI peripheral. For some MAX32 SoCs, actual rate ended up being
higher than the devicetree setting. This would then cause latency tests
to fail as transfers finish earlier than minimum expected duration.

Update the test frequency values in several MAX32 board overlays to pass
latency tests.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
(cherry picked from commit 3de5883fc1)
2025-08-11 10:55:53 -05:00
Tahsin Mutlugun
0dbc00a63b drivers: spi: spi_max32: Return proper error codes in spi_configure
spi_configure was returning HAL error codes that are incompatible with
Zephyr error definitions straight back to the caller. Replace these with
error codes that Zephyr can correctly interpret.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
(cherry picked from commit edc9ff951d)
2025-08-11 10:55:53 -05:00
Tahsin Mutlugun
94b74dbd89 drivers: spi: spi_max32: Fix word size support
Driver was not handling SPI word sizes other than 8 bits. Apply DFS
shift wherever necessary to support non 8-bit transfers.

DMA mode cannot support word sizes that are less than 8 bits so return
-ENOTSUP if word size less than 8-bits is required.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
(cherry picked from commit f47449e7e9)
2025-08-11 10:55:53 -05:00
Robert Lubos
4c362f1aec tests: net: socket: tcp: Add test for keepalive connection upkeep
Add test verifying that if keep-alive messages are exchanged, the
connection remains alive.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
(cherry picked from commit dcbd1ed5fc)
2025-08-11 10:54:29 -05:00
Robert Lubos
bafc9f2a66 net: tcp: Fix handling of keep-alive probes
Keep-alive probes have seq number set to SND.NXT - 1 and may or may not
contain an octet of data. The latter case was not handled properly
therefore add a special case when validating seq number to response to
keep-alive probes.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
(cherry picked from commit d93c5d6072)
2025-08-11 10:54:29 -05:00
Henrik Brix Andersen
30de5e8a2c drivers: console: posix_arch_console: remove build warning
Remove build warning when building the posix_arch_console driver with
CONFIG_PRINTK=n and CONFIG_STDOUT_CONSOLE=n.

Fixes: #93790

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
(cherry picked from commit 3eedebe031)
2025-08-04 12:05:41 -05:00
Anas Nashif
ff6295f930 tests: llext: disable debug logging
disable debug in general as it is too verbose and hides test output.
However, this now fixes an issue in the test itself after 4.2 release.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
(cherry picked from commit 94e0e5ae85)
2025-08-04 10:32:43 -05:00
Armando Visconti
738e159ede drivers/sensor/: lis2dux12: fix ODR setting
In lis2dux12_freq_to_odr_val, the loop through the array of possible ODR
frequencies can break sooner than expected if power-mode is
set to High Performance mode and the requested ODR is less than or
equal to 25Hz.

Moreover, move the "odr |= 0x10" statement used for HP mode in the
chip_api set_odr_raw() API, so that we enter the HP mode even when the
ODR is set from DT only.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
(cherry picked from commit 0d38a88666)
2025-07-30 11:05:12 -05:00
IBEN EL HADJ MESSAOUD Marwa
183444eed4 drivers: usb: udc: prevent USB clock disable in sleep mode
Prevent disabling OTG HS and USBPHY clocks
during sleep on STM32U5 series

Disabling these clocks during sleep mode
was causing USB device initialization issues

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
(cherry picked from commit 8b355e9306)
2025-07-29 12:23:36 -07:00
IBEN EL HADJ MESSAOUD Marwa
e2efcf7cb6 drivers: usb: device: prevent USB clock disable in sleep mode
Prevent disabling OTG HS and USBPHY clocks
during sleep on STM32U5 series

Disabling these clocks during sleep mode
was causing USB device initialization issues

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
(cherry picked from commit d4b2808b68)
2025-07-29 12:23:36 -07:00
Luis Ubieda
a494c09fcb i3c: stm32: Prevent mutex deadlock on DAA failure
Make sure this function always unlocks bus_mutex.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
(cherry picked from commit ef41627f81)
2025-07-29 12:23:20 -07:00
Martin Stumpf
fb8687a492 spi_nxp_lpspi: Fix underflow in lpspi sck calculation
If `desired_delay_ns` is `0`, it is much saner to set the delay to `0x00`
than to underflow and set it to `0xff`, which is the current behavior.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
(cherry picked from commit 860f9c8ef5)
2025-07-29 12:51:34 -05:00
Tomislav Milkovic
7abcf05115 doc: connectivity: networking: api: tftp: Fix Kconfig option
Instead of CONFIG_MQTT_SN_LIB, correct Kconfig option to
enable TFTP client library is CONFIG_TFTP_LIB

Signed-off-by: Tomislav Milkovic <tomislav.milkovic95@gmail.com>
(cherry picked from commit 5410f74664)
2025-07-29 12:50:31 -05:00
Bjarki Arge Andreasen
2ff7f15e5f drivers: can: nrf: fix invalid pointer leading to undef behavior
The can_nrf device driver incorrectly passes its own device
driver pointer to a call to clock_control_get_rate() to get the
rate of the auxpll. The actual device driver which should be passed
to clock_control_get_rate() is the auxpll.

Without this fix, the call jumps to the can_nrf_api and returns
garbage (unfortunately it does not hardfault, which is why this
issue has not been discovered yet).

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
(cherry picked from commit f5ee52ecf3)
2025-07-29 12:43:56 -05:00
Axel Utech
d1f998909d dts: arm: st: u0: fix lpuart1/2 interrupts
Interrupt vectors for lpuart1 and lpuart2 are swapped according to the
reference manual RM0503 table 54.
Fixes the usage of the interrupt-driven uart API.

Signed-off-by: Axel Utech <utech@sofiha.de>
(cherry picked from commit 4664f600d6)
2025-07-27 12:09:37 -07:00
Benjamin Cabé
a9f222b9a7 boards: arduino: nicla_vision: fix VL53L1X I2C address
Nicla Vision datasheet is referring to the 8-bit wire address (0x52) for
the VL53L1X sensor, so that's likely what ended up being used in the
board's devicetree. However, it's the 7-bit I2C address that should be
used so fix that by changing the I2C address to 0x29. Successfully
tested on actual hardware.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
(cherry picked from commit a663b2b374)
2025-07-27 10:58:16 -07:00
Florian La Roche
58be950216 net: sockets: add missing break
Add a missing break to socket handling.

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
(cherry picked from commit d933e0301e)
2025-07-27 10:56:20 -07:00
Pieter De Gendt
02f511bb93 doc: release: 4.2: Fix entry in new APIs
Add a missing newline to fix the formatting of the LoRaWAN entry.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
(cherry picked from commit 4867d45647)
2025-07-27 10:56:05 -07:00
Daniel DeGrasse
413b789deb release: Zephyr v4.2.0
Set the version to v4.2.0

Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-18 18:17:09 -05:00
Daniel DeGrasse
5c388ea80b release: update security policy to include 4.2
Update security policy documentation to indicate 4.2 is the latest
version, and drop 4.0 from the supported versions

Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-18 18:17:09 -05:00
Daniel DeGrasse
bde3e6929b doc: release: Finalize v4.2.0 release notes and migration guide
Remove working draft status from the v4.2.0 release notes and migration
guide.

Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-18 18:17:09 -05:00
Daniel DeGrasse
dd20c8e210 doc: release: Remove v4.0.0 from the list of supported releases
Only the two most recent mainline releases are supported.

Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-18 18:17:09 -05:00
Daniel DeGrasse
8178c87c1c doc: release: add v4.2.0 to the list of supported releases
Add 4.2.0 to the supported release, EOL to the tentative 4.4 release
date.

Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-18 18:17:09 -05:00
Daniel DeGrasse
1ba9504811 doc: releases: enforce sorting of entries
Enforce sorting of entries, using zephyr-keep-sorted. This will make
sure that entries don't get out of order again within the release notes
or migration guide by throwing a compliance error.

Note that autogenerated areas do not have this enforcement enabled.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-18 09:35:31 -07:00
Daniel DeGrasse
f821de4d88 doc: releases: 4.2: clean up entry order
Clean up order of entries to be alphabetically sorted in the "new apis"
section

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-18 09:35:31 -07:00
Daniel DeGrasse
db64d7bd5f doc: releases: migration-guide: clean up entry order
Clean up order of entries in the migration guide to be alphabetical.
Combine two duplicate regulator sections, and move driver sections
mistakenly placed under networking where they ought to be.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-18 09:35:31 -07:00
Erwan Gouriou
4ab5efc87d release-notes: 4.2: Add a clarification on a new compatible
Clarify the introduction of st,stm32-ethernet-controller compatible
so that reader could not understand that this is the introduction of
STM32 ethernet (while it is only dts shenanigans).

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-07-18 09:38:39 -05:00
Abderrahmane JARMOUNI
366d45fd34 doc: release-notes-4.2: Add Display notable changes
Add Display notable additions in 4.2 release.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-07-17 17:36:40 -10:00
Abderrahmane JARMOUNI
a1455b4dfc doc: release-notes4.2: Add LVGL notable changes in Zephyr
Add LVGL notable changes in Zephyr

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-07-17 19:03:41 -05:00
Benjamin Cabé
62ffbb0127 doc: releases: 4.2: Consolidate release highlights
Add twister power harness mention
Use same structure as the one used for 4.1

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-17 19:03:28 -05:00
Benjamin Cabé
d9045ea467 twister: doc: add anchors for various harness sections
Make it possible to cross reference documentation for various harnesses
by adding target locations.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-17 19:03:28 -05:00
Benjamin Cabé
b46b41dd79 doc: releases: 4.2: Misc. typo and spelling fixes
General clean up of small typos and other trivial fixes.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-17 19:03:28 -05:00
Krzysztof Chruściński
8fa515419c doc: releases: Add note about de-deprecation in Nordic UART driver
Add note in release notes for v4.2 about de-deprecation of
CONFIG_CONFIG_UART_x_NRF_HW_ASYNC option.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-07-17 12:46:31 -10:00
Krzysztof Chruściński
08f14961fe drivers: serial: nrfx_uarte: Improve UART_NRFX_UARTE_ENHANCED_RX dependency
Enhanced RX cannot be used when UART_x_NRF_HW_ASYNC is used so changing
default value to depends on.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-07-17 12:46:31 -10:00
Krzysztof Chruściński
3c9389650e Revert "drivers: serial: nrfx_uarte: Deprecate CONFIG_UART_x_NRF_HW_ASYNC"
This reverts commit 384e940c66.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-07-17 12:46:31 -10:00
Krzysztof Chruściński
eb996924fb drivers: serial: nrfx_uarte: use ifdef instead of IS_ENABLED
In certain configurations timeout field is not present in the
data structure so preprocessor ifdef must be used instead of
compiler check.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-07-17 12:46:31 -10:00
Etienne Carriere
72dc0e5f0a doc: migration: 4.2: Note on STM32 TF-M BL2 HW crypto
Add a note about STM32 boards TF-M BL2 bootloader that do not embed
HW crypto drivers since migration to TF-M v2.2.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-07-17 11:29:53 -05:00
Stephanos Ioannidis
31ef45e2f1 ci: maintainer_check: Use zephyrbot token
This commit updates the maintainer check workflow to use the zephyrbot "PR
assigner" token with `org:read` permission because the default workflow
token is not able to retrieve organisation-level user membership
information.

Note that the workflow trigger condition is changed from `pull_request` to
`pull_request_target` because non-workflow secrets may not be accessed from
`pull_request` trigger for security reasons.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-07-17 11:29:36 +09:00
Stephanos Ioannidis
63bf487a56 ci: assigner: Use zephyrbot token
This commit updates the pull request assigner workflow to use the zephyrbot
token instead of the workflow token.

Note that the workflow token, by design, cannot access the
organisation-level user membership information, and may cause the assigner
script to return `Skip 'user': not in collaborators` even for valid
collaborators.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-07-17 11:29:36 +09:00
Gaetan Perrot
eb06ff8d3a docs: raspberrrypi: rpi_pico: Fix broken RP2040 datasheet link
The RP2040 datasheet link in the rpi_pico board documentation was broken.

It has been updated to point to the correct location.

This change ensures consistency and prevents confusion, while keeping the
useful reference to the official RP2040 documentation.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-16 16:41:25 -05:00
Derek Snell
8022e29c0c doc: boards: nxp: mimxrt700_evk: add boot switch details
Document SW10 to boot from default flash.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-07-16 16:41:12 -05:00
Maksim Salau
7ab9d8b668 doc: migration: 4.2: Add Modbus related notes
Add notes regarding changes in Modbus  serial mode configuration.

Signed-off-by: Maksim Salau <maksim.salau@gmail.com>
2025-07-16 16:41:02 -05:00
Jeppe Odgaard
2e14671749 doc: services: storage: fcb: remove deprecated settings recommendation
The recommended back-end depends on the use case. There exists another note
(recommendation) in doc/services/storage/settings/index.rst which is up to
date.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-07-16 16:40:43 -05:00
Anas Nashif
e3278012e4 memmgmt: doc: replace Memory-Attr with Memory Attributes
No need to use abbriviated form here, just spell it out.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-16 16:39:59 -05:00
Tim Pambor
51989cbe0a twister: Fix exception if twister fails to create symlink
This fixes a typo in the formatting code that caused an exception
if the symlink creation failed.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-16 16:39:47 -05:00
Anas Nashif
1a7ce3f45e Revert "init: Make entry init-function less and introduce service objects"
This reverts commit 175da6bdb0.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-16 16:39:36 -05:00
Anas Nashif
7d3a33afd4 Revert "scripts: Removing init function pointer from check_init_priorities.py"
This reverts commit 653f1bf123.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-16 16:39:36 -05:00
Anas Nashif
f2a9bf968d Revert "tests: misc: Fixing expected output on check_init_priorities test"
This reverts commit c341f5389d.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-16 16:39:36 -05:00
Anas Nashif
91cf77f013 Revert "cmake: Add service section to commo-rom linker generator"
This reverts commit 49a96f67a2.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-16 16:39:36 -05:00
Anas Nashif
343f29c5a9 manifest: update tf-m sha
Pull in fixes needed to enable warnings being treated as errors.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-16 16:39:04 -05:00
Flavio Ceolin
ca7d99a249 tf-m: build: Treat warnings as errors
Starting in TF-M 2.2.0 there is a build option to treat warnings as
errors. Lets use it.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-07-16 16:39:04 -05:00
Abderrahmane JARMOUNI
f66658a52a soc: stm32: fix FLASH_BASE_ADDR for apps linked in ext Q/OSPI Flash
Following changes in e35ac8f and 14c1b4a to how external Q/OSPI Flash
nodes are declared in DT for boards with STM32 SoCs, FLASH_BASE_ADDRESS
needs to be set manually similar to XSPI Flash, so that it does not
default to (dt_chosen_reg_addr_hex,$(DT_CHOSEN_Z_FLASH)) which gives 0.
This change is critical for running apps with MCUboot from external
Q/OSPI Flash.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-07-16 16:38:41 -05:00
Ryan McClelland
d84348fbd1 docs: device: remove action for device pm
It is not possible to go from ACTIVE to OFF with device pm
actions.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-07-16 05:22:47 -10:00
Iuliana Prodan
f1eb63a109 MAINTAINERS: Add iuliana-prodan as Open AMP maintainer
Move myself from collaborators to maintainers.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-07-16 05:22:23 -10:00
Benjamin Cabé
e41c1b291f MAINTAINERS: Introduce SPDX Tooling area
Add SPDX Tooling area covering custom west command, zspdx library, and
tests. Add kartben as maintainer, swinslow and pdgendt as collaborators.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-16 05:22:05 -10:00
Attie Grande
90bc8f8ff8 MAINTAINERS: Remove myself from SAM Platform collaborators
I've been unable to participate properly for some time, apologies all.

Signed-off-by: Attie Grande <attie.grande@argentum-systems.co.uk>
2025-07-16 05:21:48 -10:00
Anas Nashif
66acb364b1 MAINTAINERS: add missing file to areas
quick pass adding files to respective areas.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-15 17:08:57 -10:00
Dmitrii Golovanov
94d9574b0f scripts: footprint: fix hifive1 rev.B board name
Rev B of hifive1 is 'hifive1_revb' since 07e4ba4240

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2025-07-15 17:08:43 -10:00
Christoph Mair
ab3c514d33 doc: migration: 4.2: typo: NET_REQUEST_ETHERNET_GET_QAV_PARAM used twice
The migration guide mentions NET_REQUEST_ETHERNET_GET_QAV_PARAM twice
in a row. One instance should be NET_REQUEST_ETHERNET_SET_QAV_PARAM.

Signed-off-by: Christoph Mair <christoph.mair@husqvarnagroup.com>
2025-07-15 08:34:34 -10:00
Nabil Elqatib
b663ee861f doc: kernel: drivers: Correct number of initialization levels
Commit a0b746 deleted 2 deprecated driver init levels (EARLY,
APPLICATION), but didn't update the number mentioned in the doc.

Signed-off-by: Nabil Elqatib <nabilelqatib@gmail.com>
2025-07-15 08:34:21 -10:00
Etienne Carriere
0b1cff200f manifest: Update tf-m module to fix STM32 platform BL2
Sync with TF-M to fix STM32 platforms TF-M BL2 firmware (issue 92446),
and OTP provisioning build error and various build warnings.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-07-15 10:50:52 -05:00
Gaetan Perrot
f52d71c8cf drivers: serial: uart_sedi: Remove unused variable 'mask'
The variable 'mask' was declared but never used in
uart_sedi_line_ctrl_set().

This commit removes it to clean up the code..

No functional changes.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-14 11:18:45 -10:00
Gaetan Perrot
aaec242a63 tests: net: socket: net_mgmt: mark unused function argument
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-14 11:18:31 -10:00
Marcin Niestroj
f6b35e637b tests: net: conn_mgr_nsos: fix CONFIG_ETH_NATIVE_TAP=n
Update option name s/CONFIG_ETH_NATIVE_POSIX/CONFIG_ETH_NATIVE_TAP/, which
follows recent Zephyr change.

Fixes 78f800642a ("drivers/ethernet/eth_native_posix: Rename to
  eth_native_tap")
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-07-14 11:18:20 -10:00
Lyle Zhu
328a96cb65 doc: releases: 4.2: Mention Bluetooth Classic changes
Add the changes of Bluetooth Classic to release notes.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-07-14 11:18:09 -10:00
Patryk Koscik
854e185248 west: spdx: make SBOM generation compatible with Python < 3.12
Avoid f-strings with backslashes for Python < 3.12 compatibility,
which fixes SBOM generation crashes on older Python versions.

Signed-off-by: Patryk Koscik <pkoscik@antmicro.com>
2025-07-14 07:11:46 -10:00
Anas Nashif
dda57865c0 twister: adapt tests for new TestConfiguration class
Adapt test to new test configuration class.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-14 07:11:22 -10:00
Anas Nashif
4d82c48789 twister: make test configuration handling a class
Split test configuration code into own class and do parsing in two steps
to get the right context of platforms and scenarios.

Fixes zephyrproject-rtos/zephyr#89774

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-14 07:11:22 -10:00
Daniel Leung
388f7677fb doc: release-notes/4.2: add bits about I3C
Add bits about I3C on added/removed kconfigs, and a new driver.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-07-14 07:09:33 -10:00
Ayush Singh
554084462b boards: beagle: beagley_ai: Add auto-generated features
The auto-generated features table is used in most of the new boards and
is great to show the features available in different targets in the same
board.

So use it instead of manual tables

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-07-14 07:09:18 -10:00
Tom Hughes
9fd547f94d zephyr: sw_isr_table: Fix compilation error
The IRQ_DIRECT_CONNECT macro eventually uses _Z_ISR_DIRECT_TABLE_ENTRY,
which defines a function. IRQ_DIRECT_CONNECT is meant to be used
inside functions. While nested functions are supported as an extension
in GNU C, the nested function cannot have static storage.

https://gcc.gnu.org/onlinedocs/gcc/Nested-Functions.html:

> A nested function always has no linkage. Declaring one with extern or
> static is erroneous.

./scripts/twister -c -s arch.interrupt.gen_isr_table_local.riscv --all

tests/kernel/gen_isr_table/src/main.c: In function
'gen_isr_table_test_build_time_direct_interrupt':
include/zephyr/sw_isr_table.h:197:41: error: invalid storage class for
function '__isr_table_entry_isr1_irq_2'
#define __MK_ISR_ELEMENT_NAME(func, id) __isr_table_entry_ ## func ## _irq_ ## id
                                        ^~~~~~~~~~~~~~~~~~

Issue #92194

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-07-14 07:09:03 -10:00
Daniel DeGrasse
322da1d1a5 release: Zephyr 4.2.0-rc3
Set version to v4.2.0-rc3.

Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-11 20:03:02 -05:00
Derek Snell
09714390f6 drivers: dma: mipi_dbi_nxp_lcdic: enable inputmux clock
To optimize power consumption, the inputmux clock is only enabled when
a signal is attached.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-07-11 13:16:43 -10:00
Gaetan Perrot
dd180c2789 ipc_service: ipc_icbmsg: fix unchecked error in icmsg_open()
Coverity (CID 516253) reported that the return value of
initialize_tx_with_sid_disabled() was set but not used, leading to
potential silent failures.

Check if the return value is negative and propagate the error through the
existing cleanup path.

Fixes: CID 516253

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-11 13:15:04 -10:00
Tomi Fontanilles
e4e8870180 dts: nordic: remove nordic,cryptocell compatible
It's unused.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-07-11 13:14:49 -10:00
Erwan Gouriou
079899cfd5 samples: display: Fix stm32n6570_dk fsbl variant
When adding new fsbl variant this sample Kconfig overlay was missed
leading to non functional sample on this variant.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-07-11 13:14:30 -10:00
Marcin Niestroj
cd17871cfe drivers: udc: stm32: fix USB_OTG_HS_EMB_PHY macro value check
USB_OTG_HS_EMB_PHY macro is always defined, so
`defined(USB_OTG_HS_EMB_PHY)` always results in true. This means that
driver always selected `USB_OTG_SPEED_HIGH_IN_FULL` and never
`USB_OTG_SPEED_HIGH`.

Fix that by checking value of defined macro.

Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-07-11 11:42:33 -10:00
Daniel Leung
f499ea0a58 cmake: apply optimization flags to assembler
Commit 65471a6095 separated
compiler flags into ASM, C and CXX as those flags may not be
universal to both assembler and compiler. Though, with that
separation, the assembler no longer gets the optimization
flags (e.g. speed/size optimizations). So adds this back so
the assembler can optimize the code if it chooses to. For
example, some instructions can be fused together to result
in small code.

Fixes #92439

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-07-11 11:41:29 -10:00
Gaetan Perrot
8a565c0a2b modules: hostap: supp_events: Fix possible null deference
Move usage of ap_ctx pointers after null checks to prevent potential
crashes.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-11 16:32:57 -05:00
Gaetan Perrot
cd855104f2 modules: hostap: hapd_events: Fix possible null deference
Move usage of ap_ctx pointers after null checks to prevent potential
crashes.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-11 16:32:57 -05:00
Gaetan Perrot
b6a5202e55 modules: hostap: supp_api: Fix possible null deference
Ensure 'params' is not NULL before accessing its fields.

Prevents possible null pointer dereference when calling
strlen(params->ssid).

Delay access to ssid->ssid and ssid->ssid_len until after null check.

Prevents potential crash if wpa_s->current_ssid is NULL.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-11 16:32:57 -05:00
Robert Lubos
151295f98e net: sockets: Move socket vtable definition
Offloaded socket implementations need to create the socket operations
vtable, therefore need access to struct socket_op_vtable. So far this
has been defined in a private header, so implementations needed to add
the header location to the include path in CMake.

Therefore, move struct socket_op_vtable definition to the internal part
of the public socket header, so it's no longer needed to include a
private header. This is also more consistent with the rest of the public
header content, as for example macros needed to register a socket
implementation are already there.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-11 16:32:49 -05:00
Dipak Shetty
fd1f4392a6 include: zephyr: bluetooth: uuid: fix typo in characteristic doxygen
Fixes correct GATT characteristic description for Device Time.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-07-11 16:32:39 -05:00
Ilya Tagunov
708c1dc488 linker: arc: add .rodata_in_data section to avoid unexpected placement
The .rodata_in_data section is produced by MWDT toolchain with -Hccm
option enabled. This option moves read-only data from the executable
memory (ICCM) to the data memory (DCCM), improving performance by
reducing conflicts between instruction fetches and data fetches.

Signed-off-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com>
2025-07-11 16:32:28 -05:00
Gaetan Perrot
bac20e419e drivers: wifi: nrf_wifi: wifi_mgmt: remove redundant null check
Deleted a redundant check for 'rpu_ctx_zep' pointer after it was already
dereferenced.

Clarifies code logic in nrf_wifi_get_power_save_config function.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-11 16:32:06 -05:00
Pisit Sawangvonganan
acf2d665c1 modules: mbedtls: fix conditional compilation for MBEDTLS_PKCS1_V21
Fix the conditional compilation to use `CONFIG_MBEDTLS_PKCS1_V21`
instead of `CONFIG_MBEDTLS_PKCS1_V15` when enabling `MBEDTLS_PKCS1_V21`.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-07-11 16:31:57 -05:00
Benjamin Cabé
defe9ecb25 doc: develop: manifests: external: add zenoh-pico
Introduce documentation for using zenoh-pico as an external module in
Zephyr.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-11 15:54:17 -05:00
sudarsan N
9e7e58fb54 video: common: fix formatting for heap define to fit CI line length
Wrap K_HEAP_DEFINE to fit within 100-character CI limit and apply
consistent spacing.This is a formatting-only change.

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-07-11 15:54:09 -05:00
sudarsan N
af76ac8b9b video: common: prevent divide-by-zero video_closest_frmival_stepwise()
Adds an assertion and runtime log to ensure 'step' is not zero before
using it in division,preventing undefined behavior without modifying
 the public API.

Avoids a signature change (void → int) to preserve API stability for
Zephyr 4.2.A more complete solution can be proposed for 4.3.

CID: 444378

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-07-11 15:54:09 -05:00
Robert Lubos
2c097a4c00 doc: release-notes: Add 4.2.0 release notes for networking
Add 4.2.0 release notes for networking and move the PM section which
somehow ended up inside Networking.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-11 13:44:54 -05:00
Jamie McCrae
066226edd6 doc: release: 4.2: Add MCUmgr changes
Adds new features/APIs for MCUmgr

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-11 13:44:47 -05:00
Jamie McCrae
cd0fb8a75c doc: release: 4.2: Add sysbuild changes
Adds new features for sysbuild

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-11 13:44:47 -05:00
Jamie McCrae
90d7d2c6ff doc: migration: 4.2: Add note on HWMv1
Adds a note that HWMv1 support has now been dropped

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-11 13:44:47 -05:00
Benjamin Cabé
4f0bbb8fda doc: _static: css: fix navtree +/- icon margins
Fixed selectors that probably went stale overtime since the custom.css
was adopted from Godot and RTD having evolved in the meantime and that
were causing +/- icons to expand/collapse the navtree to be putting
margins where they shouldn't have.

Fixes zephyrproject-rtos/zephyr#78974

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-11 13:44:37 -05:00
Benjamin Cabé
ee173abeb3 doc: doxygen: use STRIP_FROM_INC_PATH to keep #includes clean
Another take on zephyrproject-rtos/zephyr#76953.
This uses STRIP_FROM_INC_PATH to make sure #include snippets in the
documentation are not absolute paths and reflect what one would
actually use in their code.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-11 13:44:27 -05:00
Hake Huang
fb9783d880 tests: ztest: add test hold status in DEVICE_PM
for DEVICE_PM and DEVICE_PM_RUNTIME, ztest need
hold status like CONFIG_PM, otherwise the following
flash will be blocked for some SOC

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-07-11 13:44:16 -05:00
Szymon Janc
d699e8ccf0 Bluetooth: Host: Make error messages unique
Both bt_le_adv_stop() and bt_le_adv_resume() were logging same
error message. Add aditional context to it so that logs are
distinguishable.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-07-11 08:25:53 -10:00
Chris Friedt
9e5e294ea4 lib: os: clock: fix for CID 529870
Fix for CID 529870, where Coverity found an issue where `timespec.tv_sec`
is never greater than `UINT64_MAX / NSEC_PER_SEC` (18446744073).

This is naturally true when `time_t` is only 32-bit, which is actually
never the case for any Zephyr platform aside from `native_sim/native/32`.

When `time_t` is a signed 64-bit value, at some point in the future, but
maybe not in our lifetimes, `timespec.tv_sec` could exceed 18446744073,
since `INT64_MAX > UINT64_MAX / NSEC_PER_SEC`.

We should not see coverity issues errors like this in the future, once we
have a consistent `time_t` representation across all Zephyr platforms.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-07-11 08:21:46 -10:00
Sylvio Alves
aa7901c078 drivers: spi: esp32c6: fix struct type zeroing
Fix regression caused by memset() replacement to zero volatile struct.
ESP32-C6 data_buf struct differs from other SoCs and needs custom
handling.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-11 08:20:41 -10:00
Chris Friedt
8fd0b704ab drivers: gpio: gpio_pca_series: check return values and exit on error
Check return values and exit on error to address CID 434641.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-07-11 08:19:39 -10:00
Marcin Niestroj
5e25a3e24a drivers: esp_at: fix net_if_get_by_iface() typo
s/net_if_get_by_ifindex/net_if_get_by_iface/

Fixes: 0e57844b2d ("drivers: wifi: esp_at: Bind DNS to device net
  interface")
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-07-11 08:19:06 -10:00
Gaetan Perrot
3962dab707 arch: arm64: core: fpu: mark unused function argument
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-11 08:18:43 -10:00
Gaetan Perrot
92826ff312 arch: arm64: core: fatal: mark unused function argument
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-11 08:18:29 -10:00
Sylvio Alves
1d44903e23 west.yml: update hal_espressif to fix Wi-Fi issue
Update HAL to fix Wi-Fi issue when SPIRAM is enabled as HEAP.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-11 08:17:12 -10:00
Benjamin Cabé
125b23ba02 twister: harness: power: fix amp to milliamp conversion
Fix amp to milliamp conversion where a 10^4 factor was applied instead
of 10^3.
Adjust existing test cases accordingly (including a small change to one
of the expected RMS values in pm.power_states that either changed
since the test was introduced or was set too aggressively back then).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-11 08:16:58 -10:00
Benjamin Cabé
4f747cea90 doc: release-notes-4.2: update highlights sections
Add a few bullet points calling out the major highlights of Zephyr 4.2.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-11 08:16:46 -10:00
Chaitanya Tata
a869c3e3a3 manifest: hostap: Pull fix for warning in interface down
Fix a warning seen during interface down.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-11 08:16:34 -10:00
Sylvio Alves
7b240d4fd4 soc: espressif: cleanup unused linker entries
Remove linker entries that are either not associated
with any functions or are redundant.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-11 08:16:19 -10:00
Christoph Winklhofer
d5354449be json: fix encoding of string null pointer
A segmentation fault occurs when a zero initialized struct with a string
field (JSON_TOK_STRING) is encoded. Encode a string null pointer as an
empty JSON string "".

Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-07-11 08:15:36 -10:00
Lars-Ove Karlsson
2a9be50c29 toolchain: compiler: IAR does not allow vla with C++
Fixed a problem where the command line option --vla was used
with C++ causing a command line error in the IAR ICCARM compiler.

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-07-11 08:14:12 -10:00
Tim Pambor
970c715ef4 sys: cbprintf: Suppress bugprone-sizeof-expression
clang-tidy reports a bugprone-sizeof-expression warning for
sizeof((__v)) when __v is a pointer type. This is a false-positive
in contexts like logging with %p, where using a pointer is
intentional and expected.

Add a NOLINT comment to suppress the warning in static analysis.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-11 09:41:50 -05:00
Tim Pambor
9f5492acec sys: cbprintf: Fix performance-no-int-to-ptr warning
clang-tidy reports a performance-no-int-to-ptr warning due to the cast
(const char *)(uintptr_t)(v).

Previously, only char * was cast to const char *, but there's no downside
to constifying all pointer types.

This change updates the Z_CONSTIFY macro to apply const consistently,
which even aligns better with its name and resolves the warning.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-11 09:41:50 -05:00
Thomas Altenbach
6aeb12d558 drivers: flash: stm32_qspi: Fix flash not reset when in QPI mode
The reset commands were sent only in SPI mode, causing the device not to
be properly reset when in QPI mode. On the STM32H747I-DISCO boards, this
was causing the driver initialization to fail due to a bad SFDP magic
after flashing the external memory using STM32CubeProgrammer since the
external loader is configuring the flash memory in QPI mode.

The commands are sent in QPI mode first, then in SPI mode:
- If the flash memory was in QPI mode, the two first reset commands are
  processed and after reset, the flash memory is in SPI mode and
  correctly handles the SPI mode reset commands.
- If the flash memory was in SPI mode, for each QPI command the chip
  select signal will be released before the flash memory had the
  opportunity to receive a whole command (1 byte), so the partially
  received commands will be ignored and won't cause any harm. Then, the
  chip is reset by the commands sent in SPI mode.

Signed-off-by: Thomas Altenbach <altenbach.thomas@gmail.com>
2025-07-11 09:41:38 -05:00
Georgios Vasilakis
0081207078 samples: tfm: tfm_psa_test: Add temporary isolation workaround
Add a workaround which sets the isolation level to 2 in CMake.
The TF-M tests require the large TF-M profile because it supports
the full list of crypto algorithms needed, not because of the
solation level.

For the TF-M tests the isolation level is irrelevant so we
set it to 2 here so that we don't exclude the platforms which
don't support the isolation level 3.

I communicated with a TF-M maintainer and he informed me that this
workaround will be included in the TF-M 2.2 release branch later
so this is a short lived workaround that can be reverted when the
relevant commit from the TF-M branch is cherry-picked.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-07-11 09:41:26 -05:00
Declan Snyder
9166d6ac7b spi_mcux_dspi: Hotfix for failing null rx test
This is not really high priority to support and is disrupting test
reporting, for now just hotfix the test by returning that this is not
supported, it's not really necessary anyways, there's multiple ways to
call the API to achieve the same effect.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-11 09:41:14 -05:00
Declan Snyder
a622070a24 dma_mcux_edma: Remove header file
There is really no need for this header file at all besides if
there is a requirement to be annoying.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-11 09:41:14 -05:00
Declan Snyder
b3083dac07 spi_mcux_dspi: Return error if data update fails
This data update returns an error, we should propogate it where it is
called if there is an error returned.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-11 09:41:14 -05:00
Declan Snyder
a94a16c454 dma_mcux_edma: Abort transfer before clear status
The transfer must be aborted before clearing the status flags otherwise
they will be set again before the transfer is aborted and stay set
causing infinite interrupt.

Also, elevate the log message to error level and give it actual useful
information. The "flag" being logged before literally just is a bit that
says if there is an error or not, which we already know by virtue of
handling an error. The channel error status has actual details about
what was the reason of the error. Also this status should be reported
before the transfer is aborted to get the right status.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-11 09:41:14 -05:00
Tomasz Moń
d590d27ec9 drivers: udc_dwc2: Set EP0 IN CNAK only when necessary
Adhere to Programming Guide with regards to when the DIEPCTL0.CNAK is
set. This allows the driver to survive abusive control transfers with
extremely short host timeouts.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-07-11 09:41:04 -05:00
Khaoula Bidani
bcbe5f3b26 tests: drivers: spi_loopback: add latency tolerance for nucleo_u385rg_q
Set a convenient latency for nucleo_u385rg_q

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-07-11 09:40:47 -05:00
Erwan Gouriou
97608e4cc0 boards: stm32n6570_dk: Disable cache on PSRAM
For unclear reason yet, cache activation on PSRAM causes stability issues
when using LTDC.
Disable cache for now.
We'll re-enable once the issue is better understood and fixed.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-07-11 09:40:37 -05:00
Ilya Tagunov
e22ca6b132 libc: arcmwdt: grant all threads access to stdio locks
Some of the locks are created in supervisor mode (i.e. stdout one),
but should be accessed from user mode too. Unfortunately, there is
no way to distinguish these locks, so grant the access to all of them
as the actual reads and writes should end up as syscalls anyway.

Signed-off-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com>
2025-07-10 19:54:27 -05:00
Ilya Tagunov
bba649156c libc: arcmwdt: require static initializers
The ARC MWDT C library puts some constructors into .ctors section
to initialize its internal stdio locks. Enable the initializers
to make sure these constructors are actually executed.

Signed-off-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com>
2025-07-10 19:54:22 -05:00
Nidhal BEN OTHMEN
6a0d019417 manifest: Update hal_stm32 module with updated license file
Update hal_stm32 module with updated license file.
Impacted source/headers files were updated also.

Signed-off-by: Nidhal BEN OTHMEN <nidhal.benothmen@st.com>
2025-07-10 16:13:06 -05:00
Josuah Demangeon
2aba7112cb doc: release-note-4.2: add new video-related API
Document new API introduced for video drivers as visible on the
<zephyr/drivers/video.h> header.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-07-10 16:07:27 -05:00
Josuah Demangeon
4f585fd7f5 doc: migration-guide-4.2: add video-related API changes
Document API changes affecting video drivers as visible on the
<zephyr/drivers/video.h> header.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-07-10 16:07:27 -05:00
Josuah Demangeon
424ad06a33 doc: release-notes-4.2: improve formatting of video notes
Use :c:func:`xxx` and :c:type:`xxx` when applicable, as well as reword
a deprecation to make the replacement appear.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-07-10 16:07:27 -05:00
Josuah Demangeon
cce8e488d1 doc: migration-guide-4.2: improve formatting of video-related notes
Use :c:func:`xxx` and :c:enum:`xxx` instead of plain ``xxx`` when it is
possible.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-07-10 16:07:27 -05:00
Josuah Demangeon
d4914965d8 doc: releases: mention the video selection API functions
Add a mention to the video_set_selection() and video_get_selection()
introduced in #91878.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-07-10 16:07:27 -05:00
Benjamin Cabé
7561eff012 doc: _doxygen: fix doxygen awesome dark theme
Fix issues with Doxygen 1.14 and dark theme. Upstream PRs to
doxygen-awesome will be submitted in parallel.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-10 16:07:18 -05:00
Flavio Ceolin
4591461b55 doc: vuln: Add CVE under embargo
Add an entry to CVE-2025-7403

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-07-10 16:07:10 -05:00
Flavio Ceolin
fe9b1f557f doc: release/4.2: Add CVE under embargo
Add information about CVE under embargo.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-07-10 16:07:10 -05:00
Andrey Dodonov
1c0608dc02 net: http: service: check for uncompressed file correctly
Correct not resetting compression extension,
when checking for an uncompressed file,
in case if compression is enabled, but no compressed file found.

Signed-off-by: Andrey Dodonov <Andrey.Dodonov@endress.com>
2025-07-10 16:01:47 -05:00
Benjamin Cabé
cae12e6d6a doc: twister: inline twister --help output into the docs
In order to make it easier for folks to discover available twister
options when using/searching the documentation, or when making external
search in their favorite search engine, inline the output of
`twister --help` into the docs so as to have an always up-to-date
and searchable snapshot of it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-10 16:01:34 -05:00
Guillaume Gautier
70b910981d drivers: pwm: stm32: fix four channel pwm capture
With the four-channel-capture-support property enabled, the STM32 PWM
driver was missing every other frames during PWM capture.

The counter values are now reset just after getting the pulse and the
period of the cycle, instead of waiting the next interrupt to do so, and
thus missing a cycle.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-07-10 16:01:23 -05:00
Lucas Tamborrino
79f599ace4 drivers: lp uart: fix initialization
Fix initialization after HAL update

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-07-10 16:01:11 -05:00
Robert Lubos
4872527605 net: coap_client: Don't send RST on unrecognized ACK response
According to CoAP RFC (7252, ch. 4.2), Reset cannot be sent in a
response for an ACK reply, rejected ACKs should be silently ignored
instead. Therefore, in case an unrecognized response is received, verify
the response type before sending Reset.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-10 16:01:03 -05:00
Gaetan Perrot
3ff4d051ca drivers: clock_control: Remove unused 'sys' argument
The 'sys' argument in clock_control_renesas_ra_get_rate() is unused and
has been removed to clean up the implementation.

This also aligns with the function's actual behavior and eliminates
misleading validation logic.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-10 16:00:52 -05:00
Guillaume Gautier
d2e8d0a00e drivers: spi: context: check that config exists before reading it
Function spi_context_release reads the content of ctx->config without
checking first if it is set. In many drivers (including STM32), when a bad
configuration is made for the first transaction, ctx->config is not set,
and spi_context_release is called, resulting in hard fault.

This commit adds a check that ctx->config exists before reading it to
avoid this problem.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-07-10 16:00:42 -05:00
Flavio Ceolin
1de500e89f kconfig: hardenconfig: Add support for insecure option
Treat insecure options in Kconfig options.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-07-10 16:00:26 -05:00
Flavio Ceolin
979fcc0b6e hostap: Set enterprise crypto insecure
Set enterprise crypto insecure because certifcate validation
is disabled.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-07-10 16:00:26 -05:00
Flavio Ceolin
674fd094aa build: kconfig: Add support for warning insecure features
Add a new promptless Kconfig symbol (INSECURE). This symbols must
be selected by any setting which is used to enable an insecure
feature.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-07-10 16:00:26 -05:00
Vitaliy Livnov
e6894ad576 drivers: can: sam0: fix clock configuration for SAM0 series
Fixed a bug where unconfigured clocks were connected to the can
interface in the device tree for SAM0, causing the interface to work
incorrectly. Fixed by adding the correct index when calling GENCTRL.
Also, the default divider has been reduced to 6 to allow setting
the bitrate to 500 kbps.

Tested on a canopennode sample on a board with an ATSAMC21E18A
microcontroller.

Signed-off-by: Vitaliy Livnov <vitaliy.livnov@devkit.agency>
2025-07-10 15:53:46 -05:00
IBEN EL HADJ MESSAOUD Marwa
e1248eff82 drivers: clock_control: set voltage scaling before PLL
Move the call to prepare_regulator_voltage_scale()
before PLL setup in clock_stm32_ll_h7.c.

This ensures the voltage regulator is configured
to the appropriate voltage scale before increasing
the system clock frequency via PLLs.
Without this change, the system configuration
may be out of spec.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-07-10 15:49:59 -05:00
cyliang tw
553fc84e77 drivers: spi: fix numaker spi auto cs control
As while there is no cs_gpio, it should enable H/W auto cs control.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-07-10 10:14:25 -05:00
Jiafei Pan
255e7f960b drivers: gpio: pca6416: fix dt get id
It should use "n" but not use "inst".

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-10 10:14:16 -05:00
Martin Hoff
1ede94dda3 doc: releases: introduce release notes and migration guide docs for 4.3
This introduces the release notes and migration guide for Zephyr 4.3.0
earlier so that people have a placeholder to start adding content as
they line up pull requests for the 4.3 release.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-07-10 10:13:58 -05:00
Simon Piriou
932005abf2 net: l2: ieee802154: mgmt: fix net_pkt leaks
The ieee802154_radio_send() function does not decrease reference counter
of the net_pkt, it's instead done one layer above in ieee802154_send().
This commit updates the mgmt functions using ieee802154_radio_send() to
always free the used net_pkt afterward.

Signed-off-by: Simon Piriou <spiriou31@gmail.com>
2025-07-10 10:13:35 -05:00
Loic Domaigne
28f37e522a drivers: crypto: crypto_ataes132a fix memset undefined behavior
Coverity reported a memory - illegal accesses when using memset in
ataes132a_aes_ecb_block(). This can happen when the input block is
exactly 16 bytes: memset(&param_buffer[19], 0x0, 0) is called. But this
is an undefined behaviour in C even if size is 0, as &param_buffer[19]
is an invalid pointer.

The fix consists of simply skipping memset() in this case, since there's
nothing to zero out.

Coverity CID: 434642

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-07-10 10:13:17 -05:00
Thomas Altenbach
81f95f15fa drivers: flash: stm32_qspi: Fix flash configuration in dual flash mode
When the QSPI is used in dual flash mode, e.g. on the STM32H747I-DISCO
board, only the first flash memory was reset and configured in 4-byte
addressing mode. This was in particular causing data to be incorrectly
read from the second flash memory and only even bytes were valid during
a read.

The dual flash mode was only enabled after reading the SFDP table since
it is desired to read the table of only one flash memory, not both.

This commit changes the driver to only disable the dual mode temporarily
while reading the SFDP table, ensuring all other commands and in
particular configuration commands are sent to both flash memories.

Signed-off-by: Thomas Altenbach <altenbach.thomas@gmail.com>
2025-07-10 10:13:06 -05:00
Chaitanya Tata
d5c7cb171b manifest: nrf_wifi: Pull fix for raw TX memory leak
Fixes memory leak seen during continuous raw TX transmission.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-10 10:12:44 -05:00
Luis Ubieda
07c1d010f7 shell: spi: fix typo on spi cs command
Copy-paste error fixed from help text.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-10 10:12:31 -05:00
Jiawei Yang
ff112b5e05 tests: Bluetooth: BR: Add test suite RFCOMM_client
IUT works as an RFCOMM Client. The peer device, RFCOMM server, is a PC
running bumble.

Add following test cases:

Case 6, RFCOMM MTU Size Data Send/Receive Test. To verify that the RFCOMM
client can correctly send and receive data packets that are exactly equal
to the negotiated MTU size.

Case 7, RFCOMM Data Transfer Exceeding MTU Size Test. To verify that the
RFCOMM client can reject sending and receiving data packets that exceed
the negotiated MTU size.

Case 8, RFCOMM Disconnect and Reconnect Test. To verify that the RFCOMM
client can properly handle a normal RFCOMM disconnection and successfully
reestablish the connection.

Case 9, RFCOMM Recovery After ACL Disconnection Test. To verify that the
RFCOMM client can properly recover when the underlying ACL connection is
abruptly disconnected, by reestablishing both ACL and RFCOMM connections.

Signed-off-by: Jiawei Yang <jiawei.yang_1@nxp.com>
2025-07-10 10:12:20 -05:00
Mark Wang
a7822079dc tests: bluetooth: add test case that sdp client l2cap connecting fail
test the sdp request callback is called when sdp l2cap connecting fail.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-07-10 10:11:59 -05:00
Can Wang
d56f1e018d tests: Bluetooth: BR: Add test suite of bonding for SMP
IUT works as an SM Initiator/Responder. The peer device,
SM Responder/Initiator, is a PC running bumble on it.

Add shell commands to create and manage L2CAP server and channel with
different security level.

In the test suite, there are 5 test cases. The test matrix combines
each bonding flag:
| Test Case ID | Initiator | Responder | Expected Result |
|--------------|-----------|-----------|-----------------|
| BR_SM_Bonding_INIT_001 | Non-bondable | Non-bondable | Pass |
| BR_SM_Bonding_INIT_005 | General Bonding | General Bonding | Pass |
| BR_SM_Bonding_RSP_010 | Non-bondable | Non-bondable | Pass |
| BR_SM_Bonding_RSP_011 | General Bonding | Non-bondable | Fail |
| BR_SM_Bonding_RSP_014 | General Bonding | General Bonding | Pass |

Signed-off-by: Can Wang <can.wang@nxp.com>
2025-07-10 10:11:38 -05:00
Can Wang
9937be7c30 tests: Bluetooth: BR: Add general test suite for SMP
IUT works as an SM Initiator/Responder. The peer device,
SM Responder/Initiator, is a PC running bumble on it.

Add shell commands to create and manage L2CAP server and channel with
different security level, reboot the board, and transfer data on the
SDP channel.

In the test suite, there are 28 test cases to verify SMP functions.
The test case list is:
- BR_SM_INIT_001: Basic Pairing with No Input No Output Capability
- BR_SM_INIT_002: Pairing with Display Only Capability
- BR_SM_INIT_003: Pairing with Keyboard Only Capability
- BR_SM_INIT_005: L2CAP Connection Failure After Successful Pairing
- BR_SM_INIT_006: L2CAP Server with Incoming Connection
- BR_SM_INIT_008: ACL Disconnection During Pairing
- BR_SM_INIT_011: Repeated Pairing Between Same Devices
- BR_SM_INIT_012: Security Level Escalation
- BR_SM_INIT_013: Multiple Channel Establishment
- BR_SM_INIT_017: Pairing Rejection by Remote Device
- BR_SM_INIT_018: Pairing Timeout
- BR_SM_INIT_021: Authentication Failure during Pairing
- BR_SM_INIT_022: Secure Connection vs. Legacy Pairing Fallback
- BR_SM_INIT_025: Rejection of Weak Pairing Methods
- BR_SM_INIT_028: Reconnection After Key Deletion
- BR_SM_INIT_029: Pairing with Delayed Response
- BR_SM_INIT_030: Stress Testing with Multiple Connect/Disconnect Cycles
- BR_SM_INIT_032: Power Loss Recovery
- BR_SM_INIT_034: Pairing During Active Data Transfer
- BR_SM_INIT_035: Pairing with Very Long PIN/Passkey
- BR_SM_INIT_037: Pairing with Peripheral Requesting Maximum Key Size
- BR_SM_INIT_039: Security Level Downgrade Attempt
- BR_SM_RSP_001: Basic Non-bondable Pairing with No Input No Output
- BR_SM_RSP_002: Display Only with Secure Connection
- BR_SM_RSP_003: Keyboard Only with Dedicated Bonding
- BR_SM_RSP_006: Security Level Enforcement
- BR_SM_RSP_008: L2CAP Connection with Security Level 1
- BR_SM_RSP_009: L2CAP Server with Security Level 2

Signed-off-by: Can Wang <can.wang@nxp.com>
2025-07-10 10:11:22 -05:00
Can Wang
f4257e1318 tests: Bluetooth: BR: Add test suite of SC Only Mode for SMP
IUT works as an SM Initiator/Responder. The peer device,
SM Responder/Initiator, is a PC running bumble on it.

Add shell commands to create and manage L2CAP server and channel with
different security level.

In the test suite, there are 10 test cases. IUT is configured
with Secure Connections Only Mode. The peer device is configured with
Secure Connections Mode or Legacy Mode. The test matrix is:
| Case ID | Secure Connection Option | Security Level | Expected Result |
|---------|--------------------------|----------------|-----------------|
| BR_SM_SC_INIT_005 | SC Only with SC | Level 4 | Pass |
| BR_SM_SC_INIT_006 | SC Only with SC | Level 1 | Fail |
| BR_SM_SC_INIT_007 | SC Only with SC | Level 2 | Fail |
| BR_SM_SC_INIT_008 | SC Only with SC | Level 3 | Fail |
| BR_SM_SC_INIT_009 | SC Only with Legacy | Level 3 | Fail |
| BR_SM_SC_RSP_005 | SC Only with SC | Level 1 | Fail |
| BR_SM_SC_RSP_006 | SC Only with SC | Level 2 | Fail |
| BR_SM_SC_RSP_007 | SC Only with SC | Level 3 | Fail |
| BR_SM_SC_RSP_008 | SC Only with SC | Level 4 | Pass |
| BR_SM_SC_RSP_009 | SC Only with Legacy | Level 3 | Fail |

Signed-off-by: Can Wang <can.wang@nxp.com>
2025-07-10 10:11:01 -05:00
Can Wang
5e8046df2e tests: Bluetooth: BR: Add test suite of IO Capability for SMP
IUT works as an SM Initiator/Responder. The peer device,
SM Responder/Initiator, is a PC running bumble on it.

Add shell commands to create and manage L2CAP server and channel with
different security level.

In the test suite, there are 32 test cases. The peer device is
configured with "Display YesNo" IO capability. The test matrix
combines each local IO capability with each security level requirement:

| Case ID | Local IO Capability | Security Level | Expected Outcome |
|---------|---------------------|----------------|------------------|
| BR_SM_IO_CAP_INIT_001 | No Input No Output | Level 1 | Success |
| BR_SM_IO_CAP_INIT_002 | No Input No Output | Level 2 | Success |
| BR_SM_IO_CAP_INIT_003 | No Input No Output | Level 3 | Failure |
| BR_SM_IO_CAP_INIT_004 | No Input No Output | Level 4 | Failure |
| BR_SM_IO_CAP_INIT_005 | Display Only | Level 1 | Success |
| BR_SM_IO_CAP_INIT_006 | Display Only | Level 2 | Success |
| BR_SM_IO_CAP_INIT_007 | Display Only | Level 3 | Failure |
| BR_SM_IO_CAP_INIT_008 | Display Only | Level 4 | Failure |
| BR_SM_IO_CAP_INIT_009 | Keyboard Only | Level 1 | Success |
| BR_SM_IO_CAP_INIT_010 | Keyboard Only | Level 2 | Success |
| BR_SM_IO_CAP_INIT_011 | Keyboard Only | Level 3 | Success |
| BR_SM_IO_CAP_INIT_012 | Keyboard Only | Level 4 | Success |
| BR_SM_IO_CAP_INIT_013 | Display YesNo | Level 1 | Success |
| BR_SM_IO_CAP_INIT_014 | Display YesNo | Level 2 | Success |
| BR_SM_IO_CAP_INIT_015 | Display YesNo | Level 3 | Success |
| BR_SM_IO_CAP_INIT_016 | Display YesNo | Level 4 | Success |
| BR_SM_IO_CAP_RSP_001 | No input No output | Level 1 | Success |
| BR_SM_IO_CAP_RSP_002 | No input No output | Level 2 | Success |
| BR_SM_IO_CAP_RSP_003 | No input No output | Level 3 | Failure |
| BR_SM_IO_CAP_RSP_004 | No input No output | Level 4 | Failure |
| BR_SM_IO_CAP_RSP_005 | Display Only | Level 1 | Success |
| BR_SM_IO_CAP_RSP_006 | Display Only | Level 2 | Success |
| BR_SM_IO_CAP_RSP_007 | Display Only | Level 3 | Failure |
| BR_SM_IO_CAP_RSP_008 | Display Only | Level 4 | Failure |
| BR_SM_IO_CAP_RSP_009 | Keyboard Only | Level 1 | Success |
| BR_SM_IO_CAP_RSP_010 | Keyboard Only | Level 2 | Success |
| BR_SM_IO_CAP_RSP_011 | Keyboard Only | Level 3 | Success |
| BR_SM_IO_CAP_RSP_012 | Keyboard Only | Level 4 | Success |
| BR_SM_IO_CAP_RSP_013 | Display YesOrNo | Level 1 | Success |
| BR_SM_IO_CAP_RSP_014 | Display YesOrNo | Level 2 | Success |
| BR_SM_IO_CAP_RSP_015 | Display YesOrNo | Level 3 | Success |
| BR_SM_IO_CAP_RSP_016 | Display YesOrNo | Level 4 | Success |

Signed-off-by: Can Wang <can.wang@nxp.com>
2025-07-10 10:10:30 -05:00
Jiawei Yang
bea02a639b tests: Bluetooth: BR: Add test suite RFCOMM_server
IUT works as an RFCOMM Server. The peer device, RFCOMM Client, is a PC
running bumble on it.

Add shell commands to create and manage RFCOMM server with different
flow control mechanisms.

In the test suite, there are seven test cases:
Case 1: RFCOMM Server - Reject RFCOMM Session. IUT should properly
reject incoming RFCOMM session when BR connection is disconnected.
Case 2: RFCOMM Server - Forward compatible with Bluetooth devices that
do not send PN command. IUT should properly handle this case and use
FCON/FCOFF as flow control.
RPN, Test) and send NSC responses
Case 3: RFCOMM Server - Respond to Control Commands After DLC
Establishment. IUT should properly respond to control commands (RLS,
RPN, Test) and send NSC responses.
Case 4: RFCOMM Server - Information Transfer with Aggregate Flow
Control. IUT should handle information transfer with aggregate flow
control and properly issue flow control signals.
Case 5: RFCOMM Server - Information Transfer with Credit Based Flow
Control and Active Disconnection. IUT should handle credit-based flow
control and actively disconnect DLC.
Case 6: RFCOMM Server - Information Transfer with Credit Based Flow
Control and Passive Disconnection. IUT should handle credit-based flow
control and respond to DLC disconnection.

Signed-off-by: Jiawei Yang <jiawei.yang_1@nxp.com>
2025-07-10 10:09:13 -05:00
Titan Chen
7a8bd3dbe7 soc : realtek: ec: rts5912: fix VIN polarity issue
fix ulpm driver polarity issue.
when pin-pol set to falling need to set the POL bit to 1.
when pin-pol set to rising need to set the POL bit to 0.

Signed-off-by: Titan Chen <titan.chen@realtek.com>
2025-07-09 17:18:59 -05:00
Eve Redero
91c71dde8a doc: drivers: display: add basic controller info
Add basic controller information (techno, resolution, color depth...)
for display drivers.

Signed-off-by: Eve Redero <eve.redero@gmail.com>
2025-07-09 17:18:39 -05:00
Declan Snyder
f7853dfb16 tests: spi_loopback: Fix same_buf_cmd test
The tests was written wrong. It was meant to test using same spi bufs
for both rx and tx, as in tree many sensor and other spi device drivers
use this paradigm. But the 2nd buf setup call was overwriting the first.
Fix by not using the helper function for this case.

And for the write back test, test using same spi_buf_set.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-09 17:18:22 -05:00
Fabrice DJIATSA
1804eb7bc3 drivers: i2c: stm32: exclude stm32f7 family for PM
The STM32F7 family does not yet support power management in Zephyr.

Besides, LL_I2C_EnableWakeUpFromStop and LL_I2C_DisableWakeUpFromStop

are not implemented in the H7 HAL/LL drivers

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-07-09 17:16:16 -05:00
Khaoula Bidani
09778c36eb samples: sysbuild: update list of platforms
Add nucleo_u385rg_q boards to test the MCUboot builds.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-07-09 17:15:56 -05:00
Khaoula Bidani
d469eb3a8d soc: stm32u3: Update ROM_START_OFFSET
Update offset to 0x400 o align with MCUboot image.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-07-09 17:15:56 -05:00
Khaoula Bidani
926bf82ca3 boards: st: nucleo_u385rg_q: add flash partition
Define fixed partitions for bootloader (mcuboot),
primary and secondary images, and storage.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-07-09 17:15:56 -05:00
Khaoula Bidani
f02dc0d5e0 dts: arm: st: u3: fix flash erase block size and max erase time
- Change erase-block-size from 8192 to 4096 bytes to match
the 4 KB page size of STM32U3 flash.
- Update max-erase-time from 5 ms to 14 ms according to
datasheet specifications.
- These changes ensure correct flash erase behavior
and timing on STM32U3 devices.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-07-09 17:15:56 -05:00
Magdalena Pastula
df52ba87d8 tests: drivers: mspi: api: make test generic
Add definition of MSPI_PORT for other platforms to make the test
generic.

Signed-off-by: Magdalena Pastula <magdalena.pastula@nordicsemi.no>
2025-07-09 17:15:19 -05:00
Van Petrosyan
4834201124 dts: bindings: mark power gpio in bg95 as optional
The Quectel BG95 binding currently marks mdm-power-gpios as
required.  This fits designs that expose the PWRKEY pin, but the
BG95-M3 in Mini PCIe form-factor boots automatically via its
on-module “Automatic Power-On Circuit” and does not route
PWRKEY to the card edge.

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-09 17:14:59 -05:00
Sylvio Alves
61147a3841 drivers: spi: esp32: fix volatile array zeroing to use explicit loop
Replace memset() with an explicit loop to zero the data_buf array,
which is part of a volatile struct. Standard memset does not guarantee
volatile stores, which can lead to incorrect hardware access.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-09 17:14:04 -05:00
Sylvio Alves
a7a4583e15 soc: esp32: loader: skip non-valid segment after the last valid one
Some ESP32 images may not end with a segment whose
load_addr is 0xFFFFFFFF, especially if the flash was not fully
erased or the image tool does not write an explicit end marker.
This can cause the loader to process leftover or unrelated data as
additional segments, resulting in boot failures.

Update the IS_LAST() macro to treat any segment not matching
a valid memory region as the end of the segment list.
This ensures only valid segments are loaded and any trailing
invalid data is safely skipped.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-09 17:13:54 -05:00
Mai Shimozato
0f8b7b7443 stdlib : strtoll : fix strtoll overflow handling with unsigned accumulator
ensure correct assignment of overflow values to unsigned accumulator

Signed-off-by: Mai Shimozato <mshimozato@tenstorrent.com>
2025-07-09 09:44:48 -05:00
Philipp Steiner
aa8b259167 samples: fuelgauge: resolve_merge_artifacts
moves adafruit_feather_esp32s3_tft_reverse_procpu.conf file
to the correct folder after PR was merged.

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-07-09 09:44:35 -05:00
Khaoula Bidani
618044ed78 drivers: clock_control: fix PLL input frequency
Correct PLL input frequency calculation to consider
HSI clock divider in clock_stm32_ll_h7.c file.
For sake of simplicity, use PLLSRC_FREQmacro that
already considers the HSI clock divider when applicable.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-07-09 09:44:25 -05:00
Guennadi Liakhovetski
05616c51b6 posix: fix posix clock undefined type
When built with the minimal libc while using POSIX clocks, Zephyr
compilation breaks with "error: unknown type name 'clockid_t'." Use
int instead of clockid_t to eliminate the dependency.

Suggested-by: Chris Friedt <cfriedt@tenstorrent.com>
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-07-09 09:43:52 -05:00
Gaetan Perrot
99b988b865 tests: arch: arc: arc_vpx_lock: remove unused variable
Remove the unused variable 'lock_id' from main.c in the arc_vpx_lock test.

No functional change intended.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-09 09:43:25 -05:00
Lyle Zhu
e4569c434a Bluetooth: Classic: L2CAP: Fix retransmission timer restarting
When received the valid S frame, the retransmission timer should not
be restarted if unacknowledged I-frames have been sent but the
retransmission timer has not elapsed.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-07-09 09:43:12 -05:00
Vinayak Kariappa Chettimada
f6495d8b43 Bluetooth: Controller: Fix Tx Ack FIFO index corruption under race
Fix Tx Ack FIFO's first index being advanced beyond a
recorded ack_last value in a node_rx when under race
between ll_rx_get() being pre-empted while executing the
`tx_cmplt_get()` and a call to `ll_rx_put()` in an
interrupt service routine.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-07-09 09:42:58 -05:00
Josuah Demangeon
e0b706b6c6 drivers: video: stm32_dcmipp: move video/ header directory to drivers/
During #89407 a driver-specific header stm32_dcmipp.h got introduced to
support new functionnalities not yet covered by video APIs.
Move this header into a new <include/zephyr/drivers/video/> include
direcctory like what other driver classes do.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-07-09 09:42:43 -05:00
Simon Piriou
732a3a5c66 net: l2: ieee802154: shell: fix scan argc validation
Bump the argc check from 3 to 4 as the shell scan command has 3 required
parameters, the last being the scan duration:
- argv[0]
- passive|active
- channels
- per-channel duration in ms

Signed-off-by: Simon Piriou <spiriou31@gmail.com>
2025-07-09 00:26:29 -05:00
Gaetan Perrot
503011d0a2 arch: arm: core: cortex_a_r: mark unused function argument
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-09 00:26:17 -05:00
Gaetan Perrot
3aa477ba2e arch: arm: core: cortex_a_r: mark unused function argument
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-09 00:25:52 -05:00
Filip Stojanovic
f0b5911d0a sensor: bme280: Fix bad chip id read after power cycle
Fix an issue where the BME280 sometimes returns an incorrect chip ID
immediately after a power cycle. This causes sensor initialization to fail.

According to the datasheet, the sensor requires a 2 ms start-up delay after
power is applied. This patch introduces a sleep delay to ensure the
required start-up time is respected before reading the chip ID.

Signed-off-by: Filip Stojanovic <filipembedded@gmail.com>
2025-07-09 00:25:33 -05:00
Jordan Yates
9245f58b4c modules: hostap: fix connection termination report
If the disconnect event is raised before the network has been connected,
report the connection result as `WIFI_STATUS_CONN_FAIL`, instead of as
`WIFI_REASON_DISCONN_SUCCESS`, which is interpretted as
`WIFI_STATUS_CONN_SUCCESS`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-09 00:24:36 -05:00
Emilio Benavente
0bdb9595b1 drivers: misc: mcux_flexio: Set the DOZEN bit
Setting the DOZEN bit in the flexio so the soc
does not force the peripheral to go into
low power mode when the soc is in idle.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-07-09 00:24:14 -05:00
Fin Maaß
809c855a62 mcuboot: cmake: only set write_block_size when needed
only set write_block_size when needed and don't output
a warning, when it's not needed

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-08 18:35:44 -05:00
Luis Ubieda
b0caaed43b rtio: workq: Restructure workqueue as a threads pool with a queue
Based on a discussion around P4WQ limitations for our application, it
was determined that the RTIO workqueue required the ability to use
additional threads from the pool in spite of work items blocked.
Since this is not covered, nor desired for the P4WQ, then remove this
dependency and re-implement it in a way that covers also this use-case.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-08 18:35:26 -05:00
Luis Ubieda
ee44416d88 tests: rtio: workq: Add test-case for same-prio items
Processed on separate worker threads. This test is expected to fail
as the P4WQ limits the number of active items assigned to worker
threads to the number of CPU cores the system has.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-08 18:35:26 -05:00
Gaetan Perrot
3e9eea2cc1 arch: arm: core: cortex_m: mark unused function argument
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-08 18:35:14 -05:00
Gaetan Perrot
eb7fe02aac arch: arm: core: elf: mark unused function argument
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-08 18:35:00 -05:00
Gaetan Perrot
a4fc6723ac arch: arm: core: cortex_m: mark unused function argument
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-08 18:34:49 -05:00
Oleh Kravchenko
35b8ff43f4 soc: stm32f1x: Remove redundant code and clear SB flag
There is no need to call stm32_pwr_wkup_pin_cfg_pupd() because
the SoC does not have a pull-up/pull-down on the WKUP pin.

Call LL_PWR_ClearFlag_SB() before entering StandBy power mode.

Signed-off-by: Oleh Kravchenko <oleg@kaa.org.ua>
2025-07-08 18:34:22 -05:00
Anas Nashif
ce119f5d07 tracing: do not mark thread as switched_out in case of no reschedule
If z_get_next_switch_handle determines no reschdule is needed, do not
mark thread as switched_out in set_curent() where new and old thread are
the same.

See zephyrproject-rtos/zephyr#88596 for more details.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-08 18:34:11 -05:00
Anas Nashif
7f282f7928 xtensa: tracing: instrument thread switching
Add missing call to thread_switched_in for the purpose of tracing.

Fixes zephyrproject-rtos/zephyr#76057

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-08 18:34:11 -05:00
Petri Pitkanen
808ee1713d drivers: bluetooth: silabs: Fix indicating support for 2M phy
Previously we always had driver to support 2M PHY regardless of
configuration. As this was fixed the missing support statemenent
caused 2M support to miss regardless of configuration.

Signed-off-by: Petri Pitkanen <petri.pitkanen@silabs.com>
2025-07-08 13:44:51 -05:00
Loic Domaigne
a0a47a4b6d Bluetooth: ASCS: fix uninitialized pointer read
Fix uninitialized pointer read reported by Coverity.
Coverity CID: 529879

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-07-08 13:44:37 -05:00
Gaetan Perrot
36fe97f2ee samples: net: mqtt_sn_publisher: Remove shadowed variable
Avoids shadowing the outer 'err' variable by reusing it instead of
redeclaring it inside a conditional block.

This improves code readability.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-08 13:44:28 -05:00
Conor Paxton
404c43af6e lib: smf: fix function name typo "share_paren"
looks like a typo and should be share_parent. quick fix

Signed-off-by: Conor Paxton <conor.paxton@microchip.com>
2025-07-08 13:41:59 -05:00
Anas Nashif
f5e9586d42 MAINTAINERS: fix labels for intel platforms
'platform: Intel' goes to general X86 platforms.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-08 13:41:48 -05:00
Lyle Zhu
d48e2bb4f4 Bluetooth: Classic: L2CAP: Fix issue that pending chan cannot be sent
When the returned buffer is a `NULL` of the pull function, it means
there is not any data needs to be sent. However maybe there is any
frame pending on other L2CAP channel needs to be sent over the same
ACL connection.

Re-trigger the TX processor. It will call the pull function again
and the pending buffer will be pulled from following L2CAP.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-07-08 13:41:39 -05:00
Marcin Szymczyk
d487601379 MAINTAINERS: exclude Wi-Fi related drivers from nRF Platform
Separate entry (see `Drivers: Wi-Fi as nRF Wi-Fi`) handles
Wi-Fi related reviews. Add files-exclude to decrease noise.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2025-07-08 13:41:28 -05:00
Jukka Rissanen
69fddf8f0b net: dns: Check interfaces to be NULL before use
Make sure interfaces variable is not NULL before using it.

Coverity-CID: 529857

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-08 13:41:11 -05:00
Benjamin Cabé
4d98db4a45 doc: doxygen: update doxygen awesome to v2.3.4
No major changes but compatibility is improved with Doxygen 1.12.0.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-08 13:41:02 -05:00
Benjamin Cabé
5b56e4dc02 .github: workflows: Bump Doxygen to 1.14 from 1.12
Doxygen 1.14 comes with really useful UX improvements which we want to
benefit from in our API documentation so update the CI job accordingly.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-08 13:41:02 -05:00
Benjamin Cabé
86bea343b1 Bluetooth: BAP: fix bad doxygen @cond placement
Move `@cond INTERNAL_HIDDEN` comment where it belongs (fixing what was
probably a copy-paste/refactoring error).
This also makes the previously `bap_iso`, `group`, `_prev_seq_num`
visible again.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-08 13:41:02 -05:00
Fabrice DJIATSA
24af0c8ee1 drivers: pwm: stm32: add stm32h7rs bus prescalers
The clock tree of the STM32H7RS series uses the ppre1
and ppre2 naming convention instead of apb1_prescaler
and apb2_prescaler for bus prescaler.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-07-08 13:40:50 -05:00
Joakim Andersson
12fdde6694 cmake: kconfig: Add APP_DIR to kconfig environment
Add APP_DIR as a kconfig environment variable.

This is useful in cases where you want to set a config path relative to
the directory of the application.

An example of this is how many sysbuild.cmake files sets the source
directory like this:

ExternalZephyrProject_Add(
  APPLICATION remote
  SOURCE_DIR ${APP_DIR}/remote
  BOARD ${SB_CONFIG_REMOTE_BOARD}
)

The same however cannot be done in Kconfig.sysbuild:

config NETCORE_IMAGE_PATH
    default "${APP_DIR}/<image_path>" if NETCORE_ABC

Instead they must use ZEPHYR_MY_MODULE_MODULE_DIR, however not all
applications are part of a zephyr module.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2025-07-08 13:40:34 -05:00
Jacob Wienecke
112cd172c1 drivers: mdio_nxp_enet_qos: fix CR overwrite
Current Implementation to write to MAC_MDIO_ADDRESS causes CR to be
set to 0. This leads to the divide always being 42 (on FRDM_MCXN947)
so, by default the clock is running at ~3.6MHz which is out of spec
range (1.0-2.5MHz)

This stops the do_transaction function from overwriting CR.
It also saves off the CR register before DMA reset

Signed-off-by: Jacob Wienecke <jacob.wienecke@nxp.com>
2025-07-08 13:40:17 -05:00
Gaetan Perrot
0dd63fcbd3 samples: shields: x_nucleo_iks02a1: run clang-format
Run clang-format on files.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-08 13:39:47 -05:00
Gaetan Perrot
f33adc5ade samples: shields: x_nucleo_iks02a1: Remove unused variable
The `die_temp` variable declared under `CONFIG_ISM330DHCX_ENABLE_TEMP` was
never used.

Instead `die_temp2` was used without using
`CONFIG_ISM330DHCX_ENABLE_TEMP`.

Removing it to avoid confusion.

The variable `die_temp2` holds temperature data from IIS2MDC.

Since there is no other variable with this purpose anymore, rename it to
die_temp for clarity.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-08 13:39:47 -05:00
Benjamin Cabé
80b7745d24 include: math: doc: add doxygen groups
add doxygen groups to include/zephyr/math header files and fold them
under Utilities top-level group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-08 13:39:35 -05:00
Benjamin Cabé
3d111dd6e9 include: dsp: doc: cleanup Doxygen for DSP headers
moved docs to Utilities group (vs. top-level)
cleaned several incorrect Doxygen group definitions

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-08 13:39:35 -05:00
Chaitanya Tata
e728f80416 drivers: nrf_wifi: Fix TX drop statistics
In case FMAC API fails, increment the TX drop counter, helpful in
debug.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-08 13:39:17 -05:00
Sylvio Alves
85b0a9932f soc: espressif: liker: move PHY and RTC calls
Some of ESP32 Radio calls present in blobs needs to be
executed from IRAM or RAM instead of flash to avoid
cache disabled issues.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-08 13:39:06 -05:00
Daniel Leung
1984236c1d kernel: move z_sched_lock inside k_sched_lock
z_sched_lock() has exactly one user in tree which is
k_sched_lock(). So combine them to make it easier to
follow (or not, since there is no jumping to another
file anymore).

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-07-08 13:38:48 -05:00
Luis Ubieda
a2acc86429 fix: icm42688: fix: Override FSR settings when high-res is enabled
When IMU is set to stream with High-res mode, the FSR settings are
fixed for ICM42688 at 16g and 2000dps.

Unless this is enforced, the driver will provide incorrect scaling for
readings coming through streaming when the current FS setting is any
different than these.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-08 13:38:36 -05:00
Martin Siegumfeldt
87ce158fbc boards: nxp: cleanup duplicate 'chosen' entry
* looks like copy/paste error introduced through commit
   5df6aa8efa

Signed-off-by: Martin Siegumfeldt <mns@gomspace.com>
2025-07-08 13:38:23 -05:00
Fin Maaß
d53e9519a1 docs: replace clock_gettime
the time() implementation now uses
sys_clock_gettime(), change that in the docs.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-08 13:38:11 -05:00
Fin Maaß
c3e4ed7e91 libc: remove POSIX_TIMERS dep from COMMON_LIBC_TIME
remove POSIX_TIMERS dependency from
COMMON_LIBC_TIME, as it is no longer
needed.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-08 13:38:11 -05:00
Philipp Steiner
c8c888d1b7 maintainers: fuelgauge: add collaborator
adds myself as a collaborator for the fuel gauge

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-07-08 13:37:58 -05:00
Gaetan Perrot
087b7b8890 drivers: ethernet: xilinx: remove unused variable
Clean up unused variable 'ret' and 'link_state' in eth_xilinx_axienet.c to
improve code clarity.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-08 13:37:47 -05:00
Gaetan Perrot
c86f570401 drivers: ethernet: sy1xx: remove unused variable
Clean up unused variable 'rand_mac_addr' in eth_sensry_sy1xx_mac.c to
improve code clarity.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-08 13:37:47 -05:00
Cheng Chang
80602f32c6 bluetooth: AVDTP:in set config_rej_rsp,LOSC can't be added.
The current logic will result in rsp always being accept because LOSC
added is 0. and according to the spec, LOSC should not be added to the
Set Configuration Reject response.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-07-08 13:37:37 -05:00
Olivier Lesage
aa4e6ac0dd bluetooth: host: Handle failure to disable scan when updating own_addr
It wasn't taken into account that bt_le_scan_set_enable()
has a return value. It's not likely that the controller
rejects the command when BT_DEV_SCANNING is set, however.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2025-07-08 13:37:26 -05:00
Olivier Lesage
ef7ede64cc bluetooth: host: Do not try to set NRPA when scanning with identity
Attempting this would fail (assuming the controller is implemented
correctly) because when using legacy commands it is not allowed to
change the device address while scanning.

It also did not make sense. If we have configured the scanner to use
the identity address as own_addr, because the advertiser and scanner
addresses are shared when using legacy commands, setting the adv NRPA
here would overwrite the identity address used by the scanner, which
I assume is not the intention.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2025-07-08 13:37:26 -05:00
Olivier Lesage
11782dbbc0 bluetooth: host: rename bool scan_enabled -> scan_disabled
It represents whether scanning was disabled as part of this flow.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2025-07-08 13:37:26 -05:00
Olivier Lesage
43223a1661 bluetooth: host: Fix uninitialized own_addr_type for legacy scan+adv
In 25c993e5b7 a new case was introduced
where own_addr_type is not set by bt_id_set_scan_own_addr properly.

This led to issues for users where increasing their zephyr version
led to failures to start scanning after advertising in the case where
CONFIG_BT_SCAN_WITH_IDENTITY=n and legacy advertising commands are used.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2025-07-08 13:37:26 -05:00
Lidor T
0654fb49d8 counter: cmsdk_apb_timer: Use clock freq from DT clocks
Previously, the CMSDK APB timer driver hardcoded the
counter clock frequency to 24 MHz, which limits reuse
across SoCs and boards with different timer clock
sources.
This patch replaces the hardcoded frequency with a value
derived from the device tree's `clocks` phandle, using
the `clock-frequency` property of the referenced clock
controller node. If the property is missing, it falls
back to a default 24 MHz and issues a build-time
warning.

Signed-off-by: Lidor T <lidor@exibit-iot.com>
2025-07-08 13:36:58 -05:00
Daniel DeGrasse
de001f7c14 release: Zephyr 4.2.0-rc2
Set version to v4.2.0-rc2.

Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-08 07:14:21 -10:00
Alberto Escolar Piedras
8f092623ae tests/lib/timespec_util: Skip two tests by now
These two (sub)tests assume the system tick period divides evenly all
time interval values being tested, but this is not the case in general,
and when it is not, these tests fail.

Let's skip these 2 tests by now so we can release without a broken
CI, and do not block other development while the tests themselves are
being fixed.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-08 07:14:08 -10:00
Daniel DeGrasse
980afc8fdf doc: releases: 4.2: add notes for mbedtls 3.6.4 update
Add release notes for mbedtls 3.6.4 update, including CVEs resolved with
this release.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-08 11:05:53 -05:00
Flavio Ceolin
a07fef8679 manifest: mbedtls: update to 3.6.4
Pull in Mbed TLS 3.6.4, updated from 3.6.3.

More details regarding the Mbed TLS 3.6.4 release at:
https://github.com/Mbed-TLS/mbedtls/releases/tag/mbedtls-3.6.4

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-07-08 11:05:53 -05:00
Daniel DeGrasse
5700ffe9ad samples: mgmt: hawkbit: force BOOT_MAX_IMG_SECTORS for stm32h573i_dk
The stm32h573i_dk target had the default value of BOOT_MAX_IMG_SECTORS
raised in efdd2a8ff2 (west.yml: MCUboot synchronization from upstream).
This currently causes a build failure on some samples running with mcuboot
because the platform has not been moved to use external flash (which was
the reason for increasing BOOT_MAX_IMG_SECTORS)

To workaround this, force the value of BOOT_MAX_IMG_SECTORS for failing
tests.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-08 11:05:36 -05:00
David Leach
e3ed029b55 boards: nxp: mimxrt1060: Disable pwmleds for Rev B/C boards
Disable the pwmleds nodes in the dts overlay for rev B/C boards. The
FLEXPWM is not routed to LED on these versions.

Fixes #92285

Signed-off-by: David Leach <david.leach@nxp.com>
2025-07-07 16:06:45 -05:00
Johann Fischer
56b359b8f5 drivers: udc_dwc2: do not throw error when FIFO settings can be reused
When the endpoint is re-enabled, check if the current FIFO settings can
be reused. Further work is needed to improve FIFO memory handling for
more advanced interface configurations.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-07-07 16:06:34 -05:00
Benjamin Cabé
732785aefa doc: develop: gsg: consolidate python3 install instructions for ubuntu
- Installing python3-venv should be done right when all dependencies are
  installed.
- Installing python3-venv is enough to pull wheel, setuptools
  (python3-setuptools-whl), and pip (python3-pip-whl) so that they are
  available in the venv, so reduce the list of packages to install
  accordingly.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-07 16:06:24 -05:00
Benjamin Cabé
6ddf0f48e7 doc: develop: gsg: move from ubuntu 20.04 to 22.04 as minimum version
Ubuntu 20.04 has entered "security fixes only" mode since May 2025, so
we can simplify the getting started guide by making the instructions
apply to 22.04 and onwards, and remove the instructions for adding
Kitware APT repository in the process.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-07 16:06:24 -05:00
Armando Visconti
0d7c751bad drivers/sensor: lis2dux12: add 'return' if data has to be dropped
In lis2dux12_read_status_cb() add a return instruction in case of
SENSOR_STREAM_DATA_NOP/SENSOR_STREAM_DATA_DROP.

Fixes: CID 529855

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-07-07 16:06:13 -05:00
Armando Visconti
df1832e32d drivers/sensor: lsm6dsv16x: add 'return' if data has to be dropped
In lsm6dsv16x_read_status_cb() add a return instruction in case of
SENSOR_STREAM_DATA_NOP/SENSOR_STREAM_DATA_DROP.

Fixes: CID 529864

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-07-07 16:06:13 -05:00
Armando Visconti
79c098a9d9 drivers/sensors: st: fix Null pointer dereferences
Fix Null pointer dereferences in lis2dux12_read_status_cb() and
lsm6dsv16x_read_status_cb().

Fixes: CID 529873
Fixes: CID 529862

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-07-07 16:06:13 -05:00
Armando Visconti
1d8bd6bd53 drivers/sensor: lis2dux12: fix uninitialized variable fifo_mode
Set fifo_mode structure to zero and initialize it properly according
to what interrupt event the user has selected.

Fixes: CID 529871
Fixes: CID 529865

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-07-07 16:06:13 -05:00
Armando Visconti
5792a429c8 drivers/sensor: lsm6dsv16x: fix unreachable code in decoder_decode()
Fix unreachable code in decoder_decode() as reported by Coverity scan.

Fixes: CID 529878

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-07-07 16:06:13 -05:00
Jamie McCrae
efdd2a8ff2 west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  4eba8087fa606db801455f14d185255bc8c49467

Brings following Zephyr relevant fixes:

  - 4eba8087 boot: zephyr: boards config of the stm32h573 disco kit
  - 2dd7c655 boot: zephyr: boards config of the stm32h7rs target
    boards
  - cde66e17 boot: zephyr: defines FLASH device for external NOR
  - 6a178d29 bootutil: Use flash base address for direct hash

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-07 16:06:03 -05:00
Jamie McCrae
85d4ebcf51 soc: nordic: ironside: Fix bleeding config
Fixes generating a library for devices that do not need it which
gives a cmake warning

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-07 16:05:53 -05:00
Jamie McCrae
c8d9f4b701 sysbuild: cmake: kconfig: Fix missing sysbuild Kconfig paths
Fixes an issue where external sysbuild Kconfig path variables
were not provided and meant they could not be overwritten

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-07 10:14:14 -05:00
Cheng Kai
ec0865cb4a Bluetooth: SDP: fix attr value len 32 invalid
fix sdp attr value len 32, which was not supported.

Signed-off-by: Cheng Kai <chengkai@xiaomi.com>
2025-07-07 10:13:47 -05:00
Stephanos Ioannidis
d7d3ae5c3b arch: arm: cortex_m: Force literal pool placement in inline asm block
When LTO is enabled, linker may relocate literal pools out of Thumb LDR
instruction's reach causing "offset out of range" errors while linking.

This commit adds `.ltorg` directive in the inline asm blocks where absolute
addresses are loaded using the `ldr` instructions, in order to ensure that
the literal pool containing the absolute addresses are placed near the
`ldr` instructions.

Note that the `.ltorg` directive is recognised by all toolchains supported
by Zephyr and no toolchain abstraction is provided for now.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-07-07 10:13:06 -05:00
Benjamin Cabé
d7ff0e4ba4 doc: develop: gsg: have west init use pinned Zephyr version for releases
When building the docs for a release, the section of the getting started
that lets the user `west init` their workspace now has them check out
the version matchin the release.

Fixes zephyrproject-rtos/zephyr#92163

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-07 10:12:41 -05:00
Sadik Ozer
792e3c2f84 manifest: Update tf-m module to get MAX32657 commits
This commit update tf-m module to get missing commit that requires
to support tf-m v2.2.x release.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-07-07 10:10:30 -05:00
Krzysztof Sychla
a51d3c0f74 kernel: heap: Add allocation metadata to allocated_bytes
The allocated_bytes were missing the allocation metadata. Because of that
the sum of free_bytes and allocated_bytes doesn't remain constant after
each allocation. This convention doesn't match glibc's behavior. This
commit changes the chunksz_to_bytes function to include the metadata in the
calculation. The analysis of the mallinfo2 function from glibc has been
done in #92392 Pull Request.

Signed-off-by: Krzysztof Sychla <ksychla@antmicro.com>
2025-07-07 10:08:58 -05:00
Gerson Fernando Budke
b478cd8f37 linker_script: Remove some remaining SUBALIGN in iterable sections
The #91219 miss some entries when doing the clean-up. This removes
some of remaining SUBALIGN entries in the iterable sections. It do
not consider SECTION_PROLOGUE and zephyr_linker_section entries.

Fixes #92349

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-07-07 10:07:56 -05:00
Make Shi
9104e941f9 Bluetooth: Classic: L2CAP: Set default value for BR timer timeout
When peer monitor and retransmission timeout are zero, set them to the
default values. This ensures that the monitor timeout is always a valid
value to avoid the L2CAP BR timer work queue hang.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-07-07 10:07:10 -05:00
Jonas Remmert
2bdc3e2352 boards: phytec: reel board: update repo link to DAPLink fw
This commit updates the link to the source of the firmware of the DAPLink
on-board debug adapter.

Phytec migrates all repositories from the "PHYTEC-Messtechnik-GmbH" GitHub
organization to the "phytec" GitHub organization. The code in the relevant
branch remains unchanged and the branch has been pushed to the new
organization.

Signed-off-by: Jonas Remmert <j.remmert@phytec.de>
2025-07-07 10:06:40 -05:00
Gaetan Perrot
369d5b170c tests: net: socket: getaddrinfo: Remove unused assignment
In check_dns_query(), the assignment `ret = -ENOMEM` was never used since
the function returns false immediately afterward.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-07 10:05:51 -05:00
Gaetan Perrot
a16c50472a samples: drivers: i2s: i2s_codec: Remove shadowed variable
Avoids shadowing the outer 'ret' variable by reusing it instead of
redeclaring it inside a conditional block.

This improves code clarity.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-07 10:05:24 -05:00
Mathieu Choplain
697d0f845d tests: arch: common: ramfunc: fix the project's name in CMake
The name used in CMakeLists for this test is "zero_latency_irqs" despite
testing the ramfunc feature instead. This might be a copy-paste mistake
as it was originally "arm_zero_latency_irqs", which is another test that
exists.

Change the project name in CMakeLists to match what the test truly is.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-07-07 10:04:45 -05:00
Robert Lubos
8f983ccda5 net: lib: http_client: Fix end of message detection
HTTP 1.1 server has two ways of indicating the message body length -
either by providing the Content Length header, or by closing the
connection when the entire body has been transmitted.

The second method didn't work with Zephyr's HTTP client implementation,
as EOF on a socket was treated as an error condition. Therefore, if no
Content Length was provided by the server, such transfers would always
end up with ECONNRESET error.

In order to fix this, we need to notify the parser about the EOF on a
socket when connection is closed. It is the parser role to determine
whether the EOF was expected in current state (by marking end of message
flag) or not (by setting an error).

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-07 10:04:17 -05:00
Josuah Demangeon
b3ccee473e doc: release-notes-4.2: add mentions to the new UVC class
Add references to new API, functions, devicetree bindings introduced
from introduction of the UVC class.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-07-05 11:56:10 -05:00
Van Petrosyan
960a6f036e sensor: lis2dh: cache CTRL1 on PM_DEVICE_ACTION_TURN_ON
Cache CTRL1 into reg_ctrl1_active_val inside lis2dh_init_chip()
in the PM_DEVICE_ACTION_TURN_ON path.  This prevents the first
runtime-PM RESUME from writing 0x00 to CTRL1 and disabling the sensor
when runtime-PM is enabled.

Fixes: #92196

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-05 11:56:00 -05:00
Chris Friedt
7da64e7bda poxi: aio: include zephyr/toolchain.h for ZRESTRICT
Previously, ZRESTRICT was used in aio.h without also including
zephyr/toolchain.h.

Tests may have compiled because the toolchain header was included by
some other means.

We should explicitly include it to ensure that ZRESTRICT is defined.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-07-04 16:44:02 -10:00
Yong Cong Sin
ba3573f87f tests: drivers: syscon: remove dev pointer check
`DEVICE_DT_GET()` guarantees that the `dev` pointer can never
be `NULL`, the check is therefore redundant, remove it.

Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2025-07-04 16:42:53 -10:00
Yong Cong Sin
1967d1e699 drivers: syscon: do not assume that a function isn't supported
When a function pointer is `NULL`, it could be that the underlying
hardware doesn't support it, or it isn't implemented.

If a function isn't supported by the hardware, its driver should
return `-ENOTSUP`, the API layer should return `-ENOSYS` when a
function isn't implemented.

Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2025-07-04 16:42:53 -10:00
Yong Cong Sin
9696765b56 drivers: syscon: remove unnecessary checks for dev pointer
The `dev` pointer passed to the implementation should never be `NULL`,
remove the checks.

Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2025-07-04 16:42:53 -10:00
Grzegorz Chwierut
095d3186e6 tests: fix: limit platforms in boot.with_mcumgr.test_upgrade_ble
Missed in #91596 that more platforms are added in common part.
Excluded nrf9160dk/nrf9160 and nucleo_wba55cg from
configuration with BLE.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-07-04 16:41:01 -10:00
Jordan Yates
9c6e6d781d drivers: lora: rylrxxx: fix snprintf usage
The second argument should unconditionally be the size of the output
memory area, not computationally derived from the input payload length.
The previous length validations would be incorrect when
`cmd_len == CONFIG_LORA_RYLRXX_CMD_BUF_SIZE`, as `snprintf` would be
told the output buffer was `CONFIG_LORA_RYLRXX_CMD_BUF_SIZE + 1` bytes
long.

Fixes #92619
Fixes #92624

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-04 16:40:46 -10:00
Peter Mitsis
ec80ab5bb6 drivers: timer: Clean up Cortex-M systick Kconfig
Makes the choice CORTEX_M_SYSTICK_LPM dependent upon the
CORTEX_M_SYSTICK to prevent its default from showing up in
the .config of projects that do not use the CORTEX_M_SYSTICK
timer driver.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-07-04 16:40:31 -10:00
Gaetan Perrot
1610aa0e9f bluetooth: host: a2dp: remove redundant null check
Remove duplicated check for 'ep->stream == NULL' to clean up conditionals
and avoid unnecessary repeated evaluations.

This cleans up the code and avoids unnecessary repeated condition
evaluation.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 14:21:47 -10:00
Peter van der Perk
41ef8c3c2f drivers: spi_nxp_lpspi: Don't fetch clockrate from api during configure
The clock get rate api can be slow in certain targets and thus slowing
each SPI transaction. Instead on startup fetch the clock rate and store
this in ram. Then each spi configure action is simply reading that
variable

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-07-04 14:21:35 -10:00
Tim Pambor
ee1468b675 tests: net: socket: Fix function signature
Update the process_dns function signature to match the expected
k_thread_entry_t type:
typedef void (*k_thread_entry_t)(void *p1, void *p2, void *p3);

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-04 14:21:23 -10:00
Tim Pambor
f682a173d8 net: socket: mgmt: Fix function signature
Update the trigger_events function signature to match the expected
k_thread_entry_t type:
typedef void (*k_thread_entry_t)(void *p1, void *p2, void *p3);

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-04 14:21:23 -10:00
Tim Pambor
6226bb1264 net: sockets_service: Fix function signature
Update the socket_service_thread function signature to match the expected
k_thread_entry_t type:
typedef void (*k_thread_entry_t)(void *p1, void *p2, void *p3);

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-04 14:21:23 -10:00
Fin Maaß
19a3b217e5 drivers: ethernet: nxp: don't fail with -EALREADY
don't fail with -EALREADY being returned from
phy_configure_link.

Fixes: #92281
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-04 14:20:55 -10:00
Carles Cufi
9a9ae6ffdb boards: nordic: Enable CONFIG_HW_STACK_PROTECTION conditionally
All Nordic boards were enabling CONFIG_HW_STACK_PROTECTION
unconditionally, which is usually not a problem except if the particular
application happens to want to disable the MPU (or equivalent hardware
for RISC-V). In that case, the following warning is shown:

warning: HW_STACK_PROTECTION (defined at arch/Kconfig) was assigned the
value 'y' but got the value 'n'.
Check these unsatisfied dependencies: ARCH_HAS_STACK_PROTECTION (=n).

In order to avoid this warning, conditionally enable the hardware stack
protection only when the architecture supports it.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-07-04 14:20:43 -10:00
Emilio Benavente
1142c40c5a scripts: west_commands: runners: Update GDB args
Update gdb arguments to enable linkserver
debugging when app does not reset after load.
This is useful for when the app is loading to
ram. In this case if gdb reset after loaded the
ram would be flushed when debugging and there would be
nothing no image in ram to debug.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-07-04 14:20:30 -10:00
Emilio Benavente
88e95180b5 boards: nxp: mimxrt1170_evk: remove code that is no longer needed
Remove cmake code that updated the linkserver memory view, however
the values passed here are wrong and linkserver already includes
the correct space e.g location = 0x0 && size = 0x00080000

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-07-04 14:20:30 -10:00
Emilio Benavente
3369d84668 boards: nxp: mimxrt1170_evk: Added --no-reset flag
Updated board.cmake to check for single
image builds to indicate rather an additional
reset is needed for cases such as sysbuild.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-07-04 14:20:30 -10:00
Benjamin Cabé
6df72bf56e Revert "ci: workflows: remove unsupported Python version from test matrices"
This reverts commit bb983d09bf.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-04 15:50:06 -05:00
Benjamin Cabé
f672cb72d4 Revert "doc: ci: Zephyr now requires Python 3.12 or higher"
This reverts commit 043bb58488.

Note that  scripts/requirements-actions.txt might not be 100% the same
as what was pinned prior to the revert due to it being difficult to
restore previous versions while also accounting for the new dependencies
that were added in the meantime.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-04 15:50:06 -05:00
Benjamin Cabé
33d6061fe7 Revert "doc: correct python minimum required"
This reverts commit c68d0b9630.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-04 15:50:06 -05:00
Benjamin Cabé
daf5584c63 Revert "scripts: Bump Python target version for ruff"
This reverts commit e8caaf4137.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-04 15:50:06 -05:00
Benjamin Cabé
11a552b0f8 include: drivers: virtio: fix doxygen groups
Virtio Doxygen documentation is now folded under Device Driver API group
like it should be.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-04 15:49:54 -05:00
Benjamin Cabé
ee2b9a4e6d drivers: virtio: move virtio headers to zephyr/drivers
Virtio headers are moved to zephyr/drivers/ as they have no reason to be
top-level headers since virtio is a driver class.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-04 15:49:54 -05:00
Jan Tore Guggedal
a7ce6055b7 zbus: Fix NULL pointer use in zbus_chan_rm_obs()
Fix a bug in zbus_chan_rm_obs() where removing the first observer in a
channel's observer list would cause undefined behavior due to accessing
a member of a NULL pointer.

The issue occurred when prev_obs_nd was NULL (indicating the first node
in the list) and the code attempted to pass &prev_obs_nd->node to
sys_slist_remove(). This resulted in accessing the 'node' member of a
NULL pointer, which is undefined behavior even when taking its address.

The sys_slist_remove() function is designed to handle a NULL prev_node
parameter correctly for removing the first element in a list. The fix
ensures we pass NULL directly instead of attempting to compute the
address of a member within a NULL pointer.

This was detected by Undefined Behavior Sanitizer as "member access
within null pointer".

Signed-off-by: Jan Tore Guggedal <jantore.guggedal@nordicsemi.no>
2025-07-04 15:49:32 -05:00
Raffael Rostagno
26818ee100 drivers: clock_control: esp32c6: Fix clock init at JTAG reset
Peripheral clocks are currently not being disabled for JTAG reset
condition, which causes driver init failures when debugging the SoC
with JTAG. Fix by disabling all clocks for this reset type.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-07-04 15:49:17 -05:00
Gaetan Perrot
9207749e83 drivers: sensor: bma4xx: Avoid potential overflow
Coverity reports a potential integer overflow in the accel_range
computation due to the use of a left shift on an int type.

CID 520269: Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN)

Even though the register value is constrained to 0–3 by the BMA456 spec,
and no real overflow occurs, an explicit cast to int64_t prevents false
positives and aligns with safe coding practices.

Fixes: #90517

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 15:49:09 -05:00
Gaetan Perrot
ad38ef7333 drivers: counter: Fix redundant identical condition
There was an unnecessary nested `if` in `ifx_cat1_counter_init` with the
same condition already checked in the outer block.

This results in dead and redundant code with no functional impact but
harms readability.

The inner `if (rslt != CY_RSLT_SUCCESS)` was removed to clean up the
function.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 15:48:58 -05:00
Gaetan Perrot
f1c27b6e4a drivers: counter: Fix possible null pointer dereference
The function counter_rz_gtm_set_alarm was accessing alarm_cfg->flags and
alarm_cfg->ticks before verifying that alarm_cfg is non-NULL.

This could lead to undefined behavior or crashes if a NULL pointer is
passed.

The pointer check has been moved before any dereference to fix this bug.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 15:48:49 -05:00
Gaetan Perrot
80df24e3b2 net: lib: coap: fix potential null pointer
In coap_well_known_core_get(), move the null check for 'resource' before
applying pointer arithmetic ('resource + 1') to avoid undefined behavior
when 'resource == NULL'.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 15:48:40 -05:00
Robert Lubos
aa4a8789d5 net: sockets: socket_dispatcher: Fix close function type
Socket dispatcher (and offloaded implementations in tests) register
fd as ZVFS_MODE_IFSOCK therefore they should register a  close2(
function instead of close().

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
a4fdd2c266 net: sockets: socketpair: Fix close function type
socketpair fd regsiters ZVFS_MODE_IFSOCK therefore it should register a
close2() function instead of close().

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
82945a7f52 net: l2: ieee802154: Prevent NULL pointer access
In case address mode in a packet is none, the address pointer within mhr
struct will not be set. Therefore, the pointer should not be used before
address mode is verified inside ieee802154_check_dst_addr().

This was reported by UBSAN:

  subsys/net/l2/ieee802154ieee802154.c:296:41: runtime error: member
  access within null pointer of type 'struct ieee802154_address_field'

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
30c8702b05 tests: net: iface: Fix interface context misuse
The iface test suite uses two different interface types with two
different context types and iid tests mixed up the two. It attempted
to create a mac address for Ethernet interface (which uses
struct eth_fake_context), however the net_iface_get_mac() function
only works with Dummy interface context (struct net_if_test). In
result the Ethernet interface context was corrupted (mac address
overwritten the promisc_mode flag).

Fix this by extracting mac generation code into a common function, and
use it in the Ethernet iface initialization phase instead of directly in
the test.

This was reported by UBSAN:
  tests/net/iface/src/main.c:239:34: runtime error: load of value 11,
  which is not a valid value for type '_Bool'

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
31b79a93af net: pkt: Add explicit casts to uint32_t when bitshifting uint8_t val
Cast uint8_t variable to uint32_t explicitly to avoid implicit cast to
int, and thus potentially undefined behavior, reported by UBSAN:

  net_pkt.c:1946:17: runtime error: left shift of 239 by 24 places
  cannot be represented in type 'int'

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
7949789ce8 net: ip: utils: Avoid casting to in(6)_addr struct in net_addr_ntop()
In order to avoid alignment issues when casting void pointers to
in(6)_addr structures, create a properly aligned copy of the ip(v6)
address on stack.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
bd96b5dd83 net: lib: websocket: Avoid bitshift overflow warning
In order to prevent an overflow warning from UBSAN when bitshifting,
cast to uint64_t first before shifting, and then back to uint32_t.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
c7757b982c lib: os: zvfs: select: Fix warning about bitshifting signed value
This was caught by UBSAN:

  zvfs_select.c:70:2: runtime error: left shift of 1 by 31 places
  cannot be represented in type 'int'

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
2d49ef26ad tests: net: socket: udp: Don't call memset() on a NULL pointer
cmsgbuf pointer can be NULL, therefore verify that before calling
memset() on it.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
62a5260e01 net: Fix alignment error with net_ipaddr_copy()
As struct sockaddr have now alignment of 4 bytes, net_ipaddr_copy()
gives the following error if used for sockaddr:

  error: alignment 1 of ‘struct <anonymous>’ is less than 4
  [-Werror=packed-not-aligned]

Just use memcpy() instead, net_ipaddr_copy() was intended to use with IP
addresses, not socket related structs.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
48d1a01b2d net: sockets: Specify alignment for sockaddr* structs
To avoid misalignment errors when casting between
sockaddr_storage/sockaddr and specialied sockaddr_* variants, specify
alignment for the former to match the alignment of the others.

The issue was reported by UBSAN:

  utils.c:802:8: runtime error: member access within misaligned
  address 0xf4aff186 for type 'struct sockaddr_in6', which requires
  4 byte alignment

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
8124032cbb net: ipv4: Avoid casting unaligned address to struct in_addr
Rework the IPv4-related code to avoid casting. Use raw variants of
IPv4-related functions whenever possible (especially on the critical
data path).

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
f549bfcfeb net: ipv4: Add raw variants of various IPv4 functions
To address the misaligned access issues reported by UBSAN, introduce raw
variant of certain IPv4 functions used in the critical data path of the
network stack, operating on plain uint8_t buffers in stead of IPv4
address struct.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
0f6dcb37d7 net: ipv6: Avoid casting unaligned address to struct in6_addr
Rework the rest of the IPv6-related code to avoid casting. Use raw
variants of IPv6-related functions whenever possible (especially on the
critical data path). For the routing case, use a copy of the address to
avoid massive rework of the routing module.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
edf5319ca6 net: ipv6: nbr: Avoid casting unaligned address to struct in6_addr
IPv6 Neighbor Discovery interfaces modules like neighbor or routing
tables - converting them to raw variants seems futile. Therefore, for
IPv6 ND case, copy the raw IP address from the packet into the in6_addr
structure, and then pass it to respective functions. Performance
overhead should not be a big problem in such case as those actions are
only performed if a respective ND packet is received.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
f5455e66e3 net: ipv6: 6lo: Avoid casting unaligned address to struct in6_addr
Refactor local functions to work with byte buffers instead of struct
in6_addr and use switch to use raw variants of functions operating on
IPv6 addresses.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
74ccd5fdaa net: ipv6: Add raw variants of various IPv6 functions
To address the misaligned access issues reported by UBSAN, introduce raw
variant of certain IPv6 functions used in the critical data path of the
network stack, operating on plain uint8_t buffers in stead of IPv6
address struct.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Robert Lubos
9b00a1d656 net: ipv6: Fix net_ipv6_is_addr_mcast_group() check
Some bytes were compared twice and one comparison used wrong index.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-04 13:16:32 -05:00
Mark Wang
80c1e6929a bluetooth: smp: add todo comments for ctkd
need to consider corner cases of ctkd as the added code comments.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-07-04 13:10:21 -05:00
Mark Wang
81d938606d bluetooth: smp: CTKD issue when cross br and ble connections and security
The peer uses the RPA address.
A BR connection is created firstly, a subsequent BLE connection is
created secondly, the BR SMP CTKD occur thirdly (The BLE LTK is
derived from BR and the BR SMP distribute peer's IRK and identity address
here), but the BLE LTK is saved to key pool that is not
matched with the previous BLE connection because the derived LTK is saved
with identity address and BLE connection uses RPA. Fix it by: Resolve the
BLE connections' RPA with the derived IRK to find the previous BLE
connections and match the connections with derived LTK key.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-07-04 13:10:21 -05:00
Francois Ramu
3978ca15ff samples: boards: st: blink with low power mode management in DEBUG
Add a precision about the CONFIG_DEBUG :
When CONFIG_DEBUG is set, the system will not enter the low power mode
The DEBUG is possible but with higher power consumption of the target.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-04 13:10:12 -05:00
Łukasz Duda
613478f189 modules: hal_nordic: nrf_802154: Increase default number of RX buffers
This commit increases the default number of RX buffers to ensure
headroom for full IPv6 MTU.

Signed-off-by: Łukasz Duda <lukasz.duda@nordicsemi.no>
2025-07-04 13:10:03 -05:00
Benjamin Cabé
3b365fbe54 doc: releases: Intermediate update for new 4.2 boards/samples/drivers
New boards, drivers, samples, and shields since June 10, 2025

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-04 13:09:52 -05:00
Benjamin Cabé
899b908b69 dts: bindings: update binding-types.txt with recently added types
SENT, PSI5, Virtio where all recently added types. Add them to the
binding-types.txt file so that their full name can be displayed in the
documentation.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-04 13:09:52 -05:00
Jamie McCrae
84aec64dd3 modules: hal_nordic: nrfx: Remove usage of removed Kconfig
Removes usage and reference of CONFIG_NFCT_PINS_AS_GPIOS

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-04 13:09:34 -05:00
Jamie McCrae
257990d2be soc: nordic: Remove NFCT_PINS_AS_GPIOS Konfig
This Kconfig was deprecated in Zephyr 3.5, remove it

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-04 13:09:34 -05:00
Jamie McCrae
7beed788cd soc: nordic: nrf52: Remove prompt from GPIO_AS_PINRESET Kconfig
This Kconfig was deprecated in Zephyr 3.5, remove allowing it to
be selected but keep the symbol as the HAL needs to be updated

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-04 13:09:34 -05:00
Gaetan Perrot
1b6a0e4261 doc: contribute: fix dead link in RFC proposal template
Fix a broken link in the 'contribute/proposals_and_rfcs.rst' file that
pointed to a non-existent Markdown RFC template.

The link previously pointed to:
  .github/ISSUE_TEMPLATE/003_rfc-proposal.md

It has been corrected to point to the actual YAML file:
  .github/ISSUE_TEMPLATE/003_rfc-proposal.yml

Fixes: #92342

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 13:09:25 -05:00
Fabrice DJIATSA
dee3d3b214 dts: arm: st: u0: disable lptim2 by default
LPTIM2 is enabled by default; disable it to avoid
the build failure:
"Error: Only one LPTIM instance should be enabled"
when LPTIM1 is also enabled in the DTS.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-07-04 13:09:15 -05:00
Fabrice DJIATSA
3867d29d03 samples: boards: st: power_mgmt: blinky: add stm32u083_dk board overlay
define stm32_lp_tick_source since PM is looking for this node
and change clock source for lptim2 to lsi.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-07-04 13:09:15 -05:00
dependabot[bot]
1d4bb3c4d3 ci: github: bump github/codeql-action in the actions-deps group
Bumps the actions-deps group with 1 update: [github/codeql-action](https://github.com/github/codeql-action).


Updates `github/codeql-action` from 3.29.0 to 3.29.2
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](ce28f5bb42...181d5eefc2)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 3.29.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-04 13:09:07 -05:00
Shrek Wang
6a27fd2255 net: tcp: Add TCP ACK validation
According to RFC 793, ch 3.9 Event Processing,
after the connection is sync-ed with seqnum of both sides then,
        1. drop any received segment if the ACK bit is off.
        2. validate the acknum like this:
        SND.UNA =< SEG.ACK =< SND.NXT

The ACK validation is done before entering the state-machine, so
remove the flags <ACK> check in the state-machine processing.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-07-04 13:08:57 -05:00
Ryan McClelland
b6d955c648 drivers: i3c: check addr slot is free only if it's different
The bus helpers for SETDASA and SETNEWDA could have the same
dynamic address assigned as it's static addr for SETDASA or
as it's dynamic addr for SETNEWDA. (Althrough, only a clown
would set the new dynamic address to the same old dynamic
address, it is still a valid address to set to).

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-07-04 13:08:33 -05:00
Sylvio Alves
c358861280 drivers: i2c: esp32: drop transfer log error
Drop LOG_ERR calls from driver level related to transfer calls.
Application can handle the result and decide whether to log or not.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-04 13:08:23 -05:00
Sylvio Alves
5b876d4c4c drivers: uart: esp32: apply correct mask for TX/RX signal inversion
Build a combined mask from the tx_invert and rx_invert flags and pass it
to uart_hal_inverse_signal(). Only invoke the HAL call when the mask is
non-zero, preventing unintended inversions and eliminating redundant
calls when no inversion is requested.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-04 13:08:14 -05:00
Ian Wakely
1fc66b1caf boards: Adding zephyr_i2c to Adafruit RP2040 QTPY
This adds the generic plugable alias to the Adafruit RP2040 QT PY for
its STEMMA-QT connector.

Signed-off-by: Ian Wakely <raveious.irw@gmail.com>

Signed-off-by: Ian Wakely <raveious.irw@gmail.com>
2025-07-04 13:08:06 -05:00
Ian Wakely
631654f8cd boards: Adding zephyr_i2c to Adafruit ESP32s3 QTPY
This adds the generic plugable alias to the Adafruit ESP32s3 QT PY for
its STEMMA-QT connector.

Signed-off-by: Ian Wakely <raveious.irw@gmail.com>
2025-07-04 13:08:06 -05:00
Alain Volmat
772fbfe9cc display: stm32: ltdc: fix RGB565/BGR565 format to match sample expectations
The LTDC RGB565 format corresponds to the PIXEL_FORMAT_BGR565 format.
Update the LTDC driver to advertise PIXEL_FORMAT_BGR565 as the supported
format instead of PIXEL_FORMAT_RGB565. This change ensures correct color
rendering in the sample display application and enables usage of the
video capture sample application.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-07-04 13:07:55 -05:00
Alex Hogen
075662d8dc drivers: i2c: gecko: Fix EFM32 I2C target
clang-format on drivers/i2c/i2c_gecko.c

Signed-off-by: Alex Hogen <alex@edt.com>
2025-07-04 13:07:45 -05:00
Alex Hogen
257bcb8d58 drivers: i2c: gecko: Fix EFM32 I2C target
Fix I2C target implementation so NACKs are issued if the callback returns
an error. This allows for proper signaling to the I2C host when commands
or data are invalid for the I2C target.

Signed-off-by: Alex Hogen <alex@edt.com>
2025-07-04 13:07:45 -05:00
Alex Hogen
92f7e8d84b drivers: i2c: gecko: Fix EFM32 I2C target
Fix compile error due to unknown macro when building CONFIG_I2C_TARGET for
Silabs Thunderboard EFM32GG12 (SLTB009A). The previous macro exists in
(all?) EFR32 part headers but not EFM32.

Signed-off-by: Alex Hogen <alex@edt.com>
2025-07-04 13:07:45 -05:00
Kapil Bhatt
81ba3dfa92 doc: networking: Modify the wifi documents
Modify the wifi documents for better format.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-07-04 13:07:37 -05:00
Guillaume Gautier
9977ce4eb6 dts: bindings: memc: stm32-fmc: reorder parameters to match code
Description of parameters in st,control property didn't match the values
used in the code.
Modify the description to match with the current driver implementation.
Also add a description for reg property to help setting it properly and
add corresponding dt-bindings.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-07-04 13:07:24 -05:00
Van Petrosyan
4197953d3f drivers: modem_cellular: fix bg95dial cmd resp
bg95 modem should respond "CONNECT <text>" when run dial cmd
similar to eg25g

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-04 13:07:12 -05:00
Jamie McCrae
0d12549f7c west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  3430520d7080a8ac3e4b325cfde0ef18837209af

Brings following Zephyr relevant fixes:

  - d905a69e boot: boot_serial: Fix upload for swap using offset
    mode
  - 3fc94b38 boot: boot_serial: Fix slot info response on error
  - e2c97da3 boot: bootutil: Fix serial recovery issues
  - 2fcfba13 boot: bootutil: Fix wrong define for single loader
    mode
  - dc571f0b boot: bootutil: Fix single loader trailer size
  - cf92b6f6 boot: boot_serial: Fix wrong slot ID for hook calls
  - c4a7b250 zephyr: cleanup removed
    CONFIG_BOOT_MGMT_CUSTOM_IMG_LIST

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-04 13:06:59 -05:00
Alberto Escolar Piedras
f8cf1659bf tests/drivers display_read_write: Enable for native_sim//64
These tests can be run equally on native_sim//64.
Let's also allow them in it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-04 13:06:47 -05:00
Alberto Escolar Piedras
f8c2f37e03 tests/drivers display_read_write: Move common kconfig option to overlay
For native_sim[//64], these tests need to be built with
CONFIG_SDL_DISPLAY_USE_HARDWARE_ACCELERATOR=n

Until now we defined this option in the yaml file for each test
targetting the sdl display driver.
But if somebody builds the test directly, it will fail as these yaml
kconfig defined options would not be used.

Let's instead define it in a board overlay, so in that case the test
will also work.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-04 13:06:47 -05:00
Etienne Carriere
9b022972d8 drivers: rtc: stm32: narrow backup domain access window during interrupts
Change backup domain access gating in STM32 RTC interrupt handler
to only request access when RTC registers ar to be modified
instead of during the whole RTC interrupts service including
interrupt consumer callback execution.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-07-04 13:06:36 -05:00
Etienne Carriere
007d3e3c85 drivers: rtc: stm32: fix unbalanced backup domain access request
Fix the backup domain access request in STM32 RTC initialization that
was unbalanced in case of clock configuration failure.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-07-04 13:06:36 -05:00
Etienne Carriere
c35ddccce4 drivers: counter: stm32: Fix RTC write access requests
Add missing backup domain access requests in STM32 RTC counter
driver that are needed to modify RTC registers.

Remove backup domain access requests in rtc_stm32_read() since this
function only reads RTC registers and backup domain access protection
protects RTC registers against write accesses only.

Fixes issue 92511.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-07-04 13:06:36 -05:00
Gaetan Perrot
de1fa4776b drivers: sensor: bmp581: add const qualifier when casting
Add the 'const' qualifier when casting 'dev->config' to 'struct
bmp581_config *' to preserve const-correctness and fix SonarQube warning :

 "A cast shall not remove any const or volatile qualification from the
 type of a pointer or reference."

This improves maintainability by respecting the const contract and resolve
static analysis issues.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 13:06:22 -05:00
Gaetan Perrot
032c5301de drivers: sensor: bmp581: fix potential null dereference
Move null check for 'dev' before dereferencing it to access dev->config.

This ensures the check is meaningful and avoids undefined behavior in case
of a null device pointer.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 13:06:22 -05:00
Hake Huang
fe811defb2 tests: vector_table_relocation: fix a mis-use of SRAM_SIZE
SRAM_SIZE is given in kilobytes

fixes: #92533

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-07-04 13:06:13 -05:00
Christoph Mair
f64358fcdb pm: fix typo in KConfig
Workqueue is missing a "k".

Signed-off-by: Christoph Mair <christoph.mair@husqvarnagroup.com>
2025-07-04 13:05:56 -05:00
Benjamin Cabé
273e65f2f1 MAINTAINERS: refine coverage for samples
Not pretending for this to be exhaustive, but a pass at adding samples to
their respective areas as opposed to let them fall under the catch-all
"Samples" area.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-04 13:05:47 -05:00
Gaetan Perrot
4bee190264 sensor: icm42688: use lowercase for group name
Fix group name to lowercase for consistency with Zephyr documentation
guidelines.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 13:05:35 -05:00
Gaetan Perrot
aee0c34ece sensor: adxl345: use lowercase for group name
Fix group name to lowercase for consistency with Zephyr documentation
guidelines.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 13:05:35 -05:00
Gaetan Perrot
5d2f4e8dcd sensor: adxl367: use lowercase for group name
Fix group name to lowercase for consistency with Zephyr documentation
guidelines.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 13:05:35 -05:00
Gaetan Perrot
e6c1f02436 sensor: adxl362: use lowercase for group name
Fix group name to lowercase for consistency with Zephyr documentation
guidelines.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 13:05:35 -05:00
Gaetan Perrot
89cdd133ad sensor: tmp114: use lowercase for group name
Fix group name to lowercase for consistency with Zephyr documentation
guidelines.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 13:05:35 -05:00
Gaetan Perrot
fbbb777795 sensor: mc3419: use lowercase for group name
Fix group name to lowercase for consistency with Zephyr documentation
guidelines.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 13:05:35 -05:00
Gaetan Perrot
0490f03b29 sensor: tmp11x: use lowercase for group name
Fix group name to lowercase for consistency with Zephyr documentation
guidelines.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-04 13:05:35 -05:00
Johan Hedberg
c85cc47b5b Bluetooth: samples: Fix off-by-one bug in atomic API usage
The code was accessing bits 1 and 2 (but not 0), effectively needing three
bits, but still requesting only 2 when calling ATOMIC_DEFINE().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-07-04 13:05:22 -05:00
Oleh Kravchenko
a75abdc5df soc: stm32f1x: fix typo/debug in stop/standby modes
Check for STM32F1 series was done with "#ifdef SOC_SERIES_STM32F1X"
but this symbol comes from Kconfig.

Use the correct "CONFIG_SOC_SERIES_STM32F1X" instead.

Signed-off-by: Oleh Kravchenko <oleg@kaa.org.ua>
2025-07-04 13:05:13 -05:00
Nazar Palamar
fdd02c5105 drivers: wifi: AIROC: Added missed whd_bus_spi_protocol
- add whd_bus_spi_protocol

Signed-off-by: Nazar Palamar <nazar.palamar@infineon.com>
2025-07-03 12:00:07 -05:00
Fabio Baltieri
88aee15ca4 ci: pr_metadata_check: run the script in unbuffered mode
Makes it easier to debug since there's stuff handling race conditions
now.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-07-03 11:59:56 -05:00
Fabio Baltieri
42e8837085 scripts: do_not_merge: wait for manifest before checking
Seems like github relabel rerun is susceptible to race conditions and
may not rerun the label check script if the manifest workflow runs at
the same time.

Delay the check to explicitly wait until the currently checked sha had a
successful manifest run.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-07-03 11:59:56 -05:00
Fabio Baltieri
db18e4c507 scripts: do_not_merge: integrate the empty body check in the python file
No point spreading the logic around, the python file already has the
data, check it there.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-07-03 11:59:56 -05:00
Fabio Baltieri
5b743871b8 scripts: do_not_merge: add some debug prints
Log the PR link and labels, may come in handy for troubleshooting down
the road.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-07-03 11:59:56 -05:00
Mike J. Chen
93997dab8e tests: bsim: add early disconnect tests for iso and l2cap
Add early_disconnect test cases for iso/cis and l2cap/stress
to test the bluetooth stack handling of disconnects
while transmit is still in progress.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-07-03 11:59:02 -05:00
Mike J. Chen
a392c33c60 bluetooth: fix bug when destroying tx queue buffers on disconnect
Channel tx_queue purging on disconnect was inconsistently handled
by the different channels: iso, l2cap, l2cap_br.

iso channels handled purging in the tx_data_pull hook.

l2cap and l2cap_br did the purging in channel delete functions
and did not expect tx_data_pull to be called for a disconnected
channel. Their data_pull functions could return a ptr to a
net_buf that was still on the tx_queue, which is problematic
when the conn tx_processor unrefs the returned buffer resulting
in multiple calls to the buf destroy function.

To make things consistent and correct, remove the code that tries
to purge tx_queues in the tx_processor and only do purging in
the channels themselves when they are deleted/disconnected.

Also refactor and clarify referencing of the net_buf returned
by tx_data_pull. It was confusing who had a reference and
when, which could vary depending on the length of the original
buffer. There are three cases: the buffer length is less
than the tx.mps, greater the mps but less than the mtu so
requiring segementation but not fragmentation, or greater than
both mps and mtu so requiring both segmentation and fragmentation.
The conn layer would increase the refcnt if the length was
greater than the mtu, but not have any awareness of whether
the net_buf was still on the tx_queue or not.

Now it is the tx_data_pull callbacks responsibitity to increment
the reference count if it is returning a pointer to a net_buf
that it is still keeping on the tx_queue for segmentation purposes.
The conn layer will now always transfer that reference into a
fragment view and not conditional it on the length relative to
the mtu, and always decrement the reference to the parent when
the fragment is destroyed.

So there is no risk of decrementing a reference to a net buf
that might still be on a tx_queue, which simplifies error
handling in particular.

Also add error handling paths for when asserts are not enabled.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-07-03 11:59:02 -05:00
David Leach
a132ebfe17 drivers: watchdog: Add enableWait setting for wdt_mcux_imx_wdog
When WDT_OPT_PAUSE_IN_SLEEP option is passed in set enableWait flag
in addition to the enableStop.

Fixes #86437

Signed-off-by: David Leach <david.leach@nxp.com>
2025-07-03 11:57:17 -05:00
Vinayak Kariappa Chettimada
3eee7c5325 Bluetooth: Controller: Fix peripheral role assertion on conn update
Fix peripheral role assertion during connection update and
simultaneous flash operations.

prepare_cb: Actual EVENT_OVERHEAD_START_US = 6149

This happens due to instant latency at connection update
where the ticks_at_expire was in the past.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-07-03 11:56:59 -05:00
Vinayak Kariappa Chettimada
6935a4bf90 Bluetooth: Controller: nRF54Lx: Flash sync restrict to one iteration
Write operations are not constant time on nRF54Lx SoCs and
depend on the previous value present versus new value to be
written. Hence, perform no more than one iteration.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-07-03 11:56:59 -05:00
Chaitanya Tata
ae198b8169 manifest: nrf_wifi: Pull new raw TX handling
Fixes the issue of leave the packets in the pending queue till a new TX
comes.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-03 11:56:43 -05:00
Chaitanya Tata
b8d31f10d9 modules: nrf_wifi: Implement new Raw TX APIs
The new raw TX handling relies on these APIs, so, implement them for
Zephyr shim.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-03 11:56:43 -05:00
Phi Bang Nguyen
7a3737b9bb samples: video: capture: Enable deferred logging
Immediate log mode may use a lot of stack and hence may cause some stack
overflow on some boards.

Enable deferred log mode to have the least impact on the application.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-03 11:56:30 -05:00
Phi Bang Nguyen
1c9f8904ed samples: video: capture: Add condition for test pattern test
Add condition to do the test pattern fixture test only if the test
pattern control was successfully set.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-03 11:56:30 -05:00
Alain Volmat
706895cc27 samples: video: capture_to_lvgl: add crop/compose support
Demonstrate the crop/compose API by introducing 4 new
CONFIG options in order to define the crop area.
Moreover, if the selection API is available and if
the targetted size is different from the current crop
size, then try to apply a compose in order to reach
the targetted format size.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-07-03 11:56:07 -05:00
Alain Volmat
aa345401bb samples: video: capture_to_lvgl: add stm32n6570_dk/fsbl conf
Add the conf file for the stm32n6570_dk in its FSBL variant

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-07-03 11:56:07 -05:00
Alain Volmat
5508534685 samples: video: capture: add conf for stm32n6570_dk fsbl
Add the board conf file for the stm32n6570_dk in its fsbl
variant.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-07-03 11:56:07 -05:00
Alain Volmat
a61039ceeb shields: st_b_cams_imx_mb1854: set sensor conf if DCMIPP is enabled
Instead of having a conf file for all variants of STM32N6570_DK,
set the necessary settings for any platform which has DCMIPP enabled.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-07-03 11:56:07 -05:00
Abhinav Kulkarni
fb3f4b1d3a boards: shields: nxp_m2_wifi_bt: doc: Update doc
Updated shield document for NXP's m2 modules.

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2025-07-03 11:55:53 -05:00
Karol Lasończyk
cd42555ea6 snippets: nordic-flpr: Fix nRF54LM20A memory layout
Fixes wrongly set memory space for FLPR core.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-07-03 11:55:42 -05:00
Erwan Gouriou
713c7ac1f8 boards: stm32n6570_dk: Update doc and migration guide.
Clarify expectations about the recently modified default variant of the
board.
Update migration guide to warn existing users about the change.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-07-03 11:55:26 -05:00
Hake Huang
b90651acc2 boards: dts: mimxrt1160_evk_cm4: sram shall not be put to ocram
as in mbox cases the ocram is used as code area, so shall not be used
as sram again. this is a typo introduced by
aec0355380

fixing: #82841

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-07-03 11:55:15 -05:00
Jan Behrens
276bdb2246 boards: shields: Fixes Stepper 19 Click GPIO Expander
Replaces TI TCA9538 with NXP PCA9538. Also adds additional links to the
readme.

Signed-off-by: Jan Behrens <jan.behrens@navimatix.de>
2025-07-03 11:55:05 -05:00
Jiawei Yang
89d54b6f48 Bluetooth: HFP: Fail to get Bluetooth Profile Descriptor List
In HFP PTS, cases run fail with the log 'Bluetooth Profile Descriptor
List UUID (0x111E) is missing'.

With this patch, the affected cases can pass correctly.

Signed-off-by: Jiawei Yang <jiawei.yang_1@nxp.com>
2025-07-03 11:54:40 -05:00
Benjamin Cabé
0a102c90de doc: project_roles: enhance maintainer responsibilities re: CoC
Emphasize the role of maintainers in upholding the project's code of
conduct and fostering an inclusive environment for all.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-03 11:54:29 -05:00
Jukka Rissanen
b573485d5c doc: release-notes: Add wifi information to 4.2
Add information about hostap IPC mechanism change that can save up to
6-8 kB memory when using native wifi stack.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-03 11:54:19 -05:00
Mirko Covizzi
5b3a48c063 scripts: requirements-base: pin patool to >=2.0.0
This resolves an issue on MacOS where
`west sdk install` would fail when extracting
a `.tar.xz` package due to the command line
options selected by patool.

Signed-off-by: Mirko Covizzi <mrkcvzz@gmail.com>
2025-07-03 11:54:10 -05:00
Daniel DeGrasse
4852719f98 release: fix PATCHLEVEL revision for RC1
Correct patchlevel version for RC1 to use one zero, it was mistakenly
set to 00

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-02 13:42:14 -10:00
Josuah Demangeon
645f3d38e1 drivers: video: fix order of fields to allow use with FIFOs
The struct video_buffer are currently used with `struct k_fifo`, which
require them to preserve the first word of data for use by the kernel.
Move the first fields to make it possible to keep using video buffers in
FIFO safely.

Fixes #92526

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-07-02 17:58:46 -05:00
Gaetan Perrot
48c85cb065 sensor: sensor_axis_align: use lowercase for group name
Fix group name to lowercase for consistency with Zephyr documentation
guidelines.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-02 17:58:37 -05:00
Gaetan Perrot
9125e8941d sensor: adxl3xx: use lowercase for group name
Fix group name to lowercase for consistency with Zephyr documentation
guidelines.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-02 17:58:37 -05:00
Gaetan Perrot
ccad3cf5b6 sensor: sensor_axis_align: clarify defgroup
Rename and clarify the @defgroup SENSOR_AXIS_ALIGN to better reflect its
purpose. Replace the vague "DT Options" title with a more descriptive
name: "Sensor axis alignment DT options".

This improves documentation clarity for developers configuring sensor
orientation via Device Tree.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-02 17:58:37 -05:00
Gaetan Perrot
4d11a1188c sensor: adxl3xx: Clarify defgroup names in DT bindings
Replace vague "ADI DT Options" titles with explicit, device-specific
@defgroup names such as "ADXL345 DT Options", "ADXL362 DT Options",
"ADXL367 DT Options", and "ADXL372 DT Options".

This improves clarity for developers and documentation readers by avoiding
the unclear "ADI" abbreviation.

Fix: #92021

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-02 17:58:37 -05:00
Jun Lin
aa3db8e5bb mgmt: ec_host_cmd: backend: shi_npcx: fix log message
This commit fixes the content of the log messages that appear when an
error occurs while applying the pinctrl.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-07-02 17:58:20 -05:00
Tom Hughes
d732a51d56 tests: kernel: gen_isr_table: Don't use IRQ1 if already used
IRQ 1 is used by the LiteX timer, so we can't use it for the test:

gen_isr_tables.py: error: multiple registrations at table_index 1 for
irq 1 (0x1)

Existing section
['.irq.WEST_TOPDIR/zephyr/tests/kernel/gen_isr_table/src/main.c.0'],
new section .irq.WEST_TOPDIR/zephyr/drivers/timer/litex_timer.c.0

Has IRQ_CONNECT or IRQ_DIRECT_CONNECT accidentally been invoked on the
same irq multiple times?

Issue #92194

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-07-02 17:58:08 -05:00
Tom Hughes
14f1c567f9 arch: riscv: Increase IDT_LIST size
Some boards fail to build arch.interrupt.gen_isr_table_local.riscv test
since this region is too small:

riscv64-zephyr-elf/bin/ld.bfd: zephyr/zephyr_pre0.elf section `.intList'
will not fit in region `IDT_LIST'

riscv64-zephyr-elf/bin/ld.bfd: region `IDT_LIST' overflowed by 239 bytes

This is a bogus memory region, so increasing it has no effect on the
final binary size.

Issue #92194

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-07-02 17:57:58 -05:00
Grzegorz Swiderski
d9c5545804 tests: kernel: interrupt: Fix for nRF54H20 FLPR
Use designated IRQ numbers, instead of generic defaults.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-07-02 17:57:45 -05:00
Jonathan Nilsen
b18c326946 soc: nordic: move nrf_ironside from drivers/firmware to soc/nordic
Move the IronSide APIs to soc/nordic from drivers/firmware since
these are vendor specific APIs. The header files are now included
from <nrf_ironside/*.h>. Adjust code that uses these APIs accordingly.

Also move the DT binding for "nordic,ironside-call" from
bindings/firmware to bindings/misc.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-07-02 17:57:45 -05:00
Grzegorz Swiderski
75dd614437 drivers: firmware: nrf_ironside: Update the spelling
s/IRONside/IronSide/g

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-07-02 17:57:45 -05:00
Alberto Escolar Piedras
0903efa882 soc nrf54lm20a: Fix entropy source
nordic,entropy-prng does not exist in Zephyr (it is part of NCS)
but we have in both the nordic,nrf-cracen-ctrdrbg which is
an actual source of true entropy and works with this SOC.
Let's use that instead.

Fixes failures to build targeting the nrf54lm20dk any test/sample
which uses the entropy driver.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-02 03:56:50 -10:00
Jérôme Pouiller
e7fdc84696 cmake: Fix support for "ninja flash"
By default west looks at the parents directory to find Zephyr base
directory. However, in the case the build directory is not a subdirectory
of zephyr base and the user run "ninja flash" directly from the build
directory, west fails to detect Zephyr base.

So, this patch explicitly add ZEPHYR_BASE in the environment.

Implementation notes:
  * ZEPHYR_BASE is already set for ninja menuconfig in
    cmake/modules/kconfig.cmake:201
  * ZEPHYR_BASE seems better than --zephyr-base since the environment in
    inherited
  * BTW, --zephyr-base seems to not have any impact and seems broken

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-07-02 03:55:49 -10:00
Tim Pambor
e6f179d180 tests: net: dns-sd: Fix undefined behavior reported by UBSAN
htons() takes uint16_t as argument. Add the 'u' suffix to the
TTL constants to ensure the correct unsigned type is used and to avoid
undefined behavior if these functions are implemented as macros using
bit shifts.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-02 03:55:06 -10:00
Tim Pambor
659382f1e9 tests: net: dns-sd: Use standard struct in_addr for IPs
Refactored the code to use the standard struct in_addr for
representing IPv4 addresses instead of a uint32_t combined
with the custom IP_ADDR macro.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-02 03:55:06 -10:00
Khaoula Bidani
7fbff46207 STM32U3: boards:st: update U3 board documentation
update U3 board user manual and reference manual links

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-07-02 03:54:20 -10:00
Robert Lubos
d720971ae2 net: coap: Verify block number before processing
Verify if the block number isn't negative before processing it, to
prevent potentially undefined behavior. This was reported by the
undefined behavior sanitizer.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-02 03:53:40 -10:00
Marcin Szymczyk
ad032fca86 MAINTAINERS: add masz-nordic as RISC-V arch collaborator
Adding myself to follow and contribute changes in RISC-V arch.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2025-07-02 03:52:51 -10:00
Vit Stanicek
fe11acc21c samples: i2s_codec: Fix i2s API misuse
Replace i2s_write invocation with i2s_buf_write invocation for test sine
wave playback.

When CONFIG_USE_DMIC=n, this sample attempts to play back a test sine
wave encoded in sine.h. As the i2s_write treats the given buffer as a
memory slab, it overwrites parts of it, resulting in data corruption and
improper playback. i2s_buf_write accepts a buffer existing outside the
playback queue (heap).

Manually tested on mimxrt595_evk/mimxrt595s/cm33 where it was first
observed.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-07-02 03:52:35 -10:00
Mark Wang
b93dec9295 bluetooth: sdp: cast from 'const x *' to 'struct x *' drops const qualifier
SonarQube reports: cast from 'const struct _snode *' to 'struct _snode *'
drops const qualifier. Fix it by removing the const.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
(cherry picked from commit 7982ee0df13b7f9e54595f799e32f38c464b0f9e)
2025-07-02 03:52:02 -10:00
Mark Wang
3887980c29 bluetooth: sdp: fix the corner cases for the sdp discover
1. bt_sdp_discover may be called in two tasks at the same time:
(1) If the 2 calls are for 2 acl conns,
the same session may be new allocated to two acl conns.
(2) If the 2 calls are for the same acl conn, the same session should be
used.
Use the bt_conn_index to map acl conn with session to fix it.
2. fix that bt_sdp_discover may use one session that is disconnecting,
put req to reqs_next and process it after disconnected.
3. remove memset of session, reset each members individually.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
(cherry picked from commit dcbe5d7dc5d72ce0d2915cf2b291cc84a916a536)
2025-07-02 03:52:02 -10:00
Mark Wang
2fa9f3b557 bluetooth: sdp: callback the pending reqs when sdp l2cap connecting fail
If the sdp l2cap connecting fail, the pending reqs need callback.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-07-02 03:52:02 -10:00
Chaitanya Tata
4bd1d39c67 wifi: nrf70: Fix system work queue stack size override
Defaults cannot be overidden (even with configdefault extension), they
only work if the original symbol is defined after the override e.g.,
"drivers and then subsys/net" but for kernel symbols,the default value
overrides don't work due "kernel and drivers" order, the kernel defines
the original symbol with the default and then it cannot be overridden.

Move the kernel symbol override to the original definition to make it
affect. Else any sample that uses nRF70 but doesn't enable WPA
supplicant ends up with 1024 and crashes.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-01 19:04:00 -05:00
Chaitanya Tata
54573e2a67 modules: nrf_wifi: Fix accuracy of microseconds API
Using ms and converting to us is a bad idea as we still get ms
granualrity in us units. Use the proper API to get us granularity.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-01 19:03:51 -05:00
Abderrahmane JARMOUNI
dd594d54f5 tests: kernel: device: expand device api coverage
Enhance device z_device_get_all_static API test

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-07-01 19:03:40 -05:00
Abderrahmane JARMOUNI
ddbc7efed6 tests: kernel: device: expand device api coverage
Add test coverage for device device_get_by_dt_nodelabel() API

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-07-01 19:03:40 -05:00
Abderrahmane JARMOUNI
1f4e78eb33 tests: kernel: device: add dev deinit api coverage
Add test coverage for device de-initialization API

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-07-01 19:03:40 -05:00
Florian La Roche
25e1b88880 net: dns: is_server_name_found(): fix return code check
In is_server_name_found() fix the return code checking
of net_addr_ntop().

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
2025-07-01 19:03:29 -05:00
Gaetan Perrot
7d5902dd1b drivers: akm09918c: fix null dereference in submit function
Fix a null pointer dereference in akm09918c_submit(), where writeByte_sqe
was dereferenced before checking if it was NULL.

Coverity reported this as CID 516247: the pointer returned by
i2c_rtio_copy_reg_write_byte() may be NULL, and accessing its `flags`
field before checking leads to undefined behavior.

Move the access to writeByte_sqe->flags after confirming both
writeByte_sqe and cb_sqe are valid.

Fixes: CID 516247

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-01 19:03:19 -05:00
Mike J. Chen
9eaed805c1 drivers: audio: dmic_mcux: init active_buf_idx when setting up dma
In case the dmic had previous been run and stopped,
make sure active_buf_idx is initialized to 0 when
setting up dma on start, otherwise the dma callback
can return the wrong buffer.

Also purge the rx_queue before freeing the slab buffers,
to minimize risk of any async read request getting
back a slab buffer that is freed.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-07-01 19:03:07 -05:00
Sylvio Alves
ae3fb6e091 tests: boot: add Espressif boards to MCUboot test case
Include all supported Espressif SoC variants in the MCUboot
test suite to ensure proper CI coverage.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-01 11:12:25 -10:00
Declan Snyder
2e0357c4c4 drivers: spi_nxp_lpspi: Fix extra byte issue on v1
The interrupt handling was not deterministic before because it relied
on "guessing" if the lpspi was a v1 type that was stalling due to design
errata. This obviously ended up being wrong in some cases. So we really
need to fix this so that it is deterministic, and my idea to do that is
to explicitly count how many words we have written to the TX fifo
throughout the whole transfer.

As a side effect of making the IRQ more deterministic, we can't support
the SPI_HOLD_ON_CS flag for v1 LPSPI anymore. It is fundamentally
impossible due to the fact that the transfer can only complete in
hardware as a result of CS deasserting. If this is absolutely a
requirement to support this flag in the future, my recommendation is to
update the driver so that it muxes the pin to a gpio before ending the
transfer, but that would kind of defeat the point of having a native CS,
at least at the end of the xfer.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-01 11:00:43 -10:00
Declan Snyder
0574ac7e84 tests: spi_loopback: skip hold_on_cs test if not supported
This early exit section is only reached if there is an error.
In the case of not supported, the ret variable will be 0 and zassert
won't happen. This is because the test was meant to be skipped, not
passed or failed, in this case. So add the skip call.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-01 11:00:43 -10:00
Emil Gydesen
b9b3529498 MAINTAINERS: Remove inactive collabs for Bluetooth Audio
The two collaborators, Casper-Bonde-Bose and MariuszSkamra,
are not actively collaborating on Zephyr anymore.
Remove to avoid assigning them as reviewer for PRs which
gives a false sense of who may actually review PRs.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-07-01 10:59:57 -10:00
Ofir Shemesh
b2d7094f15 drivers: ethernet: nxp_enet: Fix PHY configure for fixed-link config
Update the driver to handle -ENOSYS from phy_configure_link(), which is
now returned when the cfg_link callback is missing (e.g., in fixed-link
PHYs).

Signed-off-by: Ofir Shemesh <ofirshemesh777@gmail.com>
2025-07-01 10:59:32 -10:00
Pisit Sawangvonganan
0ec49fa570 kconfig: fix typo in (soc, subsys)
Utilize a code spell-checking tool to scan for and correct spelling errors
in `Kconfig` files within the `soc` and `subsys` directory.
Additionally, incorporates a fix recommended by the reviewer.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-07-01 10:58:54 -10:00
Pisit Sawangvonganan
a163f9db61 kconfig: fix typo in (arch, boards, kernel, modules, samples, share)
Utilize a code spell-checking tool to scan for and correct spelling errors
in `Kconfig` files within the `arch`, `boards`, `kernel`, `modules`,
`samples`, and `share` directory.
Additionally, incorporates a fix recommended by the reviewer.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-07-01 10:58:54 -10:00
Pisit Sawangvonganan
b8a8173c1f drivers: kconfig: fix typo
Utilize a code spell-checking tool to scan for and correct spelling errors
in `Kconfig` files within the `drivers` directory.
Additionally, incorporates a fix recommended by the reviewer.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-07-01 10:58:54 -10:00
Pisit Sawangvonganan
2d3a24b9b6 doc: fix typo in multiple directories before v4.2.0 release
Utilize a code spell-checking tool to scan for and correct spelling errors
in various files within the `doc` directory.

In `dsa_txrx_process.svg`, correct the typo `Tansmit` to `Transmit`.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-07-01 10:57:13 -10:00
Jiawei Yang
05e64bd699 Bluetooth: L2CAP: Limit BR/EDR L2CAP RX MTU to configured value
Ensure that the BR/EDR L2CAP RX MTU is limited to the configured
BT_L2CAP_RX_MTU value during channel configuration.

This change prevent potential buffer overflow issues when receiving
data larger than the configured buffer size.

Signed-off-by: Jiawei Yang <jiawei.yang_1@nxp.com>
2025-07-01 10:56:44 -10:00
Jiawei Yang
c0b1ed0682 Bluetooth: RFCOMM: Fix MTU calculation in rfcomm_connected
The MTU calculation in rfcomm_connected() was incorrectly adding the FCS
size instead of subtracting it.
This could lead to buffer overflows when sending data that exceeds
the actual available space.

Fix the calculation by properly subtracting both the RFCOMM header size and
the FCS size from the L2CAP MTU to get the correct RFCOMM session MTU.

Signed-off-by: Jiawei Yang <jiawei.yang_1@nxp.com>
2025-07-01 10:56:44 -10:00
Emil Gydesen
79204ecc71 Bluetooth: TMAP: Fix issues with _SUPPORTED kconfigs
Some of the Kconfig options did not reflect the actual
requirements from the TMAP spec. Relying on the AUDIO_TX
and AUDIO_RX was misleading, as they could be set by
broadcast configurations when the features required
unicast features.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-07-01 10:56:06 -10:00
Adam Kondraciuk
f7fd6b8e54 soc: nordic: s2ram: Optimize s2am marking functions
Optimize `pm_s2ram_mark_check_and_clear()` function.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-07-01 10:55:35 -10:00
Adam Kondraciuk
394f3c75b2 Revert "soc: nordic: s2ram: Align s2ram marking procedures"
The marking procedures can be reverted, since at this stage
it is already allowed to use the stack.
The MSP is temporairly set to interrupt stack in `reset.S` file before
calling s2ram procedures..

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>

This reverts commit e68d110f7c.
2025-07-01 10:55:35 -10:00
Piotr Koziar
545886bcff soc: nordic: nrf54l: add Kconfig to control whether to apply Errata 56
Adds config option that allows configuration workaround 56.

Signed-off-by: Piotr Koziar <piotr.koziar@nordicsemi.no>
2025-07-01 10:54:21 -10:00
Emil Gydesen
e72e837971 tests: Bluetooth: Tester: VCP BSIM test
Adds BSIM testing of the VCP features of the BT Tester.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-07-01 10:54:09 -10:00
Cong Nguyen Huu
a53582dab8 tests/samples: drivers: create test, sample for psi5 driver
Create test, sample for psi5 driver

Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
2025-07-01 10:53:59 -10:00
Cong Nguyen Huu
fb1d1d3b58 boards: s32z270: enable support psi5
enable support psi5

Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
2025-07-01 10:53:59 -10:00
Cong Nguyen Huu
c52ba71f94 drivers: introduce support Peripheral Sensor Interface (PSI5) driver
This driver allows to communication (send, receive) with PSI5 device

Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
2025-07-01 10:53:59 -10:00
Emil Gydesen
2298ec49c7 tests: Bluetooth: Audio: Add common start_broadcast_adv
Add a common function, start_broadcast_adv, to start
broadcast advertisement in the LE Audio BSIM tests.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-07-01 05:57:48 -10:00
Chaitanya Tata
014dee722b modules: hostap: Fix EAP dependencies
In case anyone enabled EAP_*_ALL explicitly without enabling the
Enterprise then it leads to a build error.

Fix by adding the dependency.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-01 05:57:28 -10:00
Alberto Escolar Piedras
3197e7a89d drivers/fuel_gauge/lc709203f: Avoid declaring var right after label
Avoid the following clang error
`error: label followed by a declaration is a C23 extension`
by writing this switch case as a codeblock.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-01 05:56:25 -10:00
Théo Battrel
f4c8a5256a MAINTAINERS: Remove myself from Bluetooth Host/HCI
This is my last week working at Nordic Semiconductor.

Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
2025-07-01 05:56:14 -10:00
Łukasz Stępnicki
d7fd99ecc6 tests: kernel: interrupt: generic ISR offset definition for nrf54h20 VPRs
All VPRs in nrf54h20 can have same ISR offset configuration.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-07-01 05:55:36 -10:00
Andrzej Głąbek
88898b4339 MAINTAINERS: remove anangl as ADC and PWM maintainer
I won't be able to act as a maintainer in these areas.
Degrade my role to collaborator.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-07-01 05:55:19 -10:00
Qiankun Li
305d511c3e modules: hostap: Fix DPP soft AP security type show issue.
[Description]
After starting a DPP soft ap, enter 'wifi ap status'.
Security is shown as 'UNKNOW'.

[Root Cause]
1. Start a DPP soft ap:
   wifi ap enable -s xxx -c x -p xxx -k 11
   The parameter '-k 11' corresponds to
   zephyr security type 'WIFI_SECURITY_TYPE_DPP'.
2. hapd_config_network() will be called to config a
new hostap bss.
3. Filed 'bss->wpa_key_mgmt' is set to
   WPA_KEY_MGMT_PSK | WPA_KEY_MGMT_DPP.
4. When try to get security type of DPP soft ap,
there is no corresponding zephyr security type.

[Fix]
Add enhance code to convert the security type
to zephyr DPP security type.

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-07-01 10:18:42 -05:00
Stephanos Ioannidis
d0bded3c8c arch: riscv: Fix incorrect Zalrsc extension name
`Zlrsc` is not a thing and the correct name for it is `Zalrsc`.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-07-01 10:18:19 -05:00
Stephanos Ioannidis
1b3534d627 cmake: gcc: Fix code formatting of target_riscv.cmake
This commit fixes the incorrect code formatting used by target_riscv.cmake
by changing the 4-space indent to 2-space and removing the space between if
keyword and parenthesis.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-07-01 10:18:19 -05:00
Katarzyna Giądła
9b428c8e5f twister: Fix tests statuses if quarantine is verified
If test configuration is not quarantined and `--quarantine-verify`
mode is enabled, these should be filtered and not attached
to reports.

Proposed change applies this approach.

Signed-off-by: Katarzyna Giądła <katarzyna.giadla@nordicsemi.no>
2025-07-01 10:17:53 -05:00
Anas Nashif
e31f9bf324 ztest: native_sim: fail instead of crashing on wrong arguments
Instead of crashing fail with a message when -test arguments is of
wrong format.

Fixes zephyrproject-rtos/zephyr#91655

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-01 10:16:54 -05:00
Katarzyna Giądła
bec789d364 twister: Enable gathering footprint if test plan exists
If test plan is used, memory usage metrics are overridden.
Result of this operation is missing memory footprint.

This change removes redundand metrics update and fixes
described inconvenience.

Signed-off-by: Katarzyna Giądła <katarzyna.giadla@nordicsemi.no>
2025-07-01 10:16:32 -05:00
Toon Stegen
d1872d7272 net: mdns: make net_buf size configurable
for longer DNS-SD text records and instance names we need a bigger
buffer

Signed-off-by: Toon Stegen <toon@toostsolutions.be>
2025-07-01 10:16:20 -05:00
Alberto Escolar Piedras
35a10937d7 tests/net: dhcpv6: Avoid directly accessing address of unaligned struct
Use UNALIGNED_MEMBER_ADDR when getting the address of possibly
unaligned structures members instead of attempting to directly
get the address as an offset.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-01 10:15:55 -05:00
Alberto Escolar Piedras
a1d916edd0 net: dhcpv6: Avoid directly accessing address of unaligned struct
Use UNALIGNED_MEMBER_ADDR when getting the address of possibly
unaligned structures members instead of attempting to directly
get the address as an offset.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-01 10:15:55 -05:00
Alberto Escolar Piedras
1deb2e3c68 net: http_server: Avoid directly accessing address of unaligned struct
Use UNALIGNED_MEMBER_ADDR when getting the address of possibly
unaligned structures members instead of attempting to directly
get the address as an offset.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-01 10:15:55 -05:00
Alberto Escolar Piedras
82658ea6b2 net: igmp: Avoid directly accessing address of unaligned struct
Use UNALIGNED_MEMBER_ADDR when getting the address of possibly
unaligned structures members instead of attempting to directly
get the address as an offset.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-01 10:15:55 -05:00
Alberto Escolar Piedras
236ccd379f net: ieee802154: Do not access addr of unaligned struct
Use UNALIGNED_MEMBER_ADDR when getting the address of possibly
unaligned structures members instead of attempting to directly
get the address as an offset.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-01 10:15:55 -05:00
Alberto Escolar Piedras
93fa3b7831 net: tcp: Avoid directly accessing address of unaligned struct
Use UNALIGNED_MEMBER_ADDR when getting the address of possibly
unaligned structures members instead of attempting to directly
get the address as an offset.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-01 10:15:55 -05:00
Alberto Escolar Piedras
34fece8f26 toolchain/gcc.h: Add macro to get address of unaligned member
In principle getting the address of an unaligned structure member
is undefined behaviour, and clang warns as much.
Let's provide a macro which can return such an address.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-01 10:15:55 -05:00
Chaitanya Tata
1fb2c56e86 modules: nrf_wifi: Fix interface down hang
When QSPI LPM is enabled, QSPI will already be uninitialized, and during
deinit if uninitialized is being called again then it leads to a hang as
it waits for mem busy check to pass which it won't.

Fix by checking if the device is initialized before calling
uninitialize.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-01 10:15:41 -05:00
Gaetan Perrot
2fc1dd54af arch: common: semihost: update RISC-V semihosting spec link
Replace dead link in include/zephyr/arch/common/semihost.h.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-01 10:15:32 -05:00
Gaetan Perrot
239007632c arch: common: update RISC-V semihosting spec link
Replace dead link in arch/common/Kconfig.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-01 10:15:32 -05:00
Gaetan Perrot
34fd8d0049 doc: semihosting: update semihosting spec link
Replace dead link in semihosting documentation.

Fix #88206

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-01 10:15:32 -05:00
Sylvio Alves
72b0f08d0b samples: i2s echo: guard audio_codec configuration
Ensure the I2S echo sample only configures the audio_codec driver
when the `audio_codec` node is defined and enabled in the devicetree.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-01 10:15:14 -05:00
Łukasz Stępnicki
24322c609f drivers: nrf_ironside: dvfs abb analog status workaround
Until register ABB->STATUSANA is visible it must be checked using
defined offset to base ABB register.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-07-01 10:14:58 -05:00
Fabio Baltieri
b15404f998 uart_bridge: log the device name on bitrate changes
Add a log for the device name on bitrate changes, without this it's very
hard to understand what's going on in a system with multiple bridges.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-30 17:39:09 -05:00
Yishai Jaffe
6231972dd4 lib: libc: fixed Kconfig typo
Fixed typo streror -> strerror

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-06-30 17:38:17 -05:00
Sylvio Alves
d76e39e8f0 west.yml: hal_espressif: reserve BLE IRQ in interrupt descriptor
Ensure that the BLE interrupt remains marked as reserved in the
interrupt table descriptor when it’s in use. This prevents accidental
reassignment of the BLE IRQ in downstream configurations.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-30 17:38:00 -05:00
Alex Zhou
9aa0ae9378 samples: Bluetooth: PAWR: Fix Response Slot Delay Value is too Small
Previously, reponse slot value is 5* 1.25ms = 6.25ms , on nxp rw61x
platform, host got the periodic adv report v2 and after about 6ms,
send reponse data cmd,  it is too late , so always rpt the 0x46 too
late err code to host , in order to send the response , so make rsp
delay update to 10ms.

Signed-off-by: Alex Zhou <alex.zhou@nxp.com>
2025-06-30 17:37:19 -05:00
Fin Maaß
369517444b lib: smf: mark as unstable
mark State Machine Framework API as unstable,
as it is now used by usb-c and hawkBit.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-30 15:24:37 -05:00
Josuah Demangeon
e23f12d6ae doc: release: mention new video-sw-generator snippet
This snippet got introduced, and is not a breaking change for C APIs but
still introduce a change of command line to use for building projects,
so add a migration guide entry.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-30 15:24:03 -05:00
Josuah Demangeon
28639862ba samples: drivers: video: capture: remove invalid build instruction
Remove the build instruction from README about using the native_sim
without using the video-sw-generator snippet, as it cannot build.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-30 15:24:03 -05:00
Josuah Demangeon
53dfa28367 samples: drivers: video: add DT_HAS_CHOSEN() safeguards
Add macros giving hints to users using #error, about what might be
missing to build and run the samples, such as a missing "chosen"
devicetree node.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-30 15:24:03 -05:00
Adam Kondraciuk
017dca302c tests: drivers: timer: nrf_grtc_timer: Align tests with uptime changes
Update GRTC tests to reflect uptime reset at startup.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-30 15:23:44 -05:00
Adam Kondraciuk
e77f942cff drivers: timer: nrf_grtc_timer: add last_count initialization
The GRTC counter is not cleared at startup, therefore the
`last_count` variable needs to be initialized accordingly.
This change:
- Prevents overflow of the `sys_clock_announce()` int32_t parameter
- Ensures the correct uptime value, which should be reset during
  initialization

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-30 15:23:44 -05:00
Pisit Sawangvonganan
a3d37e3f49 lib: smf: correct redundant ctx->executing assignment
Removed duplicate assignment of ctx->executing under
CONFIG_SMF_ANCESTOR_SUPPORT.
Also replaced #ifndef with #ifdef to align with the positive logic
used elsewhere in this file.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-06-30 15:20:48 -05:00
Vignesh Pandian
810536251d scripts: checkpatch: False alarm warning for macros.
Remove false alarm warning of
`braces {} are required around if/while/for/else`
for macro definitions with if/while/for/else.

Signed-off-by: Vignesh Pandian <vignesh@aerlync.com>
2025-06-30 15:20:28 -05:00
Anas Nashif
67caf3bb09 sca: eclair: use MISRA C:2012 Amendment 2
Use MISRA C:2012 Amendment 2 instead of 'MISRA C:2012 Amendment 2' in
all configuration files consistently.

Also fix a typo in one of the deviations.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-30 15:20:13 -05:00
Daniel Leung
a9574c17ae xtensa: gdbstub: fix code stepping
The ICOUNTLEVEL register needs to be manipulated carefully
according to where we want to stop.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-06-30 15:19:59 -05:00
Tim Lin
0c627e94c8 drivers/pinctrl: ite: Don't clear FUNC3 setting unless alt_func is FUNC3
Previously, FUNC_3 related setting were cleared unconditionally,
regardless of the selected alternate function. This could
unintentionally disable FUNC_3 settings when configuring other
alternate functions.

This change ensures that FUNC_3 gcr/ext bits are only cleared
when alt_func is IT8XXX2_ALT_FUNC_3.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-06-30 15:19:49 -05:00
Daniel Schultz
2c767cbfc0 net: lib: zperf: Fix 'kbps' in output
zperf should only return 'Kbps'. There are still two left-overs
from converting shell prints to 'Kbps'.

Align all prints to make it easier for scripting and parsing
content from console output.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2025-06-30 15:19:39 -05:00
Imran Sajjad
63ebb75083 soc: imxrt: mimxrt1011 i2s clock fix
Fix for compiling i2s drivers on the NXP mimxrt1010_evk board.
For mimxrt1011, the defines kCLOCK_Sai2... are not defined as the sai2
peripheral does not exist. Trying to compile gives error. Fixed by adding
check for device tree node around code that uses the defines. Also added
same for sai1 and sai3. Thanks @lucien-nxp, @ZhaoxiangJin from NXP.

Signed-off-by: Imran Sajjad <imran.sajjad@iconfitness.com>
2025-06-30 15:19:24 -05:00
Matthew Wood
f70adf744d board: ubx_evk_iris_w1: update flash size
Correct flash memory size and storage partition size in
`ubx_evk_iris_w1_common.dtsi`.

Signed-off-by: Matthew Wood <matt.wood@corintech.com>
2025-06-30 15:19:14 -05:00
Robin Kastberg
1601a7d696 iar: linker_script: zero-init BSS
CONFIG_IAR_DATA_INIT did inadvertently not initialize BSS.

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-06-30 15:18:30 -05:00
Robert Lubos
ae7d7a800e net: events: Add missing net_mgmt.h include
net_event.h header makes use of macros defined in net_mgmt.h, therefore
it should include that header.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-30 15:18:01 -05:00
Fin Maaß
514258aa23 riscv: select ATOMIC_OPERATIONS based on RISCV_ISA_EXT_A
use RISCV_ISA_EXT_A to select ATOMIC_OPERATIONS_BUILTIN or
ATOMIC_OPERATIONS_C.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-30 15:17:47 -05:00
Juha Ylinen
ed79675199 net: http_client: Fix handling of POLLHUP
POLLHUP event may be returned even if there is still data to read
and POLLIN is set. To ensure all data is consumed, check for
POLLHUP after handling POLLIN.

https://man7.org/linux/man-pages/man2/poll.2.html

Signed-off-by: Juha Ylinen <juha.ylinen@nordicsemi.no>
2025-06-30 15:17:11 -05:00
Shan Pen
bd2f4ef946 drivers: modem_cellular: fix eg25g dial cmd response
eg25g modem should respond "CONNECT <text> " when run dial cmd "ATD"

Signed-off-by: Shan Pen <bricle031@gmail.com>
2025-06-30 15:16:48 -05:00
Yishai Jaffe
3b45feeb8b samples: fade_led: add direction per LED
Fixed a bug where that was caused because the different LEDs use the
same 'dir' variable and that caused them to eventually lose
synchronization.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-06-30 15:16:37 -05:00
Ta Minh Nhat
8d88d02a43 dts: arm: renesas: correct i3c device node address
Fix Devicetree build warning due to mismatched address values
of I3C device node

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-06-30 15:16:17 -05:00
Shrek Wang
6527a1b23c net: tcp: Set the right th_win value in tester_prepare_tcp_pkt
The 16bit th_win in the TCP header was not set via htons(). It
will bring issues of wrong th_win value in the peer end. For
example, the 1280 (0x0500) TCP window size would be taken as
5 (0x0005) by the peer end.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-06-30 15:16:02 -05:00
Daniel DeGrasse
ad4c3e3e9a release: Zephyr 4.2.0-rc1
Set version to v4.2.0-rc1.

Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-06-27 20:28:18 -05:00
Flavio Ceolin
8caef68264 samples: tfm_psa_test: Set TFM_PROFILE
TEST_PSA_API requires TFM_PROFILE to be set to "profile_large".

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-06-27 18:52:39 -05:00
Flavio Ceolin
1ff7d1c638 tfm-tests: Bump tests to tfm-2.2.0
Update tests to use tfm-2.2.0.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-06-27 18:52:39 -05:00
Flavio Ceolin
f67be667c1 tfm: Bump tfm to 2.2.0
Bump TF-M to 2.2.0 (latest release at the moment)

Signed-off-by: Flavio Ceolin <flavio.ceolin@gmail.com>
2025-06-27 18:52:39 -05:00
Daniel DeGrasse
0b0af06da5 scripts: pylib: fix twister report handling for junitparser >= 4.0.2
With junitparser 4.0.2, the JunitXml.fromfile() now returns a JUnitXml
instance. In order to access the junit.TestSuite instance, we must use
TestSuite.fromelem() to convert it back.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-06-27 18:28:50 -05:00
Daniel DeGrasse
c8c1bf4131 drivers: modem: modem_cellular: fix variable declaration for clang
Fix variable declaration so that this driver will compile with clang,
which does not support variable declarations within switch statements

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-06-27 18:28:22 -05:00
Carles Cufi
4ea89d0ada cmake: clang: Enable -Waddress-of-packed-member
Several years ago we started enabling the -Waddress-of-packed-member
warning in commit cf111962e0 for GCC.

Do the same for Clang, since there is no reason not to and the warning
is very useful, especially in protocol stacks.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-27 18:28:09 -05:00
Hui Bai
12babf9e39 net: l2: wifi: Fix roaming fail issue
The NET_EVENT_WIFI_SIGNAL_CHANGE was not added to net mgmt event queue
so that no scan was triggered, which caused roaming fail. The event
NET_EVENT_WIFI_SIGNAL_CHANGE was dropped because it was not enabled in
WIFI_SHELL_MGMT_EVENTS. After adding NET_EVENT_WIFI_SIGNAL_CHANGE, the
roaming works as expected.
Same issue found on event NET_EVENT_WIFI_NEIGHBOR_REP_COMP for 11k
roaming. Add this event to WIFI_SHELL_MGMT_EVENTS, too.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-06-27 18:27:45 -05:00
Declan Snyder
dba69f3f14 dts: nxp: Fix RT11xx DT files hierarchy
The DT hierachy of the RT11xx series was somewhat incoherent. The boards
targets were directly including the series level DTSI with no SOC dtsi
in between, and there existed an SOC DTSI that had to be separately
included by a different board file, which didn't include the series DTSI
itself. It seems that this was only working if you included the files
exactly in the correct order in specific board files. Also, as a result
of this change, need to (correctly) define the cpu core only in the DTSI
for that core, instead of in the series generic dtsi, because that DTSI
was actually written with incorrect syntax due to duplicated node labels
on nodes right next to each other in the same file, and was relying on
other DTSI files to delete the duplicate nodes in order for it to build.
So overall this was a mess, needed cleanup.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Declan Snyder
1f315f1759 soc: nxp: imxrt: Clean up INIT_SYS_PLL
Don't force select INIT_SYS_PLL at SOC level. Instead use default y so
that board can unset it. Keep previous case where we would default y
which was only on RT1040. Also, this config is not used in RT1170 soc,
so move it to RT10xx series kconfig instead of family level. And it
appears to be on all the RT10xx, so ifdef is not needed.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Declan Snyder
ef2271ecab soc: imxrt: Clean up INIT_VIDEO_PLL config
Don't force select the INIT_VIDEO_PLL config so that board level can
unset it. Also clean up the code a bit in soc.c files.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Declan Snyder
79713a539f soc: imxrt11xx: Clean up LDO configs
The LDO config should not be forcefully selected at SOC level. Instead,
use soft default y so that board definition can unset it if desired.

Also, in the soc.c, the LDO code should be on both the rt1160 and
rt1170, so the definitions should exist, and ifdef is not needed. So can
switch to IS_ENABLED to decrease configuration complexity of the source
code.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Declan Snyder
305a7e6c8d soc: nxp: imxrt: Remove ifdef around DCDC
The DCDC should be on all the platforms and the functions and structs
should therefore be defined on all the platforms. So the ifdef is not
needed, we can remove it to increase code compilation coverage unity
across configurations slightly. Compiler should optimize out the block
when IS_ENABLED is false statically.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Declan Snyder
16e74b9249 soc: imxrt: Clean up INIT_ARM_PLL config
Don't forcefully select this config in SOC level. Make it softer default
y so board can unselect it.

The config should not be possible if there is no arm pll, namely on
RT101x and RT102x. So add dependency clause about this.

And of course, code for this was a mess, clean up a bit.

Also remove the ifdeffry for selecting a default value for the two SOCs,
because they already put the same default value in the SOC Devicetree
DTSI, so that code had no purpose as long as a board didn't completely
redefine the SOC DT.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Declan Snyder
d33f7feb64 soc: imxrt: Clean up INIT_ENET_PLL config
Initial motivation for this commit was to not force select
the INIT_ENET_PLL config from SOC level to allow for board level
configuration which might want it to be off.

While doing that, I discovered that RT11xx actually does not have
anything called by "ENET PLL" in the reference manual. So I have
removed the config for RT11xx. The default clock source for this soc.c
code for RT11xx is PLL1 DIV2, which I changed to just be configured if
ethernet is enabled, which was the reason to configure this pll as it
stands now, even though it is not specific to ethernet (although the
DIV2 output is mostly for ethernet). Another config is therefore not
needed.

For RT10xx, the situation is a lot more complicated. There is a lot of
discrepancy again between what is considered the "ENET PLL" both
conceptually and literally between the RM, SDK, and Zephyr config. And
also the code to define the config struct was a complete mess. So I have
simplified the code and changed it so that the config is only a soft
default to y instead of selected forcefully. Also, for the case of the
RT1010 and RT1020 series, the SDK is appearing to configure PLL6 (again
there is no clear ENET PLL meaning on these platforms) 500M output
through this "enet pll" configuration function. So similarly instead of
always enabling this output for those platforms, I added a new config
which can be set or unset by board level.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Sylvio Alves
f775f9a96e samples: bluetooth: add esp32c6 testcase
Allows CI to build and test bluetooth driver of ESP32-C6 SoC.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-27 18:27:15 -05:00
Sylvio Alves
1df3403393 soc: esp32c6: add BLE support
Add BLE support to ESP32-C6 series.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-27 18:27:15 -05:00
Sylvio Alves
60cd83e6f2 clock: esp32c6: enable and calibrate digital regulators
Enable the RTC-domain and main digital regulators early in clock init,
then load and program the factory/runtime calibrated bias values for
high-power and low-power regulators into the PMU. This ensures the
correct voltage/current settings for stable, low-noise clock operation
in active, modem and sleep modes.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-27 18:27:15 -05:00
Karol Lasończyk
061036f9e3 tests: samples: Extend support for nRF54LM20A
Extends support and adds new overlays.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-27 18:26:57 -05:00
Karol Lasończyk
3d1fa8b333 board: nrf: Add nRF54LM20DK board
Adding board for nRF54LM20A device.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-06-27 18:26:57 -05:00
Karol Lasończyk
387520c867 soc: nrf: Add nRF54LM20A device
Adding nRF54LM20A device.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-06-27 18:26:57 -05:00
Yuval Peress
d8d6637a1f i2c_shell: Only include target commands if I2C_TARGET
The extra shell commands are useless unless you also enable
I2C_TARGET. Conditionally include them based on the I2C_TARGET
kconfig.

Signed-off-by: Yuval Peress <peress@google.com>
2025-06-27 18:26:33 -05:00
Fabio Baltieri
52063988b1 doc: releases: mention the i2c connector label unification
Add a mention to the i2c label rename for i2c modules.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-27 18:25:28 -05:00
David Schneider
f3f851306d boards: waveshare: rp2040_plus: Initial support
Add support for Waveshare RP2040 Plus board a Raspberry Pi Pico like
board including a battery charger.

Signed-off-by: David Schneider <schneidav81@gmail.com>
2025-06-27 18:24:55 -05:00
Stanley Huang
05300939c9 boards: raytac: Add support for raytac_an7002q_db
Add support for Raytac's new AN7002Q-DB.

Signed-off-by: Stanley Huang <stanley@raytac.com>
2025-06-27 18:24:23 -05:00
Andrew Perepech
56f52122fa boards: mediatek: mt8195: Fixed intc1 controller addrersses
Fixed incorrect addresses for intc1 reg and status-reg.

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-06-27 18:22:19 -05:00
Mahesh Mahadevan
7f269bfe9b dts: rw: No need to specify the exit latency
All this can be rolled into the single latency number.
Exit latency also triggers an additional timeout which
is not required for this SoC.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-06-27 18:21:25 -05:00
Mahesh Mahadevan
14b1ba15ac drivers: timer: Fix the logic to compensate the clock when turned off
The original logic relied on the tick passed in. This method
is inaccurate as the tick value passed in was the exit latency.
Update the code to calculate the remaining time left and set
a counter using this value.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-06-27 18:21:25 -05:00
Luis Casas
d0f9ccc010 NXP drivers: spi_mcux_flexcomm: Adds PM low-power recovery support
Enables Sleep mode (PM3) in RW61x for SPI.

Signed-off-by: Luis Casas <luis.casas@nxp.com>
2025-06-27 18:20:52 -05:00
Doug Young
39cb574438 Bluetooth: host: adv: update log levels in bt_le_adv_resume()
Changed logs in adv.c that would result in advertising from resuming
to err logs to aid in debugging.

Signed-off-by: Doug Young <dougyoung@meta.com>
2025-06-27 18:19:54 -05:00
Benjamin Cabé
222a601b21 net: lib: ptp: fix memory slab alignment issues
Commit 3c47f91be4 introduced alignment
validation in K_MEM_SLAB_DEFINE macros.
A couple PTP message slabs wer using alignment 8, while the size of
the elements wasn't a multiple of 8, causing a static assertion
failure.

Fix by changing the alignment from 8 to 4 bytes.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-27 17:00:37 -05:00
Benjamin Cabé
f1f9cf5c55 doc: contribute: fix spelling of advisable in guidelines rst
fix minor typo

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Co-authored-by: Serge Croisé <SergeCroise@users.noreply.github.com>
2025-06-27 21:19:40 +02:00
Matthias Plöger
4a0539af36 libc: minimal: Add "prohibit_lto" flag to avoid problems with LTO
The compiler requires that much of the C library be built without using LTO
so that various symbols are available for use by generated code, including
things like memset and memcpy.

Add the "prohibit_lto" CMake target compiler property to avoid LTO when
activated.

Signed-off-by: Matthias Plöger <matthias.ploeger@phoenixcontact.com>
2025-06-27 21:17:43 +02:00
Tu Nguyen Van
c68d0b9630 doc: correct python minimum required
Fixes #92059

Update getting started guide, migration-guide and
python.cmake to use Python 3.12.1 as minimum supported
version

Signed-off-by: Tu Nguyen Van <tu.nguyenvan@nxp.com>
2025-06-27 09:15:42 -10:00
Alberto Escolar Piedras
e1c37f6292 manifest: Update nRF hw models to latest
Update the HW models module to:
6e5961223f81aa2707c555db138819a5c1b7942c

Including the following:
6e59612 CLOCK (52,53): Fix test interface with multiple instances
ecf2292 54 CRACEN: Improve model
1277b16 irq controller: Remove out of date comment

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-27 09:09:20 -10:00
Eason Huang
f1b59c2cd2 drivers: i2c_dw: fix request_bytes overflow when receiving > 256 bytes
The original definition of request_bytes as uint8_t caused incorrect
behavior when attempting to receive more than 256 bytes, as the variable
would overflow. This patch changes its type to uint32_t to allow
correct tracking of large I2C transfers.

Signed-off-by: Eason Huang <eason.huang@tronfuture.com>
2025-06-27 09:08:18 -10:00
Raymond Lei
dd90248a3a test: spi_loopback: nxp: Add Flexio spi test support
Add overlay file for RT1170 EVK and simply existing flexio spi overlay
file for RT1060 EVKC and RT1064 EVK. One flexio-spi interface for both slow
and fast tests. Fast baud rate set to 16Mbps now.

Signed-off-by: Raymond Lei <raymond.lei@nxp.com>
2025-06-27 09:05:47 -10:00
Raymond Lei
581e7ff2aa drivers: spi: nxp: flexiospi spi_loopback test failed on flexio spi
Several reason cause loopback test failed:
a) FlexIO input frequency is not correct, on RT11xx, input freq is 24M,
while max baud rate can reach 1/4 of input freq, so it can only support
6Mbps.
b) Flexio shift register depend on correct timer output to triggger TX
and RX, if timer comparison value is not accurate, RX error happens on
high baud rate. This is the reason why test fails on RT1060.

also fix a error on FlexIO clock ID calculation.

Signed-off-by: Raymond Lei <raymond.lei@nxp.com>
2025-06-27 09:05:47 -10:00
Jukka Rissanen
24843ae223 tests: net: ppp: Compile test with PPP statistics
Make sure the compilation is ok if PPP statistics is enabled.

This is related to commit 3e704256e3
("net: ppp: stats: Fix net_mgmt request handler format") which
was needed because earlier commit 5a9a39caf3
("net: mgmt: Convert the mgmt API to use 64-bit masks")
missed an compile problem because there was no compile test that
enabled CONFIG_NET_STATISTICS_PPP option.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-27 09:05:22 -10:00
Gaetan Perrot
6d0f1aaef8 drivers: sensors: apds9253: remove unnecessary check
gain is an unsigned int so it can't be negative.

Fixes CID 516230

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-06-27 09:04:58 -10:00
Gaetan Perrot
e13f64ac47 drivers: sensor: bmm350: fix redundant return logic in init_chip
Add an explicit log message if setting suspend mode fails during error
handling in bmm350_init_chip(), to improve debuggability.

This addresses Coverity issue CID 520279 (Incorrect expression - CWE-398),
which flagged a conditional block where both branches effectively led to
the same outcome (return -EIO), making it appear redundant.

By adding a log before returning, we clarify the purpose of the condition
and avoid the issue of "identical code for different branches", while
keeping the functional behavior unchanged.

Coverity-CID: 520279

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-06-27 09:04:32 -10:00
Guennadi Liakhovetski
935da29ab8 soc: intel_adsp: (cosmetic) make a function static
z_intel_adsp_ipc_isr() doesn't need to be global, make it static.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-27 09:04:12 -10:00
Vinayak Kariappa Chettimada
6e8f081385 Bluetooth: Controller: Fix peripheral assert under single timer use
Fix peripheral EVENT_OVERHEAD_START_US assertion due to
missing packet timer timestamp accumulation under single
timer use in nRF54Lx SoCs.

Relates to commit 373dc0db71 ("Bluetooth: Controller:
Single timer use Extended Advertising nRF54L support").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-06-27 09:03:05 -10:00
Victor Brzeski
e8638befaf usb: device_next: uac2: support higher bInterval values
This commit adds a device-tree prop for the audio streaming
terminals to specify the bInterval values for the Isochronous
endpoints.

Signed-off-by: Victor Brzeski <vbrzeski@gmail.com>
2025-06-27 09:02:29 -10:00
Victor Brzeski
d9c7b19ae0 include: usb_ch9: fix USB_FS_ISO_EP_INTERVAL calculation
Per section 5.6.4 of the USB 2.0 standard, Isochronous Endpoints
are derived by the (2^(bInterval-1) * F) formula. The current
implementation uses the formula intended for Interrupt Endpoints.

Signed-off-by: Victor Brzeski <vbrzeski@gmail.com>
2025-06-27 09:02:29 -10:00
Erwan Gouriou
48dc588636 clock_controller: stm32n6: Remove AXISRAM3/4/5/6 clocks handling
Now that they are handled through their dedicated driver, remove
clock activation for AXISRAM3/4/5/6 (which was useless anyway as
RAMCFG part was missing).

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-27 09:01:52 -10:00
Erwan Gouriou
b73cf0a181 dts: stm32n6: Add axisram3/4/5/6 nodes
AXISRAM3/4/5/6 nodes are added as children of their respective controller.
They're declared as "zephyr,memory-region" and disabled by default.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-27 09:01:52 -10:00
Erwan Gouriou
a5fad911bd include: dt-bindings: stm32n6_clock: Add MEM bus
Add MEM bus clock which is used to enable AXISRAM3/4/5/6 clocks.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-27 09:01:52 -10:00
Erwan Gouriou
84619fe8f7 drivers: misc: stm32n6: ramcfg driver
Add a driver to handle AXISRAM3/4/5/6 configurations.
Provide the required changes to add RAM sections into the build system.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-27 09:01:52 -10:00
sudarsan N
c9be1972b2 gpio: pca_series: fix shift overflow and use 3ULL instead of 0b11
Replaces binary literal with 3ULL to avoid shift overflow and align
with Zephyr coding style.

Fixes: #81963
Fixes: CID 434591

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-27 09:00:35 -10:00
William Tambe
abeccfec28 xtensa: support for more than 32 interrupts
This change add support for using more than 32 interrupts.

Signed-off-by: William Tambe <williamt@cadence.com>
2025-06-27 08:59:56 -10:00
Krzysztof Sychla
dcdc7d315e tracing: Allow disabling idle traces
This change allows for enabling/disabling the idle traces by setting the
CONFIG_TRACING_IDLE config.

Signed-off-by: Krzysztof Sychla <ksychla@antmicro.com>
2025-06-27 08:59:32 -10:00
jens rudberg
f503313fdf drivers: mcxc osc: use oscillator internal capacitance value from DT
Use default value 0 if board DT doesn't define it.e
It's totally fine if the board device tree doen't define
load_capacitance_picofarads for the crystal oscillator. In that case,
just fallback to 0.

Signed-off-by: jens rudberg <jens@teenage.engineering>
2025-06-27 08:55:33 -10:00
Miguel Gazquez
e42cfcf032 drivers: sensor: lsm9ds1: propagate errors in sample_fetch
`lsm9ds1_sample_fetch` did not propagate error codes.
Propagate them.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-27 08:54:42 -10:00
Peter Wang
f8b14155f0 boards: frdm_mcxa166, frdm_mcxa276: add ostimer support
1. add the ostimer
2. by default, the systick is used.
3. The ostimer could be tested with below configure in xxx.overlay:
&systick {
    status = "disabled";
};

&ostimer0 {
    status = "okay";
};
And below configure in xxx.conf:
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=1000000

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-06-27 08:54:06 -10:00
Johann Fischer
a1681112bd tests: usb: device_next: rework test configuration
Do not use qemu_cortex_m3 for the "build all" case, as it overflows and
provides no benefit over native_sim. Add native_sim/native/64 platform
to the tests.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-27 08:52:22 -10:00
Johann Fischer
cc92d1c119 tests: usb: device_next: add test for string descriptors
Add test for the string descriptors.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-27 08:52:22 -10:00
Johann Fischer
0598392a7d tests: usb: device_next: add test for incomplete control transfers
Add a test for incomplete control transfers with missing data and status
stages.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-27 08:52:22 -10:00
Johann Fischer
ebdbfa9541 usb: host: Ignore asserts in control request handling when testing
Ignore assers in the control request handling when Kconfig option ZTEST
is enabled.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-27 08:52:22 -10:00
Johann Fischer
5ba44ffd3e usb: host: allow status stage to be omitted
For testing purposes, allow the status stage to be omitted.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-27 08:52:22 -10:00
Johann Fischer
49e2630531 drivers: udc_virtual: drop queued control transfer on new setup packet
Drop the queued control transfer when a new setup packet arrives.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-27 08:52:22 -10:00
Johann Fischer
cd7a6e5e54 drivers: udc: fix buffer leak when the host omits control data stage
The previous setup packet reference will simply be overwritten when the
host omits data (OUT) stage. If a new setup packet arrives before the
previous data stage is complete, free the last setup packet buffer.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-27 08:52:22 -10:00
Daniel Baluta
b06f82d2c7 MAINTAINERS: Update filter for NXP Xtensa platform
Add new filters for Xtensa platforms:
	* imxrt7xx supports now a hifi1 core
	* imxrt6xx/imxrt7xx support now a hifi4 core

Kconfig* and CMakeList.txt files could be updated for Xtensa related
code so add them to the filters too.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2025-06-27 08:51:21 -10:00
Martin Hoff
0fcffb5d87 samples: subsys: nvs: add overlay for siwx917_rb4338a board
siwx917_rb4338a board needs a custom conf to run the nvs sample.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-06-27 08:50:14 -10:00
Kate Wang
aebcbb9593 boards: shields: update g1120b0mipi overlay
Add configuration to support touch function in lvgl
examples.

signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-06-27 08:49:44 -10:00
Kate Wang
22c23ea037 samples: modules: lvgl: Enable example for g1120b0mipi on mimxrt798s
Enable lvgl example for g1120b0mipi shield on mimxrt798s board.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-06-27 08:49:44 -10:00
Kate Wang
52e08918ff modules: lvgl: support the frame buffer address and stride alignment
Add support for the frame buffer address and stride alignment.
If user set the CONFIG_LV_DRAW_BUF_ALIGN to not be 4, the buffers
shall be allocated aoocrdingly.
If user set the CONFIG_LV_DRAW_BUF_STRIDE_ALIGN to not be 1, the
methods of flushing the display shall set the pitch accordingly.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-06-27 08:49:44 -10:00
Kate Wang
826b1187f7 drivers: mipi_dsi: dsi_mcux_2l: support non-contiguous frame buffer
The mipi_dbi_nxp_dcnano_lcdif driver support non-contiguous frame
buffer, so when mipi_dbi_nxp_dcnano_lcdif cannot be used to send
the frame buffer data, the driver needs to check whether the data
is non-contiguous first. If it is then extra methods need to be
applied. First the data of each write must not exceed the line
width, second if each line's data exceeds the max payload, it also
needs to be sent seperately.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-06-27 08:49:44 -10:00
Kate Wang
5b06b1871b drivers: display: display_rm67162: update method to transfer frame data
display_rm67162 uses mipi_dsi API(s) to update transfer frame data, some
low level IP can while some cannot handle non-contiguous buffer(the frame
pitch is larger than frame width). In this case, pass the frame descriptor
as the user data in the message to the low level driver and let it
handle how many data to send. The display_rm67162 driver only need to
set the address correctly for each transfer according to the pitch/width.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-06-27 08:49:44 -10:00
Kate Wang
8548b3cb8a include: drivers: mipi_dsi: add member in mipi_dsi_msg structure
Add member in mipi_dsi_msg structure to store user data, incase the high
level driver or application needs to pass down extra configuration.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-06-27 08:49:44 -10:00
Iuliana Prodan
cae6321cd8 samples: use address translation ops in openamp_rsc_table sample
Update openamp_rsc_table sample to use `metal_io_ops` for address
translation, if configured.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-06-27 08:44:56 -10:00
Iuliana Prodan
0300c88380 samples: enable OpenAMP address translation on i.MX8ULP
Enable address translation in board config for imx8ulp_evk_mimx8ud7_adsp.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-06-27 08:44:56 -10:00
Iuliana Prodan
75d887605c openamp: enable address translation in CMake
Update CMakeLists.txt to conditionally include address translation
support based on Kconfig options.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-06-27 08:44:56 -10:00
Iuliana Prodan
78511a97fd openamp: add NXP address translation table
Add NXP-specific address translation table to support memory-mapped
translations between driver and device.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-06-27 08:44:56 -10:00
Iuliana Prodan
bd5e38c6de openamp: add core address translation support
There are SoCs that have different memory maps for device and driver.
Therefore the shared memory between them has different values and we
need to convert the addresses.

This commit introduces address translation support for OpenAMP:
- implements the address translation functions;
- returns the I/O operations used for address translation.
The ops can be used in Libmetal (see metal_io_init()).

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-06-27 08:44:56 -10:00
Iuliana Prodan
71f3f7006a openamp: add Kconfig entries for address translation
Add configuration options to enable address translation in OpenAMP
and specify vendor header files for translation tables.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-06-27 08:44:56 -10:00
Fabrice DJIATSA
6c68584046 boards: st: stm32n6570_dk: exclude stm32n6_fsbl variant from twister ci
Make the stm32n6_dk variant (stm32n6570_dk/stm32n657xx/fsbl) unable
to execute tests in CI with Twister.

This change will help avoid many CI build failures caused by this variant.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-27 10:11:01 -05:00
Benjamin Cabé
e8513231fa dts: bindings: pinctrl: fix description of renesas,rx-pinctrl
Fixed typo whereby the description field started with `description: |`
instead of actual description.
Also added a proper title field while at it

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-27 10:09:56 -05:00
Pieter De Gendt
f38527035a drivers: watchdog: Place device APIs in linker sections
Use DEVICE_API macro to place driver API instances into a linker section.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:09:32 -05:00
Pieter De Gendt
bd4d65107d drivers: virtio: Place device APIs in linker sections
Use DEVICE_API macro to place driver API instances into a linker section.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:09:32 -05:00
Pieter De Gendt
696442fab0 drivers: video: Place device APIs in linker sections
Use DEVICE_API macro to place driver API instances into a linker section.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:09:32 -05:00
Pieter De Gendt
1a7eb61f02 drivers: serial: Place device APIs in linker sections
Use DEVICE_API macro to place driver API instances into a linker section.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:09:32 -05:00
Pieter De Gendt
6c6d3523ca drivers: sdhc: Place device APIs in linker sections
Use DEVICE_API macro to place driver API instances into a linker section.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:09:32 -05:00
Pieter De Gendt
d4139d3d8d drivers: pwm: Place device APIs in linker sections
Use DEVICE_API macro to place driver API instances into a linker section.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:09:32 -05:00
Pieter De Gendt
70ee055caf drivers: gpio: Place device APIs in linker sections
Use DEVICE_API macro to place driver API instances into a linker section.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:09:32 -05:00
Pieter De Gendt
ee78942c67 drivers: dac: Place device APIs in linker sections
Use DEVICE_API macro to place driver API instances into a linker section.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:09:32 -05:00
Pieter De Gendt
c57d76e1e5 drivers: counter: Place device APIs in linker sections
Use DEVICE_API macro to place driver API instances into a linker section.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:09:32 -05:00
Pieter De Gendt
8e2405207e drivers: clock_control: Place device APIs in linker sections
Use DEVICE_API macro to place driver API instances into a linker section.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:09:32 -05:00
Pieter De Gendt
5a051b4db3 drivers: can: Place device APIs in linker sections
Use DEVICE_API macro to place driver API instances into a linker section.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:09:32 -05:00
Pieter De Gendt
efecfe2678 drivers: adc: Place device APIs in linker sections
Use DEVICE_API macro to place driver API instances into a linker section.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:09:32 -05:00
Jiafei Pan
bd2b7d80d1 modules: hal_nxp: add timeout for ii2c status polling
Enalbe II2C hal driver status polling timeout in order to avoid
blocking of some driver API, such as kernel hang during i2c scanning.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-27 10:08:25 -05:00
Henrik Brix Andersen
5ca8be264d tests: kconfig: functions: add tests for dt_compat_enabled_num
Add tests for the dt_compat_enabled_num Kconfig helper function.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-06-27 10:07:01 -05:00
Henrik Brix Andersen
08175f816a scripts: kconfig: functions: add dt_compat_enabled_num function
Add dt_compat_enabled_num Kconfig helper function for counting the number
of compatible nodes with status okay.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-06-27 10:07:01 -05:00
Tamas Jozsi
76f107b795 boards: seeed: add PWM support for the XIAO MG24
The onboard LED is now controllable via PWM.

Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
2025-06-27 10:06:38 -05:00
Tamas Jozsi
c9e697de5f boards: sparkfun: add PWM support for the Thing Plus Matter
The onboard LED is now controllable via PWM.

Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
2025-06-27 10:06:38 -05:00
Tamas Jozsi
67e3480c9f boards: arduino: add PWM support for the Nano Matter
The onboard RGB LED is now controllable via PWM.

Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
2025-06-27 10:06:38 -05:00
Jérôme Pouiller
ca9650134f soc: silabs: siwx91x: Clean output names
The siwx91x need a specific firmware image format. These image end with
.rps extension. The current name of the image is zephyr.bin.rps. However,
the .bin suffix is not relevant. It makes even more sense if we consider
the output of west sign: zephyr.signed.bin.rps. We can simplify these name
by remove the .bin suffix.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-27 10:06:16 -05:00
Jérôme Pouiller
f6283b267e doc: sign: Describe usage of silabs_commander tool
Add the relevant documentation for the silabs_commander runner.

Co-developed-by: Aasim Shaik <aasim.shaik@silabs.com>
Signed-off-by: Aasim Shaik <aasim.shaik@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-27 10:06:16 -05:00
Jérôme Pouiller
c13d09d7b4 soc: silabs: siwx91x: Call "west sign" automatically
Once the keys has been provisioned on the Silabs siwx91x, the chip expects
the firmware to be properly signed.

This PR automate the signing process. Hence, "west flash" will work as
expected.

Co-developed-by: Aasim Shaik <aasim.shaik@silabs.com>
Signed-off-by: Aasim Shaik <aasim.shaik@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-27 10:06:16 -05:00
Jérôme Pouiller
00b3c53704 soc: silabs: siwx91x: Support "west sign"
Silabs siwx91x support signed and encrypted firmwares. This PR includes
support for these features in "west sign"

Co-developed-by: Aasim Shaik <aasim.shaik@silabs.com>
Signed-off-by: Aasim Shaik <aasim.shaik@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-27 10:06:16 -05:00
Jérôme Pouiller
f3de7cdb1d soc: silabs: siwx91x: Disable generation of .hex output
Disable generation of .hex output, since the Commander runner
prefers it over the .bin output but SiWx91x needs a .bin.rps file.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
Co-developed-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-27 10:06:16 -05:00
Jérôme Pouiller
d2fb79886d soc: silabs: siwx91x: Use runner props to select file to flash
Use runners_yaml_props_target to set the name of the file to
flash, rather than hard-coding it for each board.

Co-developed-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-27 10:06:16 -05:00
Benjamin Cabé
5e0ab3dad0 tests: net: lib: dns: dns_cache: test dns_cache_remove
Add tests for dns_cache_remove() API

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-27 10:05:40 -05:00
Benjamin Cabé
1a01318efa net: lib: dns: dns_cache: check arguments in dns_cache_remove
Like other API in DNS cache, `dns_cache_remove` should check arguements
return -EINVAL if any of them is NULL.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-27 10:05:40 -05:00
Guillaume Gautier
dff6673808 drivers: spi: stm32: fix h7 issue with spi_hold_on_cs
STM32H7 spi_loopback test fails since the introduction of a test enabling
SPI_HOLD_ON_CS.
This uncovered an issue where the SPI ISR is constantly called if the SPI
is not disabled, even if the interrupt enable register is completely
cleared.
A workaround is to disable the SPI IRQ at the NVIC level when
SPI_HOLD_ON_CS is used.


Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-06-27 10:05:23 -05:00
Guennadi Liakhovetski
2502567595 SoC: Intel: ADSP: enable instruction cache
All intel_adsp architectures have instruction cache. Selecting
CPU_HAS_ICACHE fixes gdb memory writing problems.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-27 10:03:25 -05:00
Tim Pambor
a8a4a5a60c cmake: sca: codechecker: Support output to console and export
Enable parsed results to be printed to the console in addition
to being exported, rather than requiring one or the other.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-06-27 10:02:54 -05:00
Tim Pambor
159ad42b2b cmake: sca: codechecker: Finish export before exiting
If exporting to multiple formats (e.g., HTML and JSON), do not stop
after the first format when errors are found. Instead, continue
exporting to all specified formats and only exit afterwards.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-06-27 10:02:54 -05:00
Mert Ekren
e7dd1e507a tests: drivers: spi: Add MAX32657 overlay files
Enable 'spi_loopback' test for MAX32657 boards.

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2025-06-27 10:01:27 -05:00
Mert Ekren
f104c551ca boards: arm: adi: Add SPI to MAX32657 boards driver list
Add SPI into '.yaml' files.

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2025-06-27 10:01:27 -05:00
Mert Ekren
d30bfa9478 dts: arm: adi: Add MAX32657 SPI instance and binding file
Add SPI node to MAX32657 dtsi file

Signed-off-by: Mert Ekren <mert.ekren@analog.com>

226e230b349on how to improve this.
2025-06-27 10:01:27 -05:00
Mert Ekren
b6085ef997 drivers: spi: MAX32657 fix related to register name change
MAX32657 introduces changes for registers named (master, slave) to
(controller, target) this causes build issues

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2025-06-27 10:01:27 -05:00
Marcin Szymczyk
496cb0f46e cmake: add option to force raw instruction mnemonics
Some architectures use pseudo instructions in assembly.
Introduce an option that allows forcing raw instruction mnemonics.
Currently implemented for GNU binutils.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2025-06-27 10:01:11 -05:00
Josuah Demangeon
a1ef239249 drivers: video: dcmi: fix DMA channel configuration
Commit 64149e4df6 added an "#if defined()"
for configuring DMA channels differently depending on SOC family of the
STM32 HAL, but did not include the STM32H7 family in the same group as
STM32F7. Fix it by adding the STM32H7 in the same #ifdef filter.

Fixes #92015

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-27 10:00:35 -05:00
Victor Brzeski
3c47f91be4 include: kernel: add macros to enable allocation from specific sections
This change adds two macros that allow the user to specify the section
the memslab buffer should be allocated from. This is useful for systems
where memory must reside in DMA-able memory like USB.

Signed-off-by: Victor Brzeski <vbrzeski@gmail.com>
2025-06-27 10:00:14 -05:00
Anas Nashif
5ac9cd119b cmake: targets: support overriding puncover host and port
Allow overriding puncover default host and port. Using
PUNCOVER_HOST/PUNCOVER_PORT it is possible now to set the host and port
to something else other than the default.

example:

export PUNCOVER_HOST=10.0.1.1
export PUNCOVER_PORT=8088

will start puncover on 10.0.1.1:8088 and make it available over the
local network.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-27 09:59:30 -05:00
Sebastian Huber
2724a1e53c drivers: spi: mchp_mss_qspi: Add reset support
Add support to reset the device through a reset controller.

Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
2025-06-27 09:59:08 -05:00
Sebastian Huber
269773fff4 drivers: spi: mchp_mss: Add reset support
Add support to reset the device through a reset controller.

Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
2025-06-27 09:59:08 -05:00
Sebastian Huber
9832973bec drivers: gpio: mchp_mss: Add reset support
Add support to reset the device through a reset controller.

Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
2025-06-27 09:59:08 -05:00
Sebastian Huber
9132ac48bf drivers: i2c: mchp_mss: Add reset support
Add support to reset the device through a reset controller.

Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
2025-06-27 09:59:08 -05:00
Frank Kühndel
dbb8ee38f2 drivers: reset: Add MPFS MSS driver
Add driver for Microchip PolarFire SoC (MPFS) peripheral clock and soft
reset control.

Normally, the peripheral clocks and reset state are controlled by the
Hart Software Services (HSS) running on the Monitor processor.  As an
alternative to using HSS services, applications can now enable the reset
controller in a device tree overly, for example:

&reset {
  status = "okay";
};

&uart4 {
  resets = <&reset MSS_RESET_ID_MMUART4>;
};

Embedded the reset controller node in system controller node.

Signed-off-by: Frank Kühndel <frank.kuehndel@embedded-brains.de>
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Signed-off-by: Conor Paxton <conor.paxton@microchip.com>
2025-06-27 09:59:08 -05:00
sudarsan N
6efb1b40ce drivers: spi_rtio: Fix potential null pointer dereference
Avoid accessing tx_bufs or rx_bufs when they are NULL by adding proper
conditional checks before dereferencing. This addresses Coverity issue

CID 516225 (CWE-476).

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-27 09:58:33 -05:00
Yangbo Lu
7a80ef3e8b boards: nxp: imx943_evk: add default NET options for NETC
1. Increased interfaces count as there are 6 MACs on i.MX943.
2. Increased NETC ring length as extended BD will be used.
3. Enabled monitor for gPTP sync status.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-27 09:54:21 -05:00
Yangbo Lu
8f29fb5f53 boards: nxp: imx943_evk: enable ptp clock in enetc overlay dts
Enabled ptp clock in enetc overlay dts.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-27 09:54:21 -05:00
Yangbo Lu
7d23683d45 dts: arm: nxp_imx943_m33: add ptp clock nodes
Added ptp clock nodes.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-27 09:54:21 -05:00
Yangbo Lu
2cf5c7091a drivers: eth_nxp_imx_netc: support PTP timestamping
Added PTP timestamping support.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-27 09:54:21 -05:00
Yangbo Lu
e0aa603f9c dts: bindings: nxp,enet-mac: convert to use ptp-clock property
Convert to use ethernet-controller ptp-clock property.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-27 09:54:21 -05:00
Yangbo Lu
87d8bc63f5 dts: bindings: ethernet-controller: add ptp-clock property
Added ptp-clock property.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-27 09:54:21 -05:00
Andrej Butok
bd00396233 boards: nxp: fix the is25wp064 flash size in DTS.
- fixes is25wp064 flash size in DTS. It must be 8 MBytes (64MBits).
- uses DT_SIZE_M() macro instead of an absolute value.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-06-27 09:54:04 -05:00
Ryan McClelland
68a3fc64f4 drivers: i3c: cdns: only init bus if known i3c devices on bus
Only call `i3c_bus_init` if there are known i3c devices on the bus

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-06-27 09:53:50 -05:00
Peter Wang
cec6d68284 boards: frdm_mcxa166, frdm_mcxa276: add temperature sensor support
1. enable temperature sensor support
2. verified samples/sensor/die_temp_polling

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-06-27 09:53:28 -05:00
Peter Wang
aa7618ba59 sensor: add nxp_lpadc_temp40 temperature sensor driver
1. add nxp_lpadc_temp40 temperature sensor driver
2. tested with frdm_mcxa166 and frdm_mcxa276 board

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-06-27 09:53:28 -05:00
Federico Di Gregorio
22210724c7 boards: opta: external flash and BLE support
This set of changes adds support for QSPI-based external flash and
Bluetooth to the device tree. This make it possible to correctly build and
execute the fatfs and several Bluetooth samples out of the box.

Also added a function to read the external flash OTP to extract
information about the Opta model and hardware features and a second
function to retrieve the "official" Opta serial number.

Signed-off-by: Federico Di Gregorio <fog@dndg.it>
2025-06-27 09:52:42 -05:00
Simon Maurer
fc3cdb8a67 soc: xlnx: zynq7000: remove FPU FMAC support
Floating-Point System ID register (FPSID)        = 0x41033094
AArch32 Media and VFP Feature Register 0 (MVFR0) = 0x10110222
AArch32 Media and VFP Feature Register 0 (MVFR1) =  0x1111111

MVFR1 SIMDFMAC, bits [31:28] = 0; FMAC is not supported

Signed-off-by: Simon Maurer <mail@maurer.systems>
2025-06-27 09:50:43 -05:00
Simon Maurer
cb982d16ef soc: xlnx: zynq7000: add FPU support
According to its datasheet the Zynq 7000 has a VFPv3 FPU

Signed-off-by: Simon Maurer <mail@maurer.systems>
2025-06-27 09:50:43 -05:00
Jani Hirsimäki
4ec4351657 drivers: modem_cellular: changes due to net_link_addr struct changes
Recent changes to net_link_addr structure to not use pointers
have made it necessary to update the modem_cellular driver
to ensure compatibility with the new structure definition.
Otherwise, an assertion failure occurs in subsys/net/l2/ppp/ipv6cp.c:40.
This commit updates that link address is set to NET_LINK_ADDR_MAX_LENGTH
least significant bytes of IMEI instead of IMEI total length.

Signed-off-by: Jani Hirsimäki <jani.hirsimaki@nordicsemi.no>
2025-06-27 14:15:03 +02:00
Benjamin Cabé
3b0e134204 tests: net: npf: test NPF_ORIG_IFACE_[UN]MATCH rules
Add a test for the NPF_ORIG_IFACE_MATCH and NPF_ORIG_IFACE_UNMATCH
rules.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-27 14:14:49 +02:00
Daniel Marjamäki
eb80530618 sca: Fix undefined behavior during preprocessing
According to the C standard it is undefined behavior to use preprocessor
directives inside macro invocations.

Cppcheck stops when it see this UB with an error message, and so this
change will improve Cppcheck analysis

This is a refactoring to fix UB, no logical change is intended.

Signed-off-by: Daniel Marjamäki <daniel.marjamaki@cppchecksolutions.com>
2025-06-27 14:14:35 +02:00
Ren Chen
caeda699f5 drivers: spi: add it51xxx spi driver
This commit adds it51xxx spi driver.

Tested with: samples/drivers/spi_flash

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-06-27 14:14:16 +02:00
Zak Essadaoui
41a83bd3a0 usb: hid: Define sensor page usages IDs
This commit adds the following:
    * Sensor related usage IDs in the Sensors' page of the HID standard.
    * A HID usage macro that works with IDs of 2 bytes.
    * A macro to define the exponent in a report descriptor.

The values and naming came from the following document: https://www.usb.org/sites/default/files/hutrr39b_0.pdf

Signed-off-by: Zak Essadaoui <zak0@meta.com>
2025-06-27 14:14:03 +02:00
Tomasz Bursztyka
49a96f67a2 cmake: Add service section to commo-rom linker generator
struct init_entry may point to a struct device or a struct service,
each ones belonging to device or service iterable section.
Service section being newly added, handling it in cmake relevantly.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-06-27 14:13:58 +02:00
Tomasz Bursztyka
c341f5389d tests: misc: Fixing expected output on check_init_priorities test
check_init_priorities.py does no longer output any information about any
initialization function pointer as such pointer has been removed from
struct init_entry.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-06-27 14:13:58 +02:00
Tomasz Bursztyka
653f1bf123 scripts: Removing init function pointer from check_init_priorities.py
As the pointer has been removed from struct init_entry, there is no point
to look for it nor to display any information about it (obviously).

Fixing the test script as well.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-06-27 14:13:58 +02:00
Tomasz Bursztyka
175da6bdb0 init: Make entry init-function less and introduce service objects
Since the addition of deinit operation in device, init and deinit have
been within each device, rendering their init entry's init function
useless.

In order to save ROM space, let's remove the init function from
init entry altogether, and introduce a new object called "service"
which owns an init function to go along with SYS_INIT/SYS_INIT_NAMED.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-06-27 14:13:58 +02:00
Alain Volmat
e4348ad877 samples: video: capture: add a stm32mp135f_dk config
Add a configuration file for the stm32mp135f_dk board.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-27 12:25:52 +02:00
Alain Volmat
80f81e2bd4 shields: st_mb1897_cam: addition of MB1897 camera board
Addition of a shield st_mb1897_cam embedding a GC2145 CSI
sensor which can be connected to the STM32MP135F-DK via a 15pins FFC.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-27 12:25:52 +02:00
Alain Volmat
48b633cc79 boards: st: stm32mp135f_dk: add camera pipeline nodes
The STM32MP135F-DK board embeds a ST-MIPID02 CSI to DVP
bridge allowing to connect a CSI 15pins FFC cable enabled
sensor to the DCMIPP in parallel interface.
Add the ST-MIPID02 node and its dependency MCO clock as well
as partially filled DCMIPP node.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-27 12:25:52 +02:00
Alain Volmat
921b5690ff board: st: stm32mp135f_dk: align MCP230XX init prio to I2C
MCP230XX IO expander is interfaced via i2c hence it is
suffisant to align its init priority to the i2c one.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-27 12:25:52 +02:00
Josuah Demangeon
b60609adea samples: usb: add new UVC sample
Following the addition of USB Video Class, this adds a sample that makes
use of the zephyr,camera chosen node of any board to stream the video
source to the host. A snippet video-sw-generator can be used to test
and debug devices without a zephyr,camera chosen node.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-27 12:25:41 +02:00
Josuah Demangeon
7538b7bdf0 usb: device_next: new USB Video Class implementation
Introduce a new USB Video Class (UVC) implementation from scratch.
It exposes a native Zephyr Video driver interface, allowing to call the
video_enqueue()/video_dequeue() interface. It will query the attached
video device to learn about the video capabilities, and use this to
configure the USB descriptors. At runtime, this UVC implementation will
send this device all the control requests, which it will send to the
attached video device. The application can poll the format currently
selected by the host, but will not be alerted when the host configures
a new format, as there is no video.h API for it yet.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-27 12:25:41 +02:00
Josuah Demangeon
fd6e60dd7c boards: nicla_vision: add usbd test feature
The Arduino Nicla Vision board supports the new device_next USB stack
and can be used for testing USB Device features such as UVC.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-27 12:25:41 +02:00
Daniel Schultz
7f31129d70 driver: serial: uart_shell: read: Return correct return code
Always return exit code 0 when cmd_uart_read stopped reading
data from UART. Instead, return with a error code in case
reading from the UART interface failed.

Currently, this command might return with exit code -1 because
uart_poll_in didn't return data and the read duration expired.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2025-06-27 12:23:14 +02:00
Jamie McCrae
801792b47c west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  07222c1929e1d79d303baa8fde7f977a79e48e9a

Brings following Zephyr relevant fixes:

  - 07222c19 boot_serial: Avoid re-initializing state in
    boot_image_validate_encrypted
  - a18f635a boot: Remove now superfluous start_off parameters
  - c62c19db boot_serial: Use flash sectors from bootloader state
    when possible
  - 13edc5fb boot_serial: Use flash area from bootloader state when
    possible
  - f1aa499c boot_serial: Initialize a bootloader state for bs_list
    and bs_set
  - f1efd483 bootutil: loader: Expose routine to determine sector
    layout
  - 72166868 bootutil: loader: Expose routine to open/close all
    flash areas
  - 0319e91c boot: bootutil: Fix encryption/decryption size
    during copy
  - a36f9513 imgtool: Add support for HMAC/HKDF-SHA512 with
    ECIES-X25519
  - 37719169 zephyr: Support for HKDF/HMAC with SHA512
  - 1d83177c bootutil: Add support for HAMC-SHA512 with ECIES-X25519
  - 7de064ea boot: zephyr: add support for booting ARC processors
  - 72459ec0 boot: zephyr: stm32n6570_dk: define
    CONFIG_MULTIPLE_EXECUTABLE_RAM_REGIONS
  - be8b3abc boot: Zephyr: Add a Kconfig for
    MULTIPLE_EXECUTABLE_RAM_REGIONS define
  - c5011f2b zephyr: Improve logging
  - 11f9c6f2 bootutil: Improve logging coverage
  - adbe1cfb boot: stm32n6: Define specific executable region
  - 93c2b50a boot: zephyr: boards: Add configuration for
    stm32n6570_dk
  - fca80b41 boot: zephyr: defines FLASH device for external NOR
  - 78d94cf4 imgtool: bump minimal required version to 2.2.0
  - af602f81 bootutil: Replace local identifiers with common
    definitions
  - e5756df5 bootutil: Remove redundant ALIGN definitions
  - e3a271c9 bootutil: Move all encryption TLV helper identifiers
    into one place
  - 68a4c962 boot: bootutil: avoid full erase on BOOT_MAGIC_BAD
    in boot_set_next
  - 1ed0218c scripts: imgtool: Add hash for ECDSA256P1Public
  - a90ddfc7 zephyr: Fix pinreset trigger
  - e56cecc4 bootutil: Small cleanup in image.h
  - 402d3f7f boot: zephyr: Refactor DFU entry logic
  - 687dc8c5 bootutil: boot_decrypt_key: Only one
    bootutil_hmac_sha256_drop needed
  - a0065f8f bootutil: Fix boot_scramble_region escaping flash
    area
  - bb644c7c bootutil: loader: overwrite-only mode fix for
    trailer erase

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-27 12:23:07 +02:00
Fin Maaß
596cd64bb9 drivers: ethernet: use DT_INST_PROP_OR for local-mac-address
use DT_INST_PROP_OR for local-mac-address, so
that it is not required to be set in dt, as there are
other ways to se the mac address.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-27 12:22:49 +02:00
Fin Maaß
5f83aea9e4 drivers: ethernet: sensry: fix mac addr order
make sure, that zephyr,random-mac-address
has a higher prio, than local-mac-address, as
documented in ethernet-controller.yaml.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-27 12:22:49 +02:00
Fin Maaß
4b6ccbdd1f drivers: ethernet: xmc4xxx: random mac only on dt
only set a random mac if zephyr,random-mac-address
is set in dt.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-27 12:22:49 +02:00
Fin Maaß
5638d9fa47 drivers: ethernet: nxp: fix mac addr order
make sure, that zephyr,random-mac-address
has a higher prio, than local-mac-address, as
documented in ethernet-controller.yaml.

Also make sure, that no vaild mac address
doesn't lead to init fail, as it can still be
set later via set_config.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-27 12:22:49 +02:00
Fabrice DJIATSA
faf1b10d5c tests: drivers: adc: adc_api: increase adc prescaler
increase value of the adc-prescaler to avoid ADC
overrun.

adc driver related error log:
"E: ADC overrun error occurred ..."

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-27 12:22:40 +02:00
Chun-Chieh Li
7179ef51fe drivers: serial: numaker: support hw-flow-control
This honors dts config hw-flow-control to enable flow control cts/rts
at driver init stage.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-06-27 12:22:12 +02:00
Grzegorz Chwierut
1f92890283 tests: upgrade: Upgrade with mcumgr using BLE transport
Extend tests/boot/with_mcumgr with BLE configuration.
Updated sample to use the source code from smp_svr.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-06-27 12:21:56 +02:00
Grzegorz Chwierut
c6b3b9342c twister: pytest: Add support for mcumgr go tool with BLE
Added basic support to run upgrade with mcumgr tool
using BLE transport.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-06-27 12:21:56 +02:00
Pieter De Gendt
ba905d045b cmake: extensions: Check no arguments are given to zephyr_library
The zephyr_library macro does not expect any arguments, add a check for
that and similar for zephyr_library_named for no unexpected additional
arguments.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:59:22 +02:00
Pieter De Gendt
775696c297 cmake: extensions: Add macro helper for functions to have no arguments
Add zephyr_check_no_arguments that macros and functions can call to check
that no arguments are given.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-27 10:59:22 +02:00
Gaetan Perrot
fae619a916 drivers: sensor: lsm6dsv16x: fix uninitialized struct in enable_wake_int
Zero-initialize lsm6dsv16x_pin_int_route_t to fix Coverity warning.

CID: 516227

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-06-27 10:58:58 +02:00
Gaetan Perrot
5de04c61b6 drivers: video: fix uninitialized struct in ov2640_init()
Initialize fmt with default format and zero pitch to fix Coverity.

CID: 524780

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-06-27 10:58:43 +02:00
Tomasz Moń
b3e80c5faa usb: device_next: uac2: Do not leak double buffered endpoint
UDC drivers use udc_buf_get_all() when dequeueing endpoint. On drivers
that require double buffering for isochronous IN endpoint, the dequeue
on interface disable will result in class request API called on net_buf
with frags set. Call release callback on the buffer pointed in frags
because it was passed in using usbd_uac2_send().

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-06-27 10:58:33 +02:00
Kapil Bhatt
15cf0c518e doc: networking: Add doc for EAP methods
Add commands to connect with EAP-TTLS and EAP-PEAP
security modes.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-06-27 10:58:22 +02:00
Tomasz Moń
d29719e27e drivers: udc_dwc2: Disable endpoints asynchronously
Do not synchronously wait for endpoint interrupt bits when disarming
endpoints. Introduce ep_disabled k_event that makes it possible for
application to wait for the action to take effect which is necessary
when handling SetFeature(ENDPOINT_HALT) or SetInterface() requests.

This change improves incomplete iso IN and OUT handling performance,
especially when there are multiple isochronous endpoints that need
servicing.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-06-27 10:58:09 +02:00
Tomasz Moń
9aff5da68a drivers: udc_dwc2: Optimize incomplete iso handling
At High-Speed there is at most 25 us handling window for incomplete iso
IN/OUT and therefore determining which endpoints are isochronous is too
wasteful. Add lookup variable holding which isochronous endpoints are
enabled and limit the search to only enabled endpoints. For applications
with just one OUT and one IN isochronous endpoint this is optimal.

The lookup variable is updated only when mutex is held. Interrupt
handler accesses the variable read-only and in general there is no
problem is incomplete iso handling interrupt hits when the lookup
variable is updated, because:
  * when endpoint is just activated, it cannot be source of incomplete
    iso interrupt because the endpoint is not armed yet
  * when endpoint is just deactivated, it was first disabled

If there is more than one isochronous endpoint same direction then just
relying on endpoint enabled is not necessarily optimal. However, in
order to be able to limit the search to only armed endpoints, the lookup
variable would have to be updated on every transfer preparation and
completion which would require more time-expensive synchronization.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-06-27 10:58:09 +02:00
Tomasz Moń
70cd0ab567 drivers: udc_dwc2: Use spin lock for synchronization
Replace irq_lock() with spin lock which is proper synchronization
primitive that should be used. Because non-SMP implementations are
allowed to optimize spin lock to just locking interrupts the resulting
code is the same on all currently supported DWC2 targets.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-06-27 10:58:09 +02:00
David Jewsbury
c237253fe7 drivers: spi: Support spim01/spis01 instances for nordic devices
Extend SPI driver to support spims01 and spim01.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-06-27 10:58:02 +02:00
Bjarki Arge Andreasen
160c196435 tests: drivers: spi: loopback: extend nrf overlays with miso/mosi
Add miso-gpios and mosi-gpios to nrf overlays required for
device_deinit testing.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-27 10:57:59 +02:00
Bjarki Arge Andreasen
ecb5457898 tests: drivers: spi: loopback: test device_deinit
Introduce test for device_deinit() which deinitializes the spi
bus, then configures miso as input, mosi as output using gpio,
utilizing the loopback to test directly controlling the pins.
Then reinit the spi device.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-27 10:57:59 +02:00
Bjarki Arge Andreasen
2609cfbf4a drivers: spi: nrfx spim: impl device deinit
Implement device deinit for nRF SPIM device driver.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-27 10:57:59 +02:00
Bjarki Arge Andreasen
61694b79ce doc: releases: 4.2: mention new SPI_DEVICE_DEFINE deinit variants
Mention added SPI_DEVICE_DEFINE macro variants covering device
deinit.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-27 10:57:59 +02:00
Bjarki Arge Andreasen
1663253de6 drivers: spi: add DEINIT_ variants of SPI_DEVICE_ macros
Add DEVICE_DEINIT variants of SPI_DEVICE_ macros. These include

- SPI_DEVICE_DT_DEINIT_DEFINE()
- SPI_DEVICE_DT_INST_DEINIT_DEFINE()

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-27 10:57:59 +02:00
Tomasz Moń
46b11f1fb2 drivers: udc_dwc2: Inline vendor quirks if possible
Constify vendor quirks structure to not keep it in RAM. Use constified
vendor quirks structure directly if there is only one snps,dwc2 instance
to allow compiler inlining quirk implementation.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-27 10:57:47 +02:00
Andrey VOLKOV
957f10c3a0 edtlib: add new tests for 'interrupt-map'
Add tests to check the correctness of '#address-cells' usage.
The missing tests have allowed bug #77890 to persist for years.

Signed-off-by: Andrey VOLKOV <andrey.volkov@munic.io>
2025-06-27 10:57:38 +02:00
Ioannis Damigos
871afee41c edtlib: fix _raw_unit_addr() function
The '_raw_unit_addr()' function was incorrectly written a long time ago.
It tries to look up and use the '#address-cells' of the node containing
the 'interrupts' property itself, instead of using the '#address-cells' of
the interrupt controller's node (or its parent).

As a result, the mapping is successful only if the '#address-cells' value
is the same in both the node and the interrupt controller, all other cases
lead to random errors being generated by the 'gen_defines.py' script.

Also, the function was trying to use the '#address-cells' value as a
little-endian one, which led to unpredictable results as well.
This problem has been fixed too.

Fixes #77890, and probably #78020

Signed-off-by: Andrey VOLKOV <andrey.volkov@munic.io>
Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-06-27 10:57:38 +02:00
Ioannis Damigos
1b1bfc9cc8 edtlib: Improve _interrupt_parent() function
According to the following comment on github
https://github.com/zephyrproject-rtos/zephyr/pull/77900/files#r1750393745
edtlib implementation is partially correct and it is missing two things:

1. If an ancestor has an interrupt-controller or interrupt-map property,
   the walk must terminate.
2. If an interrupt-parent property is found, the linked node must be a
   valid interrupt controller or nexus.

This commit add these checks.

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-06-27 10:57:38 +02:00
Steven Chang
f548f45d1f board: kb1062_evb board
Add support for ENE kb1062_evb board

Signed-off-by: Steven Chang <steven@ene.com.tw>
2025-06-27 10:57:20 +02:00
Steven Chang
03227c3520 drivers: watchdog: watchdog driver
Add watchdog driver for ENE KB106X

Signed-off-by: Steven Chang <steven@ene.com.tw>
2025-06-27 10:57:20 +02:00
Steven Chang
7ce78aa294 drivers: pwm: pwm driver
Add pwm driver for ENE KB106X

Signed-off-by: Steven Chang <steven@ene.com.tw>
2025-06-27 10:57:20 +02:00
Steven Chang
bffb1530ab drivers: adc: adc driver
Add adc driver for ENE KB106X

Signed-off-by: Steven Chang <steven@ene.com.tw>
2025-06-27 10:57:20 +02:00
Steven Chang
43f311bf61 drivers: uart: uart driver
Add uart driver for ENE KB1200

Signed-off-by: Steven Chang <steven@ene.com.tw>
2025-06-27 10:57:20 +02:00
Steven Chang
7d2be3bbff drivers: gpio: gpio driver
Add gpio driver for ENE KB106X

Signed-off-by: Steven Chang <steven@ene.com.tw>
2025-06-27 10:57:20 +02:00
Steven Chang
d9310b6648 drivers: pinctrl: pinctrl driver
Add pinctrl driver for ENE KB106X

Signed-off-by: Steven Chang <steven@ene.com.tw>
2025-06-27 10:57:20 +02:00
Steven Chang
dcdf6d5d65 dts: ene: kb106x device tree
Add ENE KB106X device tree files

Signed-off-by: Steven Chang <steven@ene.com.tw>
2025-06-27 10:57:20 +02:00
Steven Chang
65991a8668 soc: ene: kb106x soc
Add ENE KB106X SoC

Signed-off-by: Steven Chang <steven@ene.com.tw>
2025-06-27 10:57:20 +02:00
Saravanan Sekar
e4ae7d0b56 samples: pwm: add the lp_mspm0g3507 to the blinky_pwm and led/pwm samples
The lp_mspm0g3507 has a red LED that can be driven by GPIO or PWM TIMA0
CH0, set maximum prescale and divider to arrive lower timer clock from
clock source. Add to the samples.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-06-27 10:57:05 +02:00
Saravanan Sekar
41ea399f15 boards: ti: lp_mspm0g3507: Enable PWM and PWM-LED on board
Enable PWM output to control a LED1 on lp_mspm03507 board.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-06-27 10:57:05 +02:00
Saravanan Sekar
6f6530da77 dts: arm: ti: mspm0: Add a support for TI MSPM0 Timer PWM
Add a support for TI MSPM0 advanced Timer as PWM output signal generator.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-06-27 10:57:05 +02:00
Saravanan Sekar
f7df5e84e3 drivers: pwm: Add a support for TI MSPM0 Timer PWM
TI MSPM0 SoC series has General Purpose Timer and Advanced control timers
with Compare block which is used to generate time expiry and output
waveform like PWM. Add driver support for MSPM0 PWM output.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-06-27 10:57:05 +02:00
Saravanan Sekar
8b4a97f12c dts: arm: ti: mspm0: Set timer node name per datasheet
Set timer node name per datasheet for timg0.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-06-27 10:57:05 +02:00
Saravanan Sekar
f672430b3b drivers: counter: Add vendor prefix ti to timer clock
Add vendor prefix ti to timer clock property prescale and divider.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-06-27 10:57:05 +02:00
Julien Panis
a631df5cd8 tests: drivers: spi: spi_loopback: Add testcase for cc23x0
Enable DMA for the test.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-06-27 10:56:54 +02:00
Julien Panis
5b728969ce drivers: spi: cc23x0: Add loopback mode option
When loopback mode is enabled, the output of transmit serial shifter
is connected to the input of receive serial shifter internally.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-06-27 10:56:54 +02:00
Julien Panis
7a12801623 dts: arm: ti: cc23x0: Add DMA mode support to SPI module
Add support to use DMA mode with cc23x0 SPI module. This consists in
specifying the DMA channels and peripherals.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-06-27 10:56:54 +02:00
Julien Panis
11cbfeafe6 drivers: spi: cc23x0: Add support for DMA mode
Two DMA channels are assigned to TX and RX respectively:
- A TX DMA single request is asserted when there is space in the FIFO.
- A RX DMA single request is asserted when data is in the FIFO.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-06-27 10:56:54 +02:00
Jukka Rissanen
410afbaf19 lib: zvfs: Add default eventfd count for hostap
hostap needs more eventfd to function so set a proper default value.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-27 10:56:49 +02:00
Jukka Rissanen
03ad3a32a2 manifest: Use k_fifo for IPC in hostap
Make sure to use k_fifo for IPC in hostap to save memory.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-27 10:56:49 +02:00
Jukka Rissanen
96818f45a9 hostap: Replace wifi event mechanism by k_fifo
Earlier we had socketpair to pass wifi event information from
wpa_supplicant side to zephyr adaption layer. This is now replaced
by k_fifo to save some RAM.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-27 10:56:49 +02:00
Robert Lubos
3e704256e3 net: ppp: stats: Fix net_mgmt request handler format
This has been missed in net_mgmt rework in commit
5a9a39caf3.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-27 09:43:13 +02:00
Duy Nguyen
529f420fcb boards: renesas: Fix incorrect partnumber for RSK-RX130
The part number of SOC using on RSK-RX130 is R5F51308AXFP
This commit fix the mistake

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-27 09:42:49 +02:00
Tony Han
1fe28da972 soc: microchip: sam: update NUM_IRQS default value for sama7g5
Enlarge NUM_IRQS by 32 which is the number of interrupts for
SGI (Software Generated Interrupts) and PPI (Private Peripheral
Interrupts).

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-27 09:42:36 +02:00
Tony Han
486486cac3 soc: microchip: sam-clk: optimize get_rate() for MCKx clocks
Obtain the divisor value for generate the corresponding MCKx from the
register instead of from the variable to avoid wrong result caused by
un-synced division ratios.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-27 09:42:36 +02:00
Tony Han
5a4d714d91 soc: microchip: sam-clk: optimize get_rate() for generic clocks
Obtain generic clock division ratio from the register instead of
from the variable to avoid wrong result caused by un-synced
division ratios.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-27 09:42:36 +02:00
Tony Han
a8cf696748 drivers: clock_control: microchip: sckc: optimize get_rate, get_status
Optimize sckc_get_rate() to be called without configurations in
parameter, the selection of slow clock of the timing domain directly
comes from the register.
Optimize sckc_get_status() with return value "CLOCK_CONTROL_STATUS_ON",
slow clock is always on either driven by the RC oscillator or by the
32.768 kHz crystal oscillator.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-27 09:42:36 +02:00
The Nguyen
eb1b2e06e1 drivers: i3c: shell: enable i3c shell support for renesas,ra-i3c
This commit introduces support for i3c shell on Renesas RA devices

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-06-27 09:42:22 +02:00
Ta Minh Nhat
473c550410 board: renesas: add i3c support for ra8 and ra4 boards
Enable support i3c driver for ek_ra8m1, ek_ra8d1, mck_ra8t1,
ek_ra4l1, ek_ra4e2.

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-06-27 09:42:22 +02:00
Ta Minh Nhat
33619a9a71 dts: arm: add i3c node for RA family
Add device node for ra8 and ra4 to support i3c driver.

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-06-27 09:42:22 +02:00
Ta Minh Nhat
096801f1a9 driver: i3c: initial i3c driver basic support for RA family
This commit introduces basic support for I3C master mode.

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-06-27 09:42:22 +02:00
Andrew Davis
f1bdf3c452 boards: sk_am64: Add SK-AM64 MAIN domain R5F support
Add initial support for the SK-AM64 MAIN domain Cortex-R5F cores.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-06-27 09:42:06 +02:00
Andrew Davis
5359a1e84e soc: ti: k3: Add AM64 R5F core support
The TI AM64 SoC contains two dual-core R5F clusters. Add support for
all four of these cores here.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-06-27 09:42:06 +02:00
Bjarki Arge Andreasen
3198db1b12 drivers: sensor: nxp: p3t1755: impl pm device runtime
Implement pm device runtime for p3t1755 sensor.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-26 18:51:26 -10:00
Ryan McClelland
ea8f69c6b1 drivers: i3c: create i3c bus helpers
Create bus helpers that will send ccc commands as well as update
items within the i3c descriptor. These are different than the
direct ccc functions as these can give a bit of convience to also
updating the descriptor.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-06-26 18:50:43 -10:00
Cong Nguyen Huu
1a3f46ce6e tests/samples: drivers: create test, sample for SENT driver
Create test, sample for SENT driver

Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
2025-06-26 18:50:07 -10:00
Cong Nguyen Huu
c074d201da boards: s32z270: enable support SENT
enable support SENT

Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
2025-06-26 18:50:07 -10:00
Cong Nguyen Huu
003e391a8f drivers: introduce Single Edge Nibble Transmission (SENT) driver
This driver allows to communication (receive data) with SENT device

Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
2025-06-26 18:50:07 -10:00
Henrik Brix Andersen
1f9cca43eb boards: others: canbardo: add openocd configuration
Add OpenOCD support to the CANbardo board definition.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-06-26 22:19:19 -05:00
Tony Han
9f0ca750f8 drivers: i2c: sam: fix the exception when transferring without data
The issue is found when doing shell command "i2c scan" on sama7g54-ek.
In this case no data will be transferred besides START and STOP. Data
abort would occur on accessing "msg->buf[msg->idx++]" when MMU is
enabled and "msg->idx" is very large.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-26 22:19:09 -05:00
Andrej Butok
04277560d3 boards: nxp: fix flash jedec-id
Fixes/adds jedec-id for is25wp128, is25lp064 and w25q512jvfiq flashes,
according to information from Flash data-sheets.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-06-26 22:18:44 -05:00
Bjarki Arge Andreasen
e0fa444b8d tests: drivers: i2c: target_api: extend nrf overlays with bus gpios
Add bus gpios to zephyr,user node in nrf overlays to enable testing
device_deinit test case.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-26 22:15:52 -05:00
Bjarki Arge Andreasen
db1f14e79a tests: drivers: i2c: target_api: add device_deinit test case
Add device_deinit test case which, in case there are two devices
using gpio loopbacks, deinits both controller and target devices,
then uses gpio to configure and toggle the pins of the bus, then
reinitializes both devices.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-26 22:15:52 -05:00
Bjarki Arge Andreasen
f22ffee5c3 drivers: i2c: nrfx_twis: impl device deinit
Implement device deinit hooks for nRF TWIS device driver.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-26 22:15:52 -05:00
Bjarki Arge Andreasen
bd73c739b4 drivers: i2c: nrfx_twim: impl device deinit
Implement device deinit for the nRF TWIM device drivers.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-26 22:15:52 -05:00
Bjarki Arge Andreasen
c251bee8dd doc: releases: 4.2: mention new I2C_DEVICE_DEFINE deinit variants
Mention added I2C_DEVICE_DEFINE macro variants covering device
deinit.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-26 22:15:52 -05:00
Bjarki Arge Andreasen
8a928ea1d7 drivers: i2c: add I2C_DEVICE_DT_DEINIT macros
Add device deinit variants of the I2C_DEVICE_DT_*_DEFINE macros.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-26 22:15:52 -05:00
Ishraq Ibne Ashraf
f4383430b9 soc: nxp: kinetis: Add SoC support for k32lx platforms.
Adding supporting soc files for the k32lx platforms and updating
soc.yaml.

Signed-off-by: Ishraq Ibne Ashraf <ishraq.i.ashraf@gmail.com>

soc: nxp: kinetis: k32lx: Use device tree provided value

This clock frequency value will be defined in the board device tree.

Signed-off-by: Ishraq Ibne Ashraf <ishraq.i.ashraf@gmail.com>
2025-06-26 22:15:10 -05:00
Raymond Lei
a93a80be82 drivers: nxp: flexspi: fix hyper flash hang issue
CS hold time parameter is not correct which may cause bus fault
randomly.
System hang during status register reading after flash progromming which
is caused by parameter accessing in XIP mode.
Add dummy delay for READ command according the flash datasheet which is
required for SDR mode.
Use FlexSPI internal divider for clock updating instead of register in
CCM to avoid potential risk caused by flash access during clock updating
procedure.

Signed-off-by: Raymond Lei <raymond.lei@nxp.com>
2025-06-26 22:14:38 -05:00
Qiang Zhao
2d06a90865 firmware: scmi: add set_rate api
add scmi_clock_set_rate function to set rate,
and assign it to set_rate api

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-06-26 22:11:04 -05:00
Qiang Zhao
84ed2c154b dts: arm: nxp_imx95_m7: add flexspi node
Add flexspi node on imx95 core m7

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-06-26 22:11:04 -05:00
Qiang Zhao
0337527e74 drivers: flash: flexspi: Add octal mode support for MT35 family
MT35 flashes could run in octal mode, Now the driver doesn't support
octal mode, add octal mode support for MT35 flashes.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-06-26 22:11:04 -05:00
Andrej Butok
82c723c05c tests: test_mcuboot: update the NXP board platform_allow list
- Adds new tested NXP boards to the test_mcuboot platform_allow list.
- Sorts NXP boards alphabetically.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-06-26 22:10:18 -05:00
Abhinav Kulkarni
6e6f27cb6a boards: shields: nxp_m2_wifi_bt: doc: Doc update
Updated documentation for Wi-Fi BT nxp shield.
Added information to build WPA supplicant based apps using this shield.

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2025-06-26 22:09:58 -05:00
Yishai Jaffe
40123c6775 tests: display: cfb: added tests for draw_circle API
Added tests for the newly added cfb_draw_circle API.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-06-26 22:09:48 -05:00
Yishai Jaffe
077ba1078b cfb: added API for drawing a circle
Added a new CFB API for drawing a circle. Using the Midpoint Circle
Algorithm for optimization.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-06-26 22:09:48 -05:00
Philipp Steiner
67211341ca samples: fuelgauge: unify fuel gauge sample
Replace IC specific fuel gauge example with a generic fuel gauge example
and move the fuel gauge sample to sample/drivers folder

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-06-26 22:08:44 -05:00
Philipp Steiner
c7d7c2b3da boards: adafruit: esp32s2_feather: update documentation
update because of LC709203F driver was added

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-06-26 22:08:44 -05:00
Philipp Steiner
a62b62dda8 tests: fuelgauge: Add Onsemi LC709203F driver
Add test for the Onsemi LC709203F fuel gauge

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-06-26 22:08:44 -05:00
Philipp Steiner
f7e723dad1 drivers: fuelgauge: Add Onsemi LC709203F driver
Add driver for the Onsemi LC709203F fuel gauge

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-06-26 22:08:44 -05:00
Philipp Steiner
e9b9569085 drivers: fuelgauge: format fuel_gauge.h
format fuel_gauge.h according to the clang-format settings

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-06-26 22:08:44 -05:00
Philipp Steiner
73999c16c4 drivers: fuelgauge: Add additional properties
Adds properties for current direction, charge and voltage alarms

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-06-26 22:08:44 -05:00
Adrien Maillard
c37a206673 updatehub: use the new API method in autohandler
Call updatehub_report_error() when detecting an unconfirmed image in
autohandler to ensure the server is notified of the failure before
triggering a rollback.

Signed-off-by: Adrien Maillard <adrien.maillard@edu.hefr.ch>
2025-06-26 22:07:51 -05:00
Adrien Maillard
4d73cd3980 updatehub: report error before rollback on unconfirmed image
Report the error state to the UpdateHub server before triggering a rollback
in autohandler mode. This prevents the server from redeploying the same
(failed) update after rollback, avoiding update loops. Also exposes a new
public syscall: updatehub_report_error(), allowing manual mode users to
report an error explicitly.

Signed-off-by: Adrien Maillard <adrien.maillard@edu.hefr.ch>
2025-06-26 22:07:51 -05:00
Qiankun Li
d5a9a0fa87 drivers: wifi: nxp: Fix embedded supplicant stations link mode issue.
The link mode of legacy staions is specifically
divided into Wi-Fi_1, Wi-Fi_2 and Wi-Fi_3.

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-06-26 22:07:09 -05:00
Qiankun Li
26f4d9b551 drivers: wifi: nxp: Fix getting error stations twt capability issue.
When external station connects to soft ap,
fill ap_sta_info.twt_capable with external
station HE capability.

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-06-26 22:07:09 -05:00
Qiankun Li
7ffc538d13 modules: hostap: Fix getting error stations twt capability issue.
1. When external station connects to soft ap, zephyr
   hostap will fill sta_info before sending mgmt event
   to l2 wifi layer.
   sta_info.twt_capable should be filled with external
   station capability rather than soft ap self.
2. Rename hapd_is_twt_capable to
   hapd_get_sta_he_twt_capable.
   Try to get twt_capa form capability of external station
   rather than soft ap.

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-06-26 22:07:09 -05:00
Qiankun Li
f1b781577e drivers: wifi: nxp: Fix embedded supplicant link mode issue.
1. When external stations connect to soft ap,
   Wi-Fi driver will send UAP_CLIENT_ASSOC event with data.
   nxp_wifi_wlan_event_callback will be called to process this event.
2. The data should include some basic station information
   but not only mac address of station.
3. Fill ap_sta_info with information of
   connected station but not soft ap self.
4. Fix: Wi-Fi driver send UAP_CLIENT_ASSOC event
   with basic station information.
5. Fix: ap_sta_info with information of connected station.

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-06-26 22:07:09 -05:00
Raymond Lei
0d2935218c drivers: spi: nxp: fix PCS broken issue and PCS_HOLD_ON support
Different LPSPI IPs are used for RT11xx and MCXN. On a older version of
LPSPI, a transmit command or a TX data need to be issued to end a frame.
On a new version, no such requirement.

Based on above information, we have to make DMA transfers "cascade" in
the DMA ISR to keep CS asserted during the whole SPI transfer.

PCS_HOLD_ON is a feature to keep CS asserted during multi SPI transfers.
It is implemented and supported on new LPSPI IP but it is impossible to
be supported on an older version like RT11xx.

Signed-off-by: Raymond Lei <raymond.lei@nxp.com>
2025-06-26 22:06:04 -05:00
Lyle Zhu
0c2c93d57d Bluetooth: Classic: SCO: Modify bt_sco_chan::ops with const
Use `const` to modify the field `ops` of the structure
`struct bt_sco_chan`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-06-26 22:05:25 -05:00
Lyle Zhu
256e3a1879 Bluetooth: Classic: HFP_AG: Register SCO connect callback
There is an issue that the SCO connect cannot be un-referenced by HFP
AG when the SCO connection is broken if the SCO connect is not created
by HFP AG.

Register SCO connect change callback. And un-reference the SCO connect
in SCO disconnected callback.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-06-26 22:05:25 -05:00
Lyle Zhu
78a22f461a Bluetooth: Classic: SCO: Add SCO conn connected/disconnected cb
Add two functions to register/unregister SCO conn connected/
disconnected callback.

Add macro BT_SCO_CONN_CB_DEFINE to defined static SCO connect callback.
Define section `bt_sco_conn_cb` to ROM.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-06-26 22:05:25 -05:00
Lyle Zhu
0083d8e960 Bluetooth: Classic: HFP_AG: Improve the SCO management
There are two issues found,
Issue 1, if the SCO connection has been established, the SCO connected
event will not be notified. Then the call that waiting for the SCO
connected event will not be updated. And the call will be rejected due
to the timeout.
Issue 2, the SCO con object will be cleared when SLC is disconnecting
and the SCO connection has been established. It causes the SCO connect
object will be `NULL` in the SCO disconnected callback.

Add a new field `sco_conn` to keep the SCO connect object. Manage the
SCO connection via the field `ag->sco_conn`.

When creating the SCO connection, keep the created SCO connect object
to `ag->sco_conn`. And if the `ag->sco_chan.sco` is `NULL`, it means
the SCO connection has been established. Just update the call that
waiting for the SCO connected event directly.
Increase the `ref` of SCO connect object and pass to the field
`ag->sco_conn` if the `ag->sco_conn` is `NULL`.
Decrease the `ref` of SCO connect object if the `ag->sco_conn` is not
`NULL` when disconnect the SCO connection or process SCO disconnected
event.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-06-26 22:05:25 -05:00
Declan Snyder
6aa46f4019 tests: spi: Add overlay for frdm_mcxa156 dual test
Add an overlay to the spi_controller_peripheral test for the
frdm_mcxa156. Since this IP has multiple CS, need to introduce a way to
configure the correct CS to the test; just going to use zephyr,user for
now instead of refactoring to be less nordic-specific, keeping the usage
optional.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-26 11:07:55 -10:00
Declan Snyder
eb9268ae2f boards: frdm_mcxa156: Add overlay for rework spi
Add overlay for a reworked board that breaks out LPSPI1 to the arduino
header.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-26 11:07:55 -10:00
Declan Snyder
ab9b9bfab3 spi_nxp_lpspi: Add slave mode support
Add rudimentary slave mode support to the interrupt based LPSPI driver.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-26 11:07:55 -10:00
Sylvio Alves
72b42e1d45 soc: esp32: increase HCI command TX buffer count
Increase the number of HCI command transmit buffers on ESP32 to prevent
sporadic command timeouts. This is a temporary workaround.
Upcoming changes to the BLE proprietary blobs will address the root cause.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-26 10:52:51 -10:00
Henrik Brix Andersen
33db1542ac soc: neorv32: list NEORV32 v1.11.6 as currently supported version
List NEORV32 v1.11.6 as the currently supported version. No changes to the
in-tree drivers needed for the changes between v1.11.3 and v1.11.6.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-06-26 10:52:21 -10:00
Sylvio Alves
9952180987 soc: espressif: sync hal to latest updates
1) Bring latest hal_espressif updates/sync to latest v5.1 branch.
2) Update RF libraries for bug fixes and improvements
3) Add necessary BLE Kconfig entries to support latest changes.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-26 10:51:45 -10:00
Chris Friedt
c3368f6491 posix: env: use sizeof void ptr instead of char ptr ptr
Coverity regularly raised a CID with every release that it found
`sizeof(char **)` confusing and somehow nonportable.

With every release, it needed to be marked as a false positive.

Change `sizeof(char **)` to `sizeof(void *)` to silence the
CID warnings.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-26 10:50:56 -10:00
Flavio Ceolin
44c76ee4ef doc: security: Disclose CVE-2025-2962
Disclose information about published CVE.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-06-26 10:49:14 -10:00
Flavio Ceolin
de10d08894 doc: release-notes-4.2: Vulnerability disclose
Add information about vulnerability that left embargo.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-06-26 10:49:14 -10:00
Camille BAUD
2e3790c798 doc: add timebase-frequency infos
Add timebase-frequency infos to migration guide

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-26 10:46:56 -10:00
Philipp Steiner
ebaf31c8c1 boards: adafruit: add initial support esp32s3_feather_tft_reverse
The Adafruit Feather ESP32S3 TFT Reverse is a development board in the
Feather standard layout, sharing peripheral placement with other devices
labeled as Feathers or FeatherWings. The board is equipped with an
ESP32-S3 mini module, a fuel gauge, a USB-C and Qwiic/STEMMA-QT connector.
This variant additionally comes with a 240x135 pixel IPS TFT color display
on the backside of the boards and with 3 buttons.

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-06-26 10:44:53 -10:00
Philipp Steiner
297c79b516 boards: adafruit: esp32s3_feather_tft fix size of Flash and PSRAM
fix size of Flash and PSRAM

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-06-26 10:44:53 -10:00
Tony Han
c61f7f09bc tests: drivers: rtc: sam: enable tests for sama7g54_ek
Enable tests: tests/drivers/rtc/rtc_api.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-26 10:42:39 -10:00
Tony Han
9ae210c8bf dts: microchip: sam: add RTC node for sama7g5.dtsi
The RTC node is added for sama7g5.dtsi file.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-26 10:42:39 -10:00
Tony Han
95454914bf drivers: rtc: sam: update for supporting RTC of sama7g5 devices
The basic characteristics of "atmel,sam-rtc" is the same as the ones
of sama7g5.

Differences between the RTCs listed bellow:
                    | atmel,sam-rtc | rtc in sama7g5
--------------------|---------------|----------------------
Persian calendar    |      Y        |         N
UTC Mode support    |      N        |         Y
Tamper Timestamping |      N        |         Y

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-26 10:42:39 -10:00
Cong Nguyen Huu
bb20f35ecd tests: drivers: mbox_data: exclude the drivers.mbox_data testcase on S32Z
This test case is not supported on the S32Z platform,
as it requires execution across two CPU cores

Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
2025-06-26 11:04:19 -05:00
Jamie McCrae
98853ef498 boards: nordic: nrf54l15dk: Fix wrong indent
Fixes an indent which wrongly used a tab instead of 2 spaces

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-26 11:03:46 -05:00
Benjamin Cabé
3fd1335457 dts: bindings: sensor: bmp581: drop redundant required property
`required` already defaults to false and generates a compliance error
so drop it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-26 11:03:36 -05:00
Benjamin Cabé
b3def01353 dts: bindings: ensure bindings have .yaml extension (not .yml)
Strictly speaking not a problem for in-tree tooling, but better to
have all binding files follow the same naming convention.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-26 11:03:36 -05:00
Fin Maaß
ab0c9b861e samples: add CONFIG_LOG_TIMESTAMP_USE_REALTIME
add CONFIG_LOG_TIMESTAMP_USE_REALTIME to a sample,
so building with it is tested.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-26 11:03:22 -05:00
Jérôme Pouiller
ffebf73079 drivers: wifi: siwx91x: Assign variable on declaration
When a variable is assigned once, we try to assign it during the
declaration.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 11:03:08 -05:00
Jérôme Pouiller
8d1d8d2b86 drivers: wifi: siwx91x: Prefer WIFI_MAC_ADDR_LEN
The preferred way to reference the size of the MAC address is
WIFI_MAC_ADDR_LEN.

For consistency, replace ARRAY_SIZE(mac.octet) with WIFI_MAC_ADDR_LEN.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 11:03:08 -05:00
Jérôme Pouiller
2ae23f7c58 drivers: wifi: siwx91x: Do not set unused values
We avoid to assign unused values during declaration. Hence, the reader
knows that every value assigned are meaningful. It also allow compile to
raise true warning if a value is used uninitialized.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 11:03:08 -05:00
Jérôme Pouiller
0b8f7d85bc drivers: wifi: siwx91x: Uniformize error management
Usually, the exception are treated in a condition before the nominal
case:

    ret = f();
    if (ret) {
        return -EXXX;
    }
    ... nominal case ...

siwx91x_on_join_ipv4() and siwx91x_on_join_ipv6() didn't follow this
pattern.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 11:03:08 -05:00
Jérôme Pouiller
a89dc21a2b drivers: wifi: siwx91x: Uniformize declaration of 'interface'
sl_wifi_interface_t interface is always initialized with
sl_wifi_get_default_interface().

Let's assign the value during the declaration everywhere.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 11:03:08 -05:00
Jérôme Pouiller
56fb22fba8 drivers: wifi: siwx91x: Group ARG_UNUSED() after declarations
We want to avoid declarations after statements.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 11:03:08 -05:00
Jérôme Pouiller
db2472209a drivers: wifi: siwx91x: Align the ways errors are managed
Unify the way the error code are tested:
  - sl_status_t is an alias to an int. The compiler won't complain if an
    int is assigned or compared to a sl_status_t. In the other hand,
    "int" is well known to manage error code. So, just use "int"
    everywhere.
  - Always name the return code "ret"
  - Unless it is meaningful, test the value of ret against 0
    (SL_STATUS_OK is just a convoluted way to say 0).

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 11:03:08 -05:00
Jérôme Pouiller
dd0afec087 drivers: wifi: siwx91x: Clean up included files
To avoid confusion, we prefer to only keep header files really used by the
source file.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 11:03:08 -05:00
Jérôme Pouiller
9cee7a1e57 drivers: wifi: siwx91x: Extract station related functions
siwx91x_wifi.c starts to contains to much code. Let' simplify it by
grouping all the station related functions in a separated file.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 11:03:08 -05:00
Jérôme Pouiller
5818738668 drivers: wifi: siwx91x: Extract Power Save related functions
siwx91x_wifi.c starts to contains to much code. Let's simplify it by
grouping all the power-save related functions in a separated file.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 11:03:08 -05:00
Jérôme Pouiller
9a1ebee72b drivers: wifi: siwx91x: Extract AP related functions
siwx91x_wifi.c starts to contains to much code. Let' simplify it by
grouping all the Access Point related functions in a separated file.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 11:03:08 -05:00
Jérôme Pouiller
6dd601c9f1 drivers: wifi: siwx91x: Extract scan related functions
siwx91x_wifi.c starts to contains to much code. Let's simplify it by
grouping all the scan related functions in a separated file.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 11:03:08 -05:00
Jérôme Pouiller
f6f387993f drivers: wifi: siwx91x: Fix siwx91x_wifi_socket.h syntax
Functions in siwx91x_wifi_socket.h are not declared static. So it create
duplicated symbols if the file is included twice.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 11:03:08 -05:00
Łukasz Duda
2f8a8f72ea net: openthread: Add missing include for logging in diag.c
This commit adds logging.h header to the diag.c file to ensure all
symbols are declared.

Signed-off-by: Łukasz Duda <lukasz.duda@nordicsemi.no>
2025-06-26 11:02:54 -05:00
Fabian Otto
515adfa503 soc: nxp lpc55xxxx: Enable clock on all used Flexcomm ports
Previously the clock was not attached to all Flexcomm ports. Some ports
were configured with FRO_12M, others with FRO_HF, some not at all.

Now every Flexcomm port in I2C, SPI or USART mode uses the FRO_HF clock,
if it is enabled in the device tree, to cover all use cases.

Signed-off-by: Fabian Otto <fabian.otto@rohde-schwarz.com>
2025-06-26 11:02:34 -05:00
Tim Pambor
542ea03c1a include: cbprintf: Fix call to memcpy with null pointer
cbprintf_package_convert may invoke z_cbprintf_cpy with a null pointer
to buf and zero length to indicate a flush operation. This triggers
an error from the undefined behavior sanitizer due to memcpy being called
with a null src, which is undefined behavior according to the C standard.

This is avoided by exiting early in z_cbprintf_cpy when length is zero.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-06-26 11:02:08 -05:00
Benjamin Cabé
44aaa8443b tests: lib: net_buf: add tests for net_buf_linearize()
Add tests to ensure 100% line and branch coverage of previously untested
net_buf_linearize() function.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-26 11:01:49 -05:00
Maxwell Weru
4e4646bcef doc: clarify commit email requirements in contribution guidelines
Updated the contribution guidelines to specify that pseudo or anonymized
emails (e.g., GitHub noreply addresses) are not allowed for commits.

Signed-off-by: Maxwell Weru <mburumaxwell@gmail.com>
2025-06-26 11:00:59 -05:00
Robert Lubos
2b1b509d9c tests: net: lwm2m: interop: Add custom tests for observe atributes
Add custom interoperability tests verifying that numerical observe
attributes work as expected.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-26 11:00:42 -05:00
Robert Lubos
8aa842c2c4 net: lwm2m: Prevent busy looping when active notify is set
In case a new notification is triggered while the previous one is still
active (i.e. not acknowledged), the LwM2M engine will start busy
looping, as the new notification is still valid (and supposed to be sent
after the previous one is done), but it's not sent in the current
iteration. The busy looping might prevent the system from receiving the
acknowledgment for the previous one, resulting in unresponsive system.

Fix this, by delaying the new notification timestamp a bit in such case,
so that the new notification will be scheduled for later instead of
trying to send it again right away.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-26 11:00:42 -05:00
Robert Lubos
a9c30d73f8 net: lwm2m: Implement gt/lt/st attributes handling
While it was possible to specify Greater Than / Less Than / Step
observe attributes for a resource, they were not taken into
consideration when evaluating notification criteria. This commit adds
support for checking if the resource value meets the value criteria
specified by gt/lt/st attributes.

Note that gt/lt attributes are thresholds - notification should only
sent if the resource value crosses them.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-26 11:00:42 -05:00
Robert Lubos
1bfd2ab4fd net: lwm2m: Update value of resources in notification registry
Update the value stored in the notification registry whenever
notification is sent (for those resources that have gt/lt/st attributes
assigned).

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-26 11:00:42 -05:00
Robert Lubos
1ee6943cb5 net: lwm2m: Implement notified value registry for gt/lt/st attributes
Greater than, Less than and Step attributes require to track the last
notified value of a resource/resource instance in order to be able to
apply the specific thershold/step rules that the attributes define.

Therefore, implement a simple registry of the last notified values. When
one of the gt/lt/st attributes is configured on a resource/resource
instance, a registry entry is allocated for respective resource.
Whenever a notification is sent (either as a reply to Observe message,
or proactively) the registry is updated for the notified resources.

The stored resource values have been unified as "double" variables, to
avoid implementation complexity of having to support different
integer/floating point resource types.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-26 11:00:42 -05:00
Robert Lubos
46aaf287da net: lwm2m: Do not apply gt/lt/st attributes to incompatible resources
gt/lt/st attributes can only be applied to numerical resources according
to LwM2M specification (and common sense), hence verify that when
attributes are assigned.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-26 11:00:42 -05:00
Alain Volmat
a8d269915d shields: st_b_cams_imx_mb1854: rename 22pins CSI into CSI
Following renaming of the raspberry csi connector nexus,
rename all places when csi 22pins is mentioned to only keep
csi instead.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-26 10:59:54 -05:00
Alain Volmat
5ff7fa77fe boards: stm32: stm32n6570_dk: rename 22pins CSI into CSI
Following renaming of the raspberry csi connector nexus,
rename all places when csi 22pins is mentioned to only keep
csi instead.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-26 10:59:54 -05:00
Alain Volmat
616c6ed21f dts: bindings: support 15-pin and 22-pin RaspberryPi CSI camera connector
Update the RaspberryPi CSI camera connector nexus gpio in order to only
expose the list of GPIO pins in order to support both 15-pin and 22-pin
connectors as well as 15-pin to 22-pin conversion cables.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-26 10:59:54 -05:00
Romain Jayles
684b90e6b3 bluetooth: stm32wbax: add temperature calibration of linklayer
This patch allows to link the request of the linklayer for a
temperature calibration to the temperature driver.
The linklayer will then adapt and trigger its calibration related to
the current temperature.

Signed-off-by: Romain Jayles <romain.jayles@st.com>
2025-06-26 10:59:31 -05:00
Romain Jayles
94b82655fa drivers: bluetooth: dedicated Kconfig for the STM32WBA configuration
Adds a Kconfig for the STM32WBA associated BT configuration

The first configuration added is the possibility to activate the
calibration of the radio using the temperature

Signed-off-by: Romain Jayles <romain.jayles@st.com>
2025-06-26 10:59:31 -05:00
Romain Jayles
dd79c81876 west.yml: references hal_stm32 pull request for temperature calibration
Add the pull request reference #283 of hal_stm32 related to temperature
calibration activation

Signed-off-by: Romain Jayles <romain.jayles@st.com>
2025-06-26 10:59:31 -05:00
Marco Widmer
07b4f30b2d pytest twister harness: increase timeout when stopping subprocess
When running pytest tests with coverage enabled, the test process starts
to write the coverage data when it receives the SIGTERM signal. On slow
machines, this can take longer than 0.5s. Increase the timeout and only
attempt to kill the process if it is still running after the timeout.

Signed-off-by: Marco Widmer <marco.widmer@bytesatwork.ch>
2025-06-26 10:59:12 -05:00
Sai Santhosh Malae
957ef08cc2 tests: counter: siwx91x: counter_basic_api test support
1. Add counter tag in siwx91x board yaml files
2. Enable sysrtc node for siwx917_rb4342a through overlay

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-06-26 10:58:34 -05:00
Sai Santhosh Malae
b914c7f1a1 tests: dma: siwx91x: loop_transfer test support
Add siwx917_rb4338a and siwx917_rb4342a overlays
for loop_transfer test

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-06-26 10:58:34 -05:00
Sai Santhosh Malae
ff8a8a2d25 tests: dma: siwx91x: update scatter gather testcase.yaml
Include siwx917_rb4338a board

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-06-26 10:58:34 -05:00
Sai Santhosh Malae
3be571dd1d tests: dma: siwx91x: scatter_gather test support
Add scatter gather test support for siwx917_rb4342a

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-06-26 10:58:34 -05:00
Sayooj K Karun
41adc8a61a include: zephyr: sys: Refactor MIN_HEAP_DEFINE macro
Remove calling of `min_heap_init()` from MIN_HEAP_DEFINE

Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2025-06-26 11:58:05 -04:00
Sayooj K Karun
ff657071ce include: zephyr: sys: Assert in min_heap_get_element
Assert in `min_heap_get_element()` if heap is NULL

Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2025-06-26 11:58:05 -04:00
Sayooj K Karun
e719ba239f include: zephyr: sys: simplify MIN_HEAP_FOREACH macro
Refactor the `MIN_HEAP_FOREACH` macro to use a cleaner
for-loop style removing the need for a third `body` argument.
Update the sample application with the new macro changes.

Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2025-06-26 11:58:05 -04:00
Sayooj K Karun
964a832702 lib: min_heap: Refactor heapify_up/down functions
Remove using `swap()` which was using VLA and replace it
with `byteswp()`.
Reduce the scope of local variables in `heapify_up/down` to
the smallest necessary block.
Replace `while(true)` loop in `heapify_down()` with a bounded `for`
loop.

Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2025-06-26 11:58:05 -04:00
Dave Joseph
cabf2c4d1d tests: power: tisci: TISCI power domains test
Test for power domains driver based on TISCI API added. This test is
for the target am243x_evm/am2434/r5f0_0.

Signed-off-by: Dave Joseph <d-joseph@ti.com>
2025-06-26 10:57:45 -05:00
Dave Joseph
cdea43c7c3 dts: arm: ti: PD support for AM243x EVM in DT
Adds power domain config for AM243x EVM to the device tree.

Signed-off-by: Dave Joseph <d-joseph@ti.com>
2025-06-26 10:57:45 -05:00
Dave Joseph
76905a8e54 drivers: power_domain: Power domain TISCI driver support
Support added for power domain regulation using TISCI added for
devices using the binding ti,sci-pm-domain.
This driver relies on the TISCI layer to make calls to the
device manager core to perform power management.

Signed-off-by: Dave Joseph <d-joseph@ti.com>
2025-06-26 10:57:45 -05:00
Rafał Kuźnia
558f26eaf9 modules: hal_nordic: nrf_802154: set clock startup latency
The clock startup latency is now obtained from the clock driver and the
nrf-802154 is now set to a value that matches hardware capabilities.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-06-26 10:57:12 -05:00
Rafał Kuźnia
d0a076984b boards: nordic: nRF54L15DK: set HFXO clock latency to 854
The HFXO used on nRF54L15 DK has the typical startup latency of 854us.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-06-26 10:57:12 -05:00
Rafał Kuźnia
0eb182a120 modules: hal_nordic: nrf_802154: CCA threshold config in dBm
The nrf-802154 component of hal_nordic is updated.
The CCA threshold configuration is now done in dBm units, instead of
hardware-dependent scale.
Fixed a bug, where the CONFIG_NRF_802154_CCA_ED_THRESHOLD units were
different from the NRF_802154_CCA_ED_THRESHOLD units. Now all
configuration is done in dBm.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-06-26 10:57:12 -05:00
Jeppe Odgaard
dffbd4fc88 license: fix copyright owner
Change license owner to Prevas due to initially wrong owner due to company
mix-up during co-development.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-06-26 10:56:48 -05:00
Ryan McClelland
d0d9894070 drivers: sensor: bmm350: expose magnetic reset
This exposes a driver specific function to perform a
magentic reset by the application.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-06-26 10:55:54 -05:00
Ryan McClelland
8cdaf1db99 drivers: sensor: bmm350: run clang-format
Run clang-format on files

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-06-26 10:55:54 -05:00
Ryan McClelland
dc6594997c drivers: sensor: bmm350: nit picky cleanup
There were a lot of places where the return value was sum'ed up
which can be slightly easier to read, but can give an odd return
value in the end. This changes it to just return immediately if
an error is seen.

There was also runtime NULL checking of input arguments that are
rather programmer clown prevention. Change these to asserts.

The return value didn't have a consistant type through the file,
make it consistently an int.

This changes the name of the return value of fix_sign to be
signed_value differenating it from the ret name used elsewhere.

Use the sizeof(buffer) as the argument for reg reads and writes
rather than a hard number.

Some log messages ended with '\n'. Remove all these.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-06-26 10:55:54 -05:00
Ryan McClelland
e636fb2dd1 drivers: sensor: bmm350: add pad ctrl and int ctrl dts config
Add configurations for setting the pad drive strength and the
interrupt active high/low and od/pp.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-06-26 10:55:54 -05:00
Ryan McClelland
d2fdf52d43 drivers: sensor: bmm350: fix handling interrupt race condition
There is a race condition where an interrupt can fire before the
drdy_handler is registered. The drdy_handler will tradionaly
callback the sample get clearing the interrupt... but if it's not
configured and NULL, the interrupt will stay forever latched. Read
the interrupt status to clear the interrupt flag allowing it to
trigger again.

Also, move the serial api function helpers in to the header
allowing them to be used from other c files.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-06-26 10:55:54 -05:00
Ryan McClelland
c7e1f0b3da drivers: sensor: bmm350: fix no averaging val for oversampling
Fix the oversampling value to be 1 from 0 for no oversampling to be
consistant with other sensor drivers.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-06-26 10:55:54 -05:00
Ryan McClelland
b1dac48faa drivers: sensor: bmm350: add default odr/osr
Add a way to define the default odr and osr with devicetree for
the bmm350.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-06-26 10:55:54 -05:00
Ryan McClelland
8720b2368e drivers: sensor: bmm350: add attr_get
Add the attr_get api. Also rename functions where they implied
accelerometer to imply magnetometer.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-06-26 10:55:54 -05:00
Miguel Gazquez
68795fc021 boards: arduino_nano_33_ble: add lsm9ds1 magnetometer sensor to device tree
Describe the magnetometer part of the lsm9ds1 sensor, available in the
Arduino Nano 33 BLE through I2C.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-26 10:55:11 -05:00
Miguel Gazquez
d3cae7ee92 drivers: sensors: add driver for the magnetometer in lsm9ds1
This driver supports the magnetometer in the ST lsm9ds1 sensor, on the
I2C bus.
This driver does not support the triggers.
This driver use the stmemsc HAL.

link: https://www.st.com/resource/en/datasheet/lsm9ds1.pdf

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-26 10:55:11 -05:00
Miguel Gazquez
8362e603bb dts: bindings: add DT bindings for the lsm9ds1 magnetometer
This commit adds a description for the magnetometer part of the lsm9ds1
sensor.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-26 10:55:11 -05:00
David Jewsbury
0285cf4235 drivers: clock_control: update nrf2 lfosc_get_accuracy
Move lfosc_get_accuracy away from common library as
not all devices need this function.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-06-26 14:13:54 +02:00
David Jewsbury
bd5aefb58b tests: drivers: Update nrf2 clock control tests for nrf2_auxpll driver
Test added for new nrf2_auxpll driver. Frequency checks are
against known usecases of the auxpll (USB, CAN and AUDIO).
Also update test to be more modular, only running certain tests
if in the devicetree.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-06-26 14:13:54 +02:00
David Jewsbury
9087e82c9f drivers: can: update clock control to use nrf2_auxpll
Auxpll driver has been refactored to use nrf2 API instead.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-06-26 14:13:54 +02:00
David Jewsbury
49b0f1abb8 drivers: clock_control: refactor nrf_auxpll driver to nrf2
Refactor of previous clock_control_nrf_auxpll.c to use
the nrf2 clock control API

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-06-26 14:13:54 +02:00
David Jewsbury
b4a9b8e3de dts: vendor: nordic: nrf54h20 update canpll to use auxpll binding
Added new binding for macros of possible auxpll frequency settings.

Will be used in future products also.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-06-26 14:13:54 +02:00
David Jewsbury
8b5ff6ab36 dts: bindings: clock: add nordic,nrf-auxpll
Introduce Nordic NRF AUXPLL binding include.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-06-26 14:13:54 +02:00
Jérôme Pouiller
18d16eb3bf boards: silabs: siwx91x: Fix PM with rb4342
Currently twister complains:

    benchmark.kernel.footprints.pm on siwx917_rb4342a/siwg917m111mgtba
    error (CMake build failure - warning: SILABS_SLEEPTIMER_TIMER (defined
    at soc/silabs/silabs_s2/Kconfig.defconfig:17,
    drivers/timer/Kconfig.silabs:4) has direct dependencies
    (SOC_FAMILY_SILABS_S2 || SOC_FAMILY_SILABS_SIWX91X) &&
    DT_HAS_SILABS_GECKO_STIMER_ENABLED && SYS_CLOCK_EXISTS with value n,
    but is currently being y-selected by the following symbols:)

So, SILABS_SLEEPTIMER_TIMER can't be selected because
DT_HAS_SILABS_GECKO_STIMER_ENABLED is not selected.

We just have to enable the proper timer in the DT of rb4342s to fix the
issue.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 14:09:25 +02:00
Jérôme Pouiller
3fe7c5706a manifest: Update reference for hal_silabs
The test benchmark.kernel.footprints.pm currently generate these warnings
during the link:

    [204/209] Linking C executable zephyr/zephyr_pre0.elf
    .../ld.bfd: warning: orphan section `.udma_addr1' from \
        `zephyr/libzephyr.a(UDMA.c.obj)' being placed in   \
        section `.udma_addr1'
    [209/209] Linking C executable zephyr/zephyr.elf
    .../ld.bfd: warning: orphan section `.udma_addr1' from \
        `zephyr/libzephyr.a(UDMA.c.obj)' being placed in   \
        section `.udma_addr1'

Last version of hal_silabs provide a workaround for this issue.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-26 14:09:25 +02:00
Aleksandr Khromykh
b6a0f4e072 bluetooth: mesh: remove unused functionality
Commit removes unused host hci custom functionality
that was moved to mesh by misinterpretation of it.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-06-26 14:09:01 +02:00
Håkon Amundsen
e96a63ad82 soc: nordic: 54h20: fix typo ETX -> EXT
Fix typo in BICR schema

Signed-off-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
2025-06-26 14:08:48 +02:00
Fin Maaß
da09ee1200 logging: fix storage size of 'tspec' isn't known
fix storage size of 'tspec' isn't known
struct timespec wasn't defined anymore.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-26 14:08:35 +02:00
Jukka Rissanen
9f46048159 tests: net: dhcpv4: client: Add DNS server deletion test
Make sure net_dhcpv4_stop() will generate DNS server deletion events.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-26 14:08:19 +02:00
Jukka Rissanen
29e0272454 tests: net: dhcpv4: client: Remove checks for DNS server removal
As the net_dhcpv4_stop() will now properly remove DNS servers, remove
the loop check so that the add event gets tested again.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-26 14:08:19 +02:00
Jukka Rissanen
405cb449c8 doc: migration-guide-4.2: Add DNS server reconfiguration info
Add information how the DNS reconfiguration API functions
dns_resolve_reconfigure() and dns_resolve_reconfigure_with_interfaces()
have changed.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-26 14:08:19 +02:00
Jukka Rissanen
f1a9ff97cb net: shell: dns: Print info about DHCP added servers
Print information which DNS servers were added by DHCP when
listing DNS servers in "net dns" command. This helps debugging
DNS server issues.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-26 14:08:19 +02:00
Jukka Rissanen
25084203c2 net: dhcp: Remove only added DNS servers when stopping
Make sure that we remove only the added DNS servers when
the DHCP is stopped.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-26 14:08:19 +02:00
Jukka Rissanen
cdc6c324d7 net: dns: Save info about source when configuring DNS servers
Remember which DNS server was added by a source like DHCPv4 or v6
message. This will allow system to remove DNS servers that were added by
that source. Then when stopping for example DHCP, we can remove those
specific DNS servers and not leaving DNS servers hanging in the system.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-26 14:08:19 +02:00
Sebastian Głąb
031040872e drivers: i2c: Support i2c23 and i2c24 instances
Extend I2C driver with possibility to use
- TWIM23, TWIM24,
- TWIS23, TWIS24.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-06-26 14:07:55 +02:00
Bjarki Arge Andreasen
652635fab9 drivers: pinctrl: nrf: patch pin retain to follow lp mode
Pins can be configured to retain their config even when the power
domain they belong to is suspended. Update pinctrl_nrf to enable
retain only if the pin has been configured and is not in use
(pincnf is low-power/sleep), disable retain otherwise.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-26 14:07:43 +02:00
Bjarki Arge Andreasen
691b3356f8 drivers: gpio: nrfx: extend pin retain to every pin
The usage of nrf_gpio_port_retain_disable/_enable, in cases where
the soc pins support retention, every pin must be
retained/unretained regardless of what power domain the pad is in.

This patch ensures retain is applied to all pins in all domains by
the gpio_nrfx device driver, not only pins specifically in the
fast_active_1 domain. Without this patch, pinctrl will correctly
retain pins, while gpio_nrfx will fail to unretain them when
again.

We no longer check the output state either, which was passed with
the flags arg of gpio_nrfx_gpd_retain_set() so this arg has been
removed.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-26 14:07:43 +02:00
Julien Racki
d418512473 drivers: clock_control: stm32: Fix STM32MP13 gate clock disable
The STM32MP13 clock control has set and clear registers
for the clocks. So clearing the set register won't have any effect.
Instead, we should write on the clear register.

Signed-off-by: Julien Racki <julien.racki@st.com>
2025-06-26 14:07:25 +02:00
Krzysztof Chruściński
0b9b6b4b85 debug: cpu_load: Fix overflow when measurement window is long
Use 64 bit values for accumulating idle time and measurement window
as it was possible to get overflow if window was long enough.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-06-26 14:07:12 +02:00
Duy Nguyen
5465fc3f8c boards: renesas: Doc update for RSK-RX130 boards with SDK 0.17.1
From Zephyr SDK 0.17.1 the RX architecture is supported so
update the documentation of RX130 board to reflect this

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
f2d30ab55b tests: kernel_workq: Excluding test for qemu_rx
Excluding this test for qemu_rx because it's failing randomly
Root cause not identified yet, #92213 is created to keep track
of this
This test case is working fine on actual RX HW so issue might be
in the inside the qemu environment

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
75c5043d36 boards: renesas: rsk_rx130: Add missing ioport node define
Board device tree is missing ioport3 status set okay for
button. Add missing ioport3 enable

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
8322b22391 CMakeList: Disable gapfill for RX target
Ignore gapfill for RX target as some RX toolchains generate wrong
output image when running gapfill for binary format.

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
cda7ff7ebd github: hello_world_multiplatform: Adding rx-zephyr-elf
Adding rx-zephyr-elf for testing rx target

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
c9ac0d406c dts: rx: Update interrupt-controller node
Update interrupt controller node to be compatible with new
binding configuration

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
28d8e5b5d7 boards: renesas: Add zephyr toolchain to rsk_rx130 board
Add zephyr toolchain support to rsk_rx130 board

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
9541fceb11 test/subsys/jwt: Work around for qemu_rx support
The qemu_rx some how with too big offset in "mov" instruction
cannot manipulate the memory correctly
This commit reconfigure the slot count to reduce the size of
psa_global_data_t struct so that issue on qemu_rx not occur

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
5ac1e5e39e samples: Add exclusion for twister harness on qemu_rx
The qemu_rx is having issue with twister harness, command cannot
be send from twister test to qemu console, this commit temporary
disable them for further checking

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
50c5d3c878 test: zbus: Disable icount shift on qemu_rx
Somehow icount shift making this test fail on qemu_rx target
maybe clock rate on RX is too low, as work around I disable
the icount shift for this test case on qemu_rx

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
90c3fb87b5 dts: rx: Fix incorrect ram size information for RX
The RX QEMU platform SRAM size is 96KB, this commit correct the
device tree information

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
250465566b tests: error_hook: Workaround for RX architecture
GCC for RX would crash with an internal compiler error during
DWARF frame generation in `dwarf2out_frame_debug_adjust_cfa()`
when compiling the `trigger_fault_illegal_instruction()`
test function.

This patch adds `__builtin_unreachable()` to help the compiler
reason about control flow, preventing incorrect DWARF CFA
generation.

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
e0a13a6d70 boards: qemu_rx: Add ignore can test
qemu_rx platform doesn't support can bus so we skip this test

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
0b52a83104 tests: libcxx: Update missing CONFIG_COMMON_LIBC_MALLOC
The prj.conf was missing CONFIG_COMMON_LIBC_MALLOC causing
warning of the depended config CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
7cedefee83 board: qemu_rx: Ignore net and bluetooth related test for qemu_rx
Add testing filter to ignore net and bluetooth test for qemu_rx

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
f92b70bdb0 include: arch: rx: Change noinit region to be after bss
Change noinit region to be after bss so that it would not cause
alignment issue for the data region setup

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Minh Tang
8ce9e11242 lib: posix: Update attribute packed for posix_thread_attr
Add attributed packed for struct posix_thread_attr when arch is RX

Signed-off-by: Minh Tang <minh.tang.ue@bp.renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
c0926e5670 tests: interrupt_util: Update RX irq trigger method
The QEMU RX doesn't allow to write value to IR flag,
There is also mentioned in RX HWM that the IR should
not be write 1 to. So we change the method to trigger
interrupt here is to call directly to SW irq table

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
8b0871c5e5 kernel: memslab: Prevent pointer underflow in free list init
The "p -= slab->info.block_size;" is causing the "p" pointer
to be underflow in RX architecture case, where the RAM address
start from 0x0, in some case p minus block size make it underflow
This change implementation uses an index-based reverse loop to
safely iterate over each block from last to first.

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
58ed8c16d6 include: arch: Update missing rx/exception.h include
Add missing zephyr/arch/rx/exception.h for RX architecture

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
5c293b9915 drivers: serial: Fix issue qemu rx cannot input console
The source code is missing the Receive enable in serial
poll-in function so the status flag will never become affect
and data will never be read
Add the RE write before checking for receive status flag

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
d18f879566 include: arch: rx: Change data symbol name
The RX linker is using the name "data" for .data region start
which caused the application cannot use "data" for variable
naming globally.
This commit change the name to "__data_region_start" as expected
in the linker_defs.h file

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
8f93f8cd1e arch: rx: Add simple sys_arch_reboot for RX architecture
Add simple sys_arch_reboot for RX architecture to conduct CI

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
2a332517c1 arch: rx: Add ARCH_EXCEPT for RX architect
Adding ARCH_EXCEPT for RX architect by using unconditional
trap interrupt no 3.

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Keith Packard
0463827f92 compiler/gcc: Add rx compiler flags to linker too
Many of these affect the library search path.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-26 14:07:03 +02:00
Keith Packard
cecde08586 subsys/mgmt: Declare PROCESSOR_NAME for RX targets
Map the current set of RX CPU variants into descriptive names

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-26 14:07:03 +02:00
Keith Packard
a8eed43491 scripts/logging: Add RX config detection
The RX arch uses the CONFIG_RX kconfig symbol

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-26 14:07:03 +02:00
Keith Packard
209c723b3f scripts/logging: Skip log symbols of zero size
I'm not sure why this was necessary, but analyzing RX
executables was crashing with a divide by zero error on a
symbol which appeared to be duplicated in this list.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-26 14:07:03 +02:00
Keith Packard
296d81ad58 scripts/logging: Allow targets that prefix global symbols with '_'
RX adds an underscore to all global symbols, so when we look for
log_const_ globals, we need to allow for that.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-26 14:07:03 +02:00
Keith Packard
4b1c96f377 subsys/debug: Stub out debug thread info for RX arch
This architecture is missing lots of support bits. Stub out this piece so
we can get more things building.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-26 14:07:03 +02:00
Keith Packard
8d9ae3873c tests/arch/rx: Remove unused variable 'events'
This causes a compile error.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-26 14:07:03 +02:00
Duy Nguyen
85e60bd07f boards: qemu: Add zephyr toolchain to qemu_rx
Add Zephyr toolchain to qemu_rx boards to support CI

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-26 14:07:03 +02:00
Keith Packard
dc52b4aef0 arch/rx: Add missing linker script fragments
There were lots of missing chunks, including those necessary for C++
support.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-26 14:07:03 +02:00
Lewis Lee
39f3a62dc1 drivers: i2s: Added Apollo510 I2S driver.
I2S driver support standard format, short/long sync, left/right justified.
Supporting 2 channels as a default.

Signed-off-by: Lewis Lee <llee@ambiq.com>
2025-06-26 14:06:49 +02:00
Lewis Lee
6d34549ff3 drivers: audio: dmic: Add Apollo510 PDM driver for DMIC.
Add PDM driver for DMIC.
This driver is compatible with samples/audio/dmic application.

Signed-off-by: Lewis Lee <llee@ambiq.com>
2025-06-26 14:06:49 +02:00
Jamie McCrae
3d11c84cfb tests: fs: littlefs: Fix nRF54L15-based dtc overlay files
Fixes these files to no longer delete non-secure partitions as
they are not present, and updates the offset of the area to use

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-26 12:43:28 +02:00
Etienne Carriere
d54c550ba9 soc: st: stm32wbax: refcount backup domain accesses requests
Add LINKLAYER_PLAT_EnableBackupDomainAccess()  and
LINKLAYER_PLAT_DisableBackupDomainAccess() to use Zephyr resources
that use a reference counter for access requests, for enabling
and disabling access the BackupDomain resources.

Bump hal_stm32 module to the revision integrating related stm32wba
BLE updates.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-06-26 12:43:17 +02:00
Etienne Carriere
4bce536cc6 drivers: clock_control: stm32: release Backup Domain access refcount
Fix STM32 WBA and H7 clock drivers to release the reference counter
added to access LSE configuration controllers once the clock is
configured. Keeping such an unbalanced access request is no more
needed since SoC functions manage reference counting of access requests.

Fixes issue 90942.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-06-26 12:43:17 +02:00
Etienne Carriere
8da20047cc drivers: clock_control: stm32: refcounter for Backup domain accesses
Use recently added SoCs functions to request access to SoC backup
domain resources These function use a reference counter to track these
request and ensure the resources are accessible as long as at least a
consumer requires access.

By the way, correct stm32_hsem.h header file inclusion that requires
brackets (<>) delimiters, not double quotes, as per convention on header
location.

Fixes issue 90942.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-06-26 12:43:17 +02:00
Etienne Carriere
c7ea5a89e6 drivers: rtc: stm32: refcounter for Backup domain accesses
Use recently added SoCs functions to request access to SoC backup
domain resources These function use a reference counter to track these
request and ensure the resources are accessible as long as at least a
consumer requires access.

By the way, move inclusion of stm32_hsem.h header file after inclusion
of the LL header files and Zephyr header standard files.

Fixes issue 90942.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-06-26 12:43:17 +02:00
Etienne Carriere
5a279d9309 drivers: counter: stm32: refcounter for Backup domain accesses
Use recently added SoCs functions to request access to SoC backup
domain resources These function use a reference counter to track these
request and ensure the resources are accessible as long as at least a
consumer requires access. When we're done accessing RTC registers and
other protected resource, release the access refcount.

By the way, simplify rtc_stm32_read() when COUNTER_NO_DATE is defined
that used a useless extra local variable.

By the way, correct stm32_hsem.h header file inclusion that requires
brackets (<>) delimiters, not double quotes, as per convention header
location.

Fixes issue 90942.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-06-26 12:43:17 +02:00
Etienne Carriere
c99715a866 drivers: bbram: stm32: reference counter for Backup Registers accesses
Use recently added SoCs functions to request access to SoC backup
domain resources These function use a reference counter to track these
request and ensure the resources are accessible as long as at least a
consumer requires access.

Fixes issue 90942.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-06-26 12:43:17 +02:00
Etienne Carriere
7514c1aedc soc: st: stm32: reference counter for Backup SRAM accesses
Use recently added SoCs functions to request access to SoC backup
domain resources These function use a reference counter to track these
request and ensure the resources are accessible as long as at least a
consumer requires access.

Fixes issue 90942.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-06-26 12:43:17 +02:00
Etienne Carriere
e3c2036994 soc: st: stm32: reference counting for backup domain accesses
Add SoC functions to enable/disable STM32 backup Domain access
and use a reference counter to track requests. These helper functions
may be called from a interrupt context. On domain access enable, the
function loops until written bit is set however this is expected to be
effective after very few clock cycles and seems not even required
(not mentioned in any SoC documentation). The loop is preserved as
used in previous implementation.

Among all supported STM32 SoCs, only STM32C0 and STM32WB0 series do not
implement this mechanism hence add option CONFIG_STM32_BACKUP_PROTECTION
that is enabled for all SoC series but these 2.

Fixes issue 90942.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
2025-06-26 12:43:17 +02:00
Adam Kondraciuk
645fb26670 tests: drivers: i2s: Run I2S tests on nRF54H20
Enable test execution on nRF54H20 target.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-26 12:42:59 +02:00
Alberto Escolar Piedras
ce0d65a35c manifest: Update hal_nordic with updated cracen hal and rng driver
Update with the latest nordic hal which includes an updated
CRACEN driver which supports the 54LM20 and newer devices

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-26 12:42:53 +02:00
Maxwell Weru
a972203871 net: lib: tls_credentials: clarify secure tag usage for TLS credentials
Updated documentation to clarify that while credential pairs should
generally share the same secure tag for subsystems supporting multiple
credentials per tag, some implementations may expect only one credential
per tag.

Signed-off-by: Maxwell Weru <mburumaxwell@gmail.com>
2025-06-26 12:42:41 +02:00
Daniel Leung
12ed0528b3 Revert "drivers: serial: ns16550: Fix TX IRQ not triggered...
...when FIFO is empty"

This reverts commit 47e43d552e.

This is breaking sample.sensor.shell.pytest where characters
are either missing or repeated when printing to the console.

Originally this is just for RISC-V with PLIC interrupt
controller. That was made more general to avoid having arch
specific code in a generic driver. And now it is breaking
on non-RISC-V platforms. Note that the QEMU RISC-V boards
all have PLIC as interrupt controller and are passing sensor
shell pytest without this workaround. So this does not seem
to be an issue with PLIC and NS16550.  So revert the commit
for now.

Fixes #92187

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-06-26 12:42:11 +02:00
Mathieu Choplain
d41716f63c boards: st: stm32n6570_dk: add stlink_gdbserver runner
Add support for the stlink_gdbserver runner to the aforementionned board.
Update the "Debugging" section of the board documentation accordingly,
along with cleaning up the existing text.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-26 11:20:08 +02:00
Mathieu Choplain
bab3ab2d49 boards: st: nucleo_n657x0_q: add stlink_gdbserver runner
Add support for the stlink_gdbserver runner to the aforementionned board.
Update the "Debugging" section of the board documentation accordingly,
along with cleaning up the existing text.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-26 11:20:08 +02:00
Chun-Chieh Li
2fd79998d0 drivers: wifi: esp_at: fix +CIPRECVDATA parsing for AT 1.7
This fixes +CIPRECVDATA parsing for AT 1.7. Per AT 1.7 spec,
remote ip/port is not replied.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-06-26 11:19:56 +02:00
Qiankun Li
702221da2d drivers: wifi: nxp: Fix TWT setup issue.
When try to set twt, system will try to
get interface status firstly.
In shim driver, miss filling twt_capable field.
The twt_capable is set as false by default.
Failed to set twt because of incorrect
twt_capable.

Add enhance code to fill twt_capable field
in shim driver.

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-06-26 11:19:48 +02:00
Fabrice DJIATSA
7900f8d4ee tests: drivers: uart: async_api: update wba55cg clock frequency
With the current configuration, we encounter a user setting error
during the test with the log:
"Wrong number of bytes received, got: 2, expected: 3."

Workaround:
Increase the clock frequency to enable faster data transmission
and avoid user setting errors.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-26 11:13:30 +02:00
Fabrice DJIATSA
28c766b957 tests: drivers: uart_async_api: add tx buffer in nocache memory
Since nucleo_f746zg has NOCACHE_MEM defined
(related to test cases drivers.uart.async_api.nocache_mem
and drivers.uart.async_api.nocache_mem_dt.nucleo_f746zg),
the TX buffer should be placed in a non-cacheable memory region
for the uart_async_var_buf_length testsuite to pass.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-26 11:13:30 +02:00
Aleksandr Khromykh
81c636ac7f doc: release-notes-4.2: Information abot tc deprecation in mesh
Commit adds information about the removal of
the TinyCrypt crypto in Bluetooth Mesh.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-06-26 11:13:19 +02:00
Aleksandr Khromykh
b408445b4d bluetooth: mesh: remove tinycrypt support
Tinycrypt support deprecated in Zephyr 4.0 release.
Time to remove it.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-06-26 11:13:19 +02:00
Guennadi Liakhovetski
3f5f981f16 soc: intel_adsp: fix debug window number
Fixes: commit 5f4b51f9b1 ("soc: intel_adsp: add a debug window slot
descriptor") - restore the maximum debug slot number. The added slot
resides in page 0, not at the end of the array. The bug didn't have
any run-time implications - no access to those high index value slots
is performed, all platforms so far have 3 slots at most, so this is a
pure correctness fix.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-26 11:13:08 +02:00
Jacob Winther
4871217165 boards: remove the adafruit_feather alias
Remove the adafruit_feather alias as it has been deprecated for 2 releases.

Ref: #77069
Signed-off-by: Jacob Winther <jacob@9.nz>
2025-06-26 11:12:58 +02:00
sudarsan N
654e690057 settings: zms: fix out-of-bounds null terminator write
Previously, zms_read() could fill the buffer up to sizeof(rdname),
leaving no space for the null terminator, which could cause an
out-of-bounds write.

This change reduces the read size to sizeof(rdname) - 1 and appends
a '\0' manually, ensuring the buffer is always null-terminated safely.

Fixes: CID 516244
Fixes: #90533

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-26 11:12:49 +02:00
Marek Matej
e93a6338d4 samples: ot: shell: update the sample configuration
Add l2 shell and ieee802154 node to the samples.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-06-26 11:12:34 +02:00
Martin Jäger
99130bb6fe boards: espressif: esp32c6: Add ieee802154 support
Enable IEEE 802.15.4 driver for esp32c6_devkitc and xiao_esp32c6
boards.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-06-26 11:12:34 +02:00
Martin Jäger
cba8b33c3d drivers: ieee802154: Add implementation for ESP32 series
Initial commit of the IEEE 802.15.4 driver using Espressif HAL.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-06-26 11:12:34 +02:00
Marek Matej
188eef484a soc: espresssif: esp32c6: add iterable section header
Fix subsystems build by providing the iterable section header.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-06-26 11:12:34 +02:00
Marek Matej
5d855608b8 manifest: update hal_espressif
Bring changes to support the IEEE802154 on ESP32-C6.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-06-26 11:12:34 +02:00
Khoa Tran
bd47fd4f5d samples: i2s: Add support for i2s SSIE on Renesas RA boards
Add Renesas RA board support for these tests:
- samples/drivers/i2s/output

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-06-26 11:12:21 +02:00
Khoa Tran
a42978a841 tests: i2s: Add support for i2s SSIE on Renesas RA boards
Add Renesas RA board support for these tests:
- tests/drivers/i2s/i2s_api
- tests/drivers/i2c/i2c_speed

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-06-26 11:12:21 +02:00
Khoa Tran
a4202f174c dts: arm: Add i2s SSIE device node for Renesas RA family
Add i2s SSIE device node to support i2s SSIE
driver on Renesas RA SoCs

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-06-26 11:12:21 +02:00
Khoa Tran
e84ea05dd4 drivers: i2s: Initial driver support for SSIE on Renesas RA
Add i2s driver support for Renesas RA SSIE

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-06-26 11:12:21 +02:00
Abderrahmane JARMOUNI
da62b1c19d tests: drivers: spi_loopback: fix buffers alignment size
Size given to __aligned() is in bytes.
Align following DCACHE line size, or default to 32-byte alignment

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-06-26 11:12:11 +02:00
Chew Zeh Yang
5e5c40c489 drivers: udc_ambiq: added support for double endpoint buffer
implements option to enable double endpoint buffer to improve throughtput
for non-control endpoints.

Signed-off-by: Chew Zeh Yang <zeon.chew@ambiq.com>
2025-06-26 11:12:02 +02:00
Chew Zeh Yang
46cdb84590 drivers: udc_ambiq: add support for apollo510
Added UDC support for Ambiq apollo510 family with USB HS and DMA support.

Signed-off-by: Chew Zeh Yang <zeon.chew@ambiq.com>
2025-06-26 11:12:02 +02:00
Chew Zeh Yang
06d2332047 boards: ambiq: apollo510: add USB nodes
Add USB node to apollo510 qualifier, and apollo510_evb board to enable
USB support on the SoC and its EVB.

Signed-off-by: Chew Zeh Yang <zeon.chew@ambiq.com>
2025-06-26 11:12:02 +02:00
Chew Zeh Yang
d55b5bee1c west.yml: sync hal ambiq
sync latest hal to take in implementaiton of unified usb isr handling

Signed-off-by: Chew Zeh Yang <zeon.chew@ambiq.com>
2025-06-26 11:12:02 +02:00
Nhut Nguyen
f7120c716b driver: serial: rz: Fix serial issue with sci and scif
Fix issues that Renesas RZ boards cannot run the below serial
samples properly with sci and scif.

- `samples/subsys/console/echo`
- `samples/subsys/shell/shell_module`

The modification is to make the callback invoked in tei interrupt.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-06-26 11:11:47 +02:00
Jeppe Odgaard
aeb0c0aec1 tests: drivers: build_all: led: add led_pwm
Enable test for LED PWM driver.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-06-26 11:10:59 +02:00
Michael Hope
3370e524ca samples: adc_dt: add support for the CH32V003EVT evaluation board
This demonstrates the ADC driver added in the previous commit. The
sample reads A0 as well as two built-in channels - one that reports
the internal 1.2 reference volatage and one that reports half the
analog supply voltage.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-26 09:42:20 +02:00
Michael Hope
b1cd947771 drivers: adc: add a driver for the CH32V003 ADC
The CH32V003 has a 8 channel, 10 bit onboard ADC. Add an immediate
mode driver and the appropriate pinctrl bindings. Note that the
CH32V003 GPIO pins have both a floating input and an analogue input
mode, and the pinctrl is needed to put the pin in analogue mode.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-26 09:42:20 +02:00
Yangbo Lu
5fed196842 tests: drivers: gpio_basic_api: add imx943 m33 dts overlay
Added imx943 m33 dts overlay.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-26 09:41:53 +02:00
Yangbo Lu
4456ccd39e boards: nxp: imx943_evk: add gpio support in m33 yaml
Added gpio support in m33 yaml.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-26 09:41:53 +02:00
Yangbo Lu
2091b6db23 dts: arm: nxp_imx943_m33: add gpio dts nodes
Added gpio dts nodes.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-26 09:41:53 +02:00
Yangbo Lu
10fe3d368b soc: nxp: imx943: avoid systick stop for M33
The SLEEP_HOLD_EN is enabled by default, that will
gate systick, clear it to fix.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-26 09:41:53 +02:00
Yangbo Lu
e5f7cc2bef dts: arm: nxp_imx943_m33: add scmi cpu protocol node
Added scmi cpu protocol node.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-26 09:41:53 +02:00
Erwan Gouriou
13d334abb9 boards: stm32n6570_dk: Use /fsbl variant as mcuboot target
Add a sysbuild configuration to specify that mcuboot uses fsbl variant.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-26 09:41:37 +02:00
Erwan Gouriou
34df4066a2 boards: stm32n6570_dk: Assign XSPI1 clock to HCLK
Due to a BootROM clock switching issue, XSPI1 should use HCLK otherwise
app won't restart on reset.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-26 09:41:37 +02:00
Erwan Gouriou
2f20e78d7d dts: n6: Allow using axisram2 in chainloaded application
Make axisram2 which is used in fsbl mode available as well to
chainloaded application in order not to loose 1M of RAM

In order to avoid conflicts with bootloader, verify that code + ro data
of the loaded application won't go further than bootloader start address.
This is done with a linker assert.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-26 09:41:37 +02:00
Erwan Gouriou
b0c1b95311 west.yml: hal_stm32: stm32n6 chainloaded app
Point to hal_stm32 change allowing to start chainloaded app (_s
profile).

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-26 09:41:37 +02:00
Erwan Gouriou
edc1a4b8ac boards: stm32n6570_dk: Provide configuration for chainloaded images:
- Provide external flash partition
- Define external flash and flash controller
- Defined flashing address depending on image (FSBL/Chainloaded)

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-26 09:41:37 +02:00
Erwan Gouriou
51373c77c4 soc: stm32n6: Don't sign mcuboot chainloaded images
This signature is only valid for FSBL images.
MCUBooot will sign images by itself.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-26 09:41:37 +02:00
Erwan Gouriou
30705108bd soc: stm32n6: Update ROM_START_OFFSET
Offset is 400 for a good reason (yet to be defined).

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-26 09:41:37 +02:00
Erwan Gouriou
996523d194 boards: stm32n6570_dk: Review variants organization
Add a new /fsbl variant which replaces the default variant and typically
fits for development or bootloader (MCUBoot typical target). Image
is limited to 511KB.

Default variant now stands for the real application which is supposed
to be loaded by the bootloader. It runs from axisram1 and could be both
XIP or RAMLOADED. Image has access to the whole AXISRAM1 and 2 (2MB).

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-26 09:41:37 +02:00
Benjamin Cabé
a06454f61f drivers: i2c: renesas_rz_riic: fix apply state in init code
Fixed the reverse logic of checking if `pin_config` is set in the init
code.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-26 09:39:39 +02:00
Marco Marche
f5f90395c9 drivers: adc: ad7124: add current sources support
Adds support for configuring the AD7124's excitation current sources.

Signed-off-by: Marco Marche <marco.marche@gmail.com>
2025-06-26 09:39:25 +02:00
Alvis Sun
23ba092656 boards: npcx: add support for npck3m8k_evb
Add support for npck3m8k board that is a development platform to
evaluate the Nuvoton NPCK3 embedded controller.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-06-26 09:39:11 +02:00
Michael Hope
badce120be boards: enable the WCH EXTI peripheral on all WCH boards
Now that Zephyr has support, enable by default.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-26 09:38:56 +02:00
Michael Hope
37190890d6 drivers: gpio: add interrupt support for the CH32V family
The WCH GPIO peripheral integrates with the EXTI and supports firing
interrupts when a GPIO pin changes.

Add optional support for firing a callback on rising edge, falling
edge, or both edges.

Tested on the `linkw` and the `ch32v006evt` using
`samples/basic/button`.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-26 09:38:56 +02:00
Michael Hope
b99b7d14f1 drivers: interrupt_controller: add a WCH EXTI external interrupt driver
The WCH External Trigger and Interrupt controller (EXTI) supports
between 8 and 22 lines where each line can trigger an interrupt on
rising edge, falling edge, or both edges. Lines are assigned to a
group, and each group has a separate interrupt. On the CH32V003/6,
there is one group of 8 lines, while on the CH32V208 there are
multiple groups with between one and six lines per group.

In the same way as the STM32 and GD32, define an EXTI driver that
configures the peripheral and an internal interface that can configure
individual lines.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-26 09:38:56 +02:00
Luca Burelli
cf0f00d942 boards: opta: shape the LAN controller reset pulse
Instead of assuming the reset pin is low at boot, create a reset pulse
by setting the pin low long enough for the LAN controller to recognize
it.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-06-25 16:01:18 -10:00
Marek Matej
87f1cb5b32 soc: espressif: segment parser end condition
Fix and simplify the end-of-segment detecting condition.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-06-25 16:00:40 -10:00
Benjamin Cabé
f21f3b0d92 tests: do not use "sanity" word
Fix to align with guidelines regarding the use of inclusive language.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-25 16:00:10 -10:00
Benjamin Cabé
6dca5be057 doc: develop: manifests: external: add libmpix
Introduce documentation for using libmpix as an external module in
Zephyr.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-25 15:59:22 -10:00
Jamie McCrae
e68f8e31e4 boards: nordic: Use dts for non-secure partitions
Replaces using an odd mix of Kconfig dts for partition offsets with
just use dts for non-secure board targets

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-25 15:58:04 -10:00
Jamie McCrae
98c5b1c1fa drivers: clock_control: nrf: Fix bleeding Kconfig
Fixes a Kconfig bleeding through to every device

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-25 15:57:24 -10:00
Khoa Nguyen
831b9f4443 samples: modules: lvgl: demos: add support for ek_ra8p1
Add support for ek_ra8p1/r7ka8p1kflcac/cm85 running on
rtklcdpar1s00001be display shield

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
9a66297eae samples: boards: renesas: Add support comparator for ek_ra8p1
Add support sample app `renesas/comparator` for Renesas ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
25701ab73e samples: drivers: counter: Add support alarm for ek_ra8p1
Add support sample counter/alarm for Renesas ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
3367bd46dd tests: drivers: comparator: Add support gpio_loopback for ek_ra8p1
Add support test app `gpio_loopback` for Renesas ek_ra8p1 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
917bbd2cee tests: subsys: pm: Add support power_mgmt_soc for ek_ra8p1
Add support test app `power_mgmt_soc` for Renesas ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
6412f03fbd tests: drivers: display: Add support display_read_write on ek_ra8p1
Add support test app `display_read_write` for
ek_ra8p1/r7ka8p1kflcac/cm85

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
10120fd09f tests: drivers: i2c: Add support i2c_api for ek_ra8p1
Add support test app i2c_api for Renesas ek_ra8p1 testing
on i2c and sci-i2c HWIP

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
c6f237ed0b tests: drivers: spi: Add support spi_loopback for ek_ra8p1
Add support test app spi_loopback for Renesas ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
6750a6a163 tests: drivers: pwm: Add support pwm_loopback for ek_ra8p1
Add support test app pwm_loopback for Renesas ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
e6f9cd35bf tests: drivers: uart: Add support test uart_async for ek_ra8p1
Add support test uart_async_api for Renesas ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Thao Luong
780aa50179 drivers: misc: Update renesas ra external interrupt to support RA8P1
This is temporary update because in HWM only mention IRQCR but
FSP is defining for IRQCRa and IRQCRb with same values.
Haven't understood why need both  IRQCRa and IRQCRb.
Current update is using IRACRa.

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 15:56:20 -10:00
Thao Luong
720d4c61a9 drivers: clock_control: Add support for RA8P1
Add additional clocks to support for RA8P1.

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 15:56:20 -10:00
Thao Luong
40ff446e10 drivers: gpio: add support for RA8P1
RA8P1 has 14 ports (from 0 to d) and 32 external irq while current
driver support 12 ports (0 to b) and 16 external irq.
This add addtional support for remain ports and external irq to be
able to work with RA8P1.

Fix the lack condition GPIO_RA_IOPORT for GPIO_RA_HAS_VBTICTLR
config

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
348e95e47a boards: shields: Add support pmod_sd shield for Renesas ek_ra8p1
Add support pmod_sd shield for Renesas ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
564ec92ec3 boards: shields: Add support rtklcdpar1s00001be display shield
Add support rtklcdpar1s00001be display shield

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
aef1757e88 boards: renesas: Add support for Renesas ek_ra8p1 board
Add support for Renesas ek_ra8p1 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
6ad8c98cf3 dts: arm: renesas: ra: Add support for r7ka8p1kflcac
Add minimal support for r7ka8p1kflcac_cm85 and r7ka8p1kflcac_cm33

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Khoa Nguyen
be444f212e soc: renesas: ra: Add support for Renesas RA8P1 SoC
Add support for Renesas RA8P1 SoC

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 15:56:20 -10:00
Benjamin Cabé
5b0808fa4a drivers: gpio: rzt2m: properly handle error from rzt2m_gpio_get_pin_irq
For the negative errno rzt2m_gpio_get_pin_irq may return to be properly
handled, irq variable needs to use signed type.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-25 15:55:58 -10:00
Alain Volmat
174dead086 samples: video: capture: add crop/compose support
Demonstrate the crop/compose API by introducing 4 new
CONFIG options in order to define the crop area.
Moreover, if the selection API is available and if
the targetted size is different from the current crop
size, then try to apply a compose in order to reach
the targetted format size.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-25 15:55:24 -10:00
Alain Volmat
2d1a5b8426 video: shell: correct incorrect error return value in cmd_video_format
Correct cmd_video_format return value in case of video_shell_parse_in_out
returns a negative value.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-25 15:55:24 -10:00
Alain Volmat
c714fac300 video: shell: addition of video selection support
Add shell handling in order to interact with drivers
via the set/get_selection APIs allowing to get/set
crop / compose and get HW capabilities such as
crop bound / compose bound or native size.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-25 15:55:24 -10:00
Alain Volmat
0b9a06909e video: stm32: dcmipp: add set/get_selection handling
Add possibility to perform crop on all pipes and compose (downscale) on
pixel pipes (endpoint #1 and endpoint #2).
Rework the code in order to move the downscale control from
the set_fmt into the set_selection (compose).

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-25 15:55:24 -10:00
Alain Volmat
49f066c58b video: api: addition of video_set/get_selection APIs
Addition of selection APIs (set/get) in order to be able
to control the crop and compose of a video device.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-25 15:55:24 -10:00
Yishai Jaffe
88eda71497 gpio: adopt SHELL_HELP
Adopt SHELL_HELP macro for gpio_shell

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-06-25 15:53:28 -10:00
Robin Kastberg
e572e8f491 iar: linker_script: fix bug with alphabetical order
Having alphabetical order on an init block causes a linker error.
So it is one of the things replaced when translating a block to its
corresponding init block.
The recent changes in ff8b24b6bd caused
iterable sections having ONLY alphabetical order as an attribute,
triggering a bug in this regexp.

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-06-25 15:53:01 -10:00
cyliang tw
1fb59d411a boards: nuvoton: numaker_m55m1: Enable gpioe in device tree
To enable gpio-e module of numaker_m55m1.dts for PE10, PE11 & PE12
setting depending on numaker_m55m1 board.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-06-25 15:52:40 -10:00
Nirav Agrawal
706cfc211d samples: bluetooth: fixes tmap sample issues
- Added support for CAP_COMMANDER in configuration to allow tmap-cg
 and tmap-ums roles to be validated. For CG and UMR, CAP INITIATOR
 and CAP COMMANDER roles are mandatory. Without this support, config
 "CONFIG_BT_TMAP_CG_SUPPORTED" & "CONFIG_BT_TMAP_UMS_SUPPORTED" are
 not getting defined and function fail during "valid_tmap_role()".

- Replaced iso_pool user-data size from 8 to kconfig setting
 "CONFIG_BT_CONN_TX_USER_DATA_SIZE" to allow conn_iso_send()
 to success. Without it the user-data for iso_pool configured
 with value 8 but the kconfig "BT_CONN_TX_USER_DATA_SIZE" has
 default value as 16 causes conn_iso_send() function to fail.

- Updated audio_timer_timeout() with expected QoS interval value
 to send ISO_SDU at every 10msec instead of 1 sec. Without this sink
 device receiving null-sdu most of the time as ISO interval is 10ms
 and unicast-source keep sends SDU at every 1 sec.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-06-25 15:51:24 -10:00
Nirav Agrawal
5a8189bf2a bluetooth: host: gatt: fix null-ptr access if no include-svc userdata
- Issue: There is a bus-fault while accessing empty userdata structure
  pointer if application does not include any include service
  userdata instance (which consist of UUID list of included service)
  but service array has defined dummy entry for it assumed to be
  overridden by app during initial flow.
- For example, the issue has happened in case of tmap-central sample
 without "CONFIG_BT_OTS" support. there are some MCS attributes
 dependent on OTS service because of that
 "BT_GATT_INCLUDE_SERVICE(NULL)" entry is added as part of service
 definition. The given entry does not have userdata handler defined
 and is expecting to be overriden by the app if it will be included.
 During "bt_mcs_init()" call, "mcs.attrs[i].user_data" is not
 populated with any attr-instance pointer. This makes CPU to access
 null-address during reading local-database include-service attribute
 which was not provided by the app but the include-service entry was
 added to the db.
- Fix: Adding condition to check if user-data has null address, and
 returning back to avoid any hard-faults.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-06-25 15:51:24 -10:00
Chun-Chieh Li
8a9dc13e91 drivers: wifi: esp_at: fix rx_sock not ref-counted
This fixes rx_sock is not reference-counted, or crash error on reference
to released socket.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-06-25 15:49:26 -10:00
Chun-Chieh Li
db59acba5e drivers: wifi: esp_at: fix deadlock in socket close path
This fixes deadlock in socket close path. In the scenario:
1. on_cmd_ipd/esp_socket_rx invokes esp_socket_ref_from_link_id
   and increments refcount.
2. zvfs_close/esp_put locks cond.lock.
3. zvfs_close/esp_put waits on sem_free.
4. on_cmd_ipd/esp_socket_rx waits on cond.lock before esp_socket_unref.
5. sem_free waits on esp_socket_unref for refcount reaching zero.

As we detect socket is closing, we can ignore last rx data and escape
from the trap.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-06-25 15:49:26 -10:00
Chun-Chieh Li
622fddb0b8 drivers: wifi: esp_at: fix premature socket release
This fixes premature socket release. Without this fix, system will crash
because esp_rx thread can still hold reference to the socket in the
following cases:
1. esp_rx thread has got the socket reference but hasn't unref'ed
   via esp_socket_unref.
2. esp_rx thread can still get the socket reference for refcount not
   being zero in esp_socket_ref.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-06-25 15:49:26 -10:00
Khaoula Bidani
a865cf4ec4 samples: drivers: watchdog: Add nucleo u385rg_q as allowed platform
Add iwdg and wwdg test for Nucleo U385RG-Q board
in watchdog driver sample.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-25 15:46:40 -10:00
Khaoula Bidani
1c91c6be3d tests: drivers: wdt_basic_api: Add nucleo u385rg_q as allowed platform
Add nucleo u385rg_q as allowed platform for iwdg and wwdg tests
to verify functionality on the STM32U3-series.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-25 15:46:40 -10:00
Khaoula Bidani
97b4abc906 boards: st: stm32u3: enable wwdg for stm32u3 boards
Enable WWDG for Nucleo U385RG_Q board.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-25 15:46:40 -10:00
Khaoula Bidani
d00eb33729 dts: arm: st: u3: add wwdg and iwdg
Add WWDG snd IWDG support to STM32U3

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-25 15:46:40 -10:00
Michael Hope
a8375c986d include: dt-bindings: fix and extend the ch32v00x pinctrl definitions
These were wrong and incomplete. Rebuild based on section 7.2.11 of
the CH32V00XRM and added the CH32V007-only remaps.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-25 15:44:37 -10:00
Michael Hope
99fbef14c2 boards: wch: update the bord test definitions to match the new drivers
The CH32V series now has GPIO, watchdog, I2C, and PWM drivers. Enable
Twister for these drivers by updating the board definitions to match.

On the larger chips, also enable the watchdog in Devicetree so it's
usable by the sample.

Note that the 203 and 303 do not yet have the appropriate iwdg
Devicetree node.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-25 15:43:32 -10:00
Emil Lindqvist
401ec8bae2 modem_cellular: lara_r6: add option to clear forbidden networks from SIM
SIM-cards remember which networks has rejected attach attempts. This is
not always desired if the user has control over which networks to allow.
This commit adds a Kconfig symbol which enables clearing of saved
forbidden networks from SIM-card on boot.

Signed-off-by: Emil Lindqvist <emil@lindq.gr>
2025-06-25 15:42:41 -10:00
Emil Lindqvist
e27c4ba718 modem_cellular: lara_r6: add choice of Radio Access Technology
Add a Kconfig choice to select which Radio Access Technology to be used

Signed-off-by: Emil Lindqvist <emil@lindq.gr>
2025-06-25 15:42:41 -10:00
Emil Lindqvist
bebfd879bf modem_cellular: lara_r6: disable modem's own LWM2M client
U-blox LARA-R6 LWM2M client is enabled by default. Not only causes this
the modem to connect to U-blox's server on its own, it also for some
reason causes the modem to reply "Destination unreachable" to DNS answers
from DNS requests that we send

Signed-off-by: Emil Lindqvist <emil@lindq.gr>
2025-06-25 15:42:41 -10:00
Cong Nguyen Huu
2339c7c23c tests: drivers: mbox: mbox_data: add support for s32z
The hardware MRU on SoC S32Z supports ping-pong data on a
MBOX channel within one core.

Added Kconfig TEST_SINGLE_CPU to enable test on single CPU  to wrap
the specific code for each testcase, As the expected received data
must match the sent data when running test single CPU. This differs
from the expected data in the current supported test transfer data
between 2 other cores, where the remote core increments the data by
one before transferring it back to the main core.

Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
2025-06-25 15:41:38 -10:00
Bjarki Arge Andreasen
a4800beef2 drivers: rtc: api: adjust callback APIs to not be syscalls
The rtc device driver APIs rtc_update_set_callback and
rtc_alarm_set_callback are not allowed from usermode threads, thus
they should not be marked as syscalls. The APIs where never
implemented as sycalls, there is no z_vrfy wrapper for them, so
only change needed is to not mark them as syscalls with the
special __syscall "attribute" and z_impl wrapper.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-25 15:40:06 -10:00
Filip Stojanovic
4cce811adb dts: weact_stm32h5_core: Define clk_hsi48 to fix USB support
The USB CDC driver relies on the HSI48 internal oscillator as the
default clock source for USB functionality. In the weact_stm32h5_core
device tree, the clk_hsi48 node was missing, resulting in USB
initialization failure.

Signed-off-by: Filip Stojanovic <filipembedded@gmail.com>
2025-06-25 15:37:50 -10:00
Mickael Bosch
888bde94be drivers: timer: handle the stm32u0 target
Configure the lptim to wake-up from sleep.

Signed-off-by: Mickael Bosch <mickael.bosch@linux.com>
2025-06-25 15:33:47 -10:00
Mickael Bosch
03bca9bae9 soc: stm32u0: add PM
STM32U0 specific changes to enable the PM feature.
Base on the power-related code from the STM32U5 target.

Signed-off-by: Mickael Bosch <mickael.bosch@linux.com>
2025-06-25 15:33:47 -10:00
Andreas Schuster
972f11e9e4 doc: develop: Add XDG_CONFIG_HOME information for zephyrrc
The `zephyr-env.sh` script was adjusted to look for the zephyrrc file in
three locations following the [XDG Base Directory Specification]. The
documentation of the environment variables is now adjusted to reflect that
change.

[XDG Base Directory Specification]: (https://specifications.freedesktop.org/basedir-spec/latest/)

Signed-off-by: Andreas Schuster <andreas.schuster@schuam.de>
2025-06-25 15:33:06 -10:00
Andreas Schuster
0f0497f9c5 zephyr-env.sh: Use $XDG_CONFIG_HOME/zephry/zephyrrc if present
According to the [XDG Base Directory Specification] there is a single base
directory in which user configuration files should be stored. This helps
users to keep their home directory uncluttered. This base directory can be
set in the environment variable $XDG_CONFIG_HOME and defaults to
${HOME}/.config if $XDG_CONFIG_HOME is not set.

This commit adjusts the zephyr-env.sh script to look for a user
configuration file in the following locations:

- $XDG_CONFIG_HOME/zephyr/zephyrrc
- $HOME/.config/zephyr/zephyrrc
- $HOME/.zephyrrc

The first one that is found will be used.

[XDG Base Directory Specification]: (https://specifications.freedesktop.org/basedir-spec/latest/)

Signed-off-by: Andreas Schuster <andreas.schuster@schuam.de>
2025-06-25 15:33:06 -10:00
Ravi Dondaputi
4c14c618f6 net: wifi: shell: Enable Wi-Fi credentials support
Add a snippet for Wi-Fi credentials support. Update the heap sizes as
required for enterprise mode.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-06-25 15:31:29 -10:00
Ravi Dondaputi
d289bed4af net: lib: wifi_credentials: Add support for Enterprise security
Add support for configuring enterprise mode security.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-06-25 15:31:29 -10:00
Helmut Lord
15d324cbd4 doc: services: shell: add reference to west rtt
Adds a reference to west rtt as alternative to using putty. Also provides
a command that prints supported rtt runners for the specific build.

This issue is encountered now with the nRF54L1, for example, because
the nrfutil runner does not support RTT at this time.

Signed-off-by: Helmut Lord <kellyhlord@gmail.com>
2025-06-25 15:29:56 -10:00
Kristoffer Rist Skøien
ca2e98c4c9 debug: Added CPU usage callback
- Added a CPU load callback with threshold
- Changed cpu_load to use k_timer instead of k_work

Signed-off-by: Kristoffer Rist Skøien <kristoffer.skoien@nordicsemi.no>
2025-06-25 15:29:06 -10:00
Pieter De Gendt
c906d4a103 tests: net: dhcpv4: client: Test restarting DHCPv4 client
Add tests that verify the behavior of stopping and starting the DHCPv4
client.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-25 14:09:46 +02:00
Pieter De Gendt
1712a930a0 tests: net: dhcpv4: client: Explicit event/callback testing
Use k_event bit flags to test individual events and callbacks. Don't rely
on the number of events that happened.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-25 14:09:46 +02:00
Pieter De Gendt
0b8c00b5dd net: lib: dhcpv4: Support INIT-REBOOT
Add the init-reboot state for DHCPv4 to request an already assigned IP
address.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-25 14:09:46 +02:00
Pieter De Gendt
99a2893713 net: lib: dhcpv4: Skip leftover hostname or domain name bytes
When reading and printing hosname or domain name from DHCP options, we need
to skip the leftover bytes that do not fit into the provided buffers.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-25 14:09:46 +02:00
Loic Domaigne
836cf37dcc driver: gpio_ite_it8xxx2_v2: fix untrusted bound loop
Coverity is reporting a possible untrusted loop bound, caused by accessing
num_pins through a tainted pointer. Use explicit type cast to keep coverity
happy.

CID: 347195

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-06-25 14:09:34 +02:00
Fabio Baltieri
4f3523d9af i2c: stm32: drop few redundant guards
Drop few CONFIG_PM_DEVICE_RUNTIME guards, the pm_device_runtime
functions they are masking are no-op automatically when the
corresponding config option is not selected.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-25 14:08:08 +02:00
Fabio Baltieri
67f80e35b8 i2c: stm32: always call runtime_get when registering targets
Current code only calls pm_device_runtime_get when registering target
devices if the device is marked as wakeup capable by the application.

This does quite work for a setup with PM=n and PM_DEVICE=y and
PM_DEVICE_RUNTIME=y, where the CPU does not really go in stop mode ever,
and results in the i2c target device not working at all.

Fix this by always claiming the device when PM_DEVICE_RUNTIME is
enabled.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-25 14:08:08 +02:00
Markus Lassila
581f75656d drivers: gpio_nrfx: Free channel when changing mode
Fix an issue where calling gpio_pin_interrupt_configure
with edge mode and later calling it with level mode, did
not release the allocated gpiote channel.

Repeating the above sequence caused us to run out of
gpiote channels.

Signed-off-by: Markus Lassila <markus.lassila@nordicsemi.no>
2025-06-25 14:07:48 +02:00
Aksel Skauge Mellbye
b155c0dceb boards: silabs: xg24_dk2601b: Add PWM LEDs using TIMER
The TIMER has 3 PWM channels, allowing all 3 RGB leds to be
controlled by the same PWM controller instance.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-25 14:07:40 +02:00
Aksel Skauge Mellbye
fccc0a7544 drivers: pwm: silabs: Add TIMER PWM driver for Series 2
Add PWM driver for the Timer peripheral on Series 2.
The TIMER uses the high-frequency EM01 Group A clock, and has
a 16- or 32-bit counter. It supports PWM period and pulse capture
on channel 0, and PWM output on all channels.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-25 14:07:40 +02:00
Aksel Skauge Mellbye
d85d3df323 dts: arm: silabs: Add Series 2 TIMER PWM
Add binding and DT nodes for PWM using the Timer peripheral.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-25 14:07:40 +02:00
Aksel Skauge Mellbye
6b1c5e97e9 boards: silabs: xg29_rb4412a: Add PWM LEDs using LETIMER
Use LETIMER to provide PWM LED on xg29_rb4412a.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-25 14:07:40 +02:00
Aksel Skauge Mellbye
566fc7a7db drivers: pwm: silabs: Add LETIMER PWM driver for Series 2
Add PWM driver for the Low Energy Timer peripheral on Series 2.
The LETIMER runs at up to 32 kHz and has a 24-bit counter. It
only supports PWM output, it does not support input capture.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-25 14:07:40 +02:00
Aksel Skauge Mellbye
2a958aa53f dts: arm: silabs: Add Series 2 LETIMER PWM
Add binding and DT nodes for PWM using the Low Energy Timer.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-25 14:07:40 +02:00
Bjarki Arge Andreasen
bb319603fd drivers: clock_control: nrf: add support for HFCLK24M
Add support for the HFCLK24M clock to the clock_control_nrf
device driver.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-25 14:07:20 +02:00
Tim Pambor
980573f6e2 west.yml: Update cmsis_6
Update CMSIS_6 to v6.2.0.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-06-25 14:06:57 +02:00
Andrzej Głąbek
9207a21c0e drivers: flash_util: Issue error log message when flash_fill write fails
Use LOG_ERR() instead of LOG_DBG() in flash_fill() when this function
fails to perform the write operation, so that the failure is better
visible and its cause is easier to identify.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-25 14:06:07 +02:00
Andrzej Głąbek
fb94343ce4 tests: drivers: flash: common: Fix page size when no erase is required
When no flash device requires erase, this test does not retrieve
flash page size with flash_get_page_info_by_offs(), but instead
it takes an arbitrary page size based on the test area length.
Since the test_flash_copy routine needs to use two pages, the test
area needs to be split into at least two parts. Correct the related
code and add a check if test_flash_copy requirements are met.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-25 14:06:07 +02:00
Tomas Barak
15a057c8f6 samples: driver: i2s: Support echo and codec on RT1060 EVKC
- increase the memory block count
- add generic codec configuration
- add rt1060 evkc and rt1170 evkb project configuration and overlay

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-06-25 14:05:47 +02:00
Tomas Barak
d42d321b57 drivers: i2s: mcux_sai: Add condition for both directions configuration
- i2s_mcux_sai doesn't support configuration of both directions

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-06-25 14:05:47 +02:00
Tomas Barak
6f5693a71b boards: nxp: mimxrt1060_evk: Add wm8962 codec support for EVKC
- add wm8962 codec on i2c1
- add aliases for i2s samples

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-06-25 14:05:47 +02:00
Iuliana Prodan
81268e1cde samples: Enable vendor-specific support for i.MX8ULP
Update the imx8ulp_evk_mimx8ud7_adsp board configuration to enable
vendor-specific resource table features.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-06-25 14:05:38 +02:00
Iuliana Prodan
b3e4809554 lib: open-amp: Add NXP-specific resource table implementation
Implement NXP-specific support for the remote processor
resource table, including custom definitions and initialization
logic to meet NXP's communication requirements.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-06-25 14:05:38 +02:00
Iuliana Prodan
7c82d6c2ab lib: open-amp: Update CMakeLists.txt for vendor resource table
Modify the build system to conditionally compile
vendor-specific resource table support based on configuration.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-06-25 14:05:38 +02:00
Iuliana Prodan
9db96e8a04 lib: open-amp: Add vendor-specific config options
Add config options for vendor-specific resource tables.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-06-25 14:05:38 +02:00
Iuliana Prodan
222297ee07 lib: open-amp: Add base support for resource table
Introduce macros to define initialization
routines for OpenAMP resource table entries.

This will allow to extend the default OpenAMP
resource table with vendor-specific data structures.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-06-25 14:05:38 +02:00
Iuliana Prodan
e8a702026a lib: open-amp: Allow vendor specific resource table definition
Enhance flexibility by allowing vendors to define their own
resource tables. This is achieved by moving the vdev and vring
functions into the source file, requiring each vendor to
implement these functions within their specific resource
table definitions.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-06-25 14:05:38 +02:00
Iuliana Prodan
a50ddace58 lib: open-amp: Replace struct fw_resource_table with void
Switching to void allows greater flexibility in supporting
vendor-specific resource tables.

This change reverts commit 39863b66bd, and adds some fixes.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-06-25 14:05:38 +02:00
Benjamin Cabé
dc140c09ad SDK_VERSION: Use Zephyr SDK 0.17.2
This commit updates SDK_VERSION to point to the recently released Zephyr
SDK 0.17.2 release.
https://github.com/zephyrproject-rtos/sdk-ng/releases/tag/v0.17.2

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-25 12:15:09 +02:00
Anas Nashif
4ca1f3eb4e ci: use 0.28.1 docker image with 0.17.2 sdk
Use new docker with SDK 0.17.2.

SDK 0.17.2 has a new Qemu with improved support for RX architecture.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-25 06:06:36 -04:00
Peter Wang
55db18bc06 boards: frdm_mcxa166, frdm_mcxa276: add i3c support
1. enable i3c driver and sensor p3t1755
2. verified samples/sensor/thermometer

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-06-25 10:53:50 +02:00
Pan Gao
e53ceeb86b net: l2: wifi: fix ap rts_threshold cmd parameter count
fix the number of mandatory arguments for command Wi-Fi ap RTS threshold,
3 to 2.

Signed-off-by: Pan Gao <pan.gao@nxp.com>
2025-06-25 10:53:40 +02:00
Benjamin Cabé
d30adebf91 drivers: espi: espi_mchp_xec: fix typo in receive_oob error checking
Check error using the proper RX mask

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-25 10:53:09 +02:00
Khoa Nguyen
6d910647e0 samples: modules: tflite-micro: Update Ethos-U driver config
Update Ethos-U driver config for sample app `tflm_ethosu`

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 10:52:48 +02:00
Khoa Nguyen
edb1840f64 drivers: misc: ethos_u: Create the ethos_u_common for every vendor
Seperate the ``ethos_u_common`` for every vendor and
``ethos_u_arm`` for sepcific Arm's boards. Enable vendors
to self-configure the init flow and IRQ handler.

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 10:52:48 +02:00
Khoa Nguyen
c99f456cf1 modules: hal_ethos_u: Update ARM_ETHOS_U config
- Update to use ETHOS_U config instead of ARM_ETHOS_U
- Update prefix ETHOS_U_ for all configs that use ARM_ETHOS_U_

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-25 10:52:48 +02:00
Phi Tran
42b2624531 tests: pwm: Add overlay to support pwm on RX130
Add pwm property in tests/pwm to support PWM on RSK-RX130-512KB board.

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-06-25 10:52:34 +02:00
Quy Tran
e771f0094c boards: renesas: rx: Add MTU node property on RX130 board
Enables MTU on board on RSK-RX130

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-06-25 10:52:34 +02:00
Phi Tran
26f9fdf384 dts: renesas: update dts node in SoC layer to support pwm on RX130.
This commit to add node on RX130 dts to support pwm with MTU modules.

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-06-25 10:52:34 +02:00
Phi Tran
d8ab33ae96 drivers: pwm: Add support for PWM driver on RSK_RX130_512KB
This is initial commit to support PWM driver
on Renesas RX130 with MTU modules.

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-06-25 10:52:34 +02:00
Khaoula Bidani
065900b11f tests: drivers: uart: async_api: add stm32u3 boards overlays
Add UART test overlays for Nucleo U385RG-Q board.
Remove non serial boot conf file since they are now unnecessary.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-25 10:50:08 +02:00
Khaoula Bidani
73de66ba1a boards: st: stm32u3: update documentation for stm32u3 boards
update documentation to indicate that UART is
available on Nucleo U385RG-Q board.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-25 10:50:08 +02:00
Alex Bucknall
6e79a94c4b boards: blues: Update Programmers Cygnet & Swan
Adds STM32Cube programmer to Swan and prioritises openocd

Signed-off-by: Alex Bucknall <alex.bucknall@gmail.com>
2025-06-25 10:49:58 +02:00
Alex Bucknall
435ae981ff boards: blues: Updates Cygnet & Swan
Adds missing vref & vbat to cygnet, disables discharge pins.

Signed-off-by: Alex Bucknall <alex.bucknall@gmail.com>
2025-06-25 10:49:58 +02:00
Benjamin Cabé
97324c93f8 drivers: video: esp32_dvp: use inclusive language
Replaced the term "master clock" by "main clock"

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-25 10:49:41 +02:00
Benjamin Cabé
4aac7c16aa drivers: video: use inclusive language
Replaced the term "master" by "primary" in video_ctrls.c/.h

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-25 10:49:41 +02:00
Benjamin Cabé
03696a0344 doc: hardware: porting: soc_porting: use consistent YAML indentation
Make all YAML snippets use the same kind of indentation for block
sequences.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-25 10:49:22 +02:00
Zhang Xingtao
d5863c3211 doc: hardware: porting: soc_porting: Fix missing dash in SoC family name
Add missing dash in the demonstration code snippets.

Signed-off-by: Zhang Xingtao <zhxt@live.cn>
2025-06-25 10:49:22 +02:00
Oleksii Shcherbyna
35608e295d drivers: fuel_gauge: Fix incorrect variable in bq27xx chem_id switch
The bq27xx driver incorrectly uses the 'val' variable in a switch()
statement that should operate on 'chem_id'. This leads to incorrect
behavior for fuel gauges such as the BQ27427, where the chemical ID
determines how properties are interpreted.

This commit replaces 'switch(val)' with 'switch(chem_id)' to ensure
proper handling of fuel gauge behavior across supported devices.

Signed-off-by: Oleksii Shcherbyna <oleksii.shcherbyna@droid-technologies.com>
2025-06-25 10:49:10 +02:00
Jiafei Pan
710e2fd243 boards: imx91_evk: add TPM counter support
Added counter in board yaml file, and enabled tpm2 by default.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-25 10:49:03 +02:00
Hou Zhiqiang
71c321dbed dts: arm64: nxp: imx91: add TPM device tree nodes
Added TPM device tree nodes.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-25 10:49:03 +02:00
Bartosz Miller
39b2451494 tests: boards: nrf: qdec: Disable testing of 2nd instance until fixed
Disable testing second QDEC instance until the issue with multiple
QDEC instances support is resolved

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-06-25 09:53:15 +02:00
Jiafei Pan
d5b9e74476 boards: imx8mp_evk: a53: enable FlexCAN on the board
Added dts nodes of FlexCAN1 and FlexCAN2 in SoC dts.
Added dts nodes and overlay in imx8mp_evk board.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-25 09:52:56 +02:00
Jiafei Pan
298cfdac88 dts: bindings: flexcan: add rdc property
Add rdc property to let RDC driver to configure RDC for flexcan.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-25 09:52:56 +02:00
Jiafei Pan
ea24ec19e1 drivers: can: mcux: flexcan: add mmio mapping support
Use MMIO for device memory mapping, so that the driver can be used
both on MCU and MPU.

Add removed static MMU mapping in some platform accordingly.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-25 09:52:56 +02:00
Jiafei Pan
df0304ae09 drivers: clock_control: mcux_ccm: add flexcan clock support
Enable FlexCAN clock support on imx8mp.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-25 09:52:56 +02:00
Pisit Sawangvonganan
1757ea302c drivers: sensors: improve range check in sensor_value_from_float/double
Avoid undefined behavior caused by casting floating-point values outside
the int32_t range. The updated implementation explicitly validates input
bounds before performing conversions, ensuring consistent behavior across
platforms.

Added test cases to cover edge conditions near float rounding limits
and INT32 range boundaries.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-06-25 09:52:37 +02:00
Thao Luong
434d022742 soc: renesas: ra: Add support RA2L1 80 pins, 64 pins and 48 pins
Add support RA2L1 80 pins, 64 pins and 48 pins packages

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 09:52:23 +02:00
Thao Luong
040e4e85be dts: arm: renesas: ra2: Add support RA2L1 80 pins, 64 pins and 48 pins
Add support for RA2L1 80 pins, 64 pins and 48 pins packages.

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 09:52:23 +02:00
Thao Luong
ee078f609b samples: drivers: dac: Add support ek_ra2l1 for dac sample
Add support ek_ra2l1 for dac sample

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 09:52:23 +02:00
Thao Luong
6f135938aa tests: drivers: dac: Add support ek_ra2l1 for dac test
Add support ek_ra2l1 on dac_api and dac_loopback tests.

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 09:52:23 +02:00
Thao Luong
c040a9e6c4 tests: drivers: adc: Add support ek_ra2l1 for adc test
Add support ek_ra2l1 for adc_api and adc_accurarcy_test

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 09:52:23 +02:00
Thao Luong
741da64e97 tests: drivers: pwm: Add support ek_ra2l1 for pwm test
Add support for ek_ra2l1 on pwm_api and pwm_loopback tests.

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 09:52:23 +02:00
Thao Luong
ac27c998d7 tests: drivers: i2c: Add support ek_ra2l1 for i2c_api test
Add support ek_ra2l1 for i2c_api test.

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 09:52:23 +02:00
Thao Luong
e2267bd59e tests: drivers: spi: Add support ek_ra2l1 for spi_loopback test
Add support for ek_ra2l1 on spi_loopback.

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 09:52:23 +02:00
Thao Luong
7dcdcf18cd drivers: spi: Add support for ra2l1
RA2L1 doesn't support for SPI Hardware Peripgheral Select.
Disable this config as default in RA2L1

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 09:52:23 +02:00
Thao Luong
3559cfe889 boards: renesas: ek_ra2l1: Add support for entropy, adc, dac and buttons
Add support for entropy, adc, dac and buttons (s1 and s2)

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 09:52:23 +02:00
Thao Luong
6fedc33354 dts: arm: renesas: Add trng, spi, pwm, counter, i2c, adc and dac for ra2l1
Add support for trng, spi, pwm (gpt), counter (agt), i2c (iic_master),
adc and dac for RA2L1.
Add external interrupt for RA2L1.

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-25 09:52:23 +02:00
Daniel DeGrasse
6f08a6ef5d tests: net: mgmt: define request handler properly
Define the request handler properly within the net mgmt test. This is
required for the alias() attribute to work correctly with clang. Also,
correct the handler signature to use size_t as expected. This resolves a
test failure seen with clang when building the net mgmt test for
native_sim.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-06-25 09:51:56 +02:00
Daniel DeGrasse
640958de1d drivers: sensor: npm13xx_charger: fix build warnings from native_sim
Fix the following build warnings highlighted in this driver while
building with clang targeting native_sim:

- exp() expects a double, so passing a float would cause type promotion
- variable declarations within C switch statements are a C23 specific
  extension

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-06-25 09:51:18 +02:00
Benjamin Cabé
350a5ef394 drivers: display: ssd1322: fix out-of-bound access
Fix memory corruption issue where buffer pointer was not being advanced
properly due to missing dereference.

Fixes Coverity issue CID 434607
Fixes zephyrproject-rtos/zephyr#81957

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-24 20:14:31 -10:00
Benjamin Cabé
1b93ce7226 drivers: sensor: paj7620: fix return value of paj7620_get_hw_id()
Use a local signed variable to store negative return values instead of
unsigned previously so that errors are actually detected/returned.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-24 20:13:57 -10:00
Alain Volmat
d9c935c00e video: gc2145: convert to multi-instance driver
Allow the driver to be instanciated multiple times.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Alain Volmat
96955744c6 video: gc2145: set default fmt at variable declaration
Set the default format at the moment of variable declaration
in gc2145_init function.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Alain Volmat
28e12468fb video: gc2145: switch to usage of video cci interface
Use video cci helper functions to access to the sensor.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Alain Volmat
49c5481aa5 video: gc2145: avoid odd even row switch by default
This bit would be used in order to generate several variants
of Bayer formats, however it shouldn't be enabled for YUV/RGB
formats by default.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Alain Volmat
8e8d7211f3 video: gc2145: fix wrong OUTPUT_FMT / SYNC_MODE macro used
Correct wrong macro GC2145_REG_OUTPUT_FMT / GC2145_REG_SYNC_MODE
being used while a different page is being accessed.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Alain Volmat
e511f8f44a video: gc2145: avoid useless register page change
Avoid some register page change when the right page is
already being accessible.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Alain Volmat
747d73c856 video: gc2145: use GC2145_REG_RESET macro for page selection
Help identify register page change by using GC2145_REG_RESET macro.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:12:51 -10:00
Tamas Jozsi
2f860e544c boards: seeed: fix the flash partition layout on the XIAO MG24
- Fixed the partition sizes in the comments
 - Updated the second partition base address to be correct

The layout now matches the Arduino Nano Matter
which was used for reference.

Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
2025-06-24 20:12:01 -10:00
Paul He
f7979f6deb mgmt: mcumgr: remove redundant arguments for zephyr_library
No argument is needed for zephyr_library and a directory-inferred name will
be generated by default.

Signed-off-by: Paul He <pawpawhe@gmail.com>
2025-06-24 20:11:27 -10:00
Alain Volmat
04480c87fe video: stm32: dcmipp: use video_get_csi_link_freq helper
Rely on video_get_csi_link_freq for getting CSI phy bitrate
informations.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-24 20:10:23 -10:00
Kurt Eckhardt
52d1e2f0cd boards: arduino: Giga Display Shield, touch points
Currently the config option:
CONFIG_INPUT_GT911_MAX_TOUCH_POINTS

is not defined for the Giga display shield and defaults
to 1.   The valid range is 1-5, I have done most of my
own testing using 3 with the ArduinoGiga-zephyr

I have a PR against the ArduinoCore-zephyr project
which allows me to define a callback in the Arduino
system:
https://github.com/arduino/ArduinoCore-zephyr/pull/134

And a version of the Arduino touch library with some
support, the fork/branch
https://github.com/KurtE/Arduino_GigaDisplayTouch/tree/zephyr

And an example sketch that does touch paint.
https://github.com/arduino/ArduinoCore-zephyr/issues/92#issuecomment-2944385198

Note: my version of the Arduino touch library has no support
for gestures

Signed-off-by: Kurt Eckhardt <kurte@rockisland.com>
2025-06-24 20:09:39 -10:00
Jilay Pandya
177e7d2b6a drivers: sensor: uint8_t var cannot be greater than 0xff
SENSOR_XBR818_CLOCKRATE / val->val1 is getting assigned
to uint8_t variable which is causing the logically
dead issue, this commit is a fix for it.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-24 20:08:54 -10:00
Jerzy Kasenberg
fea8ee47da tests: drivers: uart: async_api: Fix chain write
This fixes the case where uart_tx() called from tx callback
fill UART output fifo and immediately execute callback again.
This can happen when hardware does not have interrupt for
output FIFO empty and there is no non-blocking way to tell
that transfer finished.
For such case as soon as output FIFO is filled there is
interrupt that informs that more data can be transmitted.
For hardware with 32 byte fifo callback was seen to be
executed recursively 3 times.
That would not be a problem if chained_write_next_buf
was set BEFORE next call uart_tx().

Additionally semaphore max value is increased to 2
to accommodate such case.

Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg.xr@bp.renesas.com>
2025-06-24 20:07:23 -10:00
Benjamin Cabé
8186e6cc74 drivers: sensor: sht3xd: fix threshold low clear command
Fix copy-paste error causing update to SHT3XD_CMD_WRITE_TH_LOW_CLEAR to
be missing

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-24 20:06:41 -10:00
Benjamin Cabé
8b8a51fa8c tests: drivers: build_all: sensor: add adi,adxl366
This was missed when the driver was contributed in 756e699a41

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-24 20:06:14 -10:00
Benjamin Cabé
9b1e3fd195 tests: drivers: build_all: sensor: add maxim,ds3231-sensor
This was missed when the driver was contributed in 2759adaf1a

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-24 20:06:14 -10:00
Benjamin Cabé
1ae12e9ab2 tests: drivers: build_all: sensor: add everlight,als-pt19 build test
This was missed when the driver was contributed in 8f789f81c

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-24 20:06:14 -10:00
Benjamin Cabé
0d3f294338 dts: bindings: sensor: update brcm,afbr-s50 example snippet
Update the dt snippet so that it includes all the required properties

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-24 20:06:14 -10:00
Dmitrii Golovanov
208a8b3ac7 twister: Enable 'flash-before' mode on serial-pty
Enable `flash-before` mode for devices connected via serial-pty
the same way, as for physical serial.

This mode allows Twister to start reading from the DUT's serial
connection only after the flashing stage has been completed,
thus excluding an early part of the log stream not directly
related to the current test.

It can help in situations, when the device is connected via some
serial-over-network harness which is still transferring device
logs or keeping in its buffer a tail with different RunID etc.
from the previous test image run.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2025-06-24 20:05:46 -10:00
Benjamin Cabé
4b80bb5b84 drivers: can: renesas: properly clear error flag
Fix misleading comments and ensure "Bus Error" flag is properly cleared
(Bus-Off Entry flag was used twice previously).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-24 20:05:09 -10:00
Koen Van Herck
6ccd228d62 subsys/tracing: do not select (RTT_)CONSOLE in SEGGER_SYSTEMVIEW
Tracing using Segger's SystemView works fine without enabling RTT_CONSOLE
(or CONSOLE, in general).
SEGGER_SYSTEMVIEW was automatically selecting RTT_CONSOLE, which prevents
applications from using another console backend (e.g. UART_CONSOLE).

Signed-off-by: Koen Van Herck <koen.v.herck@gmail.com>
2025-06-24 20:04:07 -10:00
Tim Pambor
15ce6e0f01 shell: Fix warning for SHELL_SUBCMD_SET_END
The macro SHELL_SUBCMD_SET_END was defined as {NULL}, which triggers a
-Wmissing-field-initializers warning due to the missing 'help' field in
the shell_cmd struct. Replacing {NULL} with {0} silences the warning.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-06-24 20:03:26 -10:00
Tomas Groth Christensen
089c4613ba driver: timer: enable 64 bit cycle counter for MCUX_OS_TIMER
Selects TIMER_HAS_64BIT_CYCLE_COUNTER as an dependency for MCUX_OS_TIMER
This already is supported in the timer implementation in
drivers/timer/mcux_os_timer.c

Signed-off-by: Tomas Groth Christensen <tgc@foss.dk>
2025-06-24 20:03:01 -10:00
Yongxu Wang
0bf39e8213 drivers: dma: Update NXP EDMA driver for version 5
1. The edma version 5 share one driver with edma 4.
2. Edma5 tcd structure some difference, Use tcd type to distinguish,
   and Edma5 uses 64 bytes for alignment instead of 32.
3. Some platforms have some address offsets for certain memory
   when processing from a DMA perspective, such as imx95 cm7 TCM,
   so add offset processing.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-06-24 20:02:35 -10:00
Yongxu Wang
774370a1d7 boards: nxp: imx95_evk_mimx9596_m7: add uart dma support
- verify in uart_async_api test case.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-06-24 20:02:35 -10:00
Yongxu Wang
896dda44b4 modules: hal_nxp: support imx95 cm7 into sdk ng
- support imx95 cm7 platform into sdk ng.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-06-24 20:02:35 -10:00
Thiyagarajan Pandiyan
fa732ece86 samples: sensor: Add distance measurement sensor sample
Added sample to measure distance

Signed-off-by: Thiyagarajan Pandiyan <psvthiyagarajan@gmail.com>
2025-06-24 19:56:13 -10:00
Felix Moessbauer
94a6c1f0ff boards: lilygo: ttgo_tbeam: remove not-needed kconfig opts
The boards defconfig enabled CONFIG_(MFD|REGULATOR), which are not
stricly needed if the corresponding node is not enabled in the device
tree. These options also enable many drivers, which are problematic on
the mcuboot bootloader target. By moving them to the Kconfig, we can
make them depend on !MCUBOOT which restores the sysboot target.

Signed-off-by: Felix Moessbauer <felix.moessbauer@gmail.com>
2025-06-24 22:51:23 +02:00
Aksel Skauge Mellbye
cb8d6dfcbb drivers: mfd: npm13xx: Namespace register macros
Prefix macros for register access with NPM13XX_ to avoid
symbol naming conflicts.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-24 22:51:13 +02:00
Arunmani Alagarsamy
60ab9888d4 samples: net: Fix MAC address logging to include correct third byte
Previously, mac->addr[2] was skipped and mac->addr[3] was duplicated.
This change ensures all six MAC address bytes are logged in the
correct order.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-06-24 15:40:44 -05:00
Alexander Apostolu
8fee98313e drivers: sensor: asahi_kasei: akm09918c: Null check before dereference
cb_sqe could have been NULL before being passed into the callback function,
which expects cb_sqe to be non-NULL.

Add NULL check before the callback function with cb_sqe is called. The
reordering of the callback function after the sqe drop is okay as the
sqe drop is called when cb_sqe is NULL and the callback function isn't
expected to work when cb_sqe is NULL.

Signed-off-by: Alexander Apostolu <apostolu240@gmail.com>
2025-06-24 15:39:46 -05:00
Alberto Escolar Piedras
789a0a8da7 boards/raytac: Change Nordic license to Apache
For yaml files we do not normally even add a license, but if any it
should be Apache2 and not the Nordic one.
Note there is plenty of examples of yaml files very similar to this
in the Zephyr tree. So even if the author/submitter of the original
commit could have used as starting point a file from NCS, it would have
been the same if he would have used a Zephyr one.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-24 15:39:38 -05:00
Alberto Escolar Piedras
570f73f20e boards/ezurio: Change Nordic license to Apache
For yaml files we do not normally even add a license, but if any it
should be Apache2 and not the Nordic one.
Note there is plenty of examples of yaml files very similar to this
in the Zephyr tree. So even if the author/submitter of the original
commit could have used as starting point a file from NCS, it would have
been the same if he would have used a Zephyr one.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-24 15:39:38 -05:00
Fin Maaß
67e736a58c drivers: ethernet: phy: phy_qualcomm_ar8031: fix speeds undeclared
fix `speeds` undeclared.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-24 15:38:45 -05:00
Marc Lasch
86dbcd2cf2 net: lwm2m: Make Bootstrap on Registration Failure configurable
The fallback to Bootstrap on a Registration Failure might not be desirable
for some applications. This change makes the default behavior configure
through Kconfig.

An alternative to configure "Bootstrap on Registration Failure" would be to
set the server object resource id 16 at runtime. However, this is tedious
and error-prone, as it will be reset when the server object is deleted and
might have to be set at different locations in the client code.

Signed-off-by: Marc Lasch <marc.lasch@husqvarnagroup.com>
2025-06-24 15:38:27 -05:00
Marc Lasch
4c46b0bc8b net: lwm2m: Fix typo in bootstrap_on_fail
Bootstrap vs. Boostrap.

Signed-off-by: Marc Lasch <marc.lasch@husqvarnagroup.com>
2025-06-24 15:38:27 -05:00
Youssef Zini
baf53b3328 boards: add uart5 as console and shell-UART
Add UART5 as zephyr console and shell-UART device by default and ensure
its corresponding GPIOG node is enabled.
Add USART6 as a disabled node for potential use.
Enable UART support to the STM32MP257F-EV1 board configuration and add
the shell feature in the yaml.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-24 15:37:57 -05:00
Youssef Zini
be12fa104f dts: arm: st: stm32mp2_m33.dtsi: add uart/usart
Add UART/USART nodes in non-secure context to the device tree for
STM32MP2 SoC.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-24 15:37:57 -05:00
Youssef Zini
03d3075dc8 drivers: clock_control: add uart clock handling
Add clock bindings for UART/USART (1-9) peripherals in the
`stm32mp2_clock.h`.
Add UART/USART clocks rate reading to the STM32MP2 clock driver.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-24 15:37:57 -05:00
Youssef Zini
98b4f4e62e dts: arm: st: stm32mp2_m33.dtsi: add rctl node
Add the reset controller node to the STM32MP2 M33 device tree source
file.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-24 15:37:57 -05:00
Youssef Zini
a2d09e61a3 dt-bindings: stm32mp2_reset.h: add reset bindings
Add reset bindings for UART/USART (1-9) peripherals for the STM32MP2
series.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-24 15:37:57 -05:00
Eric Mechin
62a1b8a306 drivers: flash: STM32WBA flash_stm32wba_fm.c: fix sector erase error
The STM32WBA Flash Manager driver is failing to erase a sector, instead of
erasing one sector, two sectors are erased.
Fix it by correctly calculating the number of sectors to erase

Signed-off-by: Eric Mechin <eric.mechin@st.com>
2025-06-24 15:37:41 -05:00
Robert Hancock
f8b4a04186 drivers: mdio: mdio_xilinx_axienet: Add access timeouts
Previously if the MDIO access failed to complete, the driver could enter
an infinite busy loop. Add timeouts to fail the operation if the
hardware fails to respond within a reasonable time.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-06-24 15:37:24 -05:00
Robert Hancock
e673f1851f drivers: mdio: mdio_xilinx_axienet: Reduce log levels
Reduce log messages which can be triggered noisily by some PHY
drivers to debug level.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-06-24 15:37:24 -05:00
Kapil Bhatt
900a7a915f doc: networking: Add wifi credentials library document
Add document for wifi credentials library, which use to load
and store credentials.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-06-24 15:36:34 -05:00
Sylvio Alves
36fdcfd761 samples: counter: add esp32c2 soc overlay
esp8684_devkitm board build is failing due to
missing overlay file, which enables timer/counter.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-24 15:36:15 -05:00
Gang Li
75ac644ee3 drivers: wifi: nxp: enable net monitor mode on IW610
Enable CONFIG_NXP_WIFI_NET_MONITOR,
       CONFIG_NXP_WIFI_HOST_TXRX_MGMT_FRAME,
       CONFIG_NXP_WIFI_MMSF on IW610.

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2025-06-24 15:36:04 -05:00
Vinayak Kariappa Chettimada
fe348bce8e Bluetooth: Controller: Fixup ticker reschedule with drift
If the next ticker is too close then hop over it when
rescheduling a ticker with drift in slot window is used.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-06-24 15:35:51 -05:00
Lucien Zhao
7f45bbed3c samples: drivers: i2s/i2s_codec: support case on rt700
put __16kHz16bit_stereo_sine_pcm buffer into nocache region
Do some settings for rt700 cm33_cpu0 core

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-06-24 15:35:07 -05:00
Lucien Zhao
63a7a9308e boards: nxp: support sai0 instance
enable sai0 clock
config sai0 pin
add codec8962 support

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-06-24 15:35:07 -05:00
Lucien Zhao
fc293803f3 dts: arm: nxp: support sai instances on rt700 cm33 cpu0
add 3 sai instances on cm33 cpu0
add pinmux-cells in lpc-syscon.yaml

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-06-24 15:35:07 -05:00
Lucien Zhao
2bcec4c67e soc: nxp: imxrt7xx: set I2S_HAS_PLL_SETTING as n
The existing SAI diver cannot initialize the PLL on the
board, so the PLL settings will not be performed in the
driver.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-06-24 15:35:07 -05:00
Lucien Zhao
585a85ac55 drivers: clock_control: support rt700 getting sai clock
There are multi sai instance shared on clock source on
cm33_cpu0, clock driver don't need index parameter, so
modify clock driver to adapt clock driver.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-06-24 15:35:07 -05:00
Lucien Zhao
7101c7257c drivers: dma: dma_mcux_edma.c: add xcache support for tcd pool
XCACHE has been designed for RT700, tcd pool need to be put in
noncache region, update driver to support

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-06-24 15:35:07 -05:00
Miguel Gazquez
798dc5c976 soc: wch: Add packages for the ch32v303
Add the different packages of the CH32V303

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-24 15:34:42 -05:00
Miguel Gazquez
de0ef827cd dts: wch: add gpioe bank to ch32v303
Adds the gpioe bank to the ch32v303 devicetree.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-24 15:34:42 -05:00
Miguel Gazquez
1f5a281e9b dts: wch: fix ngpios for some WCH SoCs
The CH32V20x and CH32V30x SoCs have 16 pins per GPIO bank, but in the
devicetree, `ngpios` was incorrectly set to 8.
Fix the devicetrees by setting the correct value.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-24 15:34:42 -05:00
Emil Gydesen
4adabb49da Bluetooth: BAP: Use IN_RANGE in bt_bap_base_get_base_from_ad
This simplyfies the checks in the function a bit, and makes
Sonarcloud happy.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-06-24 15:34:17 -05:00
Emil Gydesen
c8ac20f2b2 Bluetooth: Audio: Add missing default case for bt_audio_dir_str
The switch was missing a default case as per the coding
guidelines.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-06-24 15:34:01 -05:00
Emil Gydesen
ae6b33be07 Bluetooth: CSIP: Remove excess + at start of link for test_k
Removed the excess +.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-06-24 15:33:41 -05:00
Yunshao Chiang
5a2765da26 drivers: comparator: add it51xxx_evb analog comparator driver
Add analog comparator driver for ITE it51xxx chip.

Signed-off-by: Yunshao Chiang <Yunshao.Chiang@ite.com.tw>
2025-06-24 15:33:17 -05:00
Chris Friedt
97519002ad sys: clock: re-apply change to Z_IS_TIMEOUT_RELATIVE
A mid-air collision between two different changes to sys_clock.h
resulted in a test failure.

```shell
tests/kernel/timer/timer_api/src/main.c:763:
  timer_api_test_timeout_abs: Z_IS_TIMEOUT_RELATIVE(t2) is false
```

Re-apply the change that was added in

9075d53355

to keep tests running smoothly.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 11:25:51 -04:00
Khaoula Bidani
f2c37c4b13 tests: drivers: spi: spi_loopback: add stm32u3 boards overlays
add SPI loopback test overlays for Nucleo U385RG-Q board.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-24 14:22:58 +02:00
Khaoula Bidani
df7d9ba90d boards: st: stm32u3: enable spi for stm32u3 boards
Enable SPI for Nucleo U385RG_Q board.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-24 14:22:58 +02:00
Khaoula Bidani
29c7500360 dts: arm: st: u3: add spi
Add SPI support to STM32U3

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-24 14:22:58 +02:00
Tallplay Lin
da4b8ec802 drivers: gpio: Support gpio_pin_get_config_dt
Add CONFIG_GPIO_GET_CONFIG feature to gpio_cmsdk_ahb.c

Signed-off-by: Tallplay Lin <tlin@atmosic.com>
2025-06-24 14:22:49 +02:00
Tien Nguyen
7368758bd1 soc: renesas: rz: Update Renesas RZ/V2N, RZ/V2L according to RZ/V2H
Porting gp_renesas_isr_context variable used in FSP interrupt source
to unify with RZ/V2H and prevent build error since they share the same
hal_renesas source code.

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-24 14:22:43 +02:00
Tien Nguyen
7d21bdfb38 tests: drivers: gpio: Add support for RZ/V2H-EVK R8 core
Add support for RZ/V2H-EVK R8 core

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-24 14:22:43 +02:00
Tien Nguyen
23bf54f330 boards: renesas: Add support for Renesas RZ/V2H-EVK R8 core
Add support for Renesas RZ/V2H-EVK R8 core

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-24 14:22:43 +02:00
Tien Nguyen
cff21ea2be dts: arm: renesas: Add support for Renesas RZ/V2H R8 core
Add devicetree to support for Renesas RZ/V2H R8 core

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-24 14:22:43 +02:00
Tien Nguyen
9688b7510f soc: renesas: Add support for Renesas RZ/V2H R8 core
Add support for Renesas RZ/V2H R8 core

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-24 14:22:43 +02:00
Tien Nguyen
f0acbd6402 manifest: Update commit id for hal_renesas
Update commit id for hal_renesas

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-24 14:22:43 +02:00
Tien Nguyen
b8215ec539 dts: bindings: Add CPU device bindings for Cortex-R8
This commit adds device bindings for Cortex-R8

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-24 14:22:43 +02:00
Maochen Wang
1e5b21f487 drivers: wifi: nxp: add Kconfig of NXP_WIFI_AUTO_INIT
Automatically initialize NXP Wi-Fi driver and FW for Wi-Fi networking
operation. Disable this setting if Wi-Fi module will be used for
non-Wi-Fi use cases (manufacturing/calibration/test).

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-06-24 14:20:02 +02:00
Davi Herculano
c3dd356f1a soc: imxrt10xx: fix SAI3 pll clock config
Fix the sai3 case in imxrt_audio_codec_pll_init which
was using sai2 constants.

Signed-off-by: Davi Herculano <herculanodavi@gmail.com>
2025-06-24 14:19:43 +02:00
Benjamin Cabé
f3b028ac3a tests: drivers: disk: add test for loopback_disk_access_unregister
Make sure this previously uncovered function is tested.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-24 14:19:33 +02:00
Fabio Baltieri
1914050f3c bindings: uart-bridge: add PM hooks
Add PM hooks to release or reattach the serial ports from the bridge.
Does not save power per se but allows switch the lower level serial
ports for something else in runtime.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-24 14:19:24 +02:00
Fabio Baltieri
f2934c8b8a bindings: uart-bridge: add missing base include
Add missing base include for the uart-bridge binding.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-24 14:19:24 +02:00
Chris Friedt
c08544a87b sys: clock: merge sys_clock.h into sys/clock.h
Merge sys_clock.h into sys/clock.h and preserve the original header.

This allows us to use a slightly more intuitive name for the
sys/clock.h header, while reducing churn throughout the codebase.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
45b3dbd008 samples: net: remove POSIX_TIMERS and XSI_SINGLE_PROCESS
Remove POSIX_TIMERS and XSI_SINGLE_PROCESS dependencies from the aws
cloud sample and the lwm2m client sample, as they are no longer
required.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
03db50b79d net: remove dependency on posix for iso c time() function
The ISO C function time() should not depend on POSIX and this was
corrected recently via the common libc time() implementation.

Remove this dependency from the network subsystem where it has
been unduly needed for some time.

Similarly, XSI_SINGLE_PROCESS was a dependency for time() via
picolibc, because the time() implementation in picolibc relies
on the POSIX gettimeofday() call.

However, since Zephyr's common libc time() implementation no longer
depends on that, it can be removed as a dependency in the network
subsystem as well.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
8743da2f32 posix: use sys_clock implementation
Use the newly added sys_clock API in lib/os for

* clock_gettime()
* clock_settime()
* clock_nanosleep() and nanosleep()
* gettimeofday()

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
3e30e2eddd tests: lib: move time testsuite to c_lib
Presumably the time testsuite was separate from the c library set of
testsuites because it had a depedency on POSIX.

Since that dependency no longer exists, colocate the time testsuite
with the other c library testsuites.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
9ecb7965b6 tests: libc: thrd: use sys_clock_gettime() and timespec_add()
Use sys_clock_gettime() instead of clock_gettime() and use
timespec_add() instead of manually adding timespec structures.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
ec62630950 tests: libc: thrd: use timespec_from_timeout()
Use `timespec_from_timeout(K_MSEC(msec), &ts)` instead of leaning on
lazily-crafted timespecs with invalid tv_nsec fields.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
a17497162e tests: libc: thrd: do not pass NULL for thrd_sleep() duration
The specification does not say that the first struct timespec passed to
thrd_sleep() may be NULL.

Preserving the testpoint so that a possible future testsuite can be
run that expects faults to occur when undefined behaviour is used.

Faults are one possible solution to handling undefined behaviour, but
it would be good to come to a concensus about how that should be
handled in Zephyr for standard function calls belonging to ISO C or
POSIX.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
a5a824db91 tests: libc: thrd: compare with thrd_success rather than ok or zero
The C standard does not guarantee that `thrd_success` is equal to
zero, so ensure that the test takes that into account.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
49cc01d4b5 libc: common: thrd: use sys_clock_nanosleep() instead of nanosleep()
Reduce the dependency on POSIX by taking advantage of the newly added
sys_clock_nanosleep().

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
ff7825b9aa libc: use the common libc time() implementation for most libcs
Use the implementation of time() from the common libc, since there
it no longer pulls in POSIX.

Use is implied for minimal, newlib, and picolibc, and selected
for IAR.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
17964083d3 libc: common: time: use sys_clock api rather than posix
Remove POSIX clock_gettime() from the common libc time implementation,
since POSIX should not be a dependency for ISO C.

Instead, use the newly added lib/os sys_clock API.

Specifically, sys_clock_gettime().

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
7868b4d54d logging: use sys_clock_gettime()
Use the newly added sys_clock_gettime() to avoid the unnecessary
dependency on POSIX APIs.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
bb7aa4dd79 doc: release: 4.2.0: add sys_clock gettime settime nanosleep notes
Add bullets to release notes for sys_clock_gettime(),
sys_clock_settime(), and sys_clock_nanosleep().

These changes were significant, as they make timekeeping dependencies
more independent between libc and posix, and remove several unnecessary
dependencies on posix for ISO C library routines.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
a3e934f12c sys: clock: additional sys_clock api calls
Additional entries for the sys_clock API, comprised of:

* sys_clock_gettime()
* sys_clock_settime()
* sys_clock_nanosleep()

along with the constants

* SYS_CLOCK_REALTIME
* SYS_CLOCK_MONOTONIC
* SYS_TIMER_ABSTIME

The primary motivation for this API is so that libc and other
libraries have a familiar-enough API to reach to when POSIX
is not available, since POSIX is optional in Zephyr.

By adding this API to lib/os, we also eliminate dependency cycles
between libc and posix, as lib/os is a mutual dependency.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
282b47cf37 posix: cond + mutex: log messages generate warnings for 32-bit timeouts
Previously, log messages would generate warnings (escalated to errors
in CI) when CONFIG_TIMEOUT_64BIT=n.

For example,

```
west build -p auto -b qemu_cortex_m0 -t run tests/posix/timers/ \
  -- -DCONFIG_TIMEOUT_64BIT=n
..
warning: format '%llx' expects argument of type \
  'long long unsigned int', but argument 3 has type 'k_ticks_t' \
  {aka 'unsigned int'}
```

Use portable print specifiers and cast the argument to int64_t.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Chris Friedt
e363fdd16b scripts: ci: check_compliance: allow CONFIG_BOARD_UNIT_TESTING
Previously, code like the snippet below would not pass compliance checks.
With this change, we add `CONFIG_BOARD_UNIT_TESTING` to the Kconfig allow
list, so that code like the snippet below is not incorrectly reported as
a compliance failure.

```
if defined(CONFIG_BOARD_UNIT_TESTING)
/* unit-testing only */
endif
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-24 14:18:52 +02:00
Phi Tran
3fa9495172 drivers: gpio: add gpio interrupt support for RX130
- Add support for gpio interrupt on RX130.
- Add support for gpio-keys input subsys on RSK_RX130_512KB boards.

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-06-24 14:18:41 +02:00
Phi Tran
da38a779ea drivers: external interrupt: add external interrupt support for RX130
Add support for external interrupt on RX130.

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-06-24 14:18:41 +02:00
Tatsuya Ogawa
5560c9f12a drivers: interrupt_controller: Add interrupt controller support for RX130
Add interrupt controller driver support for RX130 series

Signed-off-by: Tatsuya Ogawa <tatsuya.ogawa.nx@renesas.com>
Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-06-24 14:18:41 +02:00
Maochen Wang
f4a0beb2b7 samples: net: wifi: Enable NXP_WIFI_TX_RX_ZERO_COPY for IW610
Enable NXP_WIFI_TX_RX_ZERO_COPY for IW610, which will reduce extra memcpy
between net stack and driver in TX data path and avoid the allocation of
RXPD and mlan_buffer in RX data path, to improve the throughput
performance.
Increase CONFIG_NET_BUF_DATA_SIZE to hold one packet in one buffer.
NXP_WIFI_TX_RX_ZERO_COPY can be enabled not only for NXP_RW610 case.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-06-24 09:17:03 +02:00
Raymond Lei
7a582c5586 drivers: nxp: flexio: mask invalid ISR calling
Flexio ISR handle all flags even they are not interrupt enabled.
This will cause invalid calling of ISR callback functions.

Signed-off-by: Raymond Lei <raymond.lei@nxp.com>
2025-06-24 09:16:51 +02:00
John Barbero Unenge
f7f73bd0c3 driver: flash: mcux_flexspi_nor: Second attempt to fix is25lpXXX chips
This commit changes the implementation to distinguish between is25lpXXX
and is25lpXXXd. Using RDERP as in the original solution didn't work for
is25wpXXX chips and would cause a halt. This new implementation reads
the AutoBoot register instead, which is not present in is25lpXXX but
present in is25lpXXXd, is25wpXXX and is25wpXXXd.

Tested on:
- mimxrt1020-evk
- mimxrt1170-evk rev. A
- custom board with mimxrt1170 and is25lp128d

Signed-off-by: John Barbero Unenge <git@lsrkttn.com>
2025-06-24 09:16:04 +02:00
Maochen Wang
a9fd2306e4 manifest: update hal_nxp for RW612 and IW610 FW
upgrade RW612 FW to version 6.p40,
upgrade IW610 FW to version 5.p66.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-06-24 09:15:56 +02:00
Pieter De Gendt
f14907eb3e boards: nxp: mimxrt1170_evk: Add note for Arduino R3 gpio input interrupts
For future developers to hopefully save some time trying to figure out why
no GPIO interrupt callback is fired.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-24 09:15:40 +02:00
Gang Li
fd7201c52d boards: mimxrt1060: add lpuart8 pinctrl nodes for RT1060
The lpuart8 pinctrl nodes for RT1060 need to be defined, as WIFI + BT
(bt_tester) scenario requires three uart.
- LPUART1: shell uart
- LPUART3: bt hci uart
- LPUART8: uart pipe

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2025-06-24 09:15:20 +02:00
Tahsin Mutlugun
dd5681a217 tests: counter: counter_basic_api: Enable tests for MAX32657EVKIT
Add overlay files for MAX32657EVKIT secure and nonsecure boards.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-06-24 09:15:07 +02:00
Anıl Kara
adba582424 boards: adi: max32657: Enable PWM driver
PWM is added to the supported list for max32657evkit.

Signed-off-by: Anıl Kara <anil.kara@analog.com>
2025-06-24 09:15:07 +02:00
Tahsin Mutlugun
7336d1faed boards: adi: max32657evkit: Enable counter driver
Add counter to the list of supported drivers for MAX32657EVKIT secure
and nonsecure boards.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-06-24 09:15:07 +02:00
Anıl Kara
34b06f89fe dts: arm: adi: Add timer nodes to max32657
Add nodes timer0 to timer5. Add pwm and counter subnodes.

Signed-off-by: Anıl Kara <anil.kara@analog.com>
2025-06-24 09:15:07 +02:00
cyliang tw
03f919fc4c drivers: spi: fix numaker spi driver bug of frame size
Set right frame size in spi_context_buffers_setup and fetch
the right rx size based on frame size. Also clear SPI control register
before set mode & data width in spi configure routine.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-06-24 09:14:33 +02:00
Bjarki Arge Andreasen
ce95b7033c pm: device_runtime: fix unbalanced domain get/put
pm_device_runtime has inconsistent behavior regarding
getting and putting a device's domain. This commit
aligns it to get the domain only once, once device
is resumed, and put only once, once device is
suspended.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-24 09:14:20 +02:00
Bjarki Arge Andreasen
21b785da38 tests: pm: device_power_domain: test async put
Assert async put correctly releases device's power domain.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-24 09:14:20 +02:00
Pisit Sawangvonganan
d0b9a4e43e drivers: wifi: nxp: use IS_ENABLED() for CONFIG_NXP_WIFI_SOFTAP_SUPPORT
Replaced conditional compilation of `CONFIG_NXP_WIFI_SOFTAP_SUPPORT`
where applicable with IS_ENABLED() macro to improve code readability.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-06-24 09:13:58 +02:00
Pisit Sawangvonganan
2265dd7a93 drivers: wifi: nxp: fix include guard typo in nxp_wifi_drv.h
Fix include guard name and added trailing comment to final #endif.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-06-24 09:13:58 +02:00
Laurentiu Mihalcea
4c8a2ac715 boards: nxp: imx8qxp_mek: add esai0 default pin configuration
Add pad definitions and the pin configuration for i.MX8QXP MEK's
ESAI0.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-06-24 09:13:45 +02:00
Laurentiu Mihalcea
d474f0a177 boards: nxp: imx8qm_mek: add esai0 default pin configuration
Add pad definitions and the pin configuration for i.MX8QM MEK's
ESAI0.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-06-24 09:13:45 +02:00
Laurentiu Mihalcea
44f346e6d7 dts: bindings: dai-esai: allow pinctrl-related properties
Allow pinctrl-related properties to be specified in the ESAI
DT node.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-06-24 09:13:45 +02:00
Laurentiu Mihalcea
de3b598f9f drivers: dai: esai: support applying default pin configuration
Add support for applying the default pin configuration.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-06-24 09:13:45 +02:00
Laurentiu Mihalcea
1f483b37ea drivers: clock_control: mcux_ccm: support QM/QXP's ESAI/AUD_PLL1 clocks
Add support for gating/ungating IMX8QM/IMX8QXP's ESAI clocks and the
AUD_PLL_DIV_CLK0 clock used as source for ESAI's EXTAL.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-06-24 09:13:45 +02:00
Laurentiu Mihalcea
34d888cbba drivers: dai: esai: add support for runtime PM
Add support for runtime PM.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-06-24 09:13:45 +02:00
Francois Ramu
e11ca43123 doc: release-notes-4-2: new DTS properties for the QSPI of STM32 devices
Change to apply on the DTS of STM32 soc and boards with QSPI nodes

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-24 09:13:33 +02:00
Francois Ramu
45ce78adf0 samples: code_relocation_nocopy: update macro for flash size and address
In case of the st,stm32-qspi-nor compatible
new property and node definitions will requires new macro
to get the external NOR flash base address and size
Add the config for running the sample on stm32l475 disco kit

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-24 09:13:33 +02:00
Francois Ramu
e35ac8f972 boards: st: stm32 boards qspi-nor-flash DTS configuration
This change defines the "st,stm32-qspi-nor" compatible Node
in conformance to the DTS specifications
Includes the size property (in Bits) of the external memory device

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-24 09:13:33 +02:00
Francois Ramu
6e5d1393b6 drivers: flash: stm32 qspi driver size and address of the external NOR
New property of the st,stm32-qspi-nor compatible gives
the external NOR flash in bits.
The property of the st,stm32-qspi compatible gives
the external NOR flash base address

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-24 09:13:33 +02:00
Francois Ramu
aac2c5c568 dts: arm: stm32 reg definition for the st,stm32-qspi compatible
The st,stm32-qspi compatible is defining the reg property
with the register address and size at first index
followed by the external mem base address and max allocated size.
For the stm32F412, stm32F7, stm32L4, stm32H7, stm32WB series.
qspi is addressing max 256 MBytes from 0x90000000.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-24 09:13:33 +02:00
Francois Ramu
ec9f74f57d dts: bindings: flash controller size of the stm32 qspi nor
This change adds the size in Bits of the flash nor memory
for the st,stm32-qspi-nor compatible

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-24 09:13:33 +02:00
Ravi Dondaputi
11a3969221 drivers: wifi: Introduce option to use K_HEAP
Provide option to revert to K_HEAP instead of using
dedicated heaps in Wi-Fi driver.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-06-24 09:13:20 +02:00
Peter Fecher
dfc193f65c boards: phyboard_pollux: Update documentation
Add I2C documentation for phyBOARD Pollux.
Fixes spelling issues.

Signed-off-by: Peter Fecher <p.fecher@phytec.de>
2025-06-24 09:13:04 +02:00
Peter Fecher
03d7673a15 boards: phytec: phyboard_pollux: Add i2C config
Adds I2C Devicetree node configuration for phyBOARD Pollux
on the Coretex-M7 including the boards standard pinmuxing.

Signed-off-by: Peter Fecher <p.fecher@phytec.de>
2025-06-24 09:13:04 +02:00
Peter Fecher
f559f588da dts: nxp_imx8ml_m7: Add i2c Devicetree nodes
Add i2c DeviceTree nodes for use with the
Coretex M7 on the NXP imx8ml.

Signed-off-by: Peter Fecher <p.fecher@phytec.de>
2025-06-24 09:13:04 +02:00
Jonny Gellhaar
99957e1fb3 drivers: pinctrl: silabs: Fix multiple analogue bus allocation on same port
Fix ABUS allocation if both EVEN and ODD busses are used for the
same port. The initialisation loop would incorrectly overwrite
entire GPIO_nBUSALLOC when iterating the pinctrl array, must do
a read/mask/update/write sequence.

Signed-off-by: Jonny Gellhaar <jonny.gellhaar@prevas.se>
2025-06-23 16:31:40 -05:00
Benjamin Cabé
533fcc9a3f drivers: wifi: update non-inclusive language
use "Accept/block List" terminology instead of white/black list

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 16:31:16 -05:00
Benjamin Cabé
13ec1ea3dd Bluetooth: controller: update non-inclusive language
use "Accept List" terminology instead of white list

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 16:31:16 -05:00
Benjamin Cabé
b315a77808 scripts: dts: edtilb: inclusive language fix
replace "grandfathered-in" by the more inclusive "legacy"

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 16:31:16 -05:00
Khaoula Bidani
8eefd5a65a boards: st: nucleo_u385rg_q: fix Arduino D10 mapping
correct Arduino pin D10 mapping for Nucleo U385RG-Q board.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-23 16:31:05 -05:00
Shaunak saha
690f001013 doc: arm: MPS4 Corstone-315
Update MPS4  documentation for Corstone315.

Signed-off-by: Shaunak saha <ssaha@tsavoritesi.com>
2025-06-23 16:30:52 -05:00
Shaunak saha
7bc5ef87cf tests: arch: arm: update for MPS4 Corstone315
DT config for MPS4 corstone315 boards which can be tested with simulation.
Creates a custom section in the unused SRAM region. Executing code
in this region in privileged mode will result in an MPU fault while,
execution in unprivileged mode should work fine.

Signed-off-by: Shaunak saha <ssaha@tsavoritesi.com>
2025-06-23 16:30:52 -05:00
Shaunak saha
335960e4f9 modules: hal_ethos_u: Update for MPS4
What is changed?
  Added config for Ethos-U65 for Corstone315 which has default 256 MACs
  as per FVP.

Why do we need this change?
  This will help in validating the NPU when we add support for FVP
  testing for Ethos-U65.

Signed-off-by: Shaunak saha <ssaha@tsavoritesi.com>
2025-06-23 16:30:52 -05:00
Shaunak saha
05d1c3a7f0 boards: mps4: Add initial support for corstone315
What is changed?
  - Add initial support for the MPS4 Corstone-315 FVP platform, including
    board and SoC definitions.The qualifier to build/run application
    with board mps4/corstone315 is
    `mps4/corstone315/fvp` for secure and
    `mps3/corstone315/fvp/ns` for non-secure.
  - FVP testing with corstone315 uses the ARM FVP
    `FVP_Corstone_SSE-315`.

Why do we need this change?
  - This enables FVP support for corstone315.
  - A separate FVP variant was added for corstone315 as the TFM board
    used for non-secure variant differs for FPGA and FVP.
    TFM board `arm/mps4/corstone315` support is present but no FVP support
    yet. We can test this by building TF-M with
    -DTFM_PLATFORM=arm/mps4/corstone315 and then lauching FVP:
    FVP_Corstone_SSE-315 --data "bl1_1.bin"@0x11000000
      --data "cm_provisioning_bundle.bin"@0x12024000
      --data "dm_provisioning_bundle.bin"@0x1202aa00
      --data "bl2_signed.bin"@0x12031400
      --data "tfm_s_ns_signed.bin"@0x38000000

Signed-off-by: Shaunak saha <ssaha@tsavoritesi.com>
2025-06-23 16:30:52 -05:00
Eve Redero
0397a65e82 doc: drivers: display: remove unsupported ref
Comments and documentation mention compatibility with several
Sharp LS0xxx references, such as LS012B7DD06, a 64-color 6-bit
parallel display, and LS013B7DH06 a 8-color serial display.
The ls0xx driver supports serial and monochrome only.

Signed-off-by: Eve Redero <eve.redero@gmail.com>
2025-06-23 16:29:59 -05:00
Benjamin Perseghetti
44499df9eb drivers: sensor: icm42688 add asserts to RTIO
Adding asserts to RTIO stream to avoid hardfaults.

Signed-off-by: Benjamin Perseghetti <bperseghetti@rudislabs.com>
2025-06-23 16:29:32 -05:00
Benjamin Perseghetti
4d91f6c3ed drivers: sensor: icm42688 enable fifo-hires in DT
Allow setting fifo-highres from DT, also unify the
naming of all registers and expand to a more complete list.

Signed-off-by: Benjamin Perseghetti <bperseghetti@rudislabs.com>
2025-06-23 16:29:32 -05:00
Benjamin Perseghetti
5c9d6d44f3 drivers: sensor: icm42688 add axis_align in DT
Introduces the ability to set static axis
alignment of a sensor from DT params.

Signed-off-by: Benjamin Perseghetti <bperseghetti@rudislabs.com>
2025-06-23 16:29:32 -05:00
Marek Matej
612b905d7d samples: boards: espressif: extend SPIRAM test
Add byte, word, and dword test patterns to SPIRAM test.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-06-23 16:27:17 -05:00
Duy Nguyen
76ad3d0935 tests: i2c: Add test configuration for RX130
Add overlay and config for RSK-RX130 to execute i2c_api test

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-23 16:26:51 -05:00
Duy Nguyen
ed6839f157 boards: renesas: Add support for I2C node on board RSK-RX130
This commit add support for I2C node on RSK-RX130 board

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-23 16:26:51 -05:00
Duy Nguyen
92a631e836 drivers: i2c: Add support i2c driver for Renesas RX MCU
Add initial support for i2c on Renesas RX MCU
This driver is controlling the RIIC HW of RX MCU for i2c bus
interface on Zephyr
Only master mode is supported

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-23 16:26:51 -05:00
Quy Tran
c6dbd8a000 manifest: hal_renesas: Update commit ID to support I2C on Renesas HAL
Update commit ID to the latest for I2C driver support
on hal_renesas

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-06-23 16:26:51 -05:00
Benjamin Cabé
6a893fb91b settings: zms: add missing error check
Add a missing assignment of the return value of zms_write() to rc
variable so that potential error is actually checked and returned.

Fixes CID 524778
Fixes zephyrproject-rtos/zephyr#90474

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 12:49:07 -07:00
Chaitanya Tata
9e8a21701b samples: net: zperf: Disable L2 ethernet
This simplifies Zperf commands avoiding needs to handle multiple
interfaces.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-06-23 12:47:56 -07:00
Etienne Carriere
f32cd9330b samples: drivers: i2c: rtio_loopback: add nucleo_f401re/nucleo_h503rb
Add nucleo_f401re and nucleo_h503rb boards to rtio_loopback tests
on the I2C driver.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-06-23 12:47:00 -07:00
Etienne Carriere
79d1803efe drivers: i2c: stm32: add target mode in RTIO drivers
Implement I2C target mode in STM32 I2C RTIO drivers. The implementation
in respectively i2c_ll_stm32_v1_rtio.c and i2c_ll_stm32_v2_rtio.c is
based on the implementation of the non-RTIO drivers, respectively
i2c_ll_stm32_v1.c and i2c_ll_stm32_v2_rtio.c.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-06-23 12:47:00 -07:00
Etienne Carriere
e16c9bb41d drivers: i2c: stm32: report error case in v1 RTIO driver
Report error event to the RTIO framework in STM32 I2C v1 driver.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-06-23 12:47:00 -07:00
Etienne Carriere
5740dfe77b drivers: i2c: stm32: fix write burst in RTIO drivers
Correct management of I2C write transfers that are driven from 2
I2C messages, one for the transfer of the address to write
to and a following message for the transfer of the data to be written.
In this case, no START and STOP bit should be triggered between the 2
I2C transfers.

In STM32 I2C v1 driver, this simply means not emitting a START
condition when the input sequence does not set the RESTART flag.

In STM32 I2C v2 driver, this can only be achieved using the SoC I2C
controller Reload Mode feature, hence update Reload Mode implementation
to use reload mode for both transfers over 255 bytes (splitted in
chunks) and for cases where no STOP and START bits are emitted between
2 transfer in the same transaction.

Regarding STM32 I2C v2 driver, the reload mode must be enable before the
first transaction, known that it's needed due to the following
transaction. Therefore we need to parse the messages grouped in the same
transaction to detect such sequences (a message without STOP flag
followed by a message without RESTART flag) and when so, pass the
information to the I2C driver through RTIO framework. To achieve that,
let's use a free bit from I2C message flags (bit 7) in the message
for which we need to enable SoC ReloadMode from the first transfer.
We check that this bit flag is not used by the I2C framework prior
using it.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-06-23 12:47:00 -07:00
Etienne Carriere
2ccc1eab89 drivers: i2c: stm32: I2C transaction first transfer must set RESTART flag
The first transfer in an I2C transaction series must always set
the RESTART flag. Since this is not always done by callers,
enforce the flag is set, both in the I2C API and RTIO API entry
points of STM32 I2C RTIO drivers.

Add a sanity test in STM32 I2C v2 RTIO driver on transaction
chunks regarding RESTART and STOP flags, as done on the non-RTIO
driver.


Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-06-23 12:47:00 -07:00
Muzaffar Ahmed
56a0160e30 drivers: wifi: siwx91x: Fix buffer overflow in client disconnect
Copy only WIFI_MAC_ADDR_LEN bytes to sta_info.mac instead of dynamic
length

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-06-23 12:46:10 -07:00
Muzaffar Ahmed
73a1bef079 drivers: wifi: siwx91x: Raise AP enable event from driver
Raising event from driver itself after successful AP start,
instead of waiting for an event from SDK/TA FW. TA used to send an
asynchronous event earlier but currently does not.

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-06-23 12:46:10 -07:00
Muzaffar Ahmed
65d8f816e5 drivers: wifi: siwx91x: Disable the 160 MHz feature
Fixes: commit a73f20214 ("drivers: wifi: siwx91x: Fix boot_config")
Disabled the 160 MHz feature due to stability issues (mode change)

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-06-23 12:46:10 -07:00
Johan Hedberg
607ff8520f doc: migration-guide-4.2: Add note about bt_hci_cmd_create()
Add a note about bt_hci_cmd_create() deprecation and which API should be
used instead.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
a22a4b1ae4 Bluetooth: Host: Mark bt_hci_cmd_create() as deprecated
Mark bt_hci_cmd_create() as deprecated (superceded by bt_hci_cmd_alloc()),
and update any references to the new function.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
978614abfb tests: bsim: bluetooth: Remove bt_hci_cmd_create() usage
These tests have some sort of simple host implementation, which reuses the
bt_hci_cmd_create() API name, but the implementation is actually local and
something that can be made static. Change the function to be static and
rename it to be more in line with other internal functions.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
b0bed23fd2 Bluetooth: tests: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
187ec7012d Bluetooth: samples: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
c186a3110c Bluetooth: drivers: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
58fe2ab5e6 Bluetooth: Mesh: shell: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
3056d0773e Bluetooth: Host: shell: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
896212933a Bluetooth: Host: scan: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
e9f06126ea Bluetooth: Host: iso: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
354e75d479 Bluetooth: Host: id: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
6f2643638d Bluetooth: Host: direction: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
e23d5a0801 Bluetooth: Host: cs: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
0d47556542 Bluetooth: Host: conn: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
fa0aece2fa Bluetooth: Host: Classic: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
47fa056fb6 Bluetooth: Host: adv: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
2ea9605380 Bluetooth: Host: core: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
6c61c8c428 Bluetooth: Host: CS: Fix test HCI command encoding
The command buffer was incorrectly encoded due to the recent change to H:4
encoding. Instead of fixing the header offset, just use the newly
introduced bt_hci_cmd_alloc() API, since that takes care of correctly
encoding the command header when it gets sent.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Johan Hedberg
b530b261d9 Bluetooth: Host: Introduce bt_hci_cmd_alloc()
Introduce a new bt_hci_cmd_alloc() API which only allocates a command
buffer and reserves sufficient headroom for H:4 and command headers, but
doesn't actually encode any of those headers into the buffer. Additionally,
modify bt_hci_cmd_send() and bt_hci_cmd_send_sync() so that they handle
such buffers and perform the header encoding correctly. To avoid
duplication, bt_hci_cmd_send_sync() now builds upon (i.e. calls internally)
the bt_hci_cmd_send() API.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Carles Cufi
892ac07a4a cmake: Add a new no_deprecation_warning compiler flag
Commit be40d854c2 introduced the ability
of building Zephyr with deprecation warnings enabled, by making
COMPILER_WARNINGS_AS_ERRORS depend on the newly added DEPRECATION_TEST
Kconfig option. This has the downside of disabling **all** warnings, not
only the deprecation ones.

This patch instead makes DEPRECATION_TEST disable only the deprecation
warning, but leaves COMPILER_WARNINGS_AS_ERRORS enabled.
This has the advantage of being able to see other unrelated warnings
(and fail if they appear) but has the disadvantage of not printing out
the deprecation warnings themselves (since they are disabled).

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-23 12:38:07 -07:00
Benjamin Cabé
524e44fd79 tests: kernel: k_heap: add tests for k_heap_realloc
There was zero test for this new-ish kernel API so add them.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 12:35:33 -07:00
Benjamin Cabé
487bdb311e tests: kernel: k_heap: cleanup doxygen
Remove redundant wording from doxygen brief

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 12:35:33 -07:00
Khaoula Bidani
a74206fd98 tests: drivers: i2c: target_api: add stm32u3 overlays
Add overlays for NUCLEO_U385RG_Q board.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-23 12:33:52 -07:00
Khaoula Bidani
5e30f63c83 boards: st: stm32u3: enable i2c
Enable I2C on NUCLEO_U385RG_Q board.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-23 12:33:52 -07:00
Khaoula Bidani
7fe048cae1 dts: arm: st: u3: add i2c
Add I2C nodes to STM32U3

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-23 12:33:52 -07:00
Guennadi Liakhovetski
b8a2eef2ef xtensa: gdbstub: update comments
Update a comment about GDB use of register index and "regno"
parameters. Only some GDB versions use "idx" instead of "regno."

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Guennadi Liakhovetski
b8d382ef09 intel_adsp: ace: add gdb support
Add gdbstub support to Meteor Lake and a base for other ACE
platforms. Based on the Tiger Lake implementation, but some registers
do differ.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Noah Klayman
a9c47a47a4 intel_adsp: cavs: add gdb support
Uses SRAM debug region to pass GDB messages to host, which is exposed
via PTY by cavstool with -d arg or using the SOF kernel driver via a
debugfs file.

Signed-off-by: Noah Klayman <noah.klayman@intel.com>
[guennadi.liakhovetski@linux.intel.com: update to current "main"]
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Guennadi Liakhovetski
c524eb619a xtensa: gdbstub: support more registers
Stack offset for spilled registers can be larger than 256 bytes, e.g.
on ADSP platforms with additional floating point and SIMD registers.
Register indices can also be larger than 255. Update both types to
support larger values.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Noah Klayman
28e2b50aff xtensa: gdbstub: fix unavailable register reporting
To report unavailable registers to the GDB client, the GDB stub has
to return a string like "xx" in the value string.

Signed-off-by: Noah Klayman <noah.klayman@intel.com>
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Guennadi Liakhovetski
1df49e9691 xtensa: gdbstub: (cosmetic) simplify a conditional
Move an assignment performed on both "if" branches as the last
operation to after the "if."

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Guennadi Liakhovetski
29f66ab823 gdb: fix building without UART support
GDB can now also be built without UART support, e.g. on Xtensa it can
use a memory window backend. Update the Kconfig dependency to avoid
build failures.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Noah Klayman
5882f01b51 gdbstub: make immediate GDB stub entry optional
Add a Kconfig option to be able to postpone entering the GDB stub
until an external trigger.

Signed-off-by: Noah Klayman <noah.klayman@intel.com>
Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Guennadi Liakhovetski
5f4b51f9b1 soc: intel_adsp: add a debug window slot descriptor
Add a debug window slot descriptor for the debug window area in the
first page, where descriptors themselves occupy the first few
hundreds of bytes. This area begins 1024 bytes after the beginning of
the debug window until the end of the page and is therefore 3 * 1024
bytes large. Descriptor 15 will be used to describe it and it will be
used for the GDB stub.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Guennadi Liakhovetski
cae5e5adc6 soc: intel_adsp: gather debug window indices in one place
All debug window slot indices should be defined in
adsp_debug_window.h, move them there and use them consistently.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-23 12:32:44 -07:00
Francois Ramu
68d097836b samples: sysbuild: with mcu_boot on the stm32h7rs targets
Run the sample to execute in place on the external flash of the
stm32h7s78_dk or nucleo_h7s3l8 boards.
with_boot is build and linked for the external flash
Download the mcuboot zephyr.bin in internal memory
Download the with_mcuboot zephyr.signed.bin in external memory

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-23 12:32:11 -07:00
Francois Ramu
5a4326e8ce samples: appli dev: code reloc running on stm32h7rs target boards
Samples to execute code in external memory in Memory mapped mode
on the stm32h7s3l8 nucleo or stm32h7s78 disco kit

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-23 12:32:11 -07:00
Francois Ramu
8fe8b6c653 boards: arm: stm32h7s78 disco kit for XiP on external flash
Add the memory attributes to XiP in MemoryMapped mode on the
external octo-flash of the stm32h7s78_dk board.
Use the STM32Cube programmer to flash with the corresponding
external loader for XiP mode.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-23 12:32:11 -07:00
Francois Ramu
f960476b30 boards: st: stm32h7s3l8 nucleo board for XiP on external flash
Add the memory attributes to XiP in MemoryMapped mode on the
external octo-flash of the nucleo_h7s3l8 board.
Use the STM32Cube programmer to flash with the corresponding
external loader for XiP mode.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-23 12:32:11 -07:00
Vinayak Kariappa Chettimada
ebc023b0ce Bluetooth: Controller: Fix incorrect aux offset using single timer
Fix incorrect aux offset value in the aux pointer in the
primary advertising channel PDUs when using single timer
tIFS switching feature in nRF54Lx.

End time was not captured when only Tx follow by Tx happens
in the primary advertising channels. End time needs to be
always captured when using single timer so that elapsed
packet timer value is correctly accumulated, for use to
setup subsequent radio transmission or reception inside the
same radio event.

Relates to commit 373dc0db71 ("Bluetooth: Controller:
Single timer use Extended Advertising nRF54L support").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-06-23 12:32:00 -07:00
Vinayak Kariappa Chettimada
045d60e6c9 tests: bsim: Bluetooth: Enable testing periodic adv chains on nRF54lx
Enable testing periodic advertising chains on nrf54l15bsim
target to cover the Controller's use of single timer for
packet and tIFS switching.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-06-23 12:32:00 -07:00
Vinayak Kariappa Chettimada
301ad16406 Bluetooth: Controller: Do not clear timer clear subscription until done
Do not clear timer clear subscription until the radio event
is done. This is required for single timer switching when
periodic chains are to be received by LLL scheduling. Each
PDU in the train requires the timer to be cleared when the
parent PDU has been received such that reception of
auxiliary PDU's radio_tmr_start_us() can use the relative
offset since last PDU reception.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-06-23 12:32:00 -07:00
Vinayak Kariappa Chettimada
964f751fdd Bluetooth: Controller: Use defines for TRX and IFS Radio End Events
Use defines for Transmit/Receive and Inter-frame spacing
related Radio End events. This will ease some spaghetti of
conditional compilations for single timer and direction
finding support.

Direction Finding is not yet supported when using single
timer software tIFS switching.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-06-23 12:32:00 -07:00
Vinayak Kariappa Chettimada
fa1119f9c1 Bluetooth: Controller: Fixup align DDPI usage with nRF54L power domains
Fixup commit 031a17c271 ("Bluetooth: Controller: Align
DDPI usage with nRF54L power domains").

Align DDPI usage with nRF54L series power domains and
available DDPI configurations.

Use indices below 4 when needing to bridge with GPIO,
use indices below 8 when needing to bridge with MCU domain
like CCM and AAR; and use indices above 7 to bridge with
Peripheral domain.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-06-23 12:32:00 -07:00
Vinayak Kariappa Chettimada
ae59e6cfe7 Bluetooth: Controller: Redundant TIMER_CLEAR_PPI disable
HAL_SW_SWITCH_TIMER_CLEAR_PPI is same as
HAL_SW_SWITCH_GROUP_TASK_ENABLE_PPI, hence the single PPI
suffice being disabled.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-06-23 12:32:00 -07:00
Sergei Ovchinnikov
3b035954f2 tests: drivers: build_all: add npm1300 and npm1304 devices
Add the npm1300 and npm1304 devices tests to the appropriate build_all

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-06-23 16:19:43 +01:00
Sergei Ovchinnikov
1bfeaba6f4 doc: release: migration-guide-4.2: add npm13xx changes
Add notes about change in API and file locations from npm1300 to npm13xx

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-06-23 16:19:43 +01:00
Sergei Ovchinnikov
645159dc26 drivers: npm13xx: add support for nPM1304
Add support for nPM1304 in the npm13xx drivers. The nPM1304 supports
different voltage and current ranges which are handled through the
initialization macros.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-06-23 16:19:43 +01:00
Sergei Ovchinnikov
34188c4336 dts: bindings: add npm1304 extracting common from npm1300
Add nPM1304 device tree bindings. Extract the properties common to
nPM1300 and nPM1304 into npm13xx-common files.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-06-23 16:19:43 +01:00
Sergei Ovchinnikov
89b8383633 drivers: npm13xx: rename npm1300 to npm13xx
Rename npm1300 to npm13xx in function names, documentation, etc. where
applicable for all the npm13xx drivers

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-06-23 16:19:43 +01:00
Sergei Ovchinnikov
fb007db50a drivers: npm1300: rename to npm13xx
Rename npm1300 drivers and header files to npm13xx to allow for usage
with other nPM13xx product variants.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-06-23 16:19:43 +01:00
Dave Joseph
7b7e747520 tests: drivers: tisci: TISCI driver test
TISCI driver test added to validate the TISCI API
functionality in Zephyr. This test is for the target
am243x_evm/am2434/r5f0_0.

Signed-off-by: Dave Joseph <d-joseph@ti.com>
2025-06-23 15:54:34 +01:00
Dave Joseph
fb3c562644 dts: arm: ti TISCI DMSC support for AM2434 EVM
Device tree edits to add DMSC system controller support for
AM2434 EVM. This includes the addition system-controller and
secure-proxy mailbox nodes in arm46x_main.dtsi.

Signed-off-by: Dave Joseph <d-joseph@ti.com>
2025-06-23 15:54:34 +01:00
Dave Joseph
95c20c338c drivers: firmware: TISCI driver support
Added TISCI driver for supported devices using the binding ti,k2g-sci.
This is used to communicate via the secury proxy channel for clock,
resource and power domain management.
Refer: https://software-dl.ti.com/tisci/esd/latest/2_tisci_msgs/general/TISCI_header.html

Signed-off-by: Dave Joseph <d-joseph@ti.com>
2025-06-23 15:54:34 +01:00
Dave Joseph
04d12bc8b2 drivers: mbox: secureproxy: Pass userdata in isr
This change modifies the secure proxy mailbox driver to pass user data
to the interrupt service routine (ISR) callback. This allows the ISR
to access the specific context or data associated with the mailbox
message being processed.

Signed-off-by: Dave Joseph <d-joseph@ti.com>
2025-06-23 15:54:34 +01:00
Luca Burelli
44242ca219 MAINTAINERS: include Arduino shields in the Arduino category
This commit adds the Arduino shields under the same assignees as the
rest of the Arduino platforms.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-06-23 15:50:16 +01:00
Benjamin Cabé
a55a9670ee drivers: gpio: max149xx: fix error handling
Use signed variable for negative error codes so that potential errors
are actually detected and returned properly.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 15:50:05 +01:00
Pieter De Gendt
e8caaf4137 scripts: Bump Python target version for ruff
Now that Python 3.12 is the minimum required version for Zephyr, ruff
should target that instead of 3.10.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-23 15:48:57 +01:00
Pavel Vasilyev
e7a7c590bf tests: bsim: bluetooth: host: privacy: peripheral: Enable nRF5340
Enable privacy peripheral test for nRF5340.

After fixing scan interval, the test started passing on nRF5340 as well.
Enable it for regressions.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-06-23 15:48:35 +01:00
Pavel Vasilyev
dacdf7da74 tests: bsim: bluetooth: host: privacy: peripheral: Fix scan interval
The scan interval must match scan window to start next scanning after
previous window completes. Otherwise, one of advertisements may be
missed and test will fail because it will think that RPA rotation didn't
happen in time.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-06-23 15:48:35 +01:00
Benjamin Cabé
bc5b332c9b drivers: audio: max98091: fix max98091_set_property error handling
Don't systematically return -EINVAL when property actually exists

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 15:48:25 +01:00
heronet
3ce5226a1e boards: arm: add WeAct STM32F446 Core board
Add support for WeAct STM32F446 Core board featuring:
- STM32F446RET6 MCU (ARM Cortex-M4F @ 180 MHz)
- 512KB Flash, 128KB SRAM
- 8MHz HSE crystal oscillator
- USB Type-C connector with DFU support
- User LED (PB2) and button (PC13)
- MicroSD card slot (SDIO)
- SWD debug header
- 30×2 pin headers exposing GPIO pins

Peripherals supported:
- 4x USART/UART
- 4x I2C
- 4x SPI/I2S
- 2x CAN
- 3x 12-bit ADC
- 2x 12-bit DAC
- USB OTG FS
- SDIO interface

Tested with samples/basic/blinky and samples/hello_world.

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
Signed-off-by: heronet <sirat4757@gmail.com>
2025-06-23 15:48:14 +01:00
Mathieu Choplain
19fe604aef scripts: west_commands: runners: add ST-LINK GDB server
Add the ST-Link GDB server (part of the STM32CubeCLT) as west runner.

The STM32CubeCLT is an all-in-one multi-OS command-line toolset, which is
part of the STM32Cube ecosystem, and notably includes a GDB server for
debugging using ST-Link probes.

This runner supports the "attach", "debug" and "debugserver" commands.

Documentation: https://www.st.com/en/development-tools/stm32cubeclt.html
Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-23 15:47:17 +01:00
Bjarki Arge Andreasen
0829c2bb8c drivers: nrfx: help select clock control when needed
CLOCK_CONTROL is required for fast instances of UART and COUNTER,
help select it when possible. The fast instances are UARTE120,
TIMER120 and TIMER121, and CLOCK_CONTROL is not supported for
CPUFLPR and CPUPPR even when the fast instances are used.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-23 15:47:01 +01:00
Bjarki Arge Andreasen
4c3671aea3 dts: vendor: nordic: nrf54h20.dtsi: disable cpurad_hsfll
The cpurad_hsfll is not yet supported by the NRFS DVFS service,
disable it to prevent driver from being loaded.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-23 15:47:01 +01:00
sudarsan N
3fb0cf48f5 drivers: video: fix uninitialized struct
Zero-initialize fmt to fix Coverity.

CID:525180
CID 524760
CID 524753
CID 524781
CID 524755

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-23 15:46:42 +01:00
Nick Ward
ab99a53ae7 net: lwm2m: ipso: accelerometer: remove buffers for optional resources
Allows application code to control allocation of buffers of optional
resources.

Y value, Z value, min range value, max range value resources are
optional.

Signed-off-by: Nick Ward <nix.ward@gmail.com>
2025-06-23 15:46:18 +01:00
Mike J. Chen
a5a78ee608 drivers: usb_dc_mcux: disable irq in detach
Otherwise the next attach could have the ISR invoked
before init has completely initialized all the required
data structures to handle the ISR properly.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-06-23 15:45:55 +01:00
Hao Luo
4a9412b5d4 drivers: adc: add dma support for ambiq adc driver
This commit adds dma support for ambiq adc driver

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-23 15:45:44 +01:00
Tomasz Moń
e0c2372eeb samples: usb: uac2: Implement feedback on nRF54H20
Add configuration and feedback implementation necessary to run UAC2
samples on nRF54H20. Limit nRF54H20 to Full-Speed only operation because
the samples currently don't have necessary logic to support High-Speed.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-06-23 15:44:52 +01:00
Tomasz Moń
45f1222474 samples: usb: uac2: Make I2S buffers UDC compliant
Change I2S mem slabs to adhere to UDC padding and alignment requirements.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-06-23 15:44:52 +01:00
Tomasz Moń
810118d2c6 samples: usb: uac2: Leave cache management up to drivers
Do not call cache management functions in sample because it does not
work properly if driver uses bounce buffers.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-06-23 15:44:52 +01:00
Riku Karjalainen
9493af937d drivers: usb: stm32: fix stm32u5x clock disable in sleep mode
Replace logical OR with bitwise OR.

Signed-off-by: Riku Karjalainen <riku.karjalainen@vaisala.com>
2025-06-23 15:43:55 +01:00
Riku Karjalainen
160ef4670a drivers: usb: stm32: fix stm32u5x clock disable in sleep mode
Replace logical OR with bitwise OR.

Signed-off-by: Riku Karjalainen <riku.karjalainen@vaisala.com>
2025-06-23 15:43:55 +01:00
Johann Fischer
7b287ec133 drivers: udc: disable SOF interrupt by default
If the new Kconfig option is disabled, no SOF events are passed to the
higher layer.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-23 15:43:32 +01:00
Johann Fischer
2d7995747e drivers: udc: add SOF Kconfig option and SOF event helper
Add helper to handle SOF interrupts/events and new Kconfig option to
disable SOF interrupt.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-23 15:43:32 +01:00
Tamas Jozsi
4cae4661a2 boards: sparkfun: fix the LED active state on the ThingPlus Matter
The LED on The Sparkfun ThingPlus Matter is active high.

Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
2025-06-23 13:45:24 +02:00
Manuel Argüelles
4def7aceec soc: nxp: s32k3: use MPU_REGION_ENTRY macro
Align MPU region definitions with other SoCs by using the
`MPU_REGION_ENTRY` macro.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-06-23 13:45:03 +02:00
Jilay Pandya
616688c20e docs: stepper: add stepper stop function
Add entry of stepper stop function in stepper.rst

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-23 13:44:51 +02:00
Jilay Pandya
08dd7c519a drivers: stepper: tmc5xxx: introduce stop function
Introduce stop function in tmc5xxx

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-23 13:44:51 +02:00
Jilay Pandya
2aca0d3e9d drivers: stepper: remove stop function wrapped in disable
Removing stop functionality wrapped in stepper_disable since
there is a dedicated function for it.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-23 13:44:51 +02:00
Jilay Pandya
5918ddce34 drivers: stepper: update documentation about enable/disable
Disabling the stepper shall not cancel any active movements.
stepper_stop() shall be used after disabling the stepper in
order to explicitly cancel stepper movements.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-23 13:44:51 +02:00
Alessandro Manganaro
6244e9307e drivers: timer: Fix interrupt management in stm32 lptim timer
Fix interrupt management issue in stm32 lptim timer

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-06-23 13:44:15 +02:00
Alessandro Manganaro
e5ded3d71a drivers: timer: Fix conversion issue in stm32 lptim timer
Using correct macro to convert stdby time in LPTIM counter

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-06-23 13:44:15 +02:00
Benjamin Cabé
fff5b49581 arch: arc: replace "master"/"slave" terminology with inclusive language
As per Zephyr guidelines regarding the use of inclusive language, apply
the following replacements:

- s/master/primary/g
- s/slave/secondary/g

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 13:43:36 +02:00
Benjamin Cabé
8b919042f5 arch: arm64: replace "master" terminology with "primary"
Use inclusive language for referring to primary core

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 13:43:08 +02:00
Benjamin Cabé
2a43a94455 drivers: display: hx8394: add missing static qualifiers to local arrays
Updated multiple configuration arrays from 'const' to 'static const'

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 13:42:48 +02:00
Benjamin Cabé
8031f338dd scripts: west: spdx: extract copyright info
use REUSE to extract copyright text from source files and include in

SBOM documents
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 13:42:35 +02:00
Nikodem Kastelik
ffc8ec89c8 manifest: update hal_nordic for errata 55 on nRF54LV10A Eng A
Errata 55 applies to nRF54LV10A Eng A as well.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-06-23 13:42:25 +02:00
Khaoula Bidani
1a993daf2c tests: drivers: adc: adc_api: fix ADC DMA test for Nucleo U385RG-Q
Correct the ADC DMA test to ensure proper functionality on the
 Nucleo U385RG-Q board.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-23 13:42:19 +02:00
Khaoula Bidani
0104943d48 tests: drivers: dma: loop_transfer: add stm32u3 boards overlays
Add DMA loop transfer test overlays for Nucleo U385RG-Q board.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-23 13:42:19 +02:00
Khaoula Bidani
786339b6c6 boards: st: stm32u3: enable dma for stm32u3 boards
update documentation to indicate that DMA is
available on Nucleo U385RG-Q board.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-23 13:42:19 +02:00
Khaoula Bidani
022ad6839a dts: arm: st: u3: add gpdma
Add GPDMA support to STM32U3

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-23 13:42:19 +02:00
Andrzej Głąbek
e78729609d drivers: mspi_dw: Add support for RX dummy cycles in single line mode
Support for 8 dummy cycles in a single line RX transaction is required
for the standard JEDEC Read SFDP command. The SSI controller does not
support dummy cycles in Standard SPI mode, but the driver can simulate
those by just sending a dummy data byte.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-23 13:42:07 +02:00
Andrzej Głąbek
28dafe36e3 drivers: mspi_dw: Add error reporting on RX FIFO overflow
Immediately finish an RX transfer when the RX FIFO overflow is
encountered and return the -EIO error code, which better indicates
the problem than -ETIMEDOUT that was returned previously in such
case.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-23 13:42:07 +02:00
Andrzej Głąbek
e4dc74452c drivers: mspi_dw: Improve transfer handling
- use separate code paths for TX and RX in ISR
- make sending of dummy bytes in the single line mode (Standard
  SPI) more consistent so it can be easily extended
- use value 0 instead of 0xAA for dummy bytes as there is normally
  no point in making noise one the MOSI line when only receiving
  data (it can only be useful in debugging transfers)
- move all writing of data in the TX FIFO to ISR to avoid broken
  transfers in the single line mode (where the clock stretching
  is not available) when the driver is preempted right before it
  enables interrupts
- use the TX FIFO start level also for transfers without data,
  so that it's not possible that the TX FIFO gets emptied between
  the writes of command and address fields in the single line mode
- add a few comments to explain better how transfers are handled

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-23 13:42:07 +02:00
Andrzej Głąbek
6ddb616a23 drivers: mspi_dw: Add waiting for clock in nRF EXMIF specific resume
After the START task is triggered, the clock that drives the SSI core
needs some time to become ready. Before that, writes to SSI registers
may be unsuccessful. Add a loop that performs test writes to one of
the registers after the EXMIF peripheral is resumed to ensure that it
is fully operable.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-23 13:42:07 +02:00
Andrzej Głąbek
8b67b36f41 drivers: mspi_dw: Apply a few minor corrections
- replace %d with %u in two error log message format strings
- add checks for maximum supported address length
- correct *_WAIT_CYCLES_MAX macros used in XIP handling routines
  (although their values are valid, they belong to different SSI
  registers)
- remove one unnecessary use of SPI_CTRLR0_WAIT_CYCLES_MASK
- remove doubled definitions of the XIP_CTRL register bit fields

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-23 13:42:07 +02:00
Benjamin Cabé
8fb5b00f8d doc: develop: tools: update "Generate compile commands" section
Clarify that commands should be run from `zephyr` folder.

Fixes zephyrproject-rtos/zephyr#90074

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 13:41:57 +02:00
Tien Nguyen
af4e875ea5 soc: renesas: rz: use CONFIG_ATOMIC_OPERATIONS_C on Renesas RZ/A2M
Use CONFIG_ATOMIC_OPERATIONS_C for atomic operations on Renesas RZ/A2M

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-23 09:47:20 +02:00
Yusuke Omae
d9d6f07c27 net: gptp: Add TLV type, OUI check for signaling messages
Add validation to ensure gPTP signaling messages
contain the correct TLV type, IEEE 802.1 Committee OUI
and sub-type before processing it as interval requests.

signed-off-by: Yusuke Omae <s1413091@gmail.com>
2025-06-23 09:47:03 +02:00
Kapil Bhatt
39e6f0170f drivers: nrf_wifi: Add Kconfig for Dynamic ED
Add Kconfig to enable/disable Dynamic ED which add support for
proprietary algorithm to enhance performance in high-traffic channels.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-06-23 09:46:47 +02:00
Karun Kumar Eagalapati
8b693980aa manifest: Update nrf_wifi for dynamic ED control
Update nrf_wifi for dynamic ED controlling through
command init.

Signed-off-by: Karun Kumar Eagalapati <karun.kumar@nordicsemi.no>
2025-06-23 09:46:47 +02:00
Jamie McCrae
2a674977dd dts: vendor: nordic: nrf54l*: Fix GPREGRET register addresses
Fixes these peripheral's to have the correct addresses

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-23 09:46:33 +02:00
Aymen LAOUINI
8b4a29f1ed tests: kernel: interrupt: Add ISR offset definitions for nrf9280
- Correct test by adding ISR offset definitions for nrf9280 ppr.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-06-23 09:46:25 +02:00
Aymen LAOUINI
07d9f151e7 tests: kernel: gen_isr_table: Add ISR offset definitions for nrf9280
- Correct test by adding ISR offset definitions for nrf9280 ppr.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-06-23 09:46:25 +02:00
Aymen LAOUINI
3befde741f tests: drivers: adc: Enable adc test for nrf9280 iron
Added overlay for nrf9280 cpuapp iron board.
Modified overlay for nrf9280 cpuapp board to use common dtsi.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-06-23 09:46:25 +02:00
Aymen LAOUINI
96fa61fc78 tests: drivers: watchdog: Enable watchdog test for nrf9280 iron
Added overlay for nrf9280 cpuapp iron board.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-06-23 09:46:25 +02:00
Aymen LAOUINI
eac65a2acd samples: watchdog: Add nrf9280 iron to sample
Added overlay for nrf9280 cpuapp iron board.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-06-23 09:46:25 +02:00
Aymen LAOUINI
de41047aef drivers: firmware: nrf_ironside: Update doxygen header for API.
- Message is written to the boot report of core.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-06-23 09:46:25 +02:00
Aymen LAOUINI
3851588ec3 drivers: firmware: nrf_ironside: add nrf9280 to CPUCONF service
CPUCONF service now supports application on nrf92 application cores.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-06-23 09:46:25 +02:00
Aymen LAOUINI
7ec82ad0bd boards: nordic: add 'iron' board variant to application
- Add support of next generation secure firmware to nrf92 application core.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-06-23 09:46:25 +02:00
Aymen LAOUINI
dab414ff82 soc: nordic: add support of 'iron' variant to application
- use early init hook instead of nrf92_init.
- add config flag for iron variant.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-06-23 09:46:25 +02:00
Benjamin Cabé
942d823c71 drivers: ethernet: phy: dm8806: fix error handling
Use signed variable for negative error codes so that potential errors
are actually detected and returned properly.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 09:46:10 +02:00
Benjamin Cabé
92d4669752 net: lib: http: remove offensive language
Remove use of offensive language in code comment

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-22 18:45:42 -07:00
Tony Han
06a5735ede tests: drivers: eeprom: api: enable tests for sama7g54_ek
Enable tests: tests/drivers/eeprom/api.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-22 18:44:04 -07:00
Tony Han
99d9e6531e boards: microchip: sam: add eeprom nodes to sama7g54_ek dts file
Add the nodes for on board EEPROM devices. Only the basic compatible
functions implemented. EUI-48 Node Address not added.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-22 18:44:04 -07:00
Tony Han
685375fbc5 dts: microchip: sam: add I2C (FLEXCOM submodule) nodes to sama7g5.dtsi
Each of the 12 FLEXCOM instances supports working in TWI (I2C) mode.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-22 18:44:04 -07:00
Tony Han
42a017cfde drivers: i2c: sam: update i2c_clock_set() for sama7g5 FLEXCOM TWI
The TWI offered by sama7g5 FLEXCOM is compatible with "atmel,sam-i2c-twi".

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-22 18:44:04 -07:00
Tony Han
5fa0898441 soc: microchip: sam: update MMU for sama7g5 FLEXCOM
When the FLEXCOM is activated in the DT, configure it's register
region with strong ordered, read and write access.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-22 18:44:04 -07:00
Tony Han
256031eb81 soc: microchip: sam: set CONFIG_MFD to 'y' when FLEXCOM is used
When there are FLEXCOM nodes in the device tree, set CONFIG_MFD to
'y' automatically.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-22 18:44:04 -07:00
Tony Han
6243ff43c4 dts: microchip: sam: add all USART (FLEXCOM submodule) to sama7g5.dtsi
SAMA7G5 has 12 FLEXCOM instances and each of them supports working in
USART mode.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-22 18:44:04 -07:00
Tony Han
bcc797c256 west.yml: Update west.yml for sama7g54 hal
Update west.yml for SAMA7G54 HAL

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-22 18:44:04 -07:00
Michal Simek
4188f58a6a boards: amd: kv260_r5: add support for fsbl and bitstream
Some tests requires to also run fsbl and load bitstream before loading
Zephyr.

Currently only --elf-file and --fsbl are suported.
But there could be also bitstream loaded via --bistream parameter but
xsdb script is missing it.
Tricky part on it is when only fsbl or bitstream are loaded they are
sharing the same argument location that's why detect if second parameter is
bitstream by matching "*.bit" in it to support all combinations.

And also switch board to jtag boot mode all the time. The reason is that
starter kits with SOM have preloaded SW already and starting in QSPI boot
mode that's why with using XSDB make sure that board is running in jtag
boot mode all the time no matter if any SW runs on it.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
2025-06-22 18:41:11 -07:00
Corey Wharton
846d8197a7 drivers: gpio: gpio_dw: move base_addr to config struct
This variable should be const and inside the driver config struct.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-06-22 18:39:18 -07:00
Corey Wharton
338c5051db drivers: gpio: gpio_dw: add custom flag to set data and control source
If supported, the data and control source for a signal can come from
either software or hardware. This change adds a custom configuration
flag to set this for a specific pin.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-06-22 18:39:18 -07:00
Benjamin Cabé
e92468c7a6 llext: adopt SHELL_HELP macro
adopt structured help message in llext shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 18:34:08 +02:00
Benjamin Cabé
b4e4c8ed48 drivers: pinctrl: wch: remove useless operations
Remove redundant register updates in pinctrl_configure_pins, and replace
the improper (and inefficient) use of bitwise OR assignment (|=) with
direct assignments when writing to the write-only BSHR registers

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 18:34:02 +02:00
Tamas Jozsi
2c43a00f65 boards: fix Bluetooth LE support on the SparkFun ThingPlus Matter MGM240
Create and select the proper module device tree file which loads the
correct radio config for the MGM240P module.

Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
2025-06-21 15:31:36 +02:00
Tamas Jozsi
31e48a8b3a boards: arduino: Add support for the Arduino Nano Matter
Add device tree and support files for the Nano Matter board
based on the Silicon Labs MGM240SD22VNA chip.

Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
2025-06-21 15:31:36 +02:00
Tamas Jozsi
e4dc7c9fb1 soc: silabs: Add support for the MGM240SD22VNA
Also introduce the framework to support other
Silicon Labs modules.

Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
2025-06-21 15:31:36 +02:00
Benjamin Cabé
6176b2ca1b drivers: gpio: wch: simplify port_toggle_bits logic
computation of BSHR was unnecessarily complex, with redundant
XOR/masking operations.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 15:31:27 +02:00
Dmitrii Sharshakov
f080c4fb89 snippets: add hci-uart-native-sim
Enable connecting native sim to a physical board running hci_uart
without usage of Bumble or other intermediary steps, but rather using
common h4 hardware driver.

Most commonly used port is USB CDC-ACM, as by default for most nRF
boards.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-06-21 13:14:45 +02:00
Dmitrii Sharshakov
639bccf969 Bluetooth: drivers: make H4 and H5 follow CONFIG_BT_HCI_INIT_PRIORITY
In some cases UART drivers might have too high init priorities
so HCI must be initialized even later if used with those.

One example is zephyr,native-tty-uart.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-06-21 13:14:45 +02:00
Benjamin Cabé
1e27c46015 drivers: clock_control: npcm: add missing const qualifiers
Ensure that the various configuration and conversion tables are marked
as const to save on RAM usage.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 13:14:39 +02:00
Benjamin Cabé
1c1ec64ab6 drivers: clock_control: npcm: fix clock_control_off
Align code with the comment :) There apparently was a copy-paste issue
from the clock_control_on code.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 13:14:39 +02:00
Jilay Pandya
d751dc8a27 doc: release notes: 4.2: add entry for a4979 driver and mikroe shields
add missing entry of allegro, a4979 to release notes
add entry of mikroe stepper 18/19 click shields

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-21 13:14:30 +02:00
John Lin
0fe7cbd0db samples: subsys: usb: mass: Include rpi_pico.overlay
Include rpi_pico.overlay from the rpi_pico_rp2040_w.overlay in order to
have `pico/rp2040/w` board to work out of the box.

Signed-off-by: John Lin <john.lin@beechwoods.com>
2025-06-21 13:14:21 +02:00
Benjamin Cabé
48a1a2a248 drivers: intc: nxp_pint: fix off-by-one error in pin_enable
Prevent out-of-bounds access in nxp_pint_pin_enable by fixing the
comparison to use >= instead of >.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 10:40:28 +02:00
Camille BAUD
8c385be293 soc: bflb: enable clock_control for bl60x
This enables the clock_control driver build on bl60x.
It is currently deferred init, due to being incompatible
with current SDK-based boot, to avoid later giant PR.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-21 10:40:20 +02:00
Camille BAUD
46b5d05ae1 drivers: clock_control: Introduce bl60x clock driver
This introduces a clock_control driver for bl60x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-21 10:40:20 +02:00
Sylvio Alves
db1fe6005a soc: espressif: align flashing address with DTS configuration
The current CMakeLists.txt uses hardcoded flash addresses for the
bootloader and application, which may not match the slot defined
in the DTS file. This can lead to inconsistencies when flashing
and running images.

This update introduces support for using CONFIG_FLASH_LOAD_OFFSET
and applies CONFIG_BUILD_OUTPUT_ADJUST_LMA if specified,
ensuring that the final image address aligns with the DTS
and runtime expectations.

Note: For ESP32-C6, a custom workaround is included since the
LPCORE does not support MCUboot images.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-21 08:19:47 +02:00
Benjamin Cabé
747bf7bc50 drivers: spi: esp32_spim: use size_t for DMA buffer lengths
Updated buffer length variables to be size_t as they need to be able to
represent the maximum buffer size which is 4092.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 08:19:37 +02:00
Benjamin Cabé
2408ca6795 drivers: adc: renesas_rz: fix error handling
Fix a bunch of occurrences of API calls returning error codes that were
being ignored.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 08:19:28 +02:00
Josuah Demangeon
dafeae0316 drivers: video: add more luma-only 0-padded formats
Add several more luma-only formats also known as grayscale, of variable
bit depth, 0-padded to fit 16-bits per pixel: Y10, Y12, Y14, Y16

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-21 08:19:21 +02:00
Anas Nashif
bd8597c9d7 x86: rename DEBUG_INFO to X86_DEBUG_INFO
This is an X86 specific option and should not appear as generic debug
option.

Fixes zephyrproject-rtos/zephyr#52929

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-20 14:43:42 -05:00
Phi Bang Nguyen
faae10ed40 drivers: video: Add index field to video buffer
Introduce an index field to the video buffer structure to help track
individual buffers throughout the workflow.

This is particularly useful in scenarios where buffers are wrapped
in a pool, such as in GStreamer. The index allows efficient
identification of the currently dequeued buffer without needing to
iterate through the entire pool and compare buffer addresses.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-06-20 14:42:25 -05:00
Josuah Demangeon
efe767738d doc: migration-guide-4.2: video: add note on pitch
Document the change of semantics of video_format.pitch field,
modified in commit 33dcbe37cf.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-20 14:42:01 -05:00
Francois Ramu
83589d5950 doc: release-notes-4-2: new DTS properties for the OSPI of STM32 devices
Change to apply on the DTS of STM32 soc and boards with OSPI nodes

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-20 14:41:41 -05:00
Francois Ramu
11d3b45648 samples: code_relocation_nocopy: update macro for flash size and address
In case of the st,stm32-ospi-nor compatible
new property and node definitions will requires new macro
to get the external NOR flash base address and size

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-20 14:41:41 -05:00
Francois Ramu
14c1b4aa1e boards: st: stm32 boards ospi-nor-flash DTS configuration
This change defines the "st,stm32-ospi-nor" compatible Node
in conformance to the DTS specifications
Includes the size property (in Bits) of the external memory device

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-20 14:41:41 -05:00
Francois Ramu
958087f49d drivers: flash: stm32 ospi driver size and address of the external NOR
New property of the st,stm32-ospi-nor compatible gives
the external NOR flash in bits.
The property of the st,stm32-ospi compatible gives
the external NOR flash base address

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-20 14:41:41 -05:00
Francois Ramu
d63b6e774f dts: arm: stm32 reg definition for the st,stm32-ospi compatible
The st,stm32-ospi compatible is defining the reg property
with the register address and size at first index
followed by the external mem base address and max allocated size.
For the stm32H7, stm32L4plus, stm32L5, stm32U5 series.
ospi1 is addressing max 256 MBytes from 0x90000000
ospi2 is addressing max 256 MBytes from 0x70000000

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-20 14:41:41 -05:00
Francois Ramu
c550baecb6 dts: bindings: flash controller size of the stm32 ospi nor
This change adds the size in Bits of the flash nor memory
for the st,stm32-ospi-nor compatible.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-20 14:41:41 -05:00
Francois Ramu
66b85e5a81 dts: bindings: flash controller stm32-xspi-nor compatible
Update the description of the bindings to match the
xspi-nor-flash node properties: size in expressed in Bits

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-20 14:41:41 -05:00
Camille BAUD
75dfc0dbc7 tests: build_all: display: Add SSD1363 Tests
Add build all tests for SSD1363

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-20 14:41:31 -05:00
Camille BAUD
3787be931e drivers: display: Introduce SSD1363
This introduces a driver for the SSD1363 PMOLED controller

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-20 14:41:31 -05:00
Jamie McCrae
6d73a9c45a scripts: ci: check_compliance: Add support for modules for Kconfig
Adds support for checking modules for disallow Kconfig's in boards
and SoCs, which have been defined in a Zephyr module file

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-20 14:41:20 -05:00
Peter van der Perk
32d68bed22 drivers: timer: remove fsl_power.h for MCXN series
Initial it was only removed for mcxn236 but mcnx947 would fail to
compile then

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-06-20 13:26:41 -04:00
Mario Paja
0637ec4821 drivers: i2s: stm32 sai add mclk-divider property
This property enables the user to configure the Master Clock Divider.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-06-20 13:26:14 -04:00
Benjamin Cabé
8365dd5cfc drivers: dai: fix bad GENMASK in NXP driver
Fixed swapped GENMASK arguments causing bad mask to be generated.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-20 13:26:03 -04:00
Pieter De Gendt
e454aaa6b6 scripts: ci: check_compliance: Pass path representation to magic
On windows the Magic.from_file method fails to convert a PathLike to its
representation.
Pass using os.fspath.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-20 13:25:45 -04:00
Alberto Escolar Piedras
e48569e745 manifest: Update bsim to version v2.7
Main changes since v2.6:
* ext_2G4_phy_v1: Runtime performance optimizations
* ext_2G4_libPhyComv1: Add BT LE HDT support
* ext_2G4_channel_Indoorv1: Add BT LE HDT support

Note: Like before, bsim remains fully backwards compatible

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-20 13:25:35 -04:00
Alberto Escolar Piedras
5aa9e2578a manifest: Update nRF hw models to latest
Update the HW models module to:
968d55ff22579080466bf2f482596dd6e35361c6

Including the following:
968d55f 54LM20: Also build CRACEN RNG
2c6d49d CRACEN RNG: Add model of the new version of the IP
914b475 54LM20: Add first version
fb68cc6 grtc hal replacement: Remove pointless macro use
ef2f63e Fix wrong NRF_UARTE register reference
63a2e85 README: Clarify the models are not perfect, and correct links

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-20 13:25:35 -04:00
Jérôme Pouiller
fbc70337e8 modules: hal_silabs: Update WiseConnect SDK
Import the new version of the WiseConnect SDK.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-20 13:22:57 -04:00
Benjamin Cabé
4f6077f369 modules: lvgl: don't try to open file in read mode with create flag set
Current code would have systematically tried to add the FS_O_CREATE flag
when opening a file in read mode. This effectively made it impossible to
open files to read them on read-only file systems.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-20 13:22:15 -04:00
Mathieu Choplain
2722bbfbf8 boards: st: stm32n6570_dk: use I/O delay for Ethernet
Replace the slew-rate based method of delaying signals with a more
appropriate I/O delay. Also update the comment to better describe
what we are now doing.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-20 13:21:55 -04:00
Mathieu Choplain
fcd30046cb drivers: pinctrl: stm32: add support for STM32N6 pinctrl
Modify the STM32 pinctrl driver and SoC-specific pinctrl macros
to introduce support of the st,stm32n6-pinctrl variant.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-20 13:21:55 -04:00
Mathieu Choplain
f8db99339e dts: arm: st: stm32n6: change pinctrl binding
Use the new and appropriate "st,stm32n6-pinctrl" compatible for the pinctrl
in DTSI for STM32N6 series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-20 13:21:55 -04:00
Mathieu Choplain
5b1c7b27db bindings: pinctrl: stm32: update DT header for STM32N6 pinctrl
Update the DT binding header to take STM32N6 pinctrl into account.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-20 13:21:55 -04:00
Mathieu Choplain
58baaa395f bindings: pinctrl: stm32: add binding for STM32N6 series pinctrl
Add a new binding for the pinctrl controller of STM32N6 series.

The specificity of this series is the "I/O retime" feature not present on
other series. This new binding exposes pinctrl properties to configure this
feature.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-20 13:21:55 -04:00
Benjamin Cabé
3b60dec110 bindesc: fix typo in errno (ENONET->ENOENT)
Fix typo in errno which isn't caught when building since ENONET
is also a valid code, despite not being defined (nor allowed?)
in Zephyr proper.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-20 13:21:39 -04:00
Benjamin Cabé
ba56cd1020 scripts: ci: disable trailing-whitespace check in SphinxLint
SphinxLint doesn't need to report trailing whitespace errors as it's
already checked by checkpatch.pl.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-20 13:21:13 -04:00
Jeppe Odgaard
79397c6af9 MAINTAINERS: add jeppenodgaard as collaborator to led and led strip
Add myself as collaborator to help with LED and LED strip PR reviews (as
much as I can).

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-06-20 13:20:39 -04:00
Saifan Rafiq
10fe120488 samples: fade_led: fix no led found error on rpi pico
Set the status of the pwm_leds node in the Raspberry Pi Pico
overlay to "okay". Without this change, the serial output shows
"PWM-based LED fade. Found 0 LEDs" and the led doesn't light up
on the Pico.

Signed-off-by: Saifan Rafiq <saifanr@gmail.com>
2025-06-20 16:25:10 +02:00
Fabian Otto
9150b5ec5e boards: lpcxpresso55s28: Use usbphy1 for udc0
The PHY is necessary for a high speed USB connection.
Same code as on the closely related lpcxpresso55s69.

Signed-off-by: Fabian Otto <fabian.otto@rohde-schwarz.com>
2025-06-20 16:25:00 +02:00
Andrew Lewycky
7cd0cc6f86 ARC: Move .bss & noinit sections to the end
Move .bss and noinit sections to the end to reduce
binary size when the output format doesn't support
skipping empty space.

Signed-off-by: Andrew Lewycky <alewycky@tenstorrent.com>
2025-06-20 16:24:38 +02:00
Colin Evrard
97f9411f32 drivers: adc: esp32: check reference at compile time
Check that the channels are configured with the reference
ADC_REF_INTERNAL when compiling the driver.

Signed-off-by: Colin Evrard <colin.evrard@mind.be>
2025-06-20 16:24:09 +02:00
Hoang Nguyen
87177d1ac4 drivers: gpio: rz: improve gpio driver for Renesas RZ/A2M
- Adding support for GPIO_DISCONNECTED mode.
- Removing redundant interrupt configuration logic from the
.pin_configure API (already handled in pin_interrupt_configure).

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-20 16:24:01 +02:00
Maochen Wang
7e3f5814e4 drivers: wifi: nxp: only enable NXP_WIFI_TC_RELOCATE for RW612
Only by default enable NXP_WIFI_TC_RELOCATE for RW612, which will
relocate traffic API into RAM. But for other platform, for example
the RT series, the ITCM/DTCM is a more suitable place for critical
code.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-06-20 16:23:52 +02:00
Nick Ward
3b05fd12a5 drivers: gnss: tidy satellite count kconfig symbols
CONFIG_GNSS_LUATOS_AIR530Z_SATELLITES_COUNT
and CONFIG_GNSS_U_BLOX_M8_SATELLITES_COUNT
would unnecessarily be in .config file.

Signed-off-by: Nick Ward <nix.ward@gmail.com>
2025-06-20 16:23:43 +02:00
Nick Ward
3b268447cd include: drivers: gnss: make DEFINE static
Make MODEM_CHAT_SCRIPT_CMDS_DEFINE static

Signed-off-by: Nick Ward <nix.ward@gmail.com>
2025-06-20 16:23:43 +02:00
Johann Fischer
09752374c5 usb: device_next: rework CDC ACM serial for flash usage
Allow optimization if high speed is not supported. Unify strings for
error logging. Allow the application to enable/disable the USB device.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-20 16:23:34 +02:00
Benjamin Cabé
56047f49bd test: drivers: sensors: spi: add missing fxls8974
fxls8974 is tested in i2c build_all but its spi variant was missing.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-20 16:23:25 +02:00
Benjamin Cabé
d5af2f7dde drivers: sensors: fxls8974: fix compilation error in fxls8974_transceive
SPI code wasn't tested in CI so this compilation error was missed.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-20 16:23:25 +02:00
Tim Pambor
c8ef91fdb7 cmake: llvm: Use '=' for --config to improve compatibility
Replaces space with an equal sign when assigning the clang configuration
file to the --config parameter. This change improves compatibility with
tools that parse the compilation database and expect compiler arguments
to be separated by space.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-06-20 16:23:16 +02:00
Fabrice DJIATSA
6f8e620ae3 boards: st: nucleo_wba65ri: update arduino spi node
According to user manual UM3448, spi2 is connected to
the ST Arduino header.

This has been confirmed using the spi_loopback test driver.

Also update documentation.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-20 16:23:06 +02:00
Andrzej Głąbek
8415f7f7a7 drivers: flash_mspi_nor: Omit quad_enable_set() when QER is set to NONE
When the quad-enable-requirements property is set to "NONE" or is not
present, no Quad Enable operation should be performed.
This fixes an issue with the mx25uw6345g flash chip that is present
on the nRF54h20 DK and supports the Single I/O mode, but cannot be
used in that mode.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-20 16:22:58 +02:00
sudarsan N
48bbbfe976 drivers: video: fix NULL dereference in mipid02_get_fmt
Category: Null pointer dereference (CWE-476)

Corrects the logic that validates the result of mipid04_get_format_desc().
Previously, the check was inverted, which could lead to a NULL pointer
dereference when accessing desc->pixelformat.

Fixes Coverity CID: 525183

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-20 11:50:49 +01:00
Tahsin Mutlugun
efee13e380 manifest: Update hal_adi to pull DMA and Low-power fixes for MAX32660
Some DMA and LP wrappers were missing for MAX32660 which caused build
errors on CI runs. Update hal_adi to get the necessary fixes.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-06-20 11:50:16 +01:00
Qingling Wu
2016f05860 drivers: nxp: wifi: Enable 11AX density config by default for IW610
Enable NXP_WIFI_MMSF by default for IW610

Signed-off-by: Qingling Wu <qingling.wu@nxp.com>
2025-06-20 08:52:53 +02:00
Anas Nashif
c1229e308f ci: remove pylint checks covered by ruff
Few rules are duplicate and are reported multiple times, so disable
those from pylint and rely on ruff reporting them.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-20 08:52:22 +02:00
Khaoula Bidani
63f6d15045 boards: arm: nucleo_u385rg_q: enable RNG instance
This commit enables the Random Nb Generator peripheral
instance (RNG) on the target board  nucleo u385rg_q
from STMicroelectronics.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-20 08:52:15 +02:00
Khaoula Bidani
1cfcdcb804 dts: arm: stm32u3: add entropy node as Random Number Generator
Add the true Random Number Generator (RNG) node for stm32u3 socs.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-20 08:52:15 +02:00
Jukka Rissanen
2ac66bc084 tests: net: if: Add tests for operational state change time
Make sure that the operational state change time is updated
correctly.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-20 08:52:06 +02:00
Jukka Rissanen
262e777f3a net: if: Add operational state change time information
Make sure network interface contains information when the operational
state was changed. After boot, the value is set to 0.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-20 08:52:06 +02:00
Phi Bang Nguyen
10deca2ef6 drivers: video: Fix skipped CIDs when enumerating controls
When enumerating controls with VIDEO_CTRL_FLAG_NEXT_CTRL, if child devices
have controls with IDs lower or equal to the ones in the parent devices,
those controls will be accidentally skipped.

Fix this by resetting the query's ID and tracking of the queried device in
the query when moving to the next device in the pipeline.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-19 22:37:54 -07:00
Johann Fischer
635a006da7 usb: device_next: bt_hci: drop high-speed descriptors table if not used
If high-speed is not supported, drop the high-speed descriptors table.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-19 22:36:51 -07:00
Johann Fischer
d2e42c99ac usb: device_next: bt_hci: do not take semaphore if transfer enqueue fail
Do not take semaphore if transfer enqueue fails.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-19 22:36:51 -07:00
Johann Fischer
96422f262e usb: device: fix Bluetooth buffer handling
In both implementation, when comparing received data length take into
account that the buffer obtained from bt_buf_get_tx() stores the type at
the top. The buffer types are H:4 and in the TX path we need to check for
BT_HCI_H4_* types not BT_BUF_*.

In the legacy implementation, the hci_acl_pkt_len() function obtains the
length from the USB transaction buffer, which does not contain a buffer
type at the top.

In the new implementation, partially revert the changes and restore
hci_pkt_get_len(), this will be required for any further changes anyway.

Fixes commit f85d63a6cc ("Bluetooth: Remove USB H4 mode support").

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-19 22:36:51 -07:00
Jilay Pandya
d25b1d1959 drivers: stepper: add check for inval resolution in set_microstep_res
Add check for invalid microstep resolution directly in api to avoid the
check in each and every driver
Set microstep resolution is made a mandatory function now as all
stepper drivers support it and hence should implement it

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-19 22:35:51 -07:00
Chaitanya Tata
945ddf0acb modules: nrf_wifi: Implement SPI deinit
Release the SPI during the deinit to put respective GPIOs in low-power
state or disconnected.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-06-19 22:34:48 -07:00
Chaitanya Tata
4eb7b9f06b modules: nrf_wifi: Implement QSPI deinit
By default QSPI is uninitialized after every transaction, so, deinit is
a no-op, but if QSPI_LOW_POWER is disabled, then we need to uninitialize
the QSPI in the deinit.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-06-19 22:34:48 -07:00
Chaitanya Tata
2b0876c850 modules: nrf_wifi: Remove co-ex GPIOs first
Before powering off remove co-ex GPIOs.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-06-19 22:34:48 -07:00
Chaitanya Tata
9cd933e5b0 modules: nrf_wifi: Improve power down sequence
Swap the order, IOVDD should be powered first and then BUCKEN.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-06-19 22:34:48 -07:00
Erwan Gouriou
41664ebda0 drivers: memc: stm32 psram: Fix XSPI configuration for performance
Correct XSPI configuration in order to improve PSRAM access on the
STM32N6 discovery board.
Ideally, this should be defined by device tree, but I'm fixing
the only user for now.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-19 22:33:37 -07:00
Fabrice DJIATSA
86cab94150 dts: arm: st: h7: combine sram1 and sram2 memory size
Combining the two regions provides enough memory to
successfully build applications.

Note that SRAM1 and SRAM2 are continuous regions.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-19 22:31:31 -07:00
Hao Luo
f1348d3954 drivers: i2c: ambiq: buffer overflow issue fixed
Bugfix for possible out-of-bounds operation when buffer address
is not 4 bytes aligned

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-19 22:31:06 -07:00
Khaoula Bidani
2862ed19a4 tests: drivers: adc: adc_api: update adc_api test
-add nucleo_u385rg_q overlays files
for testbench purpose.
- add platform_exclude property to skip test on boards
with little ram size.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-19 22:27:35 -07:00
Khaoula Bidani
f568b0d68a drivers: adc: update adc driver to integrate stm32u3
add u3 config_soc conditions in adc driver to handle
news peripherals.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-19 22:27:35 -07:00
Khaoula Bidani
be94ee589b boards: st: add adc node in dts file and update docs
- enable adc in nucleo_u385rg_q
- add adc as new supported interface in docs
- update yaml files

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-19 22:27:35 -07:00
Khaoula Bidani
edac88658e dts: arm: st: u3: add adc node in dtsi file
all stm32u3 boards have only one and same
adc peripheral.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-19 22:27:35 -07:00
Benjamin Cabé
6d9fecae44 tests: modules: nanopb: fix typo in assert
Fix a typo / copy-paste error in the assert message.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-19 14:12:53 +02:00
Kate Wang
e2d97c7ca6 drivers: video: ov7670: update the camera init sequence
The previous initialization sequence fails to configure the module
properly. Update the sequence using the code provided by vendor.
The update is verified using the FRDM-MCXN947 SmartDMA camera case
under samples/drivers/video/capture.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-06-19 14:04:45 +02:00
Johann Fischer
c7b364e99a usb: update USBD_DESC_SERIAL_NUMBER_DEFINE macro description
Update USBD_DESC_SERIAL_NUMBER_DEFINE macro description.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-19 14:04:31 +02:00
Johann Fischer
76579d21ab usb: device_next: allow to limit number or digits in serial number
Add Kconfig option to limit the length requested from HWINFO to a
meaningful number of digits. Also, check the length returned by the
HWINFO driver and rename the variables to a more suitable name.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-19 14:04:31 +02:00
Johann Fischer
452a53ba1a usb: device_next: hide Kconfig option USBD_MSG_SLAB_COUNT if not used
If deferred mode is not being used, hide the USBD_MSG_SLAB_COUNT option.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-19 14:04:31 +02:00
Anas Nashif
91dc04d5d0 twister: adapt ctest results for twister
When we have skips in ctest, the overall result should not be marked as
a SKIP unless all tests have been skipped. If we have passing tests,
mark the test as PASS. Any failures/errors obviously will fail the
tests.

Also pass the skip reason from ctest to twister to give a hint about
what is going on in case of skips.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-19 14:04:18 +02:00
Anas Nashif
c511b16fca twister: remove useless . at end of message
No need to have a period here.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-19 14:04:18 +02:00
Joakim Andersson
e5093f41b2 drivers: flash: Fix timeout handling in STM32 flash driver
Fix timeout error that can occur in rare case.
When the thread writing to flash is pre-emptive it can be scheduled
out after reading the status register, but before checking if timeout
has expired. In this case it will report timeout without re-checking
the status register.

When writing a lot to flash, for example a firmware update process
then this situation is very likely to occur.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2025-06-19 14:02:32 +02:00
Fabrice DJIATSA
4866cfcc9d dts: arm: st: l5: update dtsi file with fdcan node
add FDCAN1 node in l5 dtsi file.

stm32l5 have same ip with stm32u5.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-19 14:02:07 +02:00
Fabrice DJIATSA
67c628d025 dts: arm: st: l5: add stm32l552xc dtsi file
This dts include file is for certain stm32 boards
such as the stm32l552zc,which have a memory size
of 256KB for both flash and RAM peripherals.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-19 14:02:07 +02:00
Benjamin Cabé
45920741dc drivers: adc: max1125x: fix typo in GPIO config
Corrected the property assignment for gpo0_enable.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-19 14:01:31 +02:00
Benjamin Cabé
6c4ed097ff drivers: pwm: Fix priority handling for Renesas RA
Fixed a typo causing interrupt priority from DT to be ignored.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-19 14:00:21 +02:00
Luca Burelli
741c5b5a98 llext: rework debug code in llext_link
This removes 'return' statements affecting code flow from debug code in
llext_link(). Also, all valid relocations are tried before returning an
error, so that the user can see all the errors (most likely missing
symbols) at once.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-06-19 14:00:11 +02:00
Guennadi Liakhovetski
a3089c1ffc llext: xtensa: strip the .xtensa.info section
.xtensa.info section isn't large so it was ignored in the beginning,
but its contents can differ depending on the build platform even if
the sources and the toolchain are the same. Strip the section to
restore binary reproducibility.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-19 13:59:15 +02:00
Henrik Brix Andersen
966ef0fefd doc: develop: optimizations: tools: use latest puncover release
Update the documentation to recommend installing the latest puncover
release publiced to the Python Package Index (PyPI).

At the time of this commit, the latest release on PyPI is v0.4.2, which
matches the latest release available on the puncover GitHub repo.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-06-19 13:58:40 +02:00
Alain Volmat
74f32fada3 samples: video: capture_to_lvgl: add stm32n6570_dk conf files
Add configuration files for the stm32n6570_dk board.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-19 13:57:51 +02:00
Alain Volmat
a558ad25a3 samples: video: capture_to_lvgl: use video_buffer_aligned_alloc
Use video_buffer_aligned_alloc instead of video_buffer_alloc for buffer
allocation in order to be able to enforce required buffer alignment
configured via CONFIG_VIDEO_BUFFER_POOL_ALIGN.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-19 13:57:51 +02:00
Alain Volmat
bb5867d07a samples: video: capture: add stm32n6570_dk config files
Add capture sample config files for the stm32n6570_dk board.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-19 13:57:51 +02:00
Alain Volmat
78ec02db4b boards: stm32n6570_dk: enable SMH by default for LTDC/VIDEO
By default, enable the SharedMultiHeap allocated buffer on
stm32n6570_dk and enable its usage for LTDC or video buffers.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-19 13:57:51 +02:00
Alain Volmat
6274df7a0b soc: st: stm32: stm32n6: set 256 SMH buffer alignment for LTDC
Set the LTDC buffer alignment to 256 in order to avoid an
issue when accessing to PSRAM via XSPI.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-19 13:57:51 +02:00
Alain Volmat
d33f579684 soc: st: stm32: set default video buffer align to 16 for DCMIPP
Set the default video buffer alignment constraint to 16 when DCMIPP
is being used.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-19 13:57:51 +02:00
Alain Volmat
7640180e7c soc: st: stm32: set default SMH attribute for LTDC/video buffers
The SMH attribute when using the XSPI PSRAM is set to EXTERNAL (2)
within the driver hence set default for both LTDC and video
buffer SMH attribute to 2 if all conditions are validated.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-19 13:57:51 +02:00
Alain Volmat
b1e55bd342 display: stm32: ltdc: add SMH buffer alignment config option
Add the CONFIG_STM32_LTDC_FB_SMH_ALIGN option in order to
indicate the alignment required for the buffer allocated via
SMH.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-19 13:57:51 +02:00
Alain Volmat
b7f73710b2 memc: stm32_xspi_psram: init shared_multi_heap area
Initialize the whole psram as a shared_multi_heap_area
if SHARED_MULTI_HEAP is enabled.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-19 13:57:51 +02:00
Khaoula Bidani
2a623605ab tests: drivers: dac: dac_api: update dac_api test
-add nucleo_u385rg_q to dac_api test

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-19 13:57:36 +02:00
Khaoula Bidani
69c2ce0d61 boards: st: add dac node in dts file and update docs
- enable dac in nucleo_u385rg_q
- add dac as new supported interface in docs
- update yaml files

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-19 13:57:36 +02:00
Khaoula Bidani
20d4ab149e dts: arm: st: u3: add dac node in dtsi file
all stm32u3 boards have only one and same
dac peripheral.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-19 13:57:36 +02:00
Jamie McCrae
e5f32b812b samples: sysbuild: with_mcuboot: Fix Kconfig setting
Removes a superfluous Kconfig for setting the MCUboot operating
mode as sysbuild does this automatically, adds a comment about why
it is omitted, and then sets it in the correct place

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-19 13:57:15 +02:00
Benjamin Cabé
043bb58488 doc: ci: Zephyr now requires Python 3.12 or higher
Update getting started guide, release notes, CI actions and
Python version compliance check to use Python 3.12 as
minimum supported version.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-19 13:56:59 +02:00
Tahsin Mutlugun
b9bfff29f4 doc: arch: semihost: Add Xtensa support
Add information about Xtensa semihosting.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-06-19 09:36:42 +02:00
Tahsin Mutlugun
784b3d6ea0 arch: xtensa: Add semihosting support
Add semihosting support for Xtensa architecture.

Existing semihosting instructions are based on ARM, so they are
converted to Xtensa codes before the semihosting call is invoked.

Return codes of read, write and seek calls had to be converted to match
semihosting API definitions.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-06-19 09:36:42 +02:00
Tahsin Mutlugun
38d0300035 arch: common: semihost: Move semihost structs into a separate header
Move semihost_x_args structs to include/semihost_types.h so that
semihost implementations can access their elements if needed.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-06-19 09:36:42 +02:00
YongWoo Kang
d5098a2a30 boards: nucleo_f411r: fix ram size to 128KB
Nucleo F411RE(STM32F411RET6) is provides 128 Kbytes of SRAM.

Link: https://www.st.com/en/microcontrollers-microprocessors/stm32f411re.html [1]
Link: https://docs.zephyrproject.org/latest/boards/st/nucleo_f411re/doc/index.html [2]

Signed-off-by: YongWoo Kang <kyw0708@kumoh.ac.kr>
2025-06-19 09:36:34 +02:00
Marek Matej
648bfe090c soc: espressif: Support large buffers in custom PSRAM sections
Several subsystems have configuration options that allow large buffers
to be placed in specialized memory sections. When PSRAM is enabled, the
MBEDTLS heap and LVGL heap and buffer can be relocated to custom sections
within the PSRAM segment.

Enabling `CONFIG_ESP_SPIRAM` together with any of the following options:
* `CONFIG_MBEDTLS_HEAP_CUSTOM_SECTION`
* `CONFIG_LV_Z_MEMORY_POOL_CUSTOM_SECTION`
* `CONFIG_LV_Z_VDB_CUSTOM_SECTION`

will place the corresponding buffers into the `.mbedtls_heap`,
`.lvgl_heap`, and `.lvgl_buf` sections, respectively.
If none of these custom section options are enabled, the buffers will
fall back to the `.ext_ram.bss` section.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-06-19 09:36:27 +02:00
Benjamin Cabé
bb983d09bf ci: workflows: remove unsupported Python version from test matrices
Python 3.10 and 3.11 are no longer supported so drop them from the
GitHub Actions test matrices.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-19 09:36:17 +02:00
Benjamin Cabé
eff39fb70a tests: fs: fat_fs_api: add native_sim to platform_allow
Native sim was inadvertently forgotten from the platform_allow list with
commit 257e56c.
It should be in there as it is an integration platform.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-19 08:05:14 +02:00
Peter Mitsis
2f2eaf7b6f arch: xtensa: Update arch_user_string_nlen()
When calling device_get_binding(NULL) from userspace, this eventually
funnels down to a call to arch_user_string_nlen() where it tried to
verify that the kernel has access to this address (0x0).  But since
this originates from userspace, we really want to know if this is
accessible from userspace, so using arch_buffer_validate() instead
of xtensa_mem_kernel_has_access() is preferable.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-06-19 00:03:00 +02:00
Peter Mitsis
dde9462666 arch: tweak xtensa_mem_kernel_has_access() API
Adds 'const' to address pointer as its memory contents
do not change.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-06-19 00:03:00 +02:00
Declan Snyder
84d2f7f4de spi_nxp_lpspi: Fix extra byte sent on v1 lpspi
This stupid errata will not leave me alone, here is another bandaid to
deal with an issue where an extra byte was being sent on version 1
LPSPIs due to the algorithm of filling NOPs when only RX is left was not
expecting the situation where the LPSPI actually consumed everything
from the fifo but is not sending it due to this ridiculous stalling errata.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-18 17:51:19 -04:00
Declan Snyder
f6a9a1f3bc spi_nxp_lpspi: Fix unit of buf_len in fill_tx_fifo
The buf_len parameter of lpspi_fill_tx_fifo is supposed to be bytes, so
we do not need to convert it. This could cause an issue if the end of
the buffer is less bytes than the word size.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-18 17:51:19 -04:00
Declan Snyder
e9d964f628 spi_nxp_lpspi: Fix fifo fill logic
Fixing some issues with the TX fifo fill logic in two places:

First in the normal fill function, it didn't take into account a
situation where the TX fifo is already partially filled. This currently
doesn't cause a problem because the driver is written in a way that the
watermark is always 0 for TDF, but in case the watermark were anything
else it would cause a problem.

Second, when filling the TX fifo with NOPS in order to clock the rest of
the RX in from the bus, the calculation regarding the current TX fifo
length was just wrong and was leading to a bug in some cases where there
was a subtraction underflow and billions of NOPs were being filled.
Also, there could be a problem where a few extra NOPs are put in the TX
fifo if we don't count what we already have in the TX fifo, so fixing
that as well.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-18 17:51:19 -04:00
Declan Snyder
7aa0778901 spi_nxp_lpspi: Simplify tx ctx update
There is no need to update the tx context in interrupt instead of
directly after the fill, this just makes the code more complex. Also,
the spi context header already handled iterating over buffers so we can
remove that code too.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-18 17:51:19 -04:00
Declan Snyder
877fa975cc spi_nxp_lpspi: Remove MCUX branding
Since the LPSPI drivers no long use MCUX at all, remove the MCUX
branding, to avoid confusion. In the future if an implementation uses
the MCUX SDK driver, it should specifically be called by MCUX in the
name.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-18 17:51:19 -04:00
Declan Snyder
2aad9ebb78 spi_nxp_lpspi: Remove call to MasterInit
For optimization purpose, remove calls to SDK. Since we know exactly
what we want, this results in smaller code size.

Also, this code calculates the SCK parameters more efficiently than the
SDK driver did it by using a binary (instead of linear) search.

Lastly, remove call to LPSPI_Reset in the init call and replace with
native driver code, and remove inclusion of SDK header.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-18 17:51:19 -04:00
Declan Snyder
c0e3ec7f08 spi_nxp_lpspi: Add maximum wait time of fifo empty
Instead of waiting forever and potentially allowing infinite loop on
ISR, wait some arbitrary amount of cycles to error out if it isn't
happening. Still make this configurable for debugging purposes.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-18 17:51:19 -04:00
Declan Snyder
691e7598ff spi_nxp_lpspi: Add version ID to data struct
Since I expect that the drivers will need to read this version ID maybe
multiple times, instead of repeatedly doing so over the peripheral bus,
it is probably worth it to store a byte in RAM representing this
version. The behavior of the LPSPI is fairly significantly different
between versions. Not enough to warrant separate drivers but enough to
need a few workarounds or different code branches depending on this.

Also, the interrupt based driver is currently using a wrong macro to
read this, and that is a bug.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-18 17:51:19 -04:00
Declan Snyder
aeedf86da6 spi_nxp_lpspi: Clarify configuration function
Clarify at the top of the common lpspi file what is the purpose of the
file to be clear to future developers that this file is not supposed to
make any assumption about a particular implementation of the zephyr API
using the LPSPI, because I imagine it could be very likely that more
lpspi implementation will be done in the future to make different
tradeoffs than the current two. Also the current two are different
enough that we should avoid making assumptions even if they currently
hold for both because they might not always, as things change.

We should disable interrupt events while configuring the LPSPI
regardless of implementation. The specific implementation should enable
the interrupts it needs on its own transceive implementation.

Also clarify and simplify some code in the configure function. Namely,
we no longer need to check if we are already configured to write to
registers because a recent commit made it so that we clock the
peripheral from the zephyr driver init instead of upon the MasterInit
call on the SDK. There is also a redundant CR write which I have removed.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-18 17:51:19 -04:00
Declan Snyder
2aa9ec43dc spi_nxp_lpspi: Remove dev pointer from data struct
The dev pointer in the data struct is not being used, so remove it.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-18 17:51:19 -04:00
Mahesh Mahadevan
db6ca32346 boards: rw612: Add code to configure the pins in PM Mode 3
These settings are used to put the pins in power saving mode
when we enter SUSPEND power mode.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-06-18 17:50:48 -04:00
Mahesh Mahadevan
bfd5fab28a drivers: pinctrl: Do not confgure sleep pins in NXP MCI IOMUX driver
The sleep-output property is no longer used. This results in the sleep
bit to be always cleared. Delete this code so we can retain any sleep
mode configuration done.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-06-18 17:50:48 -04:00
Pieter De Gendt
9ad5e8dc57 boards: shields: Add OpenThread RCP over Arduino header
Create a virtual shield to connect an OpenThread RCP radio device with a
host using the UART or SPI bus.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-18 17:50:31 -04:00
Pieter De Gendt
a540ee6143 drivers: hdlc_rcp_if: Add HDLC SPI adapter driver
Implement the HDLC over SPI adapter driver to support the Openthread RCP
with SPI communication.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-18 17:50:31 -04:00
Pieter De Gendt
b24085ddda drivers: hdlc_rcp_if: Select EVENTS
The HDLC platform implementation uses the k_event API.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-18 17:50:31 -04:00
Van Petrosyan
04057e15ec sensor: lps22hh: clang-format cleanup
Style-only reformatting, no functional change.

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-06-18 17:50:22 -04:00
Van Petrosyan
1aa07db0ae sensor: lps22hh: add device power management support
Registers driver with pm_device_driver_init(); implements TURN_ON,
SUSPEND and RESUME.  Sets ODR = 0 on suspend per datasheet

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-06-18 17:50:22 -04:00
Tim Pambor
9ab0c1b183 sys: timeutil: Fix warning in timespec_is_valid
Cast NSEC_PER_SEC to long to resolve a compiler warning about comparison
between signed and unsigned integer expression.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-06-18 17:49:56 -04:00
Declan Snyder
93e9016775 boards: nxp: Change default mac to unique for some
Change the default of the mac address for a few example boards
to use the "unique" option based on the chip unique ID,
instead of random. The RW was chosen because it has HWINFO implemented
currently. RT1050 was chosen as one of the RT boards.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-18 17:49:41 -04:00
Declan Snyder
3d8196f41b drivers: nxp_enet: Use hwinfo API for unique mac
Use the HWINFO API for getting the unique mac address, and use the
pre-existing hardcoded macros as fallbacks if hwinfo is not implemented
properly.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-18 17:49:41 -04:00
Jamie McCrae
220d69893c west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  11982df962e2314f4e0c73b7ebc17172026c9266

Brings following Zephyr relevant fixes:

  - 11982df9 boot: Switch to picolibc
  - ef7d68bf boot: zephyr: boards: delete mcxn947 configuration.
  - 47dc5086 boot: zephyr: update NXP MPU define to new name
  - 35536633 boot: bootutil: bootutil_misc: Fix max image size for
    single images
  - e8b22363 bootutil: Fix crash when bootutil_sha_init() is called
    in loop
  - 0eaf6668 boot: bootutil: Only update the security counter for
    confirmed images
  - 792d411d bootutil: encryption: Fix typo in PSA code
  - 2e605191 boot: bootutil: swap-offset: Fix image size check
    during validation
  - 61d280b9 boot: bootutil: Fix max image size computation for
    swap-move/swap-offset
  - 17b56a0a imgtool: fix verify tlv offset before main scan
  - 264f6ee9 boot/zephyr/main: fix placement of pointer to arm
    vector
  - c412cdfb bootutil: Improve HKDF code
  - 454cae8b bootutil: Remove BOOTUTIL_CRYPTO_AES_CTR_KEY_SIZE
  - 2367a607 bootutil: Improve defines in PSA encryption source
  - 3f458fea Bootutil: always initialise the size returned by
    boot_util_image_size()
  - 671513cb zephyr: nRF54l15_cpuapp configuration with LTO enabled

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-18 17:49:20 -04:00
John Shelton
3b2103f5f7 sensor: dht: Fix multi-instance type handling
The DHT driver incorrectly assumes all sensor instances are the same
type as the first instance (dht@0). The data parsing logic uses a
hardcoded check of the devicetree property for instance 0, which
causes incorrect readings when different sensor models (e.g., DHT11
and DHT22) are used together.

This change stores the model type in each per-instance config struct
during initialization. The data parsing logic is updated to use this
per-instance flag, ensuring each sensor is handled correctly
according to its specific model.

Signed-off-by: John Shelton <moosery@gmail.com>
2025-06-18 17:48:58 -04:00
Jamie McCrae
4af0a02b4c doc: services: device_mgmt: smp_groups: Add boot_mode details
Adds details on a new optional parameter for the OS mgmt reset
command which can specify the boot mode

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-18 17:48:44 -04:00
Jamie McCrae
0adcf2e66d mgmt: mcumgr: grp: os_mgmt: Add optional boot mode for reset
Adds an optional boot mode field which can be used to boot into a
specific image or mode using MCUmgr's OS mgmt reset command

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-18 17:48:44 -04:00
Andrej Butok
257e56c6d5 tests: fs: fat_fs_api: Add NXP platforms for filesystem.fat.ram.api
- Adds NXP platforms for the filesystem.fat.ram.api test case.
- Renames prj_native_ram.conf to prj_ram.conf,
  as it can be used by all platforms.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-06-18 17:48:15 -04:00
Anas Nashif
72a8393aac kernel: kswap: removes unused arch_swap function declaration
Eliminates the external declaration of the `arch_swap` function.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-18 17:48:03 -04:00
Anas Nashif
41922b35e4 drivers: uart: make ISR function static to match existing declaration
Declaration of the same function should match and be static.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-18 17:48:03 -04:00
Anas Nashif
ccc8947d16 arm_mpu_v7m: add missing break statement in default case of writable check
add missing break statement in default case of writable check to satisfy
sca.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-18 17:48:03 -04:00
Anas Nashif
d20a52c4aa ztest: add missing break statement in ztest_test_pass function
Adds missing break in switch statement.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-18 17:48:03 -04:00
Anas Nashif
d4a2b7dc57 lib: os: cbprintf_complete: add missing break statement
Add missing break in switch statement.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-18 17:48:03 -04:00
Anas Nashif
9dc30f8dec x86: mmu: add missing break statement in flags_to_entry function
Add missing break in switch statement.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-18 17:48:03 -04:00
Anas Nashif
0ca2a9ed4c arch: x86: multiboot: add a break in default switch case
Add missing break in switch statement.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-18 17:48:03 -04:00
Anas Nashif
bffb3f63fe sca: eclair: add Xen deviations
Import some useful Xen deviations that apply to Zephyr as well.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-18 17:48:03 -04:00
Anas Nashif
43971ea0d5 ci: add member check
Verify that collaborators/maintainers added to the MAINTAINERS.yml file
actually have access to the project and are members.
Only those who already gained access following the process shall be
added to the file.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-18 17:47:54 -04:00
TOKITA Hiroshi
5707ad142d include: zephyr: xen: fix missing header declarations
Adds declarations for functions that have implementations
but no header declarations.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-18 17:47:43 -04:00
Jamie McCrae
df07fae8f0 modules: mcuboot: Imply confirmed image generation in directxip mode
Implies the Kconfig symbol for generated a padded, confirmed image
when MCUboot has been configured in directxip mode with revert, as
the main image must be confirmed in order for it to be booted

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-18 17:47:33 -04:00
Benjamin Cabé
0f6b3f066a drivers: sensors: add missing const qualifiers
Ensure conversion tables and the like are marked as const to save on
RAM usage.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 17:47:18 -04:00
Benjamin Cabé
e3a7a32334 drivers: video: mt9m114: add missing const qualifiers
Ensure that the various configuration tables are marked as const to save
on RAM usage.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 17:46:35 -04:00
dependabot[bot]
cba3db1935 ci: github: bump the actions-deps group with 2 updates
Bumps the actions-deps group with 2 updates: [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) and [github/codeql-action](https://github.com/github/codeql-action).


Updates `dawidd6/action-download-artifact` from 10 to 11
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](4c1e823582...ac66b43f0e)

Updates `github/codeql-action` from 3.28.19 to 3.29.0
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](fca7ace96b...ce28f5bb42)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-version: '11'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: github/codeql-action
  dependency-version: 3.29.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-18 17:46:21 -04:00
Marek Matej
720db7bf5e drivers: wifi: esp32: Fix buffer config
Prevent to allocate buffers cache if Wi-Fi heap is not used.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-06-18 17:46:03 -04:00
Jori Rintahaka
0d5ed7c306 drivers: bluetooth: hci: silabs: fix radio IRQ priorities
Fix radio IRQ priorities. With the Controller update from SiSDK,
its behavior changed so that it overwrites the IRQ priorities.

Reconfigure the priorities after the Controller is initialized.
Source interrupt numbers and priorities from devicetree.

Also set the SYNTH IRQ priority on all HW, and set either the
RDMAILBOX or HOSTMAILBOX IRQ depending on which one exists.

Signed-off-by: Jori Rintahaka <jori.rintahaka@silabs.com>
Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-18 17:45:51 -04:00
Jori Rintahaka
0810fe3edb soc: silabs: fix too small BT_LONG_WQ_STACK_SIZE
Increase the long workqueue stack size to prevent it from being
overflown for example in the GATT database hashing. This leaves
us with a bit less than 200B of headroom as of today

Signed-off-by: Jori Rintahaka <jori.rintahaka@silabs.com>
2025-06-18 17:45:51 -04:00
Jori Rintahaka
133f5bc3c2 drivers: bluetooth: hci: refactor silabs controller init
Refactor the controller init to use the new init routines the
controller now provides. Instead of using a hardcoded set of
features, the features are now initialized based on Kconfig
values that the application selects.

Add config files under modules/hal_silabs, used by the controller
init routines in the external module hal_silabs to determine which
features to enable based on Kconfig options. This brings the
controller feature configurability to roughly parity with the
Simplicity SDK.

Signed-off-by: Jori Rintahaka <jori.rintahaka@silabs.com>
Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-18 17:45:51 -04:00
Aksel Skauge Mellbye
7e517786ed modules: hal_silabs: Update HAL to v2025.6.0
Update the Simplicity SDK HAL for Silicon Labs Series 2
devices to v2025.6.0.

The em_core source file no longer exists in the latest version
of the HAL, and is removed.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-18 17:45:51 -04:00
Benjamin Cabé
14ea8b087b tests: cmake: actually test SBOM files generation
The current test was just a basic sanity check.
This adds actual validation of the SPDX files being generated as
being spec-compliant.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 17:45:16 -04:00
Benjamin Cabé
0bdbc9e412 ci: twister: install Python dependencies in twister-build step
This ensures we catch up on latest requirements in case Docker image is
lagging behind.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 17:45:16 -04:00
Benjamin Cabé
5f099c801b doc: develop: west: document spdx not being supported for native_sim
Generating SPDX SBOMs for the ``native_sim`` platform has propably
never worked, but at least now it will be documented.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 17:45:16 -04:00
Tim Pambor
3b90ed6122 lib: os: Fix function signature of str_out
Update the str_out function signature to match the expected
cbprintf_cb_local type:
typedef int (*cbprintf_cb_local)(int c, void *ctx);

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-06-18 17:45:06 -04:00
Benjamin Cabé
bbfaf8adec doc: _templates: show correct version in sidebar in case of releases
Ensure that version indicator in sidebar is correct in case of releases.

Fixes zephyrproject-rtos/zephyr#91799.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 17:44:53 -04:00
Benjamin Cabé
af6209dbcb drivers: sensors: tdk: icp201xx: fix typo in icp201xx_channel_get
s/pressure/temperature/

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 17:44:07 -04:00
Benjamin Cabé
e6bd3b4f3e drivers: sensors: icp101xx: add missing error check
add missing variable assignment causing error code to be ignored

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 17:44:07 -04:00
Fabio Baltieri
a626d865c0 scripts: do_not_merge: print the API limit stats
This information is useful for troubleshooting and not available
anywhere else, does not quite belong to this script but this runs for
every PR so it's not a bad place to have it.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-18 09:54:12 -04:00
Fabio Baltieri
ac711c9182 ci: pr_metadata_check: set GITHUB_TOKEN
Set the GITHUB_TOKEN environment variable so that the script can do
authenticated requests.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-18 09:54:12 -04:00
Anas Nashif
edf8a96d1a ci: issue_count: reduce frequency
Reduce frequency of counting issues. The output of this workflow is
legacy and published externally, so we should re-consider keeping this
or do things a bit differently.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-18 09:52:37 -04:00
Anas Nashif
ab5190d6f8 ci: footprint: move scheduled run offpeak
Move schedule to off peak hours

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-18 09:52:37 -04:00
Anas Nashif
84c460ed7d ci: move scheduled codeql offpeak
Move schedule to off peak hours

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-18 09:52:37 -04:00
Anas Nashif
b03571d78a ci: move bug_snapshot workflow offpeak
Move schedule to off peak hours.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-18 09:52:37 -04:00
Benjamin Cabé
013abd89ff drivers: memc: smartbond: add missing break statement in pm_action
Add a missing break statement in the pm_action function to ensure that
PM_DEVICE_ACTION_RESUME is not treated as an error.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 09:31:30 -04:00
Benjamin Cabé
380dcddac8 drivers: espi: npcx: fix compilation errors
Fix code that couldn't compile due to typos

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 09:31:08 -04:00
Benjamin Cabé
e936d7759c drivers: dma: dma_iproc_pax_v1: fix variable name in logging macro
Corrected the variable name from 'xfer_size' to 'xfer_sz' in
iproc-pax-dma-v1 driver.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 09:30:55 -04:00
Fin Maaß
42a81d9ef0 drivers: net: ethernet: phy: use DEVICE_API_GET
use DEVICE_API_GET in phy.h

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-18 09:30:43 -04:00
Fin Maaß
c55277f058 drivers: mdio: use DEVICE_API_GET
use DEVICE_API_GET in mdio.h

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-18 09:30:43 -04:00
Fin Maaß
cf8049a9ed drivers: ethernet: phy: tja11xx: Wrap driver instances in device API macro
Use the device API macro to place the driver API instance into an iterable
section.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-18 09:30:43 -04:00
Hui Bai
4868c8acae drivers: wifi: nxp: Host sleep handshake enhancement
To reduce low power current value, added host sleep handshake
enhancement. If CPU3 is wokenup by WLAN, do host sleep handshake with
CPU1 as before. For other wakeup sources, skip host sleep handshake.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-06-18 09:30:28 -04:00
cyliang tw
bf86f1f1c0 drivers: watchdog: support numaker m55m1x
Modify driver code to support m55m1x series.
Update m55m1x.dtsi, to add wdt node for wdt driver support.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-06-18 09:29:20 -04:00
Khoa Nguyen
9413b8d4cd drivers: spi: Add condition to check buffer pointer
Add condition to check context buffer pointer for Renesas
RA SPI and SPI_B driver

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-18 09:27:34 -04:00
Juraj Lieskovský
7f78eb75dc drivers: sensor: st: qdec_stm32: addition of fractional part
The fractional part of the qdec sensor readout is set to zero (val2 =
0).

Changed the format of the run time data to Q26.6 and adjusted the
assignment of val1 and val2 accordingly.

Signed-off-by: Juraj Lieskovský <lieskovsky.juraj@gmail.com>
2025-06-18 09:26:35 -04:00
Ella MA
3f58d49843 soc: mec172x: ecia: Adjust girq_regs to avoid flexible-array-like behaviors
Struct girq_regs has an array field of length 1 at its end. Since this
field is never used in the code base, we can replace it with a non-array
field of its original element type to remove the flexible-array-like
behaviors and avoid using a flexible array file in the middle of a
struct or defining an array of flexible array struct type.

Fixes zephyrproject-rtos#84251

Signed-off-by: Ella MA <xutong.ma@inria.fr>
2025-06-18 09:25:04 -04:00
Jakub Zymelka
7c14d7e6c6 samples: drivers: adc: Add variant for 8-bit resolution on nRF54x
Add sample variant to run code in 8-bit resolution on nRF54x series.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-06-18 09:23:23 -04:00
Jakub Zymelka
f3d2507423 drivers: adc: rework Nordic SAADC driver
SHIM Nordic modification for the ADC driver controlling the SAADC
peripheral. Replaced HAL based implementation in favor of nrfx driver.

As a next step, it is planned to implement a feature that will allow
the peripheral SAADC timer to be used for sampling, and for this it is
necessary to use the nrfx driver in this SHIM.
This will allow more accurate and faster sampling than the kernel
mechanism currently provides.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-06-18 09:23:23 -04:00
Jakub Zymelka
be8c61ab80 modules: hal_nordic: nrfx: Update NRFX API version to 3.12
Update NRFX_CONFIG_API_VER_MINOR to 12, to be compatible with
latest SAADC driver changes.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-06-18 09:23:23 -04:00
Hou Zhiqiang
4a1bdd1c4b boards: nxp: imx91_evk: Add LPI2C DT nodes
Add device-tree nodes for LPI2C instance 1~2.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-06-18 09:12:38 -04:00
Hou Zhiqiang
2efe6ab3bf dts: arm64: nxp: add LPI2C DT nodes for imx91
Add device-tree nodes for LPI2C instance 1 ~ 8.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-06-18 09:12:38 -04:00
Camille BAUD
eb06f11a8f soc: bflb: fix bl60x using wrong mtime freq
use new timebase-frequency to fix the timebase of this SoC

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-18 09:12:26 -04:00
Camille BAUD
d03b7ffdbb scripts: gen_edt.py: add ability to get properties from /cpus
Adds ability to get properties from the /cpus group,
in the goal of retrieving timebase-frequency for CPU groups.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-18 09:12:26 -04:00
Tomasz Moń
89a81e3c1f drivers: udc_dwc2: Disable control IN endpoint on SETUP
New control transfer is started prematurely from device perspective when
host timeout occurs. Any data transfer from previous control transfer
have to be cancelled prior to handling SETUP data. Unconditionally
disable control IN endpoint to prevent race for enqueued buffer between
udc_buf_get_all() called in dwc2_handle_evt_setup() and udc_buf_peek()
called in dwc2_handle_in_xfercompl().

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-06-18 09:11:13 -04:00
Robin Kastberg
2004c2f7eb doc: Updated IAR toolchain information for coming version
Corrected the installation instructions for the IAR Arm Toolchain
to reflect the latest recommended version.

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-06-18 09:11:04 -04:00
Chekhov Ma
7726b70033 drivers: gpio_adp5585: fix input register address
The input register address was somehow missing, fix it.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-06-18 09:10:55 -04:00
Chekhov Ma
41950cab0f drivers: gpio_adp5585: fix non-contiguous pin layout issue
Fixes #90988. The pin gap handling is wrong in the original code.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-06-18 09:10:55 -04:00
Björn Bergman
a9ed11c3f6 toolchain: iar: Implement MIN_SIZE and MAX_SIZE for IAR linker
Implement the MIN_SIZE and MAX_SIZE options to
zephyr_linker_section_configurefor the IAR icf linker file
generator

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-06-18 09:10:46 -04:00
Robin Kastberg
fc7079185c cmake: linker_script: fix __exidx_start
This makes c++ sample
`sample.libraries.hash_map.newlib.cxx_unordered_map.djb2`
start working on gcc w. `CMAKE_LINKER_GENERATOR=y`.

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-06-18 09:10:36 -04:00
Parthiban Nallathambi
7e5434f246 drivers: hwinfo: add TI MSPM0 support
Texas Instruments MSPM0 series supports device id fields with
various part information and also resgister to hold reset reason.
Reset cause register will defaults to 0 after first read.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-06-18 09:10:11 -04:00
Parthiban Nallathambi
70e4eae93c drivers: hwinfo: add flash ECC error reset
Flash memory uncorrectable ECC error can either generate NMI
or reset. When reset is triggered, add entry to handle flash
ECC errors in hwinfo.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-06-18 09:10:11 -04:00
Parthiban Nallathambi
444f42b6a8 drivers: hwinfo: add bootloader reset
SoC with support to enter and exit into bootstrap loader or
bootloader mode for programming and verifying the flash memory
will have reset cause as bootloader.

Add entry to accommodate entry and exit from bootloader mode.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-06-18 09:10:11 -04:00
Bartosz Miller
08cc78cc9f tests: boards: nrf: qdec: Add testing with multiple QDEC instances
NRFX should support multiple QDEC devices operation.

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-06-18 09:10:02 -04:00
Joel Holdsworth
f2c8a5acc4 cmake: linker: ld: Use "-Map <mapfile>" for legacy compatibility
The build system currently generates mapfiles by invoking ld with the
"-Map=<mapfile>" command line argument. This variant of the flag was
introduced in GNU binutils 2.20.

To enable compatibility with legacy versions of the GNU ld, the argument
has been replaced with the "-Map <mapfile>" variant.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-06-18 09:09:50 -04:00
Robert Hancock
ba2f6f8945 edac: shell: Make more generic
The EDAC shell code previously contained a number of references to the
Intel IBECC driver. Make the shell code more generic to the defined EDAC
API, and make IBECC-specific code dependent on its config option.

Also make NMI control dependent on X86 as it is specific to that
platform.

Rather than looking for a node labeled "ibecc", the EDAC shell code
now simply requires that a chosen entry for "zephyr,edac" be present to
point to the desired device. The Intel Elkhart Lake DTS has been updated
to add this alias.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-06-18 09:09:40 -04:00
Robert Hancock
5ec82573ca drivers: edac: Add Synopsys EDAC driver
Add an EDAC driver for the Synopsys DDR memory controller, used in the
Xilinx MPSoC (ZynqMP) devices, to allow monitoring for ECC errors.

Note that currently only the compatible string used for the ZynqMP
(shared with Linux) is currently supported. Support for other Synopsys
core implementations can be added in the future.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-06-18 09:09:40 -04:00
George Norton
c722d40fad drivers: spi: spi_pl022: disable the SSP before reconfiguring
When reconfiguring the SSP, some changes do not immediately take effect
in particular changes to the clock polarity are not applied. Disabling
and re-enabling the SSP forces the new configuration to take effect
immediately.

Signed-off-by: George Norton <george_norton_uk@hotmail.com>
2025-06-18 09:09:12 -04:00
Benjamin Cabé
47108c3c86 drivers: counter: adopt SHELL_HELP
Adopt SHELL_HELP macro for counter_timer_shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 09:09:01 -04:00
Benjamin Cabé
77e5bec398 drivers; counter: run clang-format on counter_timer_shell.c
Run clang-format on this file

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 09:09:01 -04:00
Richard Hughes
3c97bf1014 cmake: kconfig: regenerate .config when Kconfig sources are updated
The existing logic caused a regeneration when any of the .conf files
changed, but modifying the Kconfig files can also cause the .config file
to become out of date e.g. by adding a new config option or by changing
the default value of a config option (when that default is not
overridden by a .conf).

Without this change, an incremental build wouldn't pick up the new value
and would require the user to notice that and manually do a clean build.

Signed-off-by: Richard Hughes <rhughes@xilinx.com>
2025-06-18 09:08:52 -04:00
Richard Hughes
3aaa68faad cmake: kconfig: rename variable to correct naming convention
Variables used only internally in the module should have lowercase
names.

Signed-off-by: Richard Hughes <rhughes@xilinx.com>
2025-06-18 09:08:52 -04:00
Jukka Rissanen
88671dbbba net: doc: Add information of DNS service discovery
Add documentation how to do DNS service discovery queries.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-18 09:08:41 -04:00
Jukka Rissanen
9a0e9be8c3 net: shell: dns: Add service discovery command
Add "net dns service <dns-service-name>" which can resolve
service names like "_http._tcp.dns-sd.org" described in DNS-SD
RFC 6763.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-18 09:08:41 -04:00
Jukka Rissanen
7799f0c994 net: dns: Allow user to specify max answer length via Kconfig
If the default max. answer length of 512 bytes is not enough,
user can specify it by setting CONFIG_DNS_RESOLVER_MAX_ANSWER_SIZE
to suitable value.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-18 09:08:41 -04:00
Jukka Rissanen
cf8b7d715d net: dns: Add service discovery support
Allow PTR queries with dns_resolve_service() API.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-18 09:08:41 -04:00
Jukka Rissanen
a86835025a net: dns: Add PTR query type
Add PTR query type used for DNS-SD (service discovery) support.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-18 09:08:41 -04:00
Carles Cufi
d215f5efec soc: nordic: 54h20: bicr: Fix order of enum
The order of the enumNames array needs to match the actual enum values
array below it.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-18 09:08:25 -04:00
Fin Maaß
4a468e93cd dts: treewide: fix missing use of underscores
in  #83352 a few bindings were not migrated,
fix that, as it will lead to ci fails.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-18 09:08:05 -04:00
Fin Maaß
0d8f41b594 scripts: Fix bindings style migration script
the script is in the utils subdir, which it didn't knew.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-18 09:08:05 -04:00
Benjamin Cabé
a7405dc7bf drivers: adc: ti_am335x: fix timeout condition
Corrected the timeout condition in the ti_adc_sequencer_start function
to ensure proper timeout handling during ADC sequencer operations.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 11:22:57 +01:00
Benjamin Cabé
3e029aae2e tests: display: cfb: fix warning in verify_image()
use proper format specifier for uint32_t variables

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 11:22:48 +01:00
Kapil Bhatt
1037a0cca6 drivers: nrf_wifi: Add Kconfig for Dynamic Bandwidth Signalling
Add Kconfig to enable/disable  Dynamic Bandwidth Signalling.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-06-18 11:22:25 +01:00
Karun Kumar Eagalapati
3c6cd1965c manifest: Update nrf_wifi for dynamic bandwidth signal controlling
Update nrf_wifi for dynamic bandwidth signal controlling through
command init.

Signed-off-by: Karun Kumar Eagalapati <karun.kumar@nordicsemi.no>
2025-06-18 11:22:25 +01:00
Benjamin Cabé
733334917d drivers: audio: dmic_nrfx: fix memory leak
Ensure proper release of memory slab when dmm_buffer_in_release fails in
the event_handler function.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 11:22:01 +01:00
Abhinav Kulkarni
575730eb87 boards: shields: nxp_mw_wifi_bt: Disable modes for IW416
Disabled 11AX and 11AC for IW416 since it is 11n soc.

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2025-06-18 11:21:43 +01:00
Abhinav Kulkarni
361d676a69 modules: hostap: Added 11AC kconfig
Added 11AC kconfig to disable 11AC mode.
Used this kconfig to disable 80211ac confs.

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2025-06-18 11:21:43 +01:00
Abhinav Kulkarni
cb598a321a boards: shield: nxp_m2_wifi_bt: Updated reg domain
Set regulatory domain to default US for IW610 and RW610 socs
and WW for IW416 and IW612 socs.

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2025-06-18 11:21:43 +01:00
Abhinav Kulkarni
5321b1b70b modules: hostap: Updated reg domain details
Added kconfig for regulatory domain in hostapd. Default is set to
00 as World Wide mode.
Also added 3rd octet kconfig to set regulatory environment and set
it to 32 for all supported environments.

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2025-06-18 11:21:43 +01:00
Björn Bergman
4b3cd02e6a toolchain: iar: Put KEEP on init-blocks
To circumvent peculiarities in the linker, the _init blocks
(as well as their content) needs to be tagged with keep.

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-06-18 11:20:58 +01:00
Björn Bergman
dff0dbaf34 toolchain: iar: use zephyr_linker_generate_linker_settings_file() to ilink
Use the standard function to generate the input file to the linker
generator.

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-06-18 11:20:35 +01:00
Joel Holdsworth
4cebced253 doc: kernel: code-relocation: Document NOINIT memory type
The `zephyr_code_relocate` now supports the NOINIT memory type in addition
to DATA, TEXT and BSS. This patch documents its usage.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-06-18 11:16:37 +01:00
Joel Holdsworth
56e5121d39 code_relocation: Handle relocation of noinit sections
The code relocation feature allows code and data section to be located
inside a designated RAM region.

Currently, this feature supports relocation of code (text) and data
including mutable data (data), read-only data (rodata), and
zero-initialized data (bss).

However, relocation of non-initialized data sections was not previously
supported, meaning that any data annotated with the __noinit attribute
could not be relocated into the desired RAM region.

This patch adds a NOINIT memory-type which can be used implicitly or
explictly in the zephyr_code_relocate() CMake function. This causes the
build system to generate additional linker-script section-matching rules.

By the nature of noinit data, no action is required by Zephyr at boot.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-06-18 11:16:37 +01:00
Joel Holdsworth
5dbd364954 doc: kernel: Improved reloc text formatting
This patch improves the formatting of the "Additional Configurations"
section of the "Code And Data Relocation" document.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-06-18 11:16:37 +01:00
Emil Gydesen
117dca089a samples: Bluetooth: BAP: BA: Reset states and modify error checking
Modify the reset function to also reset the connection and
PA sync states.

Modify and add missing checks for mutex locks to use ASSERT
when using K_FOREVER, as they should never fail/timeout.

Cleanup some text and error checks.

Ensure that the add_src_param is reset for each loop
iteration as well.

Modify so that we use K_FOREVER fewer places.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-06-18 11:15:53 +01:00
Jiawei Yang
c89441a90d tests: Bluetooth: BR: Add test suite RFCOMM_client
IUT works as an RFCOMM Client. The peer device, RFCOMM server, is a PC
running bumble.

In the test suite, there are five test cases:
Case 1, RFCOMM Client with Command Responses. Tests that the client can
establish a DLC, respond to various commands (RLS, RPN, Test), send NSC
responses, and properly handle DLC disconnection and RFCOMM session
shutdown.
Case 2, RFCOMM Client with Credit Based Flow Control. Tests that the
client can establish a DLC, perform information transfer with credit
based flow control, initiate disconnection, and shutdown the RFCOMM
session.
Case 3, RFCOMM Client with BR Connection Disconnection. Tests that the
client correctly handles scenarios where the BR connection is
disconnected during DLC establishment.
Case 4, RFCOMM Client with Aggregate Flow Control. Tests that the client
can establish a DLC, perform information transfer with aggregate flow
control, and properly handle disconnection and session shutdown.
Case 5, RFCOMM Client with Failed PN Response. Tests that the client
correctly handles scenarios where it fails to receive a PN response when
establishing a DLC.

Signed-off-by: Jiawei Yang <jiawei.yang_1@nxp.com>
2025-06-18 11:15:18 +01:00
Rubin Gerritsen
b63b993491 Bluetooth: Decode Bluetooth 6.1 version number
Bluetooth 6.1 has version number 0x0F and was released in May 2025.
This commit ensures this version number is properly decoded.

Going forward we may consider removing printing the version
number as a string because the feature set is more important
than the version number.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-06-18 10:56:34 +02:00
Gang Li
a5dd932314 drivers: wifi: add support for fetching inactivity duration
In SAP mode, need to fetch the inactivity duration.

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2025-06-18 10:56:14 +02:00
Etienne Carriere
ba4b9819f5 drivers: i2c: stm32: disable error interrupts for RTIO
Add missing disable of I2C error interrupt when disabling I2C interrupts
in STM32 v1 and v2 RTIO drivers.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-06-18 10:56:04 +02:00
Etienne Carriere
5065edb417 drivers: i2c: stm32: support more than 256 bytes transfer for RTIO
Add support for transfer of more than 256 byte in STM32 v1 and v2
RTIO drivers.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-06-18 10:56:04 +02:00
Andrzej Głąbek
616ec7522c drivers: adc_nrfx_saadc: Remove dead and misleading code
For a long time (since version 3.3.0) nrfx contained an incorrectly
defined symbol NRF_SAADC_8BIT_SAMPLE_WIDTH that was set to 8 for nRF54L
and nRF54H Series SoCs, which was probably only true for very early
engineering revisions of those. Based on this, the adc_nrfx_saadc driver
was incorrectly writing consecutive 8-bit samples in supplied buffers,
cutting off the highest 8 bits of the results. And for sequences with
multiple channels, it was even causing that the results written as
16-bit words by hardware were partially overwritten in next iteration.

In nrfx 3.12.0 (see commit f46798fa55)
this was finally corrected - the symbol is now deprecated and it is
always set to 16. This commit is a follow-up to the above and removes
parts of adc_nrfx_saadc that now became dead code to prevent further
confusion regarding 8-bit sampling.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-18 10:55:58 +02:00
Qingling Wu
f089959651 manifest: hostap: sync for coverity fix
sync for coverity fix in hostap

Signed-off-by: Qingling Wu <qingling.wu@nxp.com>
2025-06-18 10:55:31 +02:00
Andrzej Głąbek
dea8a3e732 samples: drivers: adc_sequence: Remove misleading parts of nRF overlays
Remove parts of overlays for nRF targets that were just copied from
the adc_dt sample but are not used by the adc_sequence sample and only
generate confusion here.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-18 10:55:18 +02:00
Sebastian Głąb
a58684db38 tests: drivers: i2s: Add i2s_additional tests
Extend I2S testing with additional test cases that verify
I2S/TDM driver operation at various configurations.

Check:
- word sizes of 8, 16, 24, 32 and 48 bits;
- one, two, four and eight audio channels configuration;
- data format I2S, Left Justified, Right Justified,
  PCM Long, PCM Short;
- data order MSB and LSB first;
- bit clock and frame clock inversion;
- block size of 6 bytes;
- bit clock continuous and gated;
- internal loopback;
- pingpong option.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-06-18 10:55:03 +02:00
Maochen Wang
736058de7d drivers: wifi: nxp: add download countryinfo
When set 'wifi reg_domain' CMD, need to create and download countryinfo
to sync driver and FW for embedded supplicant case

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-06-18 10:54:55 +02:00
Jukka Rissanen
b1a8655bf0 net: mgmt: Increment API major version number
As per API overview documentation, a braking API change must
increment major version number.

https://docs.zephyrproject.org/latest/develop/api/overview.html#api-overview

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-18 10:54:44 +02:00
Jukka Rissanen
6b0597f631 doc: migration: 4.2: Add information about net_mgmt API changes
Add information how the net_mgmt request handler is changed.
The event number type is changed from uint32_t to uint64_t to allow
the event command to be a bit mask instead of enum value.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-18 10:54:44 +02:00
Jukka Rissanen
2ed2232f17 net: socket: mgmt: Create proper socket options for net_mgmt sockets
We cannot use the network management event number directly as
a socket option value because the management value is uint64_t
and that cannot be mapped directly to 32 bit integer.
So have an intermediate socket option that is mapped to actual
network management request number in getsockopt() and setsockopt().

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-18 10:54:44 +02:00
Jukka Rissanen
5a9a39caf3 net: mgmt: Convert the mgmt API to use 64-bit masks
Instead of using 32 bit enum values for event numbers, convert
the code to use 64 bit long bit fields. This means that the
user API is changed to use 64 bit event values instead of 32
bit event values.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-18 10:54:44 +02:00
The Nguyen
f51a89268f tracing: fix build error on USB backend
This commit to fix build error due to a wrong syntax in case USBD
highspeed was enabled

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-06-18 10:54:32 +02:00
Tim Pambor
58527c1020 input: Fix function signature of input_thread
Update the input_thread function signature to match the expected
k_thread_entry_t type:
typedef void (*k_thread_entry_t)(void *p1, void *p2, void *p3);

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-06-18 07:41:25 +02:00
Jordan Yates
4bd7e0bc94 samples: sys_heap: extend with k_heap_array_get
Extend the sample with a demonstration of `k_heap_array_get`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-18 07:40:55 +02:00
Jordan Yates
f11bddbf6e tests: kernel: k_heap_api: test k_heap_array_get
Add a basic test for the behaviour of `k_heap_array_get`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-18 07:40:55 +02:00
Jordan Yates
117b452b50 kernel: add k_heap_array_get
Add `k_heap_array_get` as an alternative to `sys_heap_array_get`, which
only returns statically defined heaps (those defined with
`K_HEAP_DEFINE` or `K_HEAP_DEFINE_NOCACHE`), but doesn't depend on the
application guessing a value for `CONFIG_SYS_HEAP_ARRAY_SIZE`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-18 07:40:55 +02:00
Łukasz Duda
1829c13c8a net: openthread: Make Radio workqueue priority configurable
This commit makes the Radio workqueue priority configurable by the
application. Additionally, the default priority has been adjusted to
allow transmit operations to occur before the entire RX queue is
processed.

Signed-off-by: Łukasz Duda <lukasz.duda@nordicsemi.no>
2025-06-18 07:40:36 +02:00
Benjamin Cabé
e1d17b4a76 tests: net: lib: coap: test options with large deltas
Ensure encoding of options with large deltas works as expected by using
an "experimental" option 65100.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:40:12 +02:00
Benjamin Cabé
6dedf7dc71 tests: net: lib: coap: test options with large values
Ensure we test encoding of options that require multiple bytes to
encode their value.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:40:12 +02:00
Benjamin Cabé
1032dd47b2 net: coap: fix offset typo in insert_be16
Fix usage of the wrong variable in insert_be16 which could cause
insertion at the wrong offset.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:40:12 +02:00
TOKITA Hiroshi
ef18ce4534 drivers: vertio: Move VIRTIO-MMIO register definitions to header
This change will allow the VIRTIO-MMIO register definitions
to be shared.

Additionally, the register names from Ver1 were being used,
even though the implementation was based on the Ver2 specification.
Also, I addressed this issue.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-18 07:40:02 +02:00
Benjamin Cabé
0cdf804c00 drivers: serial: ra8_sci_b: fix overrun error flag clearing
Overrun error flag clearing happens by writing 1 to the ORERC register,
not 0.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:39:49 +02:00
Benjamin Cabé
4d4b3a4efe drivers: hwinfo: litex: fix device ID calculation
The `end` variable should be calculated based on the device's register
size, not the address. Probably never caught before as user typically
provides a buffer of reasonable size...

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:39:31 +02:00
Benjamin Cabé
37144c1ffa drivers: sensor: icm42605: fix turn_off_sensor logic
While it would likely not directly cause issues with the current
implementation, the logic of turning off the sensor should be to
actually reset the flags, not to toggle them.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:39:15 +02:00
Benjamin Cabé
34c4f9e6b1 drivers: i3c: cdns: fix bitwise operation in CONF_STATUS0_DEV_ROLE macro
Updated the CONF_STATUS0_DEV_ROLE macro to ensure proper bitwise
operation by adding parentheses around the bitmask operation.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:38:58 +02:00
Benjamin Cabé
312bea8cae net: socket: use proper tracing macro for socketpair()
SYS_PORT_TRACING_OBJ_FUNC_* are for when the function being
traced is a method of an object. Use SYS_PORT_TRACING_FUNC_* instead.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:38:44 +02:00
Benjamin Cabé
09961c635a drivers: gnss: u-blox_m8: fix mutex leak
Properly release script.lock in case of error.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:38:32 +02:00
Benjamin Cabé
e7d6a40282 drivers: gnss: quectel_lcx6g: return actual error code in get_fix_rate
Return actual error code instead of hard-coded zero.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:38:32 +02:00
Benjamin Cabé
d1673df9cd drivers: gnss: luatos_air530z: handle formatting error
Add error handling for the return value of gnss_nmea0183_snprintk
so as to avoir sending garbage to the modem.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:38:32 +02:00
Benjamin Cabé
65612b49b1 include: drivers: gnss: Update gnss_nmea0183_snprintk documentation
Correct improper doc for return value, document the negative error
codes, and add more details re: what the function does.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:38:32 +02:00
Benjamin Cabé
7b001ed059 drivers: led: adopt SHELL_HELP
Adopt SHELL_HELP macro for LED shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:38:17 +02:00
Benjamin Cabé
754b259f9c drivers: regulators: adopt SHELL_HELP
Adopt SHELL_HELP macro for Regulators shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:38:02 +02:00
Benjamin Cabé
2967d83ab1 drivers: serial: uart_shell: adopt SHELL_HELP
Adopt SHELL_HELP macro for UART shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:37:49 +02:00
Nghia Phung
fe2b374d00 drivers: i3c: Correct register to read IBI response
SLV_IBI_RESP is the register to read IBI response, not SLV_INTR_REQ

Signed-off-by: Nghia Phung <nghiap@amperecomputing.com>
2025-06-18 07:37:36 +02:00
Nghia Phung
caf42fbdef drivers: i3c: Check for the existence of callback before invoking
I3C callbacks are registered by upper layer. Driver layer must check if
a callback is not NULL before calling it

Signed-off-by: Nghia Phung <nghiap@amperecomputing.com>
2025-06-18 07:37:36 +02:00
Nghia Phung
90dd76bf7a drivers: i3c: Correct some I3C register name
Register at offset 0xe8 is QUEUE_SIZE_CAPABILITY
Register at offset 0xec is RELEASE_SDA_TIMING

Signed-off-by: Nghia Phung <nghiap@amperecomputing.com>
2025-06-18 07:37:36 +02:00
Nghia Phung
0d0aea18fd drivers: i3c: Handle Hotjoin completion
When Hotjoin complete and dynamic address is assigned to target,
INTR_DYN_ADDR_ASSGN_STAT interrupt will be triggered, we can use sem_hj
to notify dw_i3c_target_ibi_raise_hj() about Hotjoin completion

Signed-off-by: Nghia Phung <nghiap@amperecomputing.com>
2025-06-18 07:37:36 +02:00
Nghia Phung
f22e1018d5 drivers: i3c: init sem_hj semaphore
Add initialization for sem_hj, it is being used without initialization.

Signed-off-by: Nghia Phung <nghiap@amperecomputing.com>
2025-06-18 07:37:36 +02:00
Yangbo Lu
6a56874a22 boards: nxp: imx943_evk: support NETC ENETC for M33
Supported NETC for M33.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-18 07:37:24 +02:00
Yangbo Lu
89e324dee6 boards: nxp: imx943_evk: support board initialization for NETC
Supported board initialization for NETC.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-18 07:37:24 +02:00
Yangbo Lu
f0fbdace37 boards: nxp: imx943_evk: support pintrl for NETC
Supported pintrl for NETC.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-18 07:37:24 +02:00
Yangbo Lu
b8baa19a63 soc: nxp: imx943: support NETC initialization during soc_init
Added support for NETC initialization during soc_init.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-18 07:37:24 +02:00
Yangbo Lu
af181c5620 dts: arm: nxp_imx943_m33: add NETC ENETC support
Added NETC ENETC nodes, MDIO node, and scmi power node which will
be used to power up NETC MIX in dtsi file.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-18 07:37:24 +02:00
Yangbo Lu
0e9d7f4238 include: dt-bindings: add header file for i.MX943 power domain
AAdded header file for i.MX943 power domain.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-18 07:37:24 +02:00
Yangbo Lu
7f0692826a modules: hal_nxp: clean up NETC driver in drivers.cmake
Cleaned up NETC driver in drivers.cmake to add i.MX943 NETC
driver support, and to disable msgintr/irqsteer for A core.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-18 07:37:24 +02:00
Yangbo Lu
ffb328953e west.yml: update hal_nxp for networking changes
Updated hal_nxp to support i.MX943 NETC.

Updated hal_nxp for wifi update.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-18 07:37:24 +02:00
Benjamin Cabé
b95f8d88df lora: adopt SHELL_HELP
Adopt SHELL_HELP macro for lora_shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-18 07:37:10 +02:00
Federico Di Gregorio
3d720bcb73 drivers: flash: stm32: add "generic read/write" ex op to QSPI driver
Some external flash modules have extra commands to support, for example,
reading/writing an OTP zone. Given that the commands are highly specific
and difficult to generalize, we add two ex ops that can be used to
transmit a custom command (in the form of a full QSPI_CommandTypeDef) and
then read or write a user-provided buffer.

Signed-off-by: Federico Di Gregorio <fog@dndg.it>
2025-06-18 07:37:00 +02:00
urvashi sharma
9cef24bc62 Arch: Arm: SMP: Boot & Voting Refactor
Support booting from any usable core in systems with partially
fused-off CPUs. Update get_cpu_logic_id to iterate over the actual
number of enabled CPUs using DT_CHILD_NUM_STATUS_OKAY(DT_PATH(cpus))
instead of CONFIG_MP_MAX_NUM_CPUS.

Resize the voting[] array based on DT_CHILD_NUM_STATUS_OKAY to ensure
each CPU can vote correctly.

Signed-off-by: urvashi sharma <urvashis@qti.qualcomm.com>
2025-06-18 07:36:34 +02:00
Swift Tian
69c14e37ac drivers: mspi: add ambiq mspi timing scan utility
The utility may be used during development stage to get
ambiq platform specific timing parameters for mspi devices.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-06-18 07:36:26 +02:00
Swift Tian
cc5c142535 drivers: mspi: add mspi is25xx0xx device driver
This device driver supports ISSI is25w/lx032/64 series flash.
Only extended SPI mode(1s-1s-1s, 1s-8s-8s, 1s-1s-8s) is implemented.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-06-18 07:36:26 +02:00
Swift Tian
8ef0792eec drivers: mspi: add APMemory APS Z8 pSRAM driver
The APS Z8 driver would just support APS51216BA for now.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-06-18 07:36:26 +02:00
Philipp Steiner
f5b201e0d6 doc: fuel_gauge: upate api documentation
removes outdated description and adds missing api call.

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-06-17 16:27:51 -05:00
Daniel Leung
917bc51d2d xtensa: gdbstub: add arch_gdb_post_memory_write()
This adds arch_gdb_post_memory_write() to deal with caching
after GDB writing to memory.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-06-17 16:27:27 -05:00
Daniel Leung
3fbd7dfb75 debug: gdbstub: add arch_gdb_post_memory_write()
This adds an architecture-specific post processing after memory
writes. This introduction is due to GDB's behavior regarding
breakpoints in code. GDB may choose to write break instructions
instead of using hardware breakpoints to interrupt code
execution (e.g. for manual breakpoint or stepping through code).
There is no separate GDB packet type for this. So we need to
make an assumption that a memory write may be to setup break
instructions. Different architectures may have their own unique
ways of dealing with instruction cache in this situation. So we
defer to the architecture code to handle this.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-06-17 16:27:27 -05:00
Daniel Leung
733305293a xtensa: gdbstub: fix backtracing and stack unwinding
This fixes GDB backtracing by forcibly spilling all registers,
and faking values for WINDOWSTART and WINDOWBASE. This is
effectively telling GDB that only A0-A3 and AR0-AR3 contain
active data and other physical registers do not. GDB then must
rely on spilled values on stack. Otherwise, GDB will try to
look at all AR* registers for previous frame(s). Since we
do not save all AR* register values, there is nothing for GDB
to look at, and thus failing to unwind stack.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-06-17 16:27:27 -05:00
Daniel Leung
c7841ce472 xtensa: gdbstub: fix compiler warning about discarding const
Inside copy_to_ctx(), we are typecasting the stack pointer into
a 32-bit array pointer, and there was unbalanced const between
two sides. Since we should not be modifying anything inside
that array, add const to the 32-bit array pointer too. So now
the compiler will not complain about discarding the const
qualifier.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-06-17 16:27:27 -05:00
Daniel Leung
d00095c4a6 xtensa: fix num_high_regs calculation when dumping stack
The calculation of number of high registers is not entirely
correct. We need to get past the pointer to BSA in the stack
frame before reaching the high registers. The location address
difference between the BSA and start of high registers then
can be used to calculate how many high registers in the stack
frame. So correct the start location of high registers in
the calculation as it was incorrect before. Though the result
would be the same as further divisions would mask this error.
However, it is better to correct this for readability.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-06-17 16:27:27 -05:00
Daniel Leung
f3255fdd03 tests: debug/gdbstub: add an overlay for ESP-WROVER-KIT
Add an overlay in the GDB stub test for ESP-WROVER-KIT board
to enable using its UART for remote GDB communication.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-06-17 16:27:27 -05:00
Benjamin Cabé
c8349073d5 drivers: rtc: adopt SHELL_HELP
Adopt SHELL_HELP macro for rtc shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:25:32 -05:00
Benjamin Cabé
e7f58da491 drivers: adc: use asserts in adc_gain_invert implementations
no need for runtime checks here, let's save a few bytes of code

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:25:15 -05:00
Declan Snyder
b8408575ec MAINTAINERS: Add decsny as SPI collaborator
Add myself as SPI collaborator.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-17 16:25:07 -05:00
Benjamin Cabé
18abef2dbf drivers: mbox: remove duplicate macro definition
Remove duplicate MAILBOX_MBOX_SIZE

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:24:45 -05:00
Pieter De Gendt
b3316fc4fd net: l2: wifi: shell: Fix passphrase long opt help text
A passphrase needs to be passed with --passphrase instead of --psk.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-17 17:47:11 +02:00
Fin Maaß
1497ae6d30 drivers: mdio: remove unused bus_enable/disable
remove unused bus_enable/disable, they don't
need to be implemented, if they are not needed.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 17:46:56 +02:00
Benjamin Cabé
ebfcd24132 drivers: clock_control: ambiq: add missing break statement
add missing break statement so that CLOCK_CONTROL_AMBIQ_TYPE_LFXTAL case
is handled correctly.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 17:46:41 +02:00
Benjamin Cabé
ba0954848b drivers: spi: fix bad GENMASK in NXP LPSPI driver
Fixed swapped GENMASK arguments causing bad mask to be generated.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 17:46:27 +02:00
Benjamin Cabé
bb3a898dec drivers: w1: shell: fix off-by-one error
Prevent user to use and invalid setting index

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 17:46:17 +02:00
Benjamin Cabé
d048806bf6 drivers: w1: shell: fix write_bit function
write_bit should write a bit, not a byte.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 17:46:17 +02:00
Anuj Pathak
2af6adc745 drivers: dma: max32: check if bit other than status is set
we iterate over all the channels, and if more than one channel is
active at a time. interrupt on any one of active channel was
triggering callback for other active channel, because flags value
is 1 (enabled). this is commit handle this behaviour and only
trigger callback if bits other than status is set

Signed-off-by: Anuj Pathak <anuj@croxel.com>
2025-06-17 17:46:05 +02:00
Benjamin Cabé
acc1731410 soc: mediatek: fix typo in macro name
s/SOC_SERIES_MT8195/CONFIG_SOC_SERIES_MT8195/

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 17:45:47 +02:00
Patryk Koscik
e8ff141f6d tests: drivers: sensor: spi: include gpio.h header
This patch adds a missing include directive to `spi.dtsi` in the
`build_all` configuration.The include is required because commit
2ac316465f introduced the use of `GPIO_ACTIVE_HIGH` and `GPIO_ACTIVE_LOW`
macros.

Signed-off-by: Patryk Koscik <pkoscik@antmicro.com>
2025-06-17 17:45:36 +02:00
Joakim Andersson
cc0d00f83a doc: tls_credentials_shell: Document credential load functionality
Document the credential load functionality added to `cred buf` command.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2025-06-17 17:45:26 +02:00
Joakim Andersson
2e5a03877f net: tls_credentials_shell: Add credential buffer load argument
Add argument to the TLS credential `cred buf` command that enables
a shell bypass to write the TLS credential directly to the credential
buffer.
This is useful for writing load credentials that cannot fit in a single
`cred buf` command and would otherwise have to be split into multiple
cred buf commands.
Sending multiple in succession like that from a script for example very
easily causes the shell RX buffer to get full, resulting in multiple
`RX ring buffer full.` warnings.
This is very difficult for a script to handle.

Using a bypass has much better performance and can easily avoid the
RX ring buffer full condition without increasing the RX ring buffer
to much.
It is also easier for a script to use.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2025-06-17 17:45:26 +02:00
The Nguyen
d4758f02b1 samples: counter: alarm: revert PR #90709
Due to the lack of the overlays for lots of platforms, bring up the
platform_allow again before the sample ifdef are refined

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-06-17 16:13:03 +02:00
Benjamin Cabé
8d6316c5b7 drivers: nrf_wifi: put driver ops in flash
Add const qualifiers to the driver ops to save on RAM usage.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:12:44 +02:00
Benjamin Cabé
0f60efe217 drivers: display: stm32: add missing break statement
Add missing break statement causing incorrect fallthrough for ARGB_8888

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:12:26 +02:00
Benjamin Cabé
dcec4ee653 driver: sdhc: fix typo in SAM4E hsmci driver
Fix parameter name (HSMCI -> hsmci)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:12:17 +02:00
Jamie McCrae
97e5d33214 samples: fs: fs_sample: Fix nrf54l15 dts overlay files
Fixes these files to no lonegr delete non-secure partitions
as these no longer exist

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-17 16:11:45 +02:00
Jamie McCrae
5bc71e6e9b boards: nordic: nrf54l05: Change to use common dts partitioning file
Adds a common vendor dts file specifying the default partition
layout for nRF54L05-based cpuapp board targets and updates boards
to use this common file. This also drops the secure/non-secure split
in the partitioning as this was reducing NVM storage that is not
used by this board target and fixes the wrong flash field in
twister yaml files

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-17 16:11:45 +02:00
Jamie McCrae
e542188ce9 boards: nordic: nrf54l15_ns: Change to use common dts partitioning file
Adds a common vendor dts file specifying the default partition
layout for nRF54L15-based cpuapp_ns board targets and updates boards
to use this common file.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-17 16:11:45 +02:00
Jamie McCrae
124a803fc4 boards: nordic: nrf54l15: Change to use common dts partitioning file
Adds a common vendor dts file specifying the default partition
layout for nRF54L15-based cpuapp board targets and updates boards
to use this common file. This also drops the secure/non-secure split
in the partitioning as this was reducing NVM storage that is not
used by this board target and fixes the wrong flash field in
twister yaml files

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-17 16:11:45 +02:00
Jamie McCrae
002838ab9e boards: nordic: nrf54l10_cpuapp_ns: Add workaround for partitions
Adds a workaround for partitions on nrf54l10 non-secure devices to
prevent build issues, this needs to be fixed properly when a TF-M
update is done which sets the partition sizes properly

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-17 16:11:45 +02:00
Jamie McCrae
9dc6040fcd boards: nordic: nrf54l10: Change to use common dts partitioning file
Adds a common vendor dts file specifying the default partition
layout for nRF54L10-based cpuapp board targets and updates boards
to use this common file. This also drops the secure/non-secure split
in the partitioning as this was reducing NVM storage that is not
used by this board target and fixes the wrong flash field in
twister yaml files

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-17 16:11:45 +02:00
Jamie McCrae
0f0c80e931 dts: vendor: nordic: nrf54l10: Fix wrong size of NVM
Fixes the NVM size going beyond what the chip supports

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-17 16:11:45 +02:00
Jamie McCrae
a56cb0ad4d dts: vendor: nordic: nrf91xx_partition: Adapt to sub-partitions
Updates to use sub-partitions for TF-M slots

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-17 16:11:45 +02:00
Michał Stasiak
4d6585488b drivers: adc: adc_nrfx_saadc: Extend internal reference values
Current target-reference mapping does not cover all cases.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-06-17 16:11:33 +02:00
Michał Stasiak
18c0c3aeb9 drivers: Extend analog pins mapping for nRF54L.
Extended analog pins mappings for more nRF54L targets.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-06-17 16:11:33 +02:00
Francois Ramu
17ad5938fa test: drivers: memc: ram testing on adi eval board
When running the tests/drivers/memc/ram on the
adi_eval_adin1110ebz target, do not involve sram1, sram2
That will avoid warning about orphan section for
`DT_N_S_memory_10000000_P_zephyr_memory_region_STRING_TOKEN
and DT_N_S_memory_20040000_P_zephyr_memory_region_STRING_TOKEN

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-17 16:11:24 +02:00
Sai Santhosh Malae
d29fd6fcba tests: spi: siwx91x: board config file update
Update CONFIG_SPI_IDEAL_TRANSFER_DURATION_SCALING
value for testcase to pass for higher transfer speeds.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-06-17 16:11:11 +02:00
Sai Santhosh Malae
4bf1c9e8f5 drivers: spi: siwx91x: spi driver fix
Validate word size to only allow 8-bit and 16-bit.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-06-17 16:11:11 +02:00
Bartosz Miller
8aa6557c95 tests: boards: nrf: i2c: Fix nrf52 and nrf53 pin assignment
Fix the i2c loopbacks pins assignments for nrf52 and nrf53 to allow
automated testing.

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-06-17 16:10:59 +02:00
Benjamin Cabé
5c422a9d27 tests: drivers: comparator: increase test coverage for await_trigger
Test user-provided timeout value

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:10:46 +02:00
Benjamin Cabé
e564bab82e tests: drivers: comparator: fix typos
Fixed a few dummy asserts

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:10:46 +02:00
Koen Van Herck
4ae5c1e505 boards: raspberrypi: rpi_pico2: Add jlink runner for rpi_pico2 board
jlink runner works fine for the Pico2, just like Pico1 (rpi_pico).
Copied relevant lines from rpi_pico/board.cmake.
Fixed typo in documentation.

Signed-off-by: Koen Van Herck <koen.v.herck@gmail.com>
2025-06-17 16:10:32 +02:00
Benjamin Cabé
2dd0b4fee0 tests: drivers: gnss: add test for get_fix_rate()
Add a test for this previously untested function

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:10:04 +02:00
Benjamin Cabé
64446d2f67 drivers: gnss: emul: increase GNSS_EMUL_MIN_FIX_INTERVAL_MS
Make the GNSS emul driver less capable w.r.t fix interval so that we can
exercise more error paths if e.g. user requests a fix interval of 100ms.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:10:04 +02:00
Guennadi Liakhovetski
87e3e1fed2 llext: move 2 prototypes to llext_internal.h
arch_elf_relocate_global() and arch_elf_relocate_local() aren't LLEXT
API functions, they're internal implementation functions, move them
to llext_internal.h

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-17 16:09:50 +02:00
Guennadi Liakhovetski
53a179ac4e llext: make unresolved symbol errors fatal
With experience it becomes clear, that failing to resolve symbols
during the linking process is likely fatal for the module loading and
a simple warning isn't enough. Fail loading instead.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-17 16:09:50 +02:00
Grzegorz Swiderski
64bb8b6796 scripts: kconfig: Add hex variants of arithmetic functions
Functions like `add` and `sub` can only return base 10 integers, which
means they can't really be used to define Kconfig symbols of type `hex`.

For the same reason, there already exist pairs of devicetree functions
named e.g., `dt_node_reg_addr_(int|hex)` after different return types.

Introduce `add_hex`, `sub_hex`, and friends.

To avoid confusion, it should be possible for those new functions to
accept arguments in base 16 as well. It's actually easier to let all
arithmetic functions take their inputs in "any" base, by leveraging
Python's built-in: `int(..., base=0)`.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-06-17 16:09:41 +02:00
sudarsan N
139cdfc243 drivers: uc81xx: fix unchecked return from mipi_dbi_reset()
Check return value to handle potential failure.

Fixes: CID 524752

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-17 16:09:27 +02:00
Johan Stridkvist
df0db6a7a3 samples: Bluetooth: hci_ipc: __ASSERT on fail to deliver complete message
The hci_ipc sample does not support fragmentation of IPC-messages.
Give an ASSERT if only parts of an IPC-message is delivered.
This would happen for instance when the underlying transport mechanism
cannot hold the complete message.

Background:
The open-amp backend uses RPMSG_BUFFER_SIZE=512

Most applications and controllers use HCI-packets which are at most
255 bytes. In some cases a controller may deliver HCI-packets beyond
255 bytes.

This may for instance be the case if the controller delivers large ISO
SDUs as a single HCI-packet.

Signed-off-by: Johan Stridkvist <johan.stridkvist@nordicsemi.no>
2025-06-17 16:09:17 +02:00
Benjamin Cabé
639cb9b3bc tests: unit: util: increase coverage of utf-8 utils
Test all possible UTF-8 sequence lengths for utf8_trunc()

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:09:06 +02:00
Benjamin Cabé
f899ff2475 include: util: fix doxygen comment for utf8_trunc
Properly format code block

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:09:06 +02:00
Jukka Rissanen
8704b3add7 net: ppp: Bind DNS to device ppp network interface
Make sure received DNS server information is bound to the
ppp network interface.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-17 16:08:56 +02:00
Jukka Rissanen
0e57844b2d drivers: wifi: esp_at: Bind DNS to device net interface
Make sure received DNS server information is bound to the
wifi network interface.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-17 16:08:56 +02:00
Jukka Rissanen
57c452fb79 net: shell: conn: Print packet socket information correctly
The "net conn" command printed AF_PACKET socket as AF_UNK(3).
Fix this by printing "AF_PACKET" in this case.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-17 16:08:56 +02:00
Jukka Rissanen
514cdd6b3a net: dns: Add uninitialized state to resolver context
Make sure that uninitialized state is 0 so that we can catch
when the context is not initialized properly.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-17 16:08:56 +02:00
Jukka Rissanen
cb9052459a net: dns: Properly cleanup DNS servers per network interface
Make sure we cleanup only those DNS servers that belong to
certain network interface when the interface goes down.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-17 16:08:56 +02:00
Jukka Rissanen
248cb3d251 net: dhcpv6: Honor network interface for DNS servers
Bind the network interface to the network interface we
have received the DNS servers from. This is now the default.
The previous behavior can be restored by disabling the
CONFIG_NET_DHCPV6_DNS_SERVER_VIA_INTERFACE option.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-17 16:08:56 +02:00
Jukka Rissanen
1224c5a43a net: dhcpv4: Honor network interface for DNS servers
Bind the network interface to the network interface we
have received the DNS servers from. This is now the default.
The previous behavior can be restored by disabling the
CONFIG_NET_DHCPV4_DNS_SERVER_VIA_INTERFACE option.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-17 16:08:56 +02:00
Jukka Rissanen
2af5dba995 net: dns: Allow reconfiguration with network interfaces
Allow user to specify which network interfaces to bind the
server to when reconfiguring the DNS system.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-17 16:08:56 +02:00
Benjamin Cabé
1fc628b0b5 tests: unit: util: add test_byteswp
add test for bytecpy() with full line and branch
coverage

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:08:38 +02:00
Benjamin Cabé
6b1ee04a10 tests: unit: util: add test_bytecpy
add test for bytecpy() with full line and branch
coverage

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:08:38 +02:00
Benjamin Cabé
14fb0f39d1 tests: unit: util: add test_arithmetic_shift_right
add test for arithmetic_shift_right() with full line and branch
coverage

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 16:08:38 +02:00
Fin Maaß
c23dba7e22 doc: migration guide: ethernet: phy: mention phy_configure_link change
mention change of phy_configure_link().

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
66329deb9c drivers: ethernet: phy: phy_mii: start autoneg in cfg_link
already (re-)start autonegotiation in phy_mii_cfg_link.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
97c9f0edad drivers: ethernet: phy_mii: check return values in init
check return values in init.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
38fb41a9cb drivers: ethernet: phy_mii: check condition explicitly
check condition explicitly.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
6838c57679 drivers: ethernet: phy_mii: add support for disabling auto-neg
Adds support for disabling auto-negotiation.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
89006fbe1b net: shell: iface: support deactivating auto-neg
support deactivating auto-neg in face shell.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
f24426b31f drivers: net: ethernet: phy: add support for disabling auto-negotiation
Add option in enum phy_link_speed to disable auto-negotiation.
This allows PHY drivers to support disabling auto-negotiation.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
847be49dbd drivers: ethernet: phy: add common functions for PHYs
This commit adds common functions for PHYs to the mii driver.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
62b5785d7a drivers: ethernet: mii: provide bit val
Provide bit value for control registers
to be able to use WRITE_BIT() macro.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Fin Maaß
b051c7e550 drivers: ethernet: phy: remove unused/wrong cfg_link
if we can't use cfg_link to (re-)configure the link,
we don't need it and shouldn't have it.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-17 16:08:22 +02:00
Jakub Michalski
c47cc3abda drivers: virtio: fix cleanup upon failure during virtqueues initialization
This commit fixes infinite loop reported in
https://github.com/zephyrproject-rtos/zephyr/issues/91242, not deallocating
array with virtqueues and not deactivating the virtqueues in case of
failure

Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
2025-06-17 16:08:06 +02:00
Davi Herculano
d5bb10bf98 samples: video: Set vertical flip in esp32s3_eye capture config
Add vertical flip to esp32s3_eye capture configuration file.

Signed-off-by: Davi Herculano <herculanodavi@gmail.com>
2025-06-17 16:07:54 +02:00
Davi Herculano
9d62132ef1 samples: video: Add vertical flip option to capture
Add KConfig option in video/capture sample to
vertically flip the image.

Signed-off-by: Davi Herculano <herculanodavi@gmail.com>
2025-06-17 16:07:54 +02:00
Venkatesh Odela
b052a086a4 ethernet: phy: dp83867: Add support for configurable internal RGMII delays
Add support for setting RGMII RX and TX internal delays via DT properties:
`ti,rx-internal-delay` and `ti,tx-internal-delay`.

Signed-off-by: Venkatesh Odela <venkatesh.odela@amd.com>
2025-06-17 16:07:42 +02:00
Keith Packard
87029f7422 drivers/flash: Fix #if condition for is_area_readable for mcux
is_area_readable is used for SOCS other than LPC55XXX chips, not just
chips other than LPC55S36. Change the condition which elides this code
to avoid a GCC 14.3 warning.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
fc24bd8449 tests/nrf: Use memcpy instead of strncpy to avoid gcc warnings
While strncpy will work here, this isn't testing strings, it's testing
byte arrays, so use memcpy

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
ec38e9ef64 wifi/esp32: Fix overflow in SSID copy
In the previous code, strnlen could have returned WIFI_SSID_MAX_LEN, and
the following statement ensuring NUL termination would have written one
past the end of the array.

Replace this with code that ensures a NUL termination within the bounds
of the array and then use strlen to compute the length.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
df1cd1b0b1 tests/stack_unwind: Avoid inlining and tail-calls
We want the stack trace to show the correct nesting of functions,
so we need to prevent the compiler from in-lining functions or
performing tail-call optimizations.

Add __noinline to prevent inlining. Add another printf in each
function to avoid tail calls.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
f50ee8c1d3 fs/ext2: Missing error check in ext2_inode_remove_blocks
Don't assume that get_level_offsets will succeed.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
eb351f05fe test/kernel: Initialize stack_sem in obj_validation test
GCC 14.3 is not happy when this variable is left uninitialized, although
we don't actually care about the contents, just the address.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
d44f8065da soc/esp32c6: Discard .note.GNU-stack sections while linking
These sections are simple stack behavior annotations and are not
needed in the final executable.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
27318b2771 samples/zbus: Increase dyn_channel stack sizes
Sparc needs more than 1k for these stacks.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
97f96afbd7 linker_script: Remove all SUBALIGN usage for iterable sections
SUBALIGN forces alignment to the specified value, even if the object
requires stricter alignment. This causes mis-aligned access when accessing
the resulting value.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
ff8b24b6bd cmake/modules: Make SUBALIGN parameter to zephyr_iterable_sections optional
Most uses of this macro should *not* include SUBALIGN as that can reduce
the alignment requirement for data and cause unaligned access faults in
the processor. Leave support for this in place in case there are
still uses for it.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
08bd120063 linker: Do not emit SUBALIGN for iterable sections
SUBALIGN forces alignment of input sections to the specified value, even
if they require stricter alignment.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
ce7bd57618 soc/sensry: Discard .note.GNU-stack sections while linking
These sections are simple stack behavior annotations and are not
needed in the final executable.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
246c8272cc soc/openisa: Discard .note.GNU-stack sections while linking
These sections are simple stack behavior annotations and are not
needed in the final executable.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
34a03fb436 posix: Use 'char' for posix_condattr bitfields
Ensure that posix_condattr is smaller than pthread_condattr by keeping it
under one byte.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Keith Packard
32452dfb05 samples/tflite-micro: Include <cstdint> before using uint8_t
inference_process.hpp depended on the C library implicitly including
stdint.h through some path, which is not defined behavior. Explicitly
include <cstdint> to ensure that uint8_t is defined.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-17 16:06:21 +02:00
Filip Kokosinski
15b73eda7d subsys/tracing: select backend name in Kconfig
This commit allows tracing backend name selection through Kconfig.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-06-17 16:05:59 +02:00
Xinyu Hong
95d945504d drivers: wifi: nxp: add channel load support
Add WIFI_CHANNEL_LOAD macro to support wifi channel load feature

Signed-off-by: Xinyu Hong <xinyu.hong@nxp.com>
2025-06-17 16:05:45 +02:00
Filip Kokosinski
ef20311522 subsys/tracing: add names to Kconfig choice symbols
This commit adds names to Kconfig choice sysmbols. This allows for their
selection from Kconfig, e.g.:

    choice TRACING_FORMAT_CHOICE
    	default TRACING_TEST if CONFIG_FOO
	default TRACING_CTF if CONFIG_BAR
    endchoice

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-06-17 16:05:29 +02:00
Tommi Kangas
941dcd31e7 shell: Make TX mutex timeout configurable
The 50 ms TX mutex timeouts introduced in commit b0a0feb cause
dropped messages when used with the shell log backend. This
commit makes time timeout configurable using the
CONFIG_SHELL_TX_TIMEOUT_MS Kconfig option and makes the
default timeout longer when shell log backend is enabled.

Link: #90215

Signed-off-by: Tommi Kangas <tommi.kangas@nordicsemi.no>
2025-06-17 16:05:20 +02:00
Rex Chen
cc5b1477ff drivers: wifi: nxp: support monitor mode tx frame
Add WIFI_HOST_TXRX_MGMT_FRAME macro to support tx frame
in monitor mode.

Signed-off-by: Rex Chen <rex.chen_1@nxp.com>
2025-06-17 16:04:54 +02:00
Emil Gydesen
6885a368d4 Bluetooth: Host: Add advertising state to bt_le_ext_adv_info
The bt_le_ext_adv_info struct has been extended to also
contain the advertising and periodic advertising states.

Additionally, the function verifies the input to avoid
NULL pointer access, and the addr field is more
properly documented.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-06-17 16:04:42 +02:00
Glenn Andrews
94084e5aba Lib: SMF: Add return code to signal event propagation
See Discussion https://github.com/zephyrproject-rtos/zephyr/discussions/83659
for information about the purpose of this change.

Modifies run actions of hierarchical state machines
to return a value indicating if the event was handled
by the run action or should be propagated up to the
parent run action. Flat state machines are not affected,
and their run action returns void.

smf_set_handled() has been removed and replaced by
this return value. smf_set_state() will not propagate
events regardless of the return value as the transition
is considered to have occurred.

Documentation, tests, samples, has been updated.
USB-C and hawkBit use SMF and have been updated to use
the new return codes.

Signed-off-by: Glenn Andrews <glenn.andrews.42@gmail.com>
2025-06-17 16:04:04 +02:00
Glenn Andrews
1bee2920f9 Lib: hawkBit: apply clang-format
Apply clang-format in preparation for code changes.

Signed-off-by: Glenn Andrews <glenn.andrews.42@gmail.com>
2025-06-17 16:04:04 +02:00
Glenn Andrews
d4a9cc12b9 Lib: USB-C: Apply clang-format
Apply clang-format to USB-C in preparation for code changes

No code is changed, only formatting.

Signed-off-by: Glenn Andrews <glenn.andrews.42@gmail.com>
2025-06-17 16:04:04 +02:00
James Roy
92b22be24c doc: Add a new migration guide entry
Bindings now use hyphens(-) instead of
underscores(_) as property separators.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-06-17 16:03:54 +02:00
James Roy
4240853a06 scripts: ci: Add CI bindings style checker
Implement a check in the CI pipeline to enforce
that property names in device tree bindings do
not contain underscores.

Signed-off-by: James Roy <rruuaanng@outlook.com>
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2025-06-17 16:03:54 +02:00
James Roy
9cf9416dec scripts: Add bindings style migration script
This script replaces all underscore(_)
separation in a binding with hyphens(-).

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-06-17 16:03:54 +02:00
Johann Fischer
3c2dffa601 scripts: trace_capture_usb: disable tracing on exit
Disable tracing on exit and do not discard data immediately after
enabling tracing. The length of the data depends on the timings of the
host and targets and may simply be an arbitrary length that does not fit
any trace format or frame.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-17 16:03:44 +02:00
Johann Fischer
1174308df8 tracing: port USB backend to the new USB device stack
Port USB backend to the new USB device stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-17 16:03:44 +02:00
Johann Fischer
d52f76f9e1 samples: tracing: remove USB backend configuration for testing format
Not all the hooks for k_events, k_lifo, k_fifo, k_msgq, and k_queue are
implemented in tracing_test.h and tracing_test.c and therefore the
testing format cannot be used with the new USB device stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-17 16:03:44 +02:00
Carles Cufi
5a13cdcf52 scripts: trace_usb_capture: Clean up on exit
When the user presses Ctrl+c to exit the infinite capturing loop, ensure
that the cleanup funciton is always executed.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-17 16:03:44 +02:00
Jun Lin
8ab712a235 drivers: i2c: npcx: prevent unexpected target address match ISR
This commit prevents the hardware from generating an unexpected
target slave address match ISR by the following change:
1. Enable the New Match Interrupt Enable bit (NMINTEN) only when
   necessary.
2. Explicitly clear all SMBnADDRx registers because they are not
   cleared when the I2C hardware is disabled. It will cause the
   asynchrinization between SMBnADDRx and registered_target_mask if the
   system jumps from the RO image to the RW image.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-06-17 08:20:39 +02:00
Youssef Zini
8bfb08fbda boards: add gpio, button and led support
Add gpio support for STM32MP257F-EV1 board.
Add the orange (&led0) LED to the device tree and enable GPIOJ.
Add the user button USER2 to the device tree and enable GPIOG.
This step allows building and debugging the blinky and button sample
applications.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
1a7bac5b19 dts: arm: st: stm32mp2_m33.dtsi: add GPIO nodes
Add GPIO A-K nodes to the device tree for STM32MP2 SoC.
Note that GPIOs are disabled by default in the STM32MP2 SoC.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
0972b23171 drivers: gpio: add mp2 gpio clock handling
Remove gpio clock management from the GPIO driver when running on the
cortex-m33 on the mp2 and gpio clocks are managed by the cortex-A, being
the resource manager, allowed by the Resource Isolation Framework (RIF).
Also add a specific binding for the mp2 gpio to make clock property
optional.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
9bc78cfee4 drivers: clock_control: add mp2 clock driver
Add the stm32mp2 clock driver to the clock_control subsystem. The driver
is a reduced version of the generic stm32 clock driver.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
7f23ce2967 dts: clock_control: add mp2 rcc binding
Introduce DeviceTree binding for the STM32MP2 RCC clock controller,
enabling support for STM32MP2-specific clock configuration in Zephyr.
Update Kconfig.stm32 to add a dependency on STM32MP2 configuration,
allowing the use of STM32 LL RCC features when targeting STM32MP2
devices.
Add header for STM32MP2 per peripheral clock definitions.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
0c583441f1 drivers: hwinfo_stm32.c: add support for stm32mp2
Add support for STM32MP2 series in the hwinfo driver.
The STM32MP2 series uses the HAL functions since it doesn't have a
ll_utils.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
38428c6f52 drivers: interrupt_controller: add stm32mp2 exti
Add the mp2 exti2 dts to the dtsi file.
Add mp2 exti hal and ll function calls with EXTI2 instance. We use the
EXTI2 instance because it contains the GPIO interrupts in the non-secure
context. (We are trying to build the blinky sample as a first milestone)

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
64ac64d2d6 drivers: interrupt_controller: change dt macro
Replace the use of `DT_NODELABEL(exti)` which depends on the node label
with the defined EXTI_NODE macro using the instance with the
`st_stm32_exti` compatible.
Since both macros point to the same node, this change doesn't affect
the code logic, but makes it independent of the node label, in
preparation for the addition of the STM32MP2 exti nodes.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
fb4f0f8d18 boards: st: add support for stm32mp257f_ev1 board
Introduce initial board support for the STM32MP257F-EV1. This includes:
- Board metadata (board.yml, stm32mp257f_ev1.yaml)
- Base software configuration (Kconfig.stm32mp257f_ev1)
- CMake build integration (board.cmake)
- Default configuration (stm32mp257f_ev1_stm32mp257fxx_m33_defconfig)
- Minimal device tree (stm32mp257f_ev1_stm32mp257fxx_m33.dts)
- Initial documentation and image for the stm32mp257f_ev1 board.
- OpenOCD configuration files for debugging support.

This enables the STM32MP257F-EV1 board to build and debug a hello world
sample.

Note that other necessary openocd configuration files are added to the
zephyr sdk directory and can be found in the stm-openocd repository[1].
[1]:https://github.com/STMicroelectronics/device-stm-openocd/tree/main

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
c7d8e03ccf soc: linker.ld: add linker script for stm32mp2x
Add a linker script for the stm32mp2x soc series. It includes the
standard arm cortex-m linker and adds standard zephyr relocation
sections.
Replace the rom_start section name with .isr_vectors in the linker
script. This is necessary for the zephyr firmware to be started by the
remote proc driver which expects the section containing the vector table
to be named .isr_vectors.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
e3953f10ad soc: stm32: add initial soc support for stm32mp2x
Add initial soc support for the stm32mp2x series, including
initial Kconfig entries and default configuration files.
This enables Zephyr to recognize and build for the stm32mp2x series,
taking the stm32mp257f_ev1 as a baseline.

Includes:
- Kconfig and defconfig files for SoC selection and defaults
- soc.h for hal headers
- CMakeLists.txt for build system integration
- soc.yml update to register the new SoC

System Clock is configured statically from DTS. So no initialization
hook or soc.c needed.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
898eaa9a3f dts: arm: st: stm32mp25*_m33.dtsi: add init dtsi
Add the initial device tree source include (dtsi) files for the
stm32mp25 series boards, covering non-secure configuration for zephyr on
the Cortex-M33 core.
These files provide the basic hardware description, including CPU
(Cortex-M33), memory, RCC clock controller and NVIC interrupt
controller.

Key features:
- Set flash and RAM addresses to DDR memory.
- Adjust RCC peripheral address for non-secure context.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Youssef Zini
4ea5fce0f9 west.yml: update modules hal stm32 for stm32mp2x
Update west.yml to add the STM32MP2x SoC support in the STM32 HAL.
This is done after the merge of the PRs:
https://github.com/zephyrproject-rtos/hal_stm32/pull/282
https://github.com/zephyrproject-rtos/hal_stm32/pull/286

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-06-17 08:20:33 +02:00
Emil Gydesen
2ab5882e0b Bluetooth: CAP: Add cap_unicast_group API
Adds a new abstract struct for unicast group that is
specific for CAP. The difference between this and the BAP
unicast group, is that the parameters are CAP streams and
thus ensuring that the streams in the group adhere to the
additional requirements that CAP has on top of BAP.

This also adds foreach functions for both CAP and BAP
to allow users to iterate on the streams in the
abstract groups.

Various samples, modules and tests have been updated
to use the CAP struct and API.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-06-17 08:20:25 +02:00
Benjamin Cabé
7a663fbf99 drivers: pcie: shell: add missing const qualifiers
Ensure string conversion tables end up in flash.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 07:24:52 +02:00
Benjamin Cabé
9b1e05b0ab drivers: sensor: tsl2540: fix channel validation logic in attr_set
Use && instead of & in channel validation logic to ensure channel is
either CHAN_IR or CHAN_LIGHT.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 07:24:41 +02:00
Benjamin Cabé
a00c901377 drivers: sensor: tdk: remove duplicate entries in ICM42X70_CONFIG_COMMON
Eliminate redundant entries for `accel_pwr_mode` and `apex`.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 07:24:29 +02:00
Maochen Wang
0f6aeca490 samples: net: wifi: nxp: add separate conf for IW610
Add one config file for IW610 chip, as it has different net related
settings and thread priority settings from other hosted MCU, due to
Wi-Fi chip capability difference.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-06-17 07:24:13 +02:00
Yicheng Li
dea8cd3fcf dma_mcux_lpc: Fix descriptor address conversion when used by DSP
The SDK FSL DMA driver converts descriptor addresses to DMA's address
space when linking descriptors. The Zephyr dma_mcux_lpc driver is
missing the inverse conversion when dereferencing the linked next
descriptor pointer.

This isn't a problem when this driver is used on the M33 core
of the MIMXRT595S because the M33 can access the address space
of the DMA (0x20000000+). But when the Fusion F1 DSP core uses
this driver, the DSP cannot access the DMA's address space
so the inverse conversion is needed.

Signed-off-by: Yicheng Li <yichengli@google.com>
2025-06-17 07:23:31 +02:00
Armando Visconti
a2d230bd88 drivers/sensor/: lis2dux12: support FIFO modes
Support three different FIFO contents which are selectable through
a new DT property, fifo-mode-sel, which may be set to one of the
following values:

    - 0x0 # 1x Accelerometer @12bit and 1x temperature @12bit samples
    - 0x1 # 1x Accelerometer @16bit sample
    - 0x2 # 2x Accelerometer @8bit samples (previous and current)

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-06-17 07:23:23 +02:00
Jiafei Pan
f9ca69d454 soc: imx943: clean clock dts binding header file
Removed some redundant definitions and clang-format this file.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:23:12 +02:00
Benjamin Cabé
1787e5cdab drivers: misc: fix condition in gpio_ra_interrupt_unset function
Updated the condition in the gpio_ra_interrupt_unset function to use a
logical OR instead of AND, since it should return if either port_num or
pin is not the same as the current callback.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 07:23:04 +02:00
Jiafei Pan
cfc652765b boards: imx943_evk: a55: update document about dcache
Update board document to remove dcache off command under U-Boot as
CONFIG_ARM64_BOOT_DISABLE_DCACHE has been enabled.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:22:51 +02:00
Jiafei Pan
dc68d1bb10 soc: imx943: a55: disable D-Cache when booting from el2
Enabled CONFIG_ARM64_BOOT_DISABLE_DCACHE to disable D-Cache when
booting from EL2.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:22:51 +02:00
Hao Luo
e05abfdcf4 drivers: mspi: ambiq: optimize ambiq mspi device pm
This commit optimizes the device pm for ambiq mspi driver
by adding pinctrl sleep/resume.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-17 07:22:44 +02:00
Hao Luo
373ab289ce drivers: spi: ambiq: optimize ambiq spi device pm
This commit optimizes the device pm for ambiq spi driver
by adding pinctrl sleep/resume.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-17 07:22:44 +02:00
Hao Luo
37134f5a4e drivers: i2c: ambiq: optimize ambiq i2c device pm
This commit optimizes the device pm for ambiq i2c driver
by adding pinctrl sleep/resume.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-17 07:22:44 +02:00
Hao Luo
fe632259c9 drivers: uart: ambiq: optimize ambiq uart runtime pm
This commit optimizes the runtime pm for ambiq uart driver
by adding pinctrl sleep/resume.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-17 07:22:44 +02:00
Hao Luo
69f2c7f273 boards: ambiq: apollo510_evb: add pinctrl sleep mode
This commit adds pinctrl sleep mode for apollo510_evb
to support device pm.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-17 07:22:44 +02:00
Hao Luo
a54197b2f8 soc: ambiq: workaround for issue #90777
This commit workarounds issue #90777

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-17 07:22:44 +02:00
Alexander Apostolu
2e7ec2bc29 drivers: sensor: adi: adxl372: Remove logically dead code
Remove logically dead if and else-if conditions as shown by the static
analysis, replacing with the else statement.

When data_opt is assigned to the MIN of fifo_wmark_cfg and fifo_full_cfg,
both those variables will be non-NULL as an earlier condition ensures the
function returns if either one of the variables is NULL before assigning
to data_opt.

Signed-off-by: Alexander Apostolu <apostolu240@gmail.com>
2025-06-17 07:22:34 +02:00
Jiafei Pan
132d79615c dts: nxp: imx95_a55: add GPIO device nodes
Added all GPIO device nodes in i.MX 95 Cortex-A Core SoC dts.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:21:32 +02:00
Jiafei Pan
a426ed7898 boards: imx8mn_evk: add JLink runner for A53 Core
Use JLink runner for flash and debug on A53 Core.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:21:21 +02:00
Jiafei Pan
55401d8956 boards: imx8mm_evk: add JLink runner for A53 Core
Use JLink runner for flash and debug on A53 Core.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:21:21 +02:00
Jiafei Pan
7b1266aba5 boards: imx8mp_evk: add JLink runner for A53 Core
Use JLink runner for flash and debug on A53 Core.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:21:21 +02:00
Jiafei Pan
84fce99b5e boards: imx91_evk: add JLink runner support
Use JLink runner to flash and debug on i.MX91 EVK.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:21:21 +02:00
Armando Visconti
44a67ea403 samples/sensor: Add sample to read RTIO stream using drdy
Add sample to read from up to 10 streaming devices, using the
sensor_stream() API and the RTIO framework:
    https://docs.zephyrproject.org/latest/services/rtio/index.html

The devices has to be aliased as streamN (0 <= N <= 9) in DT, and
will be instantiated using SENSOR_DT_STREAM_IODEV() macro.

Currently the sample gets/prints data on SENSOR_TRIG_DATA_READY
trigger basis for the following sensor channels:

        - SENSOR_CHAN_ACCEL_XYZ

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-06-17 07:21:04 +02:00
Armando Visconti
afe0abea42 sensor: lsm6dsv16x: add SENSOR_TRIG_DATA_READY trigger
Add SENSOR_TRIG_DATA_READY trigger support to RTIO streaming.
Currently it just handle XL drdy.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-06-17 07:21:04 +02:00
Armando Visconti
1dd1b35676 samples/sensor: stream_fifo: fix documentation
Add some info and sensortile_box_pro board description in README file.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-06-17 07:21:04 +02:00
Pete Johanson
7b0e431fc8 tests: drivers: memc: Set up APARD32690 properly.
Enable/disable devices as necessary to ensure memc test will test the
attached HyperRAM and no other memory nodes.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-06-17 07:20:22 +02:00
Benjamin Cabé
c4ed1c01eb drivers: sensor: tdk: fix double tap trigger handler
Ensure that the appropriate trigger is passed when a double tap is
detected.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 14:15:31 -04:00
Jason Yu
c387d9c73d modules: hal_nxp: mcux-sdk-ng: Fix LPC55S16 build error
Fix build error when CONFIG_MCUX_COMPONENT_driver.fro_calib is set.
Error message:

modules/hal/nxp/mcux/mcux-sdk-ng/cmake/extension/function.cmake:2084 (if)
  if given arguments:

    "IN_LIST" "NEED_WRAP_TOOLCHAINS"

The error is because, mcux sdk ng cmake functions `mcux_add_xxx` support
add content based on toolchains. CMake should set current toolchain in
CMake Variable `CONFIG_TOOLCHAIN` to use this feature.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-06-16 14:15:12 -04:00
Jason Yu
ac0bf59b5b modules: hal_nxp: mcux-sdk-ng: Fix RT595 F1 build error
In MCUX SDK NG, the `core_id` and `core_id_suffix_name` are
different concepts, generally the values are the same. But
there are exeptions, such as RT595 F1.

Zephyr's `CONFIG_MCUX_CORE_SUFFIX` is actually MCUX SDK's
`core_id_suffix_name`. SDK NG CMake needs `core_id`, but
current integration layer uses `CONFIG_MCUX_CORE_SUFFIX`
as `core_id`, so there is build error with RT595 F1.

Fix the code that convert `CONFIG_MCUX_CORE_SUFFIX` to `core_id`,
handle the special case.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-06-16 14:15:12 -04:00
Jason Yu
ede6186759 modules: hal_nxp: mcux: Add MCUX SDK NG glue layer readme
Add the readme to show the implementation.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-06-16 14:15:12 -04:00
Furkan Akkiz
f8871d52c8 boards: adi: max32662evkit: Add CAN support
This commit enables CAN0 for max32662evkit

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-06-16 14:13:59 -04:00
Ioan Dragomir
92a11405f7 drivers: can: Add CAN support for max32662
Adapt MAX32690 driver to use Wrap_MXC_CAN_Init to handle differences
in the MSDK API (see analogdevicesinc/msdk#1306) between the
MAX32690 and MAX32662.

can_driver_api.timing_min required phase_seg1 >= 3 and phase_seg2 >= 2
when configuring CAN bit timing. Both microcontrollers covered by this
driver (MAX32662, MAX32690) support values down to 1 for both of these
timing parameters.

Refer to the docs for registers CAN_BUSTIM1, CANn_BUSTIM1.

Add a can0 node to the MAX32662 dtsi.

Signed-off-by: Ioan Dragomir <ioan.dragomir@analog.com>
2025-06-16 14:13:59 -04:00
Anıl Kara
4eb7168a81 boards: adi: max32690evkit: Add CAN support
This commit enables CAN0 for max32690evkit

Signed-off-by: Anıl Kara <anil.kara@analog.com>
2025-06-16 14:13:59 -04:00
Anıl Kara
b38a1f4a89 dts: arm: adi: Add CAN peripheral to max32690
This commit defines CAN peripheral as a devicetree node.

Signed-off-by: Anıl Kara <anil.kara@analog.com>
2025-06-16 14:13:59 -04:00
Anıl Kara
7f3b002210 drivers: can: Add max32xxx CAN driver
This commit adds CAN driver for max32xxx.

Signed-off-by: Anıl Kara <anil.kara@analog.com>
2025-06-16 14:13:59 -04:00
TOKITA Hiroshi
831987d19a tests: drivers: display: controlling test execution with fixture
Currently, the `display_read_write` test execution can be suppressed
by `harness: display`, but since the display harness does not exist,
there is no way to run tests.
Using a fixture, it will be possible only to build if not specified,
and run tests if specified.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-16 11:11:33 -07:00
Benjamin Cabé
1387657107 net: dns: remove redundant check in mdns_unpack_query_header
Drop this redundant check that was likely meant to be checking that Z
field is zero but in the case of reception the RFC says it MUST be
ignored anyway.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 14:04:59 -04:00
Alberto Escolar Piedras
dc24583858 net: sockets_offload: Fix build error with NO_OPTIMIZATIONS
When CONFIG_NO_OPTIMIZATIONS the compiler will not inline
socket_offload_dns_is_enabled(), which means calls to
socket_offload* remain, and the linker will fail with

in function `zsock_getaddrinfo': undefined reference to
`socket_offload_getaddrinfo'
in function `zsock_freeaddrinfo': undefined reference to
`socket_offload_freeaddrinfo'

Instead of relaying on that function being inlined and the
if'ed code being removed, let's just use the preprocessor.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-16 14:04:40 -04:00
Benjamin Cabé
a3aa06521e drivers: haptics: drv2605: drop redundant include
haptics.h was being included twice.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 14:04:22 -04:00
Benjamin Cabé
0017c5bb33 drivers: haptics: handlers: propagate stop_output return value
Actually propagate the return value of haptics_stop_output.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 14:04:22 -04:00
Benjamin Cabé
005377b4c5 drivers: dac: adopt SHELL_HELP
Adopt SHELL_HELP macro for dac_shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 14:03:57 -04:00
Mathias Markussen
813fd26716 board: st: stm32u5g9j-dk2: Add HSPI external flash
Add external HSPI flash on STM32U5G9J-DK2
Use external loader to flash it with STM32CubeProgrammer

Signed-off-by: Mathias Markussen <mathias.markussen@st.com>
2025-06-16 14:03:42 -04:00
Mathias Markussen
c9ba87f47e board: st: stm32u5g9j-dk2: Add touchscreen driver
Use GT911 touchscreen driver on STM32U5G9J-DK2

Signed-off-by: Mathias Markussen <mathias.markussen@st.com>
2025-06-16 14:03:42 -04:00
Mathias Markussen
00733cebc3 dts: Add hspi to STM32U5 chips including this
The SOCs including this dts all have hspi (xspi comatible)
peripheral included.

Signed-off-by: Mathias Markussen <mathias.markussen@st.com>
2025-06-16 14:03:42 -04:00
Fabrice DJIATSA
746d60b0f8 tests: drivers: spi: remove useless files and testcases
- with the updates made to the spi_ll_stm32 driver,
we no longer need to configure the 16-bit frame/word size
in the DTS overlay file. The test_spi_word_size_16 testsuite
helps us verify the 16-bit frame mode supported on
the ST platform.

- remove testcases that use thoses files in testcase.yaml

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-16 14:03:05 -04:00
Fabrice DJIATSA
eccf541ea6 drivers: spi: stm32: dynamically update spi word/frame size
Update the source_data and dest_data sizes with the frame size
in bytes before performing the transfer.
With these changes, we can handle cases where the buffers switch
between 8-bit and 16-bit modes.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-16 14:03:05 -04:00
Fabrice DJIATSA
994efc0b92 drivers: spi: update error type to skip word_size testcases
Workaround to avoid getting the -EFAULT (14) error when running
the test_spi_word_size_x (x = 7, 9, 24) test cases:
Since these testcase configurations aren't supported, update
the error type to ENOTSUP to allow skipping the test cases using ztest.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-16 14:03:05 -04:00
Fabrice DJIATSA
cc4e2f526a tests: drivers: spi: spi_loopback: handle rx/tx buffers nocache memory
Place transfer buffers in non-cacheable memory when
CONFIG_NOCACHE_MEMORY=y. This change ensures that DMA transfer
buffers are allocated in non-cacheable memory on platforms where
CONFIG_NOCACHE_MEMORY is enabled. This avoids potential cache
coherence issues that are not handled by the SPI driver.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-16 14:03:05 -04:00
Fabrice DJIATSA
5daad8f7c1 tests: drivers: spi_loopback: add latency tolerance for some boards
Set a convenient latency for each platform, since each platform
reacts differently to the driver.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-16 14:03:05 -04:00
Fabrice DJIATSA
c5f5fc1fa8 tests: drivers: spi: spi_loopback: enable nucleo_c071rb to run test again
Due to RAM overflow by 3200 bytes, decrease size of SPI_LARGE_BUFFER.

signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-16 14:03:05 -04:00
Michael Hope
c37abf115d drivers: dma: fix the WCH DMA transfer width
The driver treats the `source_data_size` and `dest_data_size` as a
width in bits and converts 8 bits to 1, 16 bits to 2, and 32 bits to 3.

This should be a width in bytes with 1 byte mapping to 0, 2 bytes to
1, and 4 bytes to 3.

Note that this preserves the current behaviour of silently accepting
invalid transfer bit widths.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-16 14:01:54 -04:00
Michael Hope
dc57eda4ca boards: wch: add dma to the supported list so the build tests run
This adds `tests/drivers/dma/chan_blen_transfer` and
`tests/drivers/dma/loop_transfer` as build tests to any manual Twister
run.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-16 14:01:54 -04:00
Andrej Butok
f062012f84 boards: mimxrt1060_evk: set LinkServer as the default runner
Sets LinkServer as the default runner for the mimxrt1060-evk board,
as the board is configured for CMSIS-DAP by default.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-06-16 14:00:32 -04:00
Tien Nguyen
8507859371 tests: drivers: gpio: Add support for RZ/V2N-EVK
Add support for RZ/V2N-EVK

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
2025-06-16 14:00:22 -04:00
Tien Nguyen
5599bc2ecb drivers: gpio: Add support for RZ/V2N
Add support for RZ/V2N

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
2025-06-16 14:00:22 -04:00
Tien Nguyen
05289f40a7 drivers: pinctrl: Add support for RZ/V2N
Add support for RZ/V2N

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
2025-06-16 14:00:22 -04:00
Hieu Nguyen
7f0a895ea8 boards: renesas: Add minimal support for Renesas RZ/V2N-EVK
Add minimal support for Renesas RZ/V2N-EVK

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-16 14:00:22 -04:00
Hieu Nguyen
b431204a6d dts: arm: renesas: Add support for Renesas RZ/V2N
Add devicetree to support for Renesas RZ/V2N

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-16 14:00:22 -04:00
Hieu Nguyen
73c63f9ca6 soc: renesas: Add initial support for Renesas RZ/V2N
Add initial support for Renesas RZ/V2N

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-16 14:00:22 -04:00
Khaoula Bidani
8144a6638a dts: bindings: flash: add STM32U3 flash controller
Add the Device Tree binding for the STM32U3 flash controller.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-16 13:59:38 -04:00
Khaoula Bidani
70ebb0a6a3 drivers: flash: add stm32u3 devices
Introduce the stm32u3 serie to the the existing flash driver
It is based on the stm32l5 model.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-16 13:59:38 -04:00
Khaoula Bidani
a9aa341ed5 drivers: gpio: fix gpio warning
Implement conditional compilation to avoid the warning:
- Use LL_PWR_EnableVDDIO2() for STM32U3 series.
- Use LL_PWR_EnableVddIO2() for other series.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-16 13:59:38 -04:00
Khaoula Bidani
9b23a73184 dts: bindings: clock: add STM32U3 MSI
Add the Device Tree bindings for the
MSI clock of STM32U3 series.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-16 13:59:38 -04:00
Khaoula Bidani
6ac4b20e2b drivers: clock_control: Add STM32U3XX clock support
add clock support for STM32U3X SoC series.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-16 13:59:38 -04:00
Khaoula Bidani
5673dc162f include: zephyr: Add the stm32u3 clock control and the reset register
Add the stm32u3 clock control and the RCC bus reset register offset

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-16 13:59:38 -04:00
Khaoula Bidani
6e7b5bbdf1 boards: st: add nucleo_u385rg_q board support
add board support for nucleo_u385rg_q

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-16 13:59:38 -04:00
Khaoula Bidani
496517c032 dts: arm: st: add stm32u385 dtsi files
Provide support for the ST32U385 series

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-16 13:59:38 -04:00
Khaoula Bidani
85e6cc421e soc: st: stm32: Add series stm32u3
Add STM32U3 familly support

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-06-16 13:59:38 -04:00
Amneesh Singh
2f59ccfb63 samples: adc_dt: add overlay for am2434 r5f0_0 core
Add DT overlay for am243x_evm/am2434/r5f0_0 in one of the ADC samples

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-06-16 13:59:09 -04:00
Amneesh Singh
3a886d2f84 boards: ti: am243x_evm: add documentation
Add documentation for am243x_evm and while at it, add the openocd
configuration as well.

Co-authored-by: Mika Braunschweig <mika.braunschweig@siemens.com>
Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-06-16 13:59:09 -04:00
Amneesh Singh
807d81b5cb boards: arm: ti: k3: add am243x_evm
Add board support for am2434_evm board

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-06-16 13:59:09 -04:00
Amneesh Singh
274436c761 boards: reflect changes from am64x_m4.dtsi
Reflect changes from the new am64x_m4.dtsi file.

Affected boards:
- phyboard_electra
- sk_am64

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-06-16 13:59:09 -04:00
Amneesh Singh
c7a21c3da5 soc: ti: k3: add AM2434 support
Add SoC support and device trees for Texas Instruments AM2434 SoC. Both R5
and M4 cores are supported here.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-06-16 13:59:09 -04:00
Amneesh Singh
9814590eb3 drivers: pinctrl: make ti_k3 multi-instance
Some devices have multiple pinctrl regions; for instance, main pinctrl and
mcu pinctrl. Currently there can only be a single pinctrl instance picked
form a DT label. This patch makes the pinctrl driver initialise one
instance for each node with correct compatible string.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-06-16 13:59:09 -04:00
Benjamin Cabé
c2d52c7f4b drivers: ethernet: remove stray semicolon vnd,ethernet
Fix trivial typo

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 10:43:20 -04:00
Benjamin Cabé
bc03f23d50 drivers: dma: fix off-by-one error in silabs LDMA
Channel numbers are 0-based so a channel number equal to the number of
channels is invalid.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 10:43:00 -04:00
Alvis Sun
2027d97dac drivers: clock_control: add validation for SYS_CLOCK_HW_CYCLES_PER_SEC
Check whether the value of SYS_CLOCK_HW_CYCLES_PER_SEC is valid.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-06-16 14:13:55 +02:00
Alvis Sun
d789d13ec0 soc: nuvoton: npcx: update default SYS_CLOCK_HW_CYCLES_PER_SEC
Added support for deriving `SYS_CLOCK_HW_CYCLES_PER_SEC` from the
Device Tree by reading the `clock-frequency` property in the `itim` node.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-06-16 14:13:55 +02:00
Alvis Sun
35faf60c94 dts: timer: npcx: add clock-frequency property
Add clock-frequency property for SYS_CLOCK_HW_CYCLES_PER_SEC .

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-06-16 14:13:55 +02:00
Sylvio Alves
fd1987c185 west.yml: fix ble issue in hal_espressif
Fix wrong address in BT adapter file that causes bt_disable
to crash. Make sure interrupt handler pointer gets proper value.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-16 14:13:46 +02:00
Alexandre Rey
0c22a981e6 doc: fix links
Fix link to the issue templates.

Signed-off-by: Alexandre Rey <alx.rey@icloud.com>
2025-06-16 14:13:34 +02:00
Tomasz Bursztyka
3703027b42 i2c: Add target related commands to the shell module
For testing/debugging purposes, it will be possible then to register
or unregister an i2c target.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
Co-authored-by: Hans Binderup <habi@bang-olufsen.dk>
2025-06-16 14:13:13 +02:00
Tim Lin
a62f157118 drivers/espi: ite: Add it51xxx compatibility with it8xxx2 support retained
The driver originally supported only it8xxx2 series. This updates
introduces compatibility allow it to also support it51xxx series
with minimal changes.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-06-16 14:12:44 +02:00
Van Petrosyan
b12717bee1 sensor: lis2dh: add device runtime PM support
Registers driver with pm_device_driver_init(). Moved
chip init routine into separate function to be called
from PM_DEVICE_ACTION_TURN_ON. Added a delay after
power-up.

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-06-16 14:12:32 +02:00
Jacky Lee
47e43d552e drivers: serial: ns16550: Fix TX IRQ not triggered when FIFO is empty
When uart_ns16550_irq_tx_enable() is called and the TX FIFO is already
empty, no new interrupt is generated, causing data transmission to stall
in some cases. This patch introduces a workaround to simulate an ISR
callback if the FIFO is empty when enabling the TX IRQ.

Signed-off-by: Jacky Lee <jacky.lee@egistec.com>
2025-06-16 14:12:12 +02:00
Rene Colato
7fa815c929 regulator: Updated function call use flag that initalizes GPIO.
Fixes bug where GPIO_ACTIVE_LOW would not initialize properly.

Signed-off-by: Rene Colato <rcolato@boston-engineering.com>
2025-06-16 14:12:03 +02:00
Benjamin Cabé
179045e5a5 net: mdns_responder: fix wrong context when rescheduling IPv6 probe
Use ipv6 context, not ipv4

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 08:31:32 +02:00
Ruibin Chang
962d8dfd18 drivers/counter/it8xxx2: fix loss timer interrupt potential risk
1.correct timer register control flow
2.select timer interrupt rising edge trigger, instead of default
level trigger

Stress test: top timer fires interrupt every 300ms for 18 hours.
The result is that we don't lose any interrupts.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-06-16 08:31:17 +02:00
The Nguyen
b150b3df4b samples: counter: alarm: fix CI build fail
Exclude mimxrt1060_evk from build as this board does not support
this sample yet

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-06-16 08:30:06 +02:00
Piotr Krzyzanowski
c67db3fd36 tests: drivers: spi: spi_loopback: Add NULL spi_buf_set test
Add the test_spi_null_tx_rx_buf_set

Signed-off-by: Piotr Krzyzanowski <piotr.krzyzanowski@nordicsemi.no>
2025-06-16 08:29:56 +02:00
Benjamin Cabé
453d2367ef net: dhcpv6: fix typo in macro name
DHVP -> DHCP

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 08:29:47 +02:00
Benjamin Cabé
c7e7d977c2 input: input_utils: use proper sizeof
Would have not directly caused issues, but better to fix it :)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 04:27:44 +02:00
Benjamin Cabé
9652ac5d16 input: input_hid: add missing const qualifier
HID lookup table can live in Flash and save some RAM (quite a bit
actually, as it's quite large!).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 04:27:44 +02:00
Benjamin Cabé
f3c43cc393 drivers: hwinfo: esp32: fix reset cause handling for ESP_RST_PANIC
Added a missing break statement for the ESP_RST_PANIC case.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 04:27:33 +02:00
Anas Nashif
bb5a929c62 doc: contrib guidelines: modify rule about adding links
Clarify linking issues in PRs and Commit messages and address the issue
of ambiguity across multiple github repos.

Not allowing links in commit messages so that forks can be happy is not
great.

Forks on Github have no problem with linking, however,
disconnected forks seem to not link correctly, but then why does this
matter?

If someone is taking Zephyr and developing it as their own, they
can for sure do that, but why this should force the Zephyr project to
manage traceability differently and make it more difficult for
developers to add such information in the git metadata directly and not
relying on pull requests.

Most developers use git directly and rely less on pull request and
github UI when browsing changes in the code base.. We need to be able to
see by looking at git commits and git
history if a commit is associated with a bug, some PRs might fix
multiple issues, so the context is important and by looking at each
commit the trace can be established immesiately without going back to
github pull requests.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-16 04:27:25 +02:00
Benjamin Cabé
ea2990702f input: adopt SHELL_HELP
Adopt SHELL_HELP macro for input shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-14 12:37:41 -04:00
Chris Friedt
bced298f8b tests: drivers: optee: workaround for ENOMEM
The optee suite was failing in test_suspend() after a call to
k_aligned_alloc() which returns -ENOMEM. The alignment requirement is
4096 bytes, which seems reasonable, but what is odd about that is
that the alignment fails in spite of

CONFIG_SRAM_SIZE=145131134582784
and
CONFIG_HEAP_MEM_POOL_SIZE=270044

So there is plenty of memory available for this test and alignment
considerations should not be an issue.

Removing `CONFIG_DEBUG=y` solved the problem for me.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-14 12:37:26 -04:00
Chris Friedt
4cb9c80e6c samples: net: socketpair: ensure integration platform is on allow list
Ensure that qemu_x86 (the integration platform) is on the allow list
for `sample.net.sockets.socketpair.s32k148_evb`.

```
INFO: Error found: sample.net.sockets.socketpair.s32k148_evb on
qemu_x86/atom (Not in testsuite platform allow list but is one of the
integration platforms)
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-14 12:37:06 -04:00
Anas Nashif
e5edf45596 tests: c_lib: thrd: run test on 1 cpu
This test fails sporadically on SMP, so make it run only on one CPU.

Related to zephyrproject-rtos/zephyr#91620

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-14 12:36:48 -04:00
Szymon Janc
34e47f4040 tests: Bluetooth: Fix DFUM and MBTM in PTS ICS
Exporting tools is not yet fixed and those needs to be manually
adjusted.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-06-13 15:42:53 -07:00
Maochen Wang
1cb19a05d7 manifest: update IW610 TX power table
Update hal_nxp to use new IW610 M2 TX power limit table.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-06-13 15:42:24 -07:00
Benjamin Cabé
3b918cc9da drivers: sensor: adopt SHELL_HELP
Adopt SHELL_HELP macro for sensor shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 15:41:58 -07:00
Jérôme Pouiller
f6f6196cf0 drivers: wifi: siwx91x: Also update interface state on AP
It seems there is no functional impact, but it makes sense to also update
the state of the interface when AP is started/stopped.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-13 15:41:27 -07:00
Jérôme Pouiller
b0b197fd17 drivers: wifi: siwx91x: Fix SLAAC other configuration issues
The interface was properly set "dormant" on disconnect. However on startup,
it arrived in the system with "awake" status. Hence, some configuration
frames were sent before the interface was connected. Then, when the
interface was marked awake after the connection, the frames were not sent
again since the operational mode did not changed.

Therefore, Router Solicitations were not send, the Router Advertisements
were not received and the IPv6 address was not set.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-13 15:41:27 -07:00
Sylvio Alves
2742eb4dc7 driver: gpio: esp32: move config to iram
Make gpio configuration in IRAM area to speed up
access.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-13 15:40:42 -07:00
Sylvio Alves
213142db21 soc: espressif: riscv: disable local isr location
Disable support to local ISR declaration on Espressif SoCs.
Code relocation is not yet supported, causing build fail.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-13 15:40:09 -07:00
Benjamin Cabé
4ad921660f drivers: gpio: rpi_pico: fix typo in gpio_set_dir_masked_n
gpio_set_dir_masked_n on port 1 should manipulate gpio_hi_oe_togl, not
gpio_oe_togl

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 15:39:50 -07:00
Benjamin Cabé
d9dedff71a drivers: gpio: rpi_pico: route ISR to the right irq_ctrl
gpio_rpi_isr() always addressed io_bank0->proc0_irq_ctrl, so any
interrupts taken while code was running on core 1 were invisible and
left pending.
Use get_core_num() to pick proc1_irq_ctrl when the ISR executes on core
1, ensuring callbacks fire from both cores.
Also fix stray `iobank0_hw` symbol for the correct `io_bank0_hw`.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 15:39:50 -07:00
Benjamin Cabé
67b4055d57 drivers: gpio: rpi_pico: fix call to gpio_set_dir
Ensure gpio_set_dir() receives GPIO_IN or GPIO_OUT by mapping
INIT_{LOW,HIGH} flags explicitly, instead of passing raw bitmasks.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 15:39:50 -07:00
Benjamin Cabé
d1fc8c7f29 drivers: gpio: rpi_pico: add missing offsets
Fixed several occurrences of offset not being calculated in case
multiple GPIO ports are present.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 15:39:50 -07:00
Benjamin Cabé
b10d56e143 drivers: gpio: rpi_pico: fix bad RP2350 ifdef
Fix bad ifdef and typo in rp2350 gpio_configure code.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 15:39:50 -07:00
Benjamin Cabé
e10904eb3c drivers: pinctrl: eos_s3: fix logical OR in pinctrl_eos_s3_configure_pin
Fix incorrect use of bitwise OR operator when checking pull-up and
pull-down resistor configuration.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 15:37:30 -07:00
Maochen Wang
02b5edd7d6 drivers: wifi: nxp: return error for unsupported AP bandwidth
Starting SAP should return failure, if the bandwidth is not supported
by the Wi-Fi chip.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-06-13 15:37:01 -07:00
Szymon Janc
9b27a472f4 Bluetooth: Host: Fix SMP Pairing failed code on invalid Public Key
Core Specification 6.1 clarified exptected erro code in case peer
sending invalid Public Key. In case pairing is aborted during or
immediately after Public Key Exchange phase has completed (which is
the case here) expected reason code is set to "DHKey Check Failed".

This was affecting SM/CEN/KDU/BI-04-C and SM/PER/KDU/BI-04-C
qualification test cases.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-06-13 10:21:42 -07:00
Martin Gysel
812d33b7ab drivers: flash_stm32_qspi: fix conditional to assing jedec_id property
the jedec_id field is only available if CONFIG_FLASH_JESD216_API is set

Signed-off-by: Martin Gysel <me@bearsh.org>
2025-06-13 10:21:00 -07:00
Aksel Skauge Mellbye
651ddd69af drivers: adc: silabs: Don't fail to init if clock is on
It is not an error if the clock source is already enabled. This
may happen if a bootloader has used the peripheral and not
de-initialized it before booting the application.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-13 10:18:26 -07:00
Benjamin Cabé
cd78920785 drivers: pwm: adopt SHELL_HELP
Adopt SHELL_HELP macro for pwm_shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 10:17:55 -07:00
Aksel Skauge Mellbye
5878070178 drivers: spi: silabs: Don't fail to init if clock is on
It is not an error if the clock source is already enabled. This
may happen if a bootloader has used the peripheral and not
de-initialized it before booting the application.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-13 10:17:39 -07:00
Benjamin Cabé
b35ba2d40e drivers: video: adopt SHELL_HELP
Adopt SHELL_HELP macro for video_shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 10:17:08 -07:00
Aksel Skauge Mellbye
dadd657d89 drivers: serial: silabs: Don't fail to init if clock is on
It is not an error if the clock source for the UART is already
enabled. This may happen if a bootloader has used the UART and
not de-initialized it before booting the application.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-13 10:15:36 -07:00
Aksel Skauge Mellbye
b3db3a3bda soc: silabs: s2: Only configure SMU and SAU once on boot
If a bootloader is used, it will configure the SMU and SAU.
The application cannot also configure it, since it can't know
what alias (S vs NS) to access the CMU through. Only connect
the interrupt to the application's vector table if a bootloader
is present.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-13 10:15:03 -07:00
Benjamin Cabé
d7c0244487 drivers: comparator: adopt SHELL_HELP
Adopt SHELL_HELP macro for comparator_shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 10:14:24 -07:00
Marcin Szymczyk
ab750eab5f cmake: compiler: gcc: riscv: remove spurious Zmmul
Zmmul is a subset of M extension.
No need to enable Zmmul redundantly if M is already present.

Reference:
449cd0c79a/src/m.tex (L173)
https://github.com/riscv/riscv-isa-manual/issues/869

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2025-06-13 10:13:37 -07:00
Fin Maaß
c481fedc5b drivers: ethernet: phy: only use one worker
only use one worker for monitoring and
autoneg.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-13 10:12:46 -07:00
Fin Maaß
b0048e34cd drivers: ethernet: phy: use kernel timepoint api
use kernel timepoint api.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-13 10:12:46 -07:00
Benjamin Cabé
5aacf59f6a lvgl: adopt SHELL_HELP
Adopt SHELL_HELP macro for lvgl_shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 10:11:56 -07:00
Benjamin Cabé
5e287bb73f net: coap: adopt SHELL_HELP
Adopt SHELL_HELP macro for coap_server_shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 10:11:29 -07:00
Mathieu CHOPLAIN
72e6955f30 boards: stm32: stm32n6570_dk: fix DTS errors for Ethernet
The DTS for this board contained a few mistakes:
* The PHY address was incorrect
	* This did not impair functionality because the RTL8211F
	  treats address 0 as "broadcast" and accepts commands
	  sent to it by default
* An incorrect PHY driver was used
	* The generic "phy_mii" driver is not the most appropriate
	  for this PHY - use the HW-specific RTL8211F driver instead
	* Also remove the PHY IRQ pin configuration from Ethernet
	  pinctrl to allow RTL8211F driver to receive IRQ via GPIO
	  instead
* The RGMII GTX CLK pinctrl must be configured at "medium-speed"
	* This is a temporary solution. The proper solution would use
	  very-high-speed combined with a GPIO delay, but delays are
	  not supported yet in Zephyr.

Signed-off-by: Mathieu CHOPLAIN <mathieu.choplain@st.com>
2025-06-13 10:11:03 -07:00
Laurentiu Mihalcea
d621dbde1a modules: hal_nxp: migrate dma_nxp_edma driver to SDK-NG
Migrate the dma_nxp_edma driver to SDK-NG. This means:
	1) Adding the CMAKE logic required for compiling the module

	2) Updating the HAL_NXP manifest to pull in the patches which
	handle the migration on the HAL side

	3) Removing CMAKE logic from old mcux-sdk so that they are no
	longer included in the build

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-06-13 10:09:41 -07:00
S Mohamed Fiaz
aaf21a4c9e soc: silabs: siwx91x: Add configurable power profile support via DeviceTree
This commit adds support for configuring the power/performance
profile for the siwx91x device using a generic
'power-profile' property in DeviceTree.
The property is available for NWP nodes,
allowing flexible selection of power management
profiles per application or board via overlay.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-06-13 10:08:38 -07:00
S Mohamed Fiaz
dd37752142 west.yml: Update hal_silabs revision
This commit updates the hal_silabs revision

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-06-13 10:08:38 -07:00
S Mohamed Fiaz
f61b5bd705 driver: gpio: siwx91x: Add device runtime support for gpio driver
This commit enables the device runtime driver support
for the siwx91x device.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-06-13 10:08:38 -07:00
S Mohamed Fiaz
132247e2cd soc: silabs: siwx91x: Add siwx91x Power Manager driver
This commit enables the Power Manager driver
support for the siwx91x device.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-06-13 10:08:38 -07:00
Matthias Alleman
c891ace488 samples: drivers: charger: fix typo in sample Kconfig
The sample was not able to build because of a typo in
Kconfig when enabling CONFIG_CHARGER_DISCHARGE_CURRENT_NOTIFICATIONS

Signed-off-by: Matthias Alleman <matthias.alleman@basalte.be>
2025-06-13 10:42:40 -04:00
Benjamin Cabé
5f9d4385f3 pm: adopt SHELL_HELP
Adopt SHELL_HELP macro for pm_shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 10:42:16 -04:00
Benjamin Cabé
595645b4fe settings: adopt SHELL_HELP
Adopt SHELL_HELP macro for settings_shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 10:41:42 -04:00
Adib Taraben
9b8be4971e drivers: ethernet: nxp: timestamping to all potential packets.
add timestamping on Tx to packets marked for timestamping
add timestamping on Rx to all packets for later use
fix race condidition on adding timestamp when sending delay_req

Signed-off-by: Adib Taraben <theadib@gmail.com>
2025-06-13 10:40:49 -04:00
Sreeram Tatapudi
feb9d48bc0 MAINTAINERS.yml: Update contributor list
- Updating the contributors for the Infineon Platforms

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-06-13 10:39:43 -04:00
Vinayak Kariappa Chettimada
d011dd11da Bluetooth: Controller: nRF53x: Fix up ISO Rx Buffer size
Fix up the bus fault by not violating the MAXPACKETSIZE
value range of NRF_CCM h/w peripheral.

Fix up relates to commit 920117922b ("Bluetooth:
Controller: nRF53x: Fix NRF_CCM MAXPACKETSIZE value").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-06-13 10:39:09 -04:00
Jason Yu
e420d446f7 drivers: spi: mcux_flexio: Fix flexio SPI loop delay issue
The function FLEXIO_SPI_MasterTransferNonBlocking has a bug when
works in CS continuous mode. In this mode, both RX and TX
interrupts are enabled, they share the same IRQ line.

In the ISR, the RX event and TX event are not handled well,
so a short delay in ISR is needed.

The function FLEXIO_SPI_MasterTransferNonBlocking issue is fixed,
the delay in ISR can be removed.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-06-13 10:38:32 -04:00
Nirav Agrawal
ffe8daa767 drivers: bluetooth: add BT-CAL data load for NXP IW612/IW416 SoC
- Add support for default Annex-55 Bluetooth calibration data load
 for both IW612 and IW416 SoC.
- Add support for default Annex-100 Bluetooth calibration data load
 for both IW612 and IW416 SoC.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-06-13 10:36:28 -04:00
Vinayak Kariappa Chettimada
f1931bb813 samples: Bluetooth: bap_broadcast_sink: Fix logging invalid recv count
Fix logging of invalid recv count by incrementing them
before logging them.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-06-13 10:35:20 -04:00
Vinayak Kariappa Chettimada
01c9c6716a Bluetooth: Controller: Fix incorrect elapsed events value
Fix incorrect elapsed events value when LLL event prepare_cb
was invoked but was aborted before anchor point sync. This
caused premature supervision timeouts under applications
configured with CONFIG_BT_CTLR_EVENT_OVERHEAD_RESERVE_MAX=n
and CONFIG_BT_CTLR_PERIPHERAL_RESERVE_MAX=n.

Fixes commit 247037bd3e ("Bluetooth: Controller: Fix
incorrect elapsed events value").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-06-13 10:34:31 -04:00
Marco Widmer
09691484eb Bluetooth: Controller: Deinit ticker
ticker_is_initialized() should only return true when the ticker is
running (triggered regularly). Users like nrf_flash_sync_is_required()
depend on this behavior.

When the bluetooth controller driver is closed, ll_deinit() calls
lll_deinit(), which stops the ticker from being triggered. Also
deinitialize the ticker to ensure that ticker_is_initialized() returns
false.

Signed-off-by: Marco Widmer <marco.widmer@bytesatwork.ch>
2025-06-13 10:33:01 -04:00
Sebastian Głąb
2b4f64522e modules: hal_nordic: nrfx: Add mising UARTE23/24 Kconfigs
Add UARTE23 and UARTE24 missing Kconfig options and their
translation to NRFX configuration macros.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-06-13 10:31:17 -04:00
Sebastian Głąb
c0a28ab561 drivers: spi: Support spim23 and spim24 instances
Extend SPI driver with possibility to use
- spim23, spim24,
- spis23, spis24.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-06-13 10:31:17 -04:00
Maureen Helm
29ca4bdfd2 scripts: ci: check_compliance: Ignore additional mcuboot Kconfigs
Adds BOOT_IMAGE_EXECUTABLE_RAM_START and BOOT_IMAGE_EXECUTABLE_RAM_SIZE
to the list of mcuboot symbols ignored by the compliance checking
script.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-06-13 10:29:20 -04:00
Fabrice DJIATSA
8912f070bb tests: drivers: i2c: i2c_api: add a scenario for ci building
add scenario in build-only operation to check for CI failures
when interrupt is disabled for the STM32 i2c driver.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-13 14:29:39 +02:00
Fabrice DJIATSA
ad1c215bc2 tests: drivers: i2c: i2c_api: add board overlays
add arduino_i2c node in overlay files to be enable building the i2c_api
test on multiple stm32 boards,compatible for both i2c V1 and V2
driver.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-13 14:29:39 +02:00
Johann Fischer
0e127e6b10 usb: device_next: add the missing const qualifier and save some RAM
In the USBD_DESC_STRING_DEFINE macro defenition the const qualifier is
missing. Also, do not reserve room for the UTF16LE conversion, as this
is done on the fly in the stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-13 14:29:30 +02:00
sudarsan N
357434e908 drivers: usb_c: fusb307: Check return value gpio_add_callback()
The result of gpio_add_callback() was not checked, which may
lead to silent failure in alert interrupt setup.

CID: 525074

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-13 14:29:23 +02:00
Mathieu Choplain
1793934e61 soc: st: stm32n6: invoke signing tool in silent mode
The STM32 signing tool (STM32_SigningTool_CLI) is invoked as a post-build
command to generate a signed Zephyr binary, which is required to run from
flash on N6 series. If the file specified as output already exists, the
tool will by default prompt to confirm it should be overwritten. However,
when invoked from the build system rather than a terminal, this prompt
will break the build (freeze during the "Linking zephyr.elf" step). This
can be seen by building the same application twice in a row, as the second
build will not be different enough to make the build artifacts be deleted
and thus the (old) signed image will be seen by the tool.

Invoke the tool in silent mode such that user is never prompted. This fixes
build failures while still working as intended (if present, the existing
signed image will get overwritten properly).

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-13 14:29:18 +02:00
Daniel Schultz
e1db87e515 driver: serial: uart_shell: Add read command
This command waits for a given time (in seconds) and will continuously
poll from the UART device and print on the Shell console. This command
can be used to also test the RX line.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2025-06-13 14:29:09 +02:00
Shrek Wang
46ba523ba8 net: tcp: Align TCP seqence validation with Spec
According to RFC 793, the seqnum test includes 4 cases when STATE >
TCP_SYN_SENT:

      Seg-len Recv-win    Test
      ------- --------    ---------------------------------------
        0       0         SEG.SEQ = RCV.NXT
        0      >0         RCV.NXT =< SEG.SEQ < RCV.NXT+RCV.WND
       >0       0         not acceptable
       >0      >0         RCV.NXT =< SEG.SEQ < RCV.NXT+RCV.WND
                       or RCV.NXT =< SEG.SEQ+SEG.LEN-1 <RCV.NXT+RCV.WND

After the seq validation, the 'send duplicated ACK' code in FIN_WAIT1/
2/CLOSING/TIMEWAIT state processing is duplicated, so remove them.

Added TEST_CLIENT_SEQ_VALIDATION ztest case in tests/net/tcp.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-06-13 14:28:50 +02:00
Matthias Hauser
f8b70ee179 boards: we: correct CTS pin number of Ophelia-IV board
boards: we: correct CTS pin number of Ophelia-IV board
Signed-off-by: Matthias Hauser <matthias.hauser@we-online.de>
2025-06-13 11:13:50 +02:00
Wajdi ELMuhtadi
ea6eade52b drivers: sensor: wsen_itds_2533020201601: fix unhandled returned values
The returned values from function calls should
be ignored since these function calls are dummy reads.
fixes #90480

Signed-off-by: Wajdi ELMuhtadi <wajdi.elmuhtadi@we-online.com>
2025-06-13 11:13:25 +02:00
Johann Fischer
569f4d6d18 usb: device_next: fix the null pointer dereference on FS devices
With the commit fe3c001eeb ("usb: device_next: disable high-speed USB
device descriptor if not used") there is no high-speed device descriptor
by default.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-13 11:13:14 +02:00
Muzaffar Ahmed
bec34c8362 doc: wifi: siwx91x: Add Wi-Fi features documentation
Added Wi-Fi specific documentation and linked it to the SiWx917 pages.

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-06-13 11:13:05 +02:00
Benjamin Cabé
4cac6583f7 soc: sensry: fix irq enable/disable
SET/CLR registers are write-only so trying to
read/modify/write is inefficient & illegal

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 11:12:55 +02:00
Benjamin Cabé
a933fb7bcc soc: sensry: remove unnecessary parenthesis from macro
removed redundant parentheses

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-13 11:12:55 +02:00
Bjarki Arge Andreasen
b41feb9abc drivers: serial: nrfx_uarte: assert clock control enabled
clock control is required for "fast instances" so assert clock
is enabled alongside PM DEVICE RUNTIME. Update UART tests to
reflect this requirenment.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-13 11:12:43 +02:00
Bjarki Arge Andreasen
020e99c147 drivers: serial: nrfx: remove deprecated config
The UART_NRFX_UARTE_USE_CLOCK_CONTROL is no longer used and
incorrectly selects CLOCK_CONTROL if UARTE120 exists. Remove
it.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-13 11:12:43 +02:00
Bjarki Arge Andreasen
8a27773247 drivers: clock_control: nrf2: split configs per driver
Currently the config CLOCK_CONTROL_NRF2 is used as a GLOB
style config which includes all "NRF2" drivers and related
configs.

With NRF2, clocks are treated as individidual devices
with individual device drivers. This commit split the
CLOCK_CONTROL_NRF2 config into device specific configs
and ifdefs. With this, drivers are selected individually
based on devicetree state as is common for most devices
drivers, and dependencies like NRFS and specific NRFS
services are selected by the specific driver which nees it.

Checks for CLOCK_CONTROL_NRF2 are updated to check for
existance of the clocks instead.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-13 11:12:43 +02:00
Bjarki Arge Andreasen
979a565289 drivers: clock_control: nrf2: align with hw binding names
Currently there is a mismatch between the naming of the hardware and
the drivers targetting the hardware. nrf2_ is used instead of
the actual bindings names, like nrf2_audiopll instead of
nrfs_audiopll. This makes it hard to map drivers to the hardware
they are targetting.

There is historical reason for some of this, namely the same binding
name was used for different hardware, which is why nrf2_ was used
on newer platforms. This is no longer the case though, so drivers
and configs can be named according to the hardware without conflict.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-13 11:12:43 +02:00
Bjarki Arge Andreasen
73773abb4a clock_control: nrf: fix nrf_clock_control_get_startup_time desc
Fix the description of nrf_clock_control_get_startup_time which was
missing documentation of the spec param and had a spelling mistake
in it.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-13 11:12:43 +02:00
Fabio Baltieri
f19e7fdaf9 github: hello_world_multiplatform: switch to python 3.12
Switch the workflow to setup python 3.12, not sure why this was left
out.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-13 11:12:32 +02:00
Aksel Skauge Mellbye
24d171db43 snippets: silabs-pti: Add snippet to enable Packet Trace Interface
Add snippet that can be used to enable packet trace output from
Silicon Labs Series 2 devices.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-13 11:12:20 +02:00
Aksel Skauge Mellbye
1c870f47b6 boards: silabs: Add PTI pinctrl configuration
Configure Packet Trace Interface pinout on Series 2 boards.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-13 11:12:20 +02:00
Aksel Skauge Mellbye
856341e175 drivers: debug: silabs_pti: Add driver for Packet Trace Interface
The Packet Trace Interface is a debug interface that emits TX and RX packet
data over a serial connection in real time.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-13 11:12:20 +02:00
Aksel Skauge Mellbye
a688b9112a dts: bindings: debug: Add Silicon Labs Packet Trace Interface
Add bindings and DTS nodes for the Packet Trace Interface of the radio.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-13 11:12:20 +02:00
Aksel Skauge Mellbye
b66c720ed6 drivers: debug: Add debug driver class
Add a new driver class for drivers related to debugging, such as
trace hardware, performance counters etc.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-13 11:12:20 +02:00
Jamie McCrae
47abade244 doc: hardware: porting: board_porting: Update example
Updates an example with newer settings

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-13 10:10:48 +02:00
Michał Stasiak
f9be8753f5 tests: boards: nrf: i2c_slave: allow more instances
Allow more TWIS instances to be tested.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-06-13 10:10:38 +02:00
sudarsan N
cda6858d99 drivers: video: fix null deref in video_get_csi_link_freq()
Add null and bounds checks before accessing int_menu[ctrl.val].

CID: 525179
Fixes: #91244

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-13 10:10:13 +02:00
Lyle Zhu
672d367642 Bluetooth: Remove useless sys_cpu_to_le16 for uint8_t type
The target variable is a `uint8_t`. It is not reasonable to pass a
value with `uint16_t` in little-endian format.

Remove `sys_cpu_to_le16`, and pass the value directly.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-06-13 10:10:04 +02:00
Khanh Nguyen
ea7fb71a4b samples: boards: renesas: add Renesas ELC samples
Add a new sample demonstrating the use of the Renesas ELC

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-13 10:09:35 +02:00
Khanh Nguyen
c6de306949 drivers: pwm: Update Renesas RA PWM driver to integrate Renesas ELC
Update the Renesas RA PWM driver to integration
with the Renesas Event Link Controller.

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-06-13 10:09:35 +02:00
Khanh Nguyen
e0c79214e7 tests: boards: renesas: elc: add ztests for Renesas ELC driver
Add a new test suite for the Renesas ELC driver.

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-13 10:09:35 +02:00
Khanh Nguyen
83fe349ad5 dts: arm: renesas: ra: add ELC node and enums for RA SoCs
Add ELC nodes to RA SoC DTS files and provide
device-specific ELC signal enums for Devicetree bindings

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-06-13 10:09:35 +02:00
Khanh Nguyen
ed757ca290 drivers: misc: add Renesas RA ELC driver
Add support for the Renesas RA Event Link Controller, including
driver sources, Kconfig, and Devicetree bindings.

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-13 10:09:35 +02:00
Khanh Nguyen
4cb73f8209 include: drivers: misc: Add header file for Renesas ELC driver APIs
Add header file to support Renesas ELC subsystem driver APIs

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-06-13 10:09:35 +02:00
Fin Maaß
242d348fca drivers: ethernet: stm32: stop hal before config
make sure the hal is stopped, before
configuring the link. The phy can change the
speed without notifying a link down in between.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-13 07:39:42 +02:00
Yuval Peress
c8415cd76b i2c: npcx: Verify msg is not null
When using target mode, we've found that some times the msg field can
be null through some of the code paths of the interrupt event handler.

Signed-off-by: Yuval Peress <peress@google.com>
2025-06-13 07:37:14 +02:00
Josuah Demangeon
a3728d71e9 drivers: video: common: avoid dead code in functions with retry
Avoid k_sleep() never being called when video_write_reg_retry() and
video_read_reg_retry() have a number of retry set to zero (default).
The default number of retries being controlled by
CONFIG_VIDEO_I2C_RETRY_NUM.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-13 07:36:37 +02:00
Vinayak Kariappa Chettimada
c8fd14ecab Bluetooth: Controller: No ISR_DIRECT_PM and no reschedule for ZLI
When using Zero Latency IRQs do not invoke ISR_DIRECT_PM and
do not return to reschedule in the kernel.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-06-13 07:36:27 +02:00
Adam Kondraciuk
d2c3923106 modules: hal_nordic: nrfx: Use owned-channels property for DPPIC
The `owned-channels` property specifies which channels are assigned to
a given target. Additionally, the `source-channels` or `sink-channels`
property defines channels that can be used to forward an event outside
the DPPI domain, otherwise they can only be used within it.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-13 07:36:19 +02:00
Adam Kondraciuk
8cc7c2992a dts: nordic: Add channels property for local DPPI
Add number of channels implemented by the local DPPIC instances.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-13 07:36:19 +02:00
Daniel DeGrasse
05980f2738 manifest: update hal_nxp with fix for RW61x wifi compilation
Update the NXP HAL revision to include a fix for the RW61x wifi
compilation

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-06-12 16:49:59 -07:00
Kevin Shaju
49091ff10b boards: shields: Add shield for NXP ADTJA1101 Ethernet Adapter
Add a shield for NXP ADTJA1101 Ethernet Adapter. This shield can
be used with the s32k148_evb.

Signed-off-by: Kevin Shaju <kevin.shaju@accenture.com>
2025-06-12 15:04:32 -07:00
Kevin Shaju
7e56d134c2 drivers: net: phy: Add tja11xx driver
Adds the c22 tja11xx driver.

Signed-off-by: Kevin Shaju <kevin.shaju@accenture.com>
2025-06-12 15:04:32 -07:00
Marcin Wierzbicki
67edf2292a boards: nxp: add support for S32K148 evaluation board
Support for NXP S32K148 evaluation board (s32k148_evb).

Adapt samples: adc_dt, adc_sequence.
Adapt tests: adc_api, gpio_basic_api, gpio_hogs.

Signed-off-by: Marcin Wierzbicki <marcin.wierzbicki@accenture.com>
2025-06-12 15:04:32 -07:00
Fabrice DJIATSA
26a43ca88e drivers: serial: stm32: prevent race condition
The async_user_callback could be triggered from
both the DMA transfer complete interrupt and
a k_work queue timeout. Since the timeout runs
outside of an ISR context, it could be interrupted
by the DMA ISR. This might leads to a race condition
where both paths access and modify shared
DMA buffer state (offset and length) simultaneously,
causing data corruption or out-of-sequence processing.

Introduces proper synchronization to prevent concurrent
access to shared DMA buffer variables,
ensuring consistent and reliable data handling.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-12 09:41:45 -07:00
Chaitanya Tata
21daac55ed doc: wifi: Add certificate generation instructions
Add clear, step-by-step guide for generating test certificates using
FreeRADIUS scripts, including file renaming and usage notes.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-06-12 09:41:10 -07:00
Andrej Butok
0ec2f5ad6f dts: nxp: rt1024: fix jedec-id for on-chip flash
Fixes the JEDEC-ID value of the W25Q32JVWJ on-chip flash of RT1024.
It was incorrectly set to the value for the different IS25WP064 chip.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-06-12 09:40:31 -07:00
Jukka Rissanen
d394b74a41 net: shell: dns: Add list command to show service records
Add "net dns list" command that will show DNS SD records
defined in the system.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-12 09:39:49 -07:00
Jukka Rissanen
ff805ae376 net: dns-sd: Add internal record validator function
Allow network shell DNS module to verify that the DNS SD
record is a valid one. Currently this is not exposed to
applications.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-12 09:39:49 -07:00
Matthias Alleman
0ce57ab68e modules: lvgl: fix of too few arguments of cpu_load_get
Fixes building an lvgl sample with CONFIG_CPU_LOAD enabled.
cpu_load_get function requires 1 argument.

Signed-off-by: Matthias Alleman <matthias.alleman@basalte.be>
2025-06-12 09:39:27 -07:00
Andrej Butok
1c780fb4dd tests: littlefs: add mimxrt1020/4-evk support
Adds support for mimxrt1020-evk and mimxrt1024-evk boards
to the littlefs test.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-06-12 09:38:33 -07:00
Robert Lubos
86244a9c54 net: stats: Make byte counters 64-bit
In high throughput tests it's fairly easy to overflow the current 32-bit
byte counters in net statistics (it's just over 4 GB of data).
Therefore, make the byte counters 64-bit to prevent overflows.
Rearrange some fields to avoid padding.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-12 09:36:38 -07:00
Robert Lubos
b877d2c1fe net: stats: Use correct format specifiers when printing stats
net_stats_t type is an unsigned type, therefore %u should be used
instead of %d when printing values of this type, otherwise negative
values will be printer if INT32_MAX is exceeded.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-12 09:36:38 -07:00
Scott Worley
ef02567cc1 dts: arm: microchip: Organize MEC parts into a subfolder
Microchip is adding more non-MEC devices to Zephyr such as
SAM and PIC32. Each device family will have its own subfolder.
We moved the existing MEC DTSI files into a new mec subfolder.
We also updated the existing MEC boards include paths.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-06-12 09:35:29 -07:00
Arnaud Pouliquen
444031bda3 west.yml: Update libmetal and open-amp for v2025.04.0 release
Update to the last release of open-amp and libmetal libraries

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-06-12 09:34:50 -07:00
Cristian Bulacu
8e15d276ea doc: frdm_mcxw72: update documentation
Update documentation for dynamic NBU.
Add OpenThread application building examples.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-06-12 09:34:16 -07:00
Cristian Bulacu
d29ca4bf6c samples: echo_client echo_server: update tests
Added frdm_mcxw72 as allowed platform

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-06-12 09:34:16 -07:00
Cristian Bulacu
b3cc778c87 drivers: ieee802154: update mcxw ieee802154 driver
Updated driver based on changes done in SDK 25.06.00-pvw2.
Update hal_nxp to include BLE LL and IEEE 802.15.4 PHY NBU
combo firmware for MCXW72 boards.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-06-12 09:34:16 -07:00
Cristian Bulacu
5cf2d4585e drivers: ieee802154: Fix resolution in mcxw_get_time function.
Updated mcxw_get_time function to output its result in nanosecond
resolution and updated code accordingly.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-06-12 09:34:16 -07:00
Travis Lam
10f35d741f drivers: cache: nrf: Resolve NRF_CACHE_HAS_LINEADDR issue
Add new function called _cache_all_check that cache all if
NRF_CACHE has no LINEADDR.

Signed-off-by: Travis Lam <travis.lam@nordicsemi.no>
2025-06-12 09:33:48 -07:00
Ali Hozhabri
2c811b52b8 west.yml: Update west to point to the recent changes for hal_stm32
Update west.yml to point to the recent changes for hal_stm32.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-06-12 09:32:41 -07:00
Ali Hozhabri
529a8dd147 soc: stm32: stm32wb0x: Restore main stack size to the default value
Restore main stack size to the default value since fake entropy
implementation from mbedtls is replaced by STM32 entropy driver.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-06-12 09:32:41 -07:00
Ali Hozhabri
ecf795f0f1 drivers: bluetooth: hci: Use TRNG peripheral for BLE purpose on WB0x
Call entropy APIs to use TRNG peripheral on STM32WB0x devices for BLE
purposes.

Enable RNG node on Nucleo-WB0x boards.

Remove RNG initialization as it's done in the entropy driver.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-06-12 09:32:41 -07:00
Adam Kondraciuk
df700410ac samples: boards: nordic: system_off fixes
For reasons other than system off, the retained data should be cleared.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-12 09:31:34 -07:00
Karsten Koenig
db3cd1a833 drivers: cache: Add barriers to nrf driver
On Cortex-M33 the access to peripheral registers doesn't act as a data
synchronization barrier for memory accesses to normal memory. So before
triggering any TASKS for cache operations we need to make sure the core
doesn't have any pending memory transactions.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-06-12 09:29:58 -07:00
Krzysztof Chruściński
94d355a0bd drivers: serial: nrfx_uarte: Add workaround for FRAMETIMEOUT corner case
When reception is restarted (STARTRX after ENDRX but no STOPRX) it is
possible that FRAMETIMEOUT countdown counter will not be started by
the first received byte if byte was already being transmitted when
STARTRX was called. If that is the only byte then it is expected that
timeout will be triggered but since FRAMETIMEOUT counter is not started
there is no FRAMETIMEOUT event which has short to STOPRX. This
situation will happen in case short buffers are used (< 5 bytes)
because then short ENDRX_STARTRX is not used then.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-06-12 09:27:27 -07:00
Krzysztof Chruściński
6717a37421 drivers: timer: nrf_rtc_timer: Optimize z_nrf_rtc_timer_get_ticks
Converting absolute system ticks to RTC ticks is simple. It needs to be
multiplied by CYC_PER_TICK (which by default is 1). Complex algorithm
was used when driver was not tracking current 64 bit tick and function
was returning uint32_t.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-06-12 09:26:29 -07:00
Tom Hughes
a4f702b857 include: kernel: Fix typo
It should be "will be called with" instead of "will be called will".

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-06-12 13:42:21 +02:00
Qiankun Li
f610e384e4 modules: hostap: Fix DPP security mode show issue
[Description]
After DUT connects to AP through DPP,
enter 'wifi status' to check connection status.
Security shows UNKNOWN.

[Analysis]
1. DUT supplicant will add a dpp network after
   receiving GAS response.
   Assign ssid->key_mgmt as WPA_KEY_MGMT_DPP.
2. Call wpas_key_mgmt_to_zephyr() to convert
   hostapd/supplicant security type to zephry
   security type.
   In this function, convert WPA_KEY_MGMT_DPP
   to WIFI_SECURITY_TYPE_UNKNOWN.

[Fix]
1. Add code to convert WPA_KEY_MGMT_DPP
   to WIFI_SECURITY_TYPE_DPP.

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-06-12 13:41:32 +02:00
Pieter De Gendt
b76e68ee9f boards: st: stm32h573i_dk: Add Arduino serial node
Specify the Arduino serial node for a Discovery kit with STM32H573II MCU.
Add supported features to board yaml file.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-12 13:41:19 +02:00
Benjamin Cabé
c31b7898aa drivers: rtc: rpi_pico: fix tm_mon and tm_mday offsets
tm_mon is 0-11 and pico hw is 1-12
tm_mday is 1-31 and so is pico

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-12 13:40:59 +02:00
Benjamin Cabé
ec960096ec drivers: tests: rtc: relax y2k test seconds check
When testing y2k rollover, the seconds value can easily be off by one
since there is no guarantee that the RTC will be exactly on the second
boundary.
Relax the check to allow for a one second difference.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-12 13:40:59 +02:00
Benjamin Cabé
850a3b3131 drivers: tests: rtc: harden alarm tests
Ensure the alarm tests exercise rollover scenarios by setting RTC time
to a few seconds before midnight on a December 31st and alarm time to a
few seconds after midnight on the following day.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-12 13:40:59 +02:00
Benjamin Cabé
6acb085160 drivers: tests: rtc: add overlay for adafruit_macropad_rp2040
Allow to run the RTC test suite on Adafruit Macropad RP2040

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-12 13:40:59 +02:00
Szymon Janc
2e32b009b3 tests: Bluetooth: Update ICS to TCRL 2025-2
Changes to features:
 - removed not supported GATT client reliable write support
 - enabled BAP Broadcast Assistant
 - enabled PBP Broadcast Assistant
 - enabled GMAP 1.0.1
 - PAST support enabled where applicable
 - minor consistency check fixes

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-06-12 13:40:49 +02:00
Krzysztof Chruściński
9caab5b23f dts: bindings: nordic-nrf-nfct-v2: Extend description
Add information about nfct node status. For cpuapp status is irrelevant
because NFCT is by default assigned to cpuapp but for cpurad node needs
to have reserved status.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-06-12 11:46:21 +02:00
Krzysztof Chruściński
1dc42fc227 soc: nordic: nrf54h: Allow using NFCT pins as gpios on cpurad
NFCT is by default assigned to application so DT node does
not need to be enabled or reserved in DT to have access to
NFCT registers. On cpurad NFCT must be reserved to enable
register access and then antenna pins can be configured as
gpios.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-06-12 11:46:21 +02:00
Krzysztof Chruściński
b84dd5b600 dts: vendor: nordic: Fix nfct compatible
Use nordic,nrf-nfct-v2 compatible in the main nrf54h20 devicetree
description.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-06-12 11:46:21 +02:00
Krzysztof Chruściński
2d82970710 soc: nordic: common: Fix HAS_HW_NRF_NFCT condition
Include nordic,nrf-nfct-v2 compatible in the option.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-06-12 11:46:21 +02:00
Andrzej Głąbek
77a7cb3e4f drivers: clock_control_nrf: Prevent break from becoming dead code
When both NRF_CLOCK_HAS_XO_TUNE and NRF_CLOCK_HAS_PLL evaluate to 0,
one break statement can end up not associated with any case and become
dead code. Refactor a bit the related switch to avoid such situation.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-12 11:45:56 +02:00
Andrzej Głąbek
d963fc01e6 tests: boards: nrf: Add test for external flash XIP handling
Add nRF specific test to check if it possible for multiple users
to enable XIP independently and also if XIP can be successfully
re-enabled (see fb1d0785ae).

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-12 11:45:10 +02:00
Andrzej Głąbek
2d9ede3852 drivers: flash: nrf_qspi_nor: Handle properly multiple XIP users
Add reference counting in nrf_qspi_nor_xip_enable() so that XIP is
kept enabled as long as there is at least one user that needs it
(boot time enabling done with CONFIG_NORDIC_QSPI_NOR_XIP also counts).

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-12 11:45:10 +02:00
Fin Maaß
dfb5a31b3e drivers: ethernet: phy: add dt prop for default speeds
add dt prop for default speeds, that the phy is
configured on init by default.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-12 11:44:46 +02:00
Fin Maaß
5170a4daac doc: release: mention DT_ENUM_HAS_VALUE change
mention DT_ENUM_HAS_VALUE change in release notes.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-12 11:44:46 +02:00
Fin Maaß
c2fff4a3e4 devicetree: Enhance DT_ENUM_HAS_VALUE macro for arrays
On arrays DT_ENUM_HAS_VALUE() and DT_INST_ENUM_HAS_VALUE()
were only checking the first index, this changes it to check all indexes.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-12 11:44:46 +02:00
Jordan Yates
5dcaf077e7 regulator: npm1300: configure active discharge
Configure the active discharge feature for both the BUCK and LDO/LDSW
blocks through the appropriate registers.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-12 11:40:32 +02:00
Jacob Wienecke
0c7fbd164e scripts: ci: check_compliance.py: Fix check_disallowed_defconfigs: Windows
#78615 Added a check for disallowed Kconfigs which does not work
on Windows machines. Windows machines seem to behave differently when
faced with the \b word boundary marker. I have removed the \b word
boundary marker from the grep commands when os.name=='nt'.
The script performs the same as before for any other os.

Signed-off-by: Jacob Wienecke <jacob.wienecke@nxp.com>
2025-06-12 11:35:07 +02:00
Jakub Zymelka
f87f2dc9b2 soc: nordic: common: poweroff: Set VPR to remain in its reset state
CM33 must write MEMCONF.POWER[VPR].RET = 0 before entering System OFF.
This bit drives the vprSavedCtx input to VPR. Forcing it low will
disable the Hibernate wake feature in VPR, so that VPR will remain
in its reset state when waking from OFF.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-06-12 11:34:10 +02:00
Stanley Huang
0f775639af boards: raytac: Add support for raytac_mdbt50q_cx_40_dongle
Add support for Raytac's new TYPE-C dongle.

Signed-off-by: Stanley Huang <stanley@raytac.com>
2025-06-12 11:34:01 +02:00
Guillaume Gautier
9798606340 drivers: i2c: stm32: fix some macro name
Some macros haven't been properly renamed in previous commits.
Fixes the wrong names that caused compilation errors.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-06-12 11:33:48 +02:00
Maochen Wang
f6c386d900 samples: net: wifi: nxp: fix TCP RX accept error
Fix the zperf TCP RX accept error when start both UDP and TCP zperf
server, as the fdtable size is not enough and reserve fd table failed.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-06-12 11:33:19 +02:00
Tomasz Chyrowicz
5e54100551 boards: nrf54h20_iron: Allow radio updates
Add necessary changes to provide a simple, updateable radio image.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-06-12 11:33:10 +02:00
Adam Kondraciuk
a280fbf9fb drivers: timer: nrf_grtc_timer: Add frequency parameter for K32SRC
Add frequency value for LFCLK sources to be used when `lfxo` node
is not present.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-12 11:32:59 +02:00
Adam Kondraciuk
cc86ce7cdb drivers: clock_control: nrf: Add frequency parameter for K32SRC
Add frequency parameter for 32k sources.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-12 11:32:59 +02:00
Łukasz Stępnicki
a0777734de drivers: nrf_ironside dvfs service
Added handling of new IRONside DVFS service.
NRFS DVFS is now not enabled by default.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-06-12 11:32:32 +02:00
Andrzej Głąbek
3ebae000e5 drivers: i2s_nrfx: Add missing <hal/nrf_clock.h> inclusion
This driver uses the NRF_CLOCK_HAS_HFCLKAUDIO symbol that is defined
in <hal/nrf_clock.h>, so it should explicitly include that header,
not count on this inclusion being done by some other header, like
<zephyr/drivers/clock_control/nrf_clock_control.h>.
Extend also the build assertion that checks if the audio clock can
be used so that now it ensures that the above symbol is defined
(to prevent the driver from silently discarding the audio clock
configured as the clock source).

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-12 11:31:11 +02:00
Andrzej Głąbek
60d3ac5e12 include: drivers: nrf_clock_control: Fix <hal/nrf_clock.h> inclusion
This is a follow-up to commit 7a2ce2882a.

Inclusion of <hal/nrf_clock.h> should not be done based on the NRF_CLOCK
symbol being defined, because it depends on the order in which headers
are included - that symbol gets defined when <nrfx.h> gets included and
this is not necessarily always happening earlier. Instead of adding
inclusion of <nrfx.h> here, move inclusion of <hal/nrf_clock.h> under
`#if defined(CONFIG_CLOCK_CONTROL_NRF)` where it is actually needed.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-12 11:31:11 +02:00
Jordan Yates
c458d92cf1 dts: nordic: rng_hci disabled by default
As a software construct that depends upon Bluetooth being enabled,
this device should not be enabled by default. Most nRF SoC's have
internal `RNG` hardware that is much more efficient to access.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-12 11:28:43 +02:00
Jordan Yates
864d818a41 dts: nordic: nrf5340: enable rng_hci
Explicitly enable `rng_hci` on nRF5340 application core boards, as the
application core dos not have access to a dedicated RNG hardware
peripheral (limited to the network core).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-12 11:28:43 +02:00
Neil Chen
ab3d2dc830 boards: frdm_mcxa153,frdm_mcxa156: add hwinfo support
1. enable hwinfo support
   - device_id_get
   - get_reset_cause
   - get_supported_reset_cause
   - clear_reset_cause
2. verified tests/drivers/hwinfo

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-06-12 10:24:40 +02:00
Maochen Wang
d4648a6767 net: l2: wifi: fix invalid option error when use -i
For 'wifi connect' or 'wifi ap enable' CMD, there is 'invalid option'
error log when input '-i' parameter. Parsing '-i' can fix this issue.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-06-12 10:24:36 +02:00
Maochen Wang
5bcaf33d79 net: l2: wifi: fix dpp btstrap_gen CMD failure
Input 'wifi dpp btstrap_gen ...' cmd or 'wifi dpp ap_qr_code ...',
the console shows 'wrong parameter count'. Fix the typo of 'wifi
dpp btstrap_gen' and 'wifi dpp ap_qr_code' CMD's parameter count.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-06-12 10:24:36 +02:00
Fabrice DJIATSA
2e5f703c28 tests: drivers: adc: adc_api: enable nocache memory
The nucleo_f746zg board doesn't handle RX/TX buffers in
non-cacheable memory when required. This leads to an error
in the test_adc_api with the log:
Supplied buffer is not in a non-cacheable region.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-12 10:24:30 +02:00
Chun-Chieh Li
1d913d2147 shields: esp_8266: support Nuvoton numaker_m55m1 board
1. Support H/W reset pin
2. Support UART flow control (CTS/RTS)

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-06-12 10:24:21 +02:00
Tarang Patel
d2a5c1ca82 boards: nxp_rw612: Add support for u-blox EVK-IRIS-W1x
Add basic board definition of the u-blox EVK-IRIS-W1-rw612 board.
Adds maintainer info for u-blox boards.

Signed-off-by: Tarang Patel <tarang3399.patel@gmail.com>
2025-06-11 18:32:06 -07:00
Jiafei Pan
47d6f0235a drivers: gpio: rgpio: only handle usable pin's interrupt
If gpio-reserved-ranges to reserve some pins which used by other CPU
Core's OS, we could only handle usable pins owned by current CPU
Core in interrupt handler.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-11 18:31:10 -07:00
Jiafei Pan
72a009c3ee boards: imx943_evk: add GPIO in supported list for A55
Add GPIO in board yaml's supported list

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-11 18:31:10 -07:00
Jiafei Pan
574d215b35 boards: imx943_evk: fix document format issue
Fixed the document format issue.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-11 18:31:10 -07:00
Jiafei Pan
834576e8e4 tests: gpio_basic_api: add imx943_evk_mimx94398_a55 overly
Add board overlay for i.MX943 EVK Cortex-A Core.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-11 18:31:10 -07:00
Jiafei Pan
f4b3865a33 tests: gpio: gpio_basic_api: config to input if disconnected not supported
If GPIO_DISCONNECTED is not supported by GPIO driver, then try to configure
the pin to be input, otherwise there will be some unstable signal between
two test pins.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-11 18:31:10 -07:00
Jiafei Pan
a6af366eb5 drivers: gpio: rgpio: not support GPIO_DISCONNECTED
The hardware don't support GPIO_DISCONNECTED.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-11 18:31:10 -07:00
Jiafei Pan
0971240b5e drivers: gpio: rgpio: use default pad config value for SCMI platform
If the platform uses SCMI pinctrl driver, pinctrl regitster can't accessed
by CPU Core directly, and currently SCMI pinctrl driver has no API to read
back the register value, so use default pad config value for GPIO pad
configuration, and in theory we could use a fixed pad config value in this
driver as each new GPIO configuration has no relation with previous
configuration.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-11 18:31:10 -07:00
Jiafei Pan
42ae45c1f9 dts: nxp_mimx943_a55: add GPIO device nodes
Added all GPIO device nodes in i.MX 943 Cortex-A Core SoC dts.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-11 18:31:10 -07:00
Andrej Butok
6077f4cec9 boards: mcx_n9xx_evk: Fix name in mcx_n9xx_evk_mcxn947_cpu1.yaml
It looks like the file was originally copy-pasted
from frdm_mcxn947_mcxn947_cpu1.yaml
but the name was not properly updated.
This commit corrects the name to match the actual board.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-06-11 18:30:33 -07:00
Håvard Reierstad
2a8118c945 Bluetooth: Host: Update LE legacy pairing check
Updates the LE legacy pairing procedure as a result of errata ES-24491.
New part:
If the initiating device receives an LP_CONFIRM_R value that is equal to
the LP_CONFIRM_I value, the pairing process shall be aborted and fail
with "Confirm Value Failed" as reason.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-06-11 16:26:23 -07:00
Benjamin Cabé
3c93678b2c tests: lib: min_heap: add test coverage for edge cases
Add missing tests for edge cases (ex. peek on empty heap, push to full
heap, ...) to get to 100% coverage (lines & branches)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 16:24:59 -07:00
Benjamin Cabé
37919afd78 tests: lib: min_heap: use more descriptive assert_ macros
make test cases more readable using more direct assert_ macros, for
example zassert_not_null(foo, ...) instead of
zassert_true(foo != NULL, ...).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 16:24:59 -07:00
Benjamin Cabé
b33e28d233 drivers: serial: bouffalolab: UART_INT_CLEAR is write-only
Fix incorrect read being made to "write 1 to clear" register UART_INT_CLEAR

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 16:24:09 -07:00
Stanislav Poboril
34f9cd9490 drivers: ethernet: eth_nxp_enet_qos: increase default buffer descriptors
Increased the default number of TX and RX buffer descriptors from 4 to
16. Since the current default buffer size (CONFIG_NET_BUF_DATA_SIZE) is
128, increasing the number of RX buffers is needed to be able to receive
at least one frame of a maximum size split between multiple buffers.

The default number of TX buffers was increased to match the number of RX
buffers and to be able to transmit large frames with many fragments.

Added build-time configuration validation to ensure that the combined
size of all RX buffers is sufficient to receive a maximum-sized Ethernet
frame.

Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
2025-06-11 16:23:37 -07:00
Stanislav Poboril
4b06f2306d drivers: ethernet: eth_nxp_enet_qos: reassemble split frames
DMA copies frames which cannot fit into a single buffer into
multiple receive buffers. Updated the receiving code to combine
these buffers into a net_pkt with multiple fragments.

This allows the driver to handle larger Ethernet frames that
span across multiple DMA buffers.

Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
2025-06-11 16:23:37 -07:00
Stanislav Poboril
f2378172d5 drivers: ethernet: eth_nxp_enet_qos: fix rx buffer processing order
Always reading from descriptor with index 0 could cause processing
of the buffers in a different order than they were received. Fixed by
reading from the next unprocessed position in the ring of descriptors
instead.

Fixed unused variable warnings.

Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
2025-06-11 16:23:37 -07:00
Nikodem Kastelik
59334fa41e manifest: update hal_nordic revision to integrate nrfx 3.12.1
New nrfx release contains fixes for SPIM and GRTC driver.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-06-11 16:21:55 -07:00
Pieter De Gendt
cf39d12714 net: lib: http: Select required symbols for server
Select the NET_SOCKETS and EVENTFD kconfig symbols in order for the HTTP
server to compile.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-11 16:21:36 -07:00
Robert Lubos
35b1fa272d tests: net: offloaded_netdev: Add test for offloaded DNS APIs
Add test case verifying that offloaded DNS APIs are called as expected
and that enabling/disabling DNS offloading at runtime works.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-11 16:20:18 -07:00
Robert Lubos
b18bc7cc3e net: sockets_offload: Allow to enable/disable DNS offload at runtime
Add new socket offloading functions, allowing to enable/disable
offloaded DNS implementation at runtime. This may be useful if there is
a mix of offloaded/native network interfaces in the system, so the
application can choose which DNS backend to use.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-11 16:20:18 -07:00
TOKITA Hiroshi
344357a5b4 soc: raspberrrypi: rp2350: Add missing FPU support
Add CPU_HAS_FPU to make available the FPU feature.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-11 16:19:59 -07:00
Arif Balik
2bf86a3ff9 samples: net: update mqtt publisher
Added MQTT logging backend to publisher sample

Signed-off-by: Arif Balik <arifbalik@outlook.com>
2025-06-11 16:18:51 -07:00
Arif Balik
1939ba64c3 logging: backend: mqtt
Added MQTT logging backend

Signed-off-by: Arif Balik <arifbalik@outlook.com>
2025-06-11 16:18:51 -07:00
Robert Lubos
8b7b2b5e9e tests: net: mqtt: client: Add test case for connect with iface binding
Add test case for verifying that MQTT client works fine if bound to an
interface.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-11 16:18:31 -07:00
Robert Lubos
35af68b840 net: mqtt: Allow to bind client to a specific interface
Add a new "if_name" pointer to the transport configuration structure,
allowing the application to bind MQTT client to a specific network
interface.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-11 16:18:31 -07:00
Benjamin Cabé
0938eccd6d tests: crc: add tests for crc4 and crc4_ti functions
Implemented unit tests for the crc4 and crc4_ti functions as they were
missed when they were introduced

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 16:18:12 -07:00
Silicon Signals
655d5fd0d3 tests: drivers: build_all: audio: Add MAX98091 to tests
Add the MAX98091 codec to the I2C overlays for testing.

Signed-off-by: Silicon Signals <siliconsignalsforgit@gmail.com>
2025-06-11 16:17:08 -07:00
Silicon Signals
ba36bf6c0a audio: codec: Add driver for MAX98091 codec
This patch adds a minimal driver for the MAX98091 audio codec.
Currently, playback functionality is supported.

Co-developed-by: Rutvij Trivedi <rutvij.trivedi@siliconsignals.io>
Signed-off-by: Rutvij Trivedi <rutvij.trivedi@siliconsignals.io>
Co-developed-by: Tarang Raval <tarang.raval@siliconsignals.io>
Signed-off-by: Tarang Raval <tarang.raval@siliconsignals.io>
Signed-off-by: Silicon Signals <siliconsignalsforgit@gmail.com>
2025-06-11 16:17:08 -07:00
Lyle Zhu
6231b43435 Bluetooth: Classic: SDP: Fix buf leak issue
In the function `sdp_client_ss_search()` and
`sdp_client_ssa_search()`, the allocated buf is not released if the
required UUID is invalid.

Un-reference the allocated net buffer if the UUID is invalid.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-06-11 16:12:31 -07:00
Daniel Leung
146e22fca4 cmake: xcc/xt-clang: fix for proper system include paths
Although xt-clang is based on clang, for some reason, it still
lists xcc system include path as the first search path (e.g.
for stddef.h), and the clang system include path as last. This
creates a big issue when the code starts to use any standards
past C89 (since xcc is based on GCC 4.2). We can use compiler
property nostdin_include to add -isystem to compiler options.
However, some modules (e.g. picolibcs) somehow ignore this.
So we also need to forcibly do add_compile_options() to make
sure the clang system include path is placed before the xcc
system include path.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-06-11 16:10:53 -07:00
Daniel Leung
f7b314347e cmake: compiler/gcc: skip nostdinc property for xt-clang
Xtensa toolchain xt-clang needs similar treatment to xcc in
terms of nostdinc and nostdinc_include, so add it to the if
block to exclude these by default.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-06-11 16:10:53 -07:00
Daniel Leung
26ea29ddba toolchain: xcc: define __deprecated only if not already defined
Some tests explicitly test for deprecated functions and they
override the macro __deprecated to avoid compiler warnings.
So, for xcc/xt-clang, only define __deprecated if it has not
already been defined.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-06-11 16:10:53 -07:00
Daniel Leung
1df55181be scripts: gen_app_partitions: only parse known arguments
Since compiler options are unconditionally passed to the script,
we may pass arguments that are not recognized. So we change to
only parse known arguments. Currently, it only cares about -l,
which is related to linking libraries.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-06-11 16:10:53 -07:00
Grzegorz Chwierut
db3c344af9 west: runners: Add ncs-provision to west flash command
Added automatic KMU key provisioning, when keyfile.json
file exists in the build directory.
This enables automated key provisioning during the
flashing process to enable testing nRF54L aplications using Twister.
Only applicable on nrfutil runner.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-06-11 16:09:05 -07:00
Julien Panis
2289fa1770 samples: drivers: crypto: Add entry to sample.yaml for cc23x0
Enable DMA for the test.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-06-11 16:06:55 -07:00
Julien Panis
2d98ac0f0b dts: arm: ti: cc23x0: Add DMA mode support to AES module
Add support to use DMA mode with cc23x0 AES module. This consists in
specifying the DMA channels and peripherals.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-06-11 16:06:55 -07:00
Julien Panis
e0f02d93a6 drivers: crypto: cc23x0: Add support for DMA mode
Two DMA channels are assigned to AES channels A and B respectively.
Each channel A/B has an interface to control the conditions that will
generate requests on the related DMA channel: trigger condition,
R/W address, and DMA done action.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-06-11 16:06:55 -07:00
Matthias Ringwald
b67b5c5dc1 bluetooth: cyw43xxx: support newer PatchRAM files
The CYW43xxx for Infineon Controllers stops after the first LauncRAM
command. Newer Controllers like the CYW5557x update the firmware in
multiple stages, which is supported by this commit.

Signed-off-by: Matthias Ringwald <matthias@ringwald.ch>
2025-06-11 16:04:56 -07:00
Yangbo Lu
eb8cabbccc boards: nxp: imx95_evk: support generating/flashing bootable firmware
Supported NXP Secure Provisioning SDK (SPSDK) generating
and flashing bootable firmware for imx95_evk_mimx9596_m7/a55.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-11 16:03:37 -07:00
Yangbo Lu
0ce51780d4 boards: common: add spsdk flasher support
Added spsdk flasher support.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-11 16:03:37 -07:00
Yangbo Lu
e960af1cb1 scripts: west_commands: runners: add nxp spsdk
Added nxp spsdk as west runner.

Secure Provisioning SDK (SPSDK) is a unified, reliable,
and easy to use Python SDK library working across the
NXP MCU portfolio providing a strong foundation from
quick customer prototyping up to production deployment.

Docs: https://spsdk.readthedocs.io

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-11 16:03:37 -07:00
Yangbo Lu
497c02709f scripts: requirements: extras: add spsdk
Secure Provisioning SDK (SPSDK) is a unified, reliable,
and easy to use Python SDK library working across the
NXP MCU portfolio providing a strong foundation from
quick customer prototyping up to production deployment.

Docs: https://spsdk.readthedocs.io

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-11 16:03:37 -07:00
Yangbo Lu
63f647f7ed west.yml: update hal_nxp to support imx95 blobs
Updated hal_nxp to support imx95 blobs.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-11 16:03:37 -07:00
Jukka Rissanen
bd4c0b746c net: acd: Avoid removing auto IPv4 address twice
When the network interface goes down, we call
net_ipv4_autoconf_reset() which removes the autoaddress
from the network interface.
The net_ipv4_autoconf_reset() is also called when ACD is started
in which case we could see this error message

<dbg> net_if_start_acd: Starting ACD for iface 2
<err> net_if: iface 2 addr 169.254.174.230 (net_if_ipv4_addr_rm():4625)
<dbg> net_if_ipv4_addr_rm: Address 169.254.174.230 not found (-22)

This error is superfluous and not needed. So before trying to
remove the address, check if the interface already has it set and
only then remove it.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-11 10:26:56 -07:00
Jukka Rissanen
902c95ab95 net: if: Do not start ACD for localhost or point2point links
When adding IPv4 address to the network interface, there is no
need to start ACD procedure for localhost or point-to-point links.
The ACD start function would mark the IP address like 127.0.0.1 as
tentative and never make it preferred which would then cause issues
when selecting the network address for sending.
As the ACD start is also called when the network interface comes up,
add the localhost and point-to-point link check to ACD start function
so that we will avoid ACD checks in this case.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-11 10:26:56 -07:00
Benjamin Cabé
976f963d13 tests: unit: add unit tests for hex utilities
Ensure 100% code coverage of lib/utils/hex.c

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 10:25:14 -07:00
Benjamin Cabé
455280e5aa lib: hex: remove unnecessary defensive programming
The hex2char() calls in bin2hex() can never fail since buf[i] >> 4
and buf[i] & 0xf always produce values in range 0-15.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 10:25:14 -07:00
Benjamin Cabé
332d8b37ff modbus: fix Apache-2.0 SPDX License identifier case
While SPDX license identifiers are usually considered to be
case-insensitive, matching the case of the canonical identifier is
recommended by the SPDX specification.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 10:23:46 -07:00
Fin Maaß
1b10d276d2 MAINTAINERS.yml: add net/mii.h header to ethernet area
add include/zephyr/net/mii.h header to ethernet area.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-11 10:23:15 -07:00
Fin Maaß
db79e78b98 net: mii: use BIT() macro in mii.h
use BIT() macro in mii.h.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-11 10:22:46 -07:00
Fabian Blatz
8ed5f0370e maintainers.yml: Add path for LVGL samples
Adds the path for the LVGL samples to the appropriate maintainer section.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-06-11 10:22:08 -07:00
Fin Maaß
f569bb523d drivers: ethernet: phy_mii: restart autoneg after phy_configure_link
make sure that autonegotiation is restarted, after
changing the speeds. Also make sure to only write
the changed registers, as mdio is pretty slow.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-11 10:21:21 -07:00
Fin Maaß
b1483a69d6 drivers: ethernet: phy_mii: correct indentation
correct indentation

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-11 10:21:21 -07:00
Emil Gydesen
aa6ac8e650 Samples: Bluetooth: HR: Remove use of ISO config for IPC
When compiling with sysbuild and IPC the samples would use the
nrf5340_cpunet_iso-bt_ll_sw_split.conf config file, which was
incompatible with the sample's host configuration.

Instead of using the ISO configuration file, define a hci_ipc
overlay in each sample with the necessary configurations
that support all host configurations.

This commit also updates the sample.yaml files to split
configurations for single- and multicore builds, as what
needs to be configured for each type is different.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-06-11 10:19:05 -07:00
Fin Maaß
09a270e59f docs: migration-guide: mention ethernet api changes
Mention ethernet api changes.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-11 10:17:37 -07:00
Fin Maaß
ed4d421ace drivers: ethernet: remove phy related configs from eth config
remove phy related configs from eth config.
phy related configs chould go directly into the phy.
Most ethernet drivers didn't support the now removed
functions yet. Users should instead use `phy_configure_link()`
together with the `net_eth_get_phy()` function.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-11 10:17:37 -07:00
Fin Maaß
c169ac07a0 drivers: ethernet: remove get configs that are unused
remove get configs that are unused by the
ethernet mgmt api.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-11 10:17:37 -07:00
Jamie McCrae
99650914c5 tests: lib: devicetree: Add sub-partition tests
Adds tests for sub-partition macros

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-11 10:13:56 -07:00
Jamie McCrae
709526007f storage: flash_map: Add support for sub-partitions
Adds support for sub-partitions to the default flash map

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-11 10:13:56 -07:00
Jamie McCrae
656b6f37da devicetree: fixed-partition: Add sub-partition macros
Adds some macros for usage with sub-partitions

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-11 10:13:56 -07:00
Matthias Ringwald
e50f03404e bluetooth: cyw43xxx: support autobaud feature
Newer AIROC controllers like the CYW55573 don't support changing the
baudrate in Download Mode. However, a higher baud rate can be used
directly to sent HCI Reset.

This commit adds the KConfig flag CONFIG_AIROC_DOWNLOAD_MODE to enable
the new behaviour.

Signed-off-by: Matthias Ringwald <matthias@ringwald.ch>
2025-06-11 10:12:24 -07:00
Adam Kondraciuk
bdab748bcf Revert "tests: arm_thread_swap: Add overlay for nRF54H20"
This reverts commit 28bd478a0b.

This commit can be reverted as the cause of test failure
has been removed in ipc service by increasing workqueue stack size.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-11 10:09:02 -07:00
Adam Kondraciuk
31689690c9 ipc: ipc_service: Parametrize workqueue stack size
Add `IPC_SERVICE_BACKEND_ICBMSG_EP_BOUND_WORK_Q_STACK_SIZE` config
and parametrize its value depending on the optimization level.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-11 10:09:02 -07:00
Maksim Salau
c2fd84fdd5 modbus: serial: Ignore received data when reception is disabled
A byte received when reception has been disabled
corrupts internal state of the server
(e.g. during transmission of a reply in server mode).
The reponse packet is corrupted and its transmission is aborted and the
data in the buffer is treated by the server as a new incoming packet.
Since the buffer is corrupted CRC doesn't match and the following log
message is printed:

  <wrn> modbus_serial: Calculated CRC does not match received CRC

This condition happens when uart_irq_rx_ready() returns true if there is
a new byte in the receive FIFO even with disabled RX interrupt.

The issue has been discovered on a nucleo_u083rc board with a RS485
transceiver with the RI signal floating (a pull-down gives more stable
reproduction). The pull-down ensures that RI is low during transmission
which is seen as byte 0 with a framing error by the receiver.
The byte is received by the MCU and corrupts the response.
Similar effect can be achieved by not disabling the receiver during
transmission (i.e. nRE is driven by the MCU and is fixed low).

The fix discards any data received when reception has been disabled.

Signed-off-by: Maksim Salau <msalau@iotecha.com>
2025-06-11 10:08:25 -07:00
Benjamin Cabé
66f5d701bd shell: fix alignment issue
Casting a char* to a struct* requires checking alignment as this can fail
on platforms requiring strict alignment (ex. Xtensa)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 08:56:04 -07:00
Emil Gydesen
9b4bebbdf3 Bluetooth: ASCS: Sonarcloud fixes
Made a few complex functions simpler
Added missing default cases in switches
Fixes a bad cast that removed const
Moved loop iterators to inner loop

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-06-11 08:58:09 -04:00
Emil Gydesen
314678c48d Bluetooth: AICS Client: Fix sonarcloud issues
Fixes a few bad casts that ignored const
Add a few missing final else statement
Refactored aics_discover_func to be less complex by
moving some parts of it into a new function.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-06-11 08:57:26 -04:00
Emil Gydesen
bf8570256f Bluetooth: AICS: Fix sonarcloud issues
Add missing else and refactored write_aics_control to
be less complex.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-06-11 08:57:26 -04:00
Alberto Escolar Piedras
6d7744209b manifest lvgl: Update to fork with hotfix for Zephyr
Update to fork from lvgl's master branch with the following fix:
* fix: ifdef function to avoid unused function build warning
Which fixes this issue being triggered in Zephyr's CI.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-11 11:06:41 +02:00
Mike J. Chen
9075d53355 kernel: fix timeout bugs
When CONFIG_TIMEOUT_64BIT is y, positive values are relative/delta
timeouts and negative values are absolute timeouts, except
for two special values. -1 is K_WAIT_FOREVER and 0 is K_NO_WAIT.
The reserved value of -1 means INT64_MAX is not a valid argument
to K_TIMEOUT_ABS_TICKS(), but there was no check. If a literal
was passed, a preprocessor/compiler warning would be generated
for overflow, but if a variable was passed as the argument,
then the code would compile but not work correctly since the
absolute timeout would be changed to a relative one. One
example of this is task_wdt_init() if no channels are enabled.

Rather than just fixing task_wdt, and trying to find other cases
in an adhoc way, this CL changes K_TIMEOUT_ABS_TICKS() to
limit the larges value to (INT64_MAX-1). It does so silently,
but given the range of int64_t, there should be no practical
difference.

Also, change the implementation for Z_IS_TIMEOUT_RELATIVE() to
fix the case where INT64_MAX relative timeout was being
improperly reported as being not a relative timeout. This was
again due to the -1 reserved value.

Add some tests for these changes to the timer_api test.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-06-11 09:56:13 +02:00
sudarsan N
6d88a62417 drivers: adc: fix underflow in lmp90xxx_adc_start_read channel check
Prevent integer underflow when sequence->channels is 0.
Add an explicit check before calling find_msb_set().

Coverity CID: 487765

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-11 09:55:42 +02:00
Benjamin Cabé
660d2b3e7a audio: codec: shell: adopt SHELL_HELP
have audio codec shell commands use the new SHELL_HELP macro

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 09:55:21 +02:00
Benjamin Cabé
3096ea0216 watchdog: shell: adopt SHELL_HELP
have wdt shell commands use the new SHELL_HELP macro

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 09:55:21 +02:00
Benjamin Cabé
b84294c156 w1: shell: adopt SHELL_HELP
have w1 shell commands use the new SHELL_HELP macro

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 09:55:21 +02:00
Benjamin Cabé
9ab0ea73a8 shell: Introduce structured help message
In order to enable better and more consistent help messages for shell
commands, this commit introduces a new SHELL_HELP macro that allows to
document a command's description and usage in a more structured way.

This will allow to get rid of inconsistent (and duplicated!) variations
of "Syntax: ...", "Syntax:\n ...", "Usage: ...", in the commands, and
formatting of the description+usage will be taken care of by the shell
when it detects the help message is using the "structured" format.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 09:55:21 +02:00
Benjamin Cabé
7bdeffb5a6 shell: fix margin handling after newlines in formatted help text
Lines following newlines in shell help text were not properly indented.
For example, in "abc def\ndef ghi\njkl mno", the lines "def ghi" and
"jkl mno" would appear without the expected left margin.

The issue was that after processing a newline and setting proper cursor
position, the function would fall through to z_shell_raw_fprintf() which

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 09:55:21 +02:00
Ling Pei Lee
75bfd799c4 net: shell: iface: Add link speed settings command
Add this to set link speed through net_shell.
Current zephyr version doesn't have user interface to change
speed, hence adding this to accomodate it. Full duplex will
be set by default for each link speed.

Able to change link speed using command below:
net iface set_link <iface idx> <speed> <optional:h(half)/f(full)>
eg: net iface set_link 1 100 h
    net iface set_link 1 10 f
    net iface set_link 1 1000

Able to set multiple link speed like below:
net iface set_link <iface idx> <speed1> <speed2> <optional:h/f>
eg: net iface set_link 1 10 100 h
    net iface set_link 1 1000 f 10

Signed-off-by: Ling Pei Lee <pei.lee.ling@intel.com>
2025-06-11 09:54:56 +02:00
Maochen Wang
6d161802a8 samples: net: wifi: nxp: supplicant enterprise enabledment on IW610
Add mbedtls config file to support enterprise mode.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-06-11 09:54:46 +02:00
Abhinav Kulkarni
703fa22b11 samples: net: wifi: shell: nxp: HostAP support for IW416
Added host AP support for IW416 and IW612 socs.
Adding conf files which can be used along with shield for compilation to
test HostAP and WPA supplicant.

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2025-06-11 09:54:46 +02:00
Eden Uhde
436fabeb0a doc: build: signing: Correct typo – 'singing' to 'signing'
Fixing a typo in two places
Signed-off-by: Eden Uhde <eden@cutegirls.club>
2025-06-11 08:28:30 +02:00
Fabio Baltieri
33f6b76110 drivers: i2c: i2c_dw: only includ cmsis_core on ARM platforms
Only include cmsis_core.h on ARM platforms, including it unconditionally
as it is now causes a build failure on all other platforms, namely x86
on the weekly build run.

Tested with:

west build -p -b up_squared/apollo_lake tests/drivers/build_all/led
(and others)

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-11 08:20:40 +02:00
Alberto Escolar Piedras
3b1cf79f62 ci: bsim tests: Trigger on any change on tests/bluetooth
As time passes we are adding more babblesim tests which depend on code/
tests from tests/bluetooth just like we have many based on samples from
samples/bluetooth.
Let's also trigger the Babblesim CI job when anything changes in
tests/bluetooth, instead of trying to pinpoint the specific folders we
use, as otherwise every now and then we have coverage holes and issues
are introduced in main.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-11 08:20:19 +02:00
Fabian Blatz
c7a61d6418 tests: lib: gui: lvgl: Remove LV_FONT_SIMSUN_16_CJK symbol
In 9.3 due to font licensing issues LV_FONT_SIMSUN_16_CJK was deprecated.
Instead select now LV_FONT_SOURCE_HAN_SANS_SC_16_CJK symbol.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-06-11 08:20:09 +02:00
Fabian Blatz
8a110a6252 samples: modules: lvgl: demos: Update to v9.3
Update the sample to show upstream demos to v9.3. The samples for flex
layout, scrolling and multilanguage have been removed upstream, so also
remove their respective LV_Z_* entry.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-06-11 08:20:09 +02:00
Fabian Blatz
768e43ae98 modules: lvgl: Add lv_os_get_idle_percent to OSAL
Adds an implementation of lv_os_get_idle_percent to the zephyr OSAL.
This is needed for usage of the system monitor.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-06-11 08:20:09 +02:00
Fabian Blatz
0b0fd7d674 modules: lvgl: Update CMakeLists to v9.3
Add new/moved files introduced in v9.3 into the CMakeLists.
Also for using the system monitor the osal is required to have a method to
measure the CPU idle time so the lvgl_zephyr_osal file needs to be always
added.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-06-11 08:20:09 +02:00
Fabian Blatz
a01c8e464f manifest: Update LVGL to v9.3
Update the west yaml to point to the new LVGL version.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-06-11 08:20:09 +02:00
Jordan Yates
b64fb93d93 lib: posix: dedicated symbol for POSIX system headers
Add a dedicated symbol for including the POSIX system headers path
directly into the include path, enabling (for example)
`#include <time.h>` instead of `#include <zephyr/posix/time.h>`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-11 08:19:54 +02:00
TOKITA Hiroshi
ba48d83bec devicetree: Use IS_EQ() for DT_SAME_NODE()
`DT_SAME_NODE()` is judged by `==` and cannot be used as
a condition for `COND_CODE_1()`.
Using `IS_EQ()` to make it possible for compile-time
calculation.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-11 08:19:41 +02:00
bd0efcc948 drivers: serial: uart_xlnx_uartlite: set irq flags per device tree
PG142 from AMD specifically says the uartlite IP generates a
"rising-edge sensitive interrupt" when interrupts are enabled. When
using this IP on a ZynqMP platform with
CONFIG_UART_INTERRUPT_DRIVEN enabled, the GIC does not get
configured correctly to detect these interrupts. Update driver to heed
the flags set by the interrupts property in the device tree.

Signed-off-by: Michael Estes <michael.estes@byteserv.io>
2025-06-11 08:19:28 +02:00
Benjamin Cabé
25dc5fe968 drivers: dac: esp32: avoid out-of-range channel ID
Fix channel ID check in dac_esp32_channel_setup as it was allowing to
set up a channel with ID greater than the number of channels.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 08:19:09 +02:00
Benjamin Cabé
aa8386929e drivers: intc_wch_pfic: replace shift operations with BIT macro
Updated intc_wch_pfic driver to use BIT() macro for clarity.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 08:18:58 +02:00
Benjamin Cabé
b15f942684 drivers: intc_wch_pfic: correct/optimize interrupt disable logic
The IRER registers are write-only and clear the enable bit for the
provided interrupt. Use a direct write instead of a read/modify/write
sequence to avoid generating a bogus read access and improve performance

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-11 08:18:58 +02:00
Jordan Yates
7189ade82d drivers: voltage_divider: handle ADC PM
Some ADC's draw significant power while enabled, so make sure the
driver can handle ADC's that have device runtime PM enabled.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-11 08:18:39 +02:00
Johann Fischer
79a80730b2 usb: device_next: allow to use label as interface string descriptor
The intention was to use the "interface-name" string property in the
interface string descriptor, but using the label property is acceptable
again. Therefore, allow the use of the DT label property string in the
interface string descriptor.

Follow exactly the same approach as in the CDC ACM implementation
introduced in the commit b0791400f6
("usb: device_next: cdc_acm: allow setting the interface description").

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-11 08:18:30 +02:00
Luca Burelli
204a1cf30d tests: llext-edk: increase test timeout
The llext-edk test case is timing out on some workloads, so increase the
timeout to 120 seconds to accommodate longer execution times.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-06-11 08:18:20 +02:00
Lyle Zhu
55c0f00f23 Bluetooth: Classic: SDP: Avoid invalid session->param be accessed
The `session->param` should be updated to date whatever the function
`sdp_client_ssa_search()`, `sdp_client_sa_search()` or
`sdp_client_ss_search()` can be executed properly.

Update the `session->param` to the new `param` when executing the
function.

Fixes #91156

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-06-11 08:17:57 +02:00
Andrej Butok
3728a80929 boards: nxp: mcxn947: enable the default MCU-Boot swap mode
- Enables MCU-Boot default Swap mode for the FRDM-MCXN947 and MCX-N9XX-EVK,
  after the flash driver was upgraded to support the 16-byte programming.
- Fixes flash-controller for frdm_mcxn947_mcxn947_cpu0_qspi.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-06-11 08:17:33 +02:00
Pete Dietl
c9e48c8c01 drivers: spi: sam0: Reset SPI peripheral on init
Reset the SPI peripheral to its default state
and register values on init by setting its SWRST bit.
This is important since the driver assumes that certain
registers are at their default values.

Signed-off-by: Pete Dietl <petedietl@gmail.com>
2025-06-11 08:15:06 +02:00
Pete Dietl
3b40a91dbc drivers: spi: sam0: Handle 32-bit length extension
The sam0 SPI driver does not ensure that it clears the 32-bit extension
option during init. The 32-bit extension option, which comprises of a field
in the CTRLC register and the LENGTH register enables better bus
utilization by allowing 32-bit writes to the SPI DATA register
(as opposed to the usual 8-bit writes). The driver breaks down if this
option is enabled by causing each intended byte of output to become
four bytes. We fix this by explicitly disabling the 32-bit extension
option in init.

Signed-off-by: Pete Dietl <petedietl@gmail.com>
2025-06-11 08:15:06 +02:00
Keith Packard
107198204c zephyr/linker: Move .tbss section back to ROMABLE_REGION
Placing this in RAMABLE_REGION messes up the TLS offsets computed by the
linker, presumably because it's not adjacent to the .tdata section.

In any case, it doesn't really matter as all we want the linker to do is
compute offsets from the TLS base value for all .tdata and .tbss values.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-11 08:14:46 +02:00
Emil Gydesen
e82cabb809 tests: Bluetooth: Audio: Add common TEST_SAMPLE_SIRK
Add a common definition of the TEST_SAMPLE_SIRK used by
the BSIM tests.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-06-10 22:13:14 +02:00
Keith Packard
513e6ed5d2 arch/common: Mark interrupt tables const when !DYNAMIC_INTERRUPTS
When not using dynamic interrupt mapping, various interrupt tables are
configured to be stored in read-only memory in the linker script.. Mark
them const so that the linker doesn't complain.

This affects _sw_isr_table, _irq_vector_table, and z_shared_sw_isr_table in
arch/common along with _VectorTable in arch/arc.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-10 22:13:09 +02:00
Keith Packard
5890c73087 linker: Place .tbss section in RAM, not FLASH
If this section is placed in FLASH, the section gets marked
as writable even though .tbss values will never be stored there.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-06-10 22:13:09 +02:00
Firas Sammoura
6e242a446e boards: google_quincy: Enable NPCX firmware header
This commit enables the CONFIG_NPCX_HEADER option for the Google Quincy
board. This is necessary to properly support the NPCX firmware header
requirements on this platform, ensuring correct boot and firmware
updates.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-06-10 22:07:33 +02:00
Maxime Vincent
8425ad04da usb: nxp mcux: usb device remote wakeup
USB device remote wakeup implementation for NXP MCUX

Signed-off-by: Maxime Vincent <maxime@veemax.be>
2025-06-10 22:07:27 +02:00
Yangbo Lu
8dec03ea6b boards: nxp: imx943_evk: add M33 support in doc
Added M33 support in doc.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-10 22:07:17 +02:00
Yangbo Lu
2033adea0e boards: nxp: imx943_evk: add M33 DDR variant support
Added i.MX943 EVK M33 DDR variant support.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-10 22:07:17 +02:00
Yangbo Lu
8463f20913 boards: nxp: imx943_evk: add basic support for M33 platform
Added basic support for M33 platform.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-10 22:07:17 +02:00
Yangbo Lu
457f5d131c modules: hal_nxp: disable device system driver for i.MX943 M33
The HAL i.MX943 M33 system driver was using another implemention
of SCMI support to do some clock operations which was not workable
in Zephyr, as Zephyr supported its own SCMI drivers.

So, disabled device system driver for i.MX943 M33 for now.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-10 22:07:17 +02:00
Yangbo Lu
1d2e1787cb soc: nxp: imx9: add basic support for i.MX943 M33
Added basic support for i.MX943 M33.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-10 22:07:17 +02:00
Yangbo Lu
030d5bd735 dts: arm: nxp: add i.MX943 M33 dtsi file
Added i.MX943 M33 dtsi file for basic support.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-06-10 22:07:17 +02:00
Benjamin Cabé
04b4d590db doc: releases: Intermediate update for new 4.2 boards/samples/drivers
New boards, drivers, samples since May 9, 2025.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-10 22:06:58 +02:00
Shreyas Shankar
73e6ca23eb ti: j722s: Fix reg length in pinctrl as per TRM description
In j722s_main.dtsi, the pinctrl block must have reg length 0x2b0
As per TRM, PADCONFIG registers range from 0 to 171.
Thus, length = (171-0+1)*4 = 172*4 = 0x2b0.

Reference: https://www.ti.com/lit/ds/symlink/tda4ven-q1.pdf
Table 5.1 contains data on PADCONFIG registers.

Signed-off-by: Shreyas Shankar <s-shankar@ti.com>
2025-06-10 22:06:50 +02:00
Mike J. Chen
27975075a5 drivers: mbox_nxp_imx_mu: return negative errno value on error
Change nxp_imx_mu_send() to return a negative errno value
on error.

The fsl_mu function MU_TriggerInterrupts() returns either
kStatus_Success or kStatus_Fail, which have the value 0
or 1, respectively. kStatus_Fail should not be returned
to the upper levels, which expect negative values for
errors, so add a check for the return value of
MU_TriggerInterrupts() and return an errno value on error.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-06-10 22:06:40 +02:00
Ayush Singh
b28e1e122c boards: beagle: pocketbeagle_2: doc: Fix debug command
- The board currently shows up as none in the rendered docs. So fix it.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-06-10 22:06:31 +02:00
Ayush Singh
0adbee049c boards: beagle: pocketbeagle_2: Add GPIO as supported
Tested blinky example on pin P2.09

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-06-10 22:06:31 +02:00
Ayush Singh
b07629660f boards: beagle: pocketbeagle_2: Add P2.9 and P2.11 GPIO pinmux
- Define pinmux for using P2.9 and P2.11 as MCU_GPIOs.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-06-10 22:06:31 +02:00
Luca Ciucci
24f9ca7178 sca: add HTML summary and full report options to ECLAIR configuration
Introduce ECLAIR_SUMMARY_HTML and ECLAIR_FULL_HTML CMake options to
enable the generation of HTML reports.

Signed-off-by: Luca Ciucci <luca.ciucci@bugseng.com>
2025-06-10 12:53:59 -04:00
Luca Ciucci
d8b86f1ac7 doc: update ECLAIR documentation
Added prerequisites section, fixed some typos and added
ECLAIR_RULESET_ZEPHYR_GUIDELINES option.
Also updated dead doc string links in ECLAIR configuration files.

Signed-off-by: Luca Ciucci <luca.ciucci@bugseng.com>
2025-06-10 12:53:59 -04:00
Luca Ciucci
c56a8049ed sca: add ECLAIR configuration for main Coding Guidelines rules
Added the main rules from the conding guidelines selection listed in
/doc/contribute/coding_guidelines/index.rst to the zephyr_guidelines
configuration.

Signed-off-by: Luca Ciucci <luca.ciucci@bugseng.com>
2025-06-10 12:53:59 -04:00
Luca Ciucci
8eaf6aebc6 sca: enforce selection of a single ECLAIR_RULESET in configuration
This check prevents misconfigurations where more than one ruleset is
selected, ensuring that the analysis is not silently performed with
an unintended configuration.

Signed-off-by: Luca Ciucci <luca.ciucci@bugseng.com>
2025-06-10 12:53:59 -04:00
Nicola Vetrini
91dde769f7 sca: eclair: improve ECLAIR integration
Various improvements to the integration files in order to obtain correct
static analysis results:
- variable `ECLAIR_WORKSPACE' is set to the build output directory, to
  allow multiple ECLAIR analyses running in parallel on the same machine
  without conflicts;
- fix the evaluation order of rulesets to allow a user-provided ruleset to
  be selected without a cmake options file that undefines other
  ECLAIR_RULESET_* variables;
- add a clean-only frame to initiate the analysis and a project
  frame to end it.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
2025-06-10 12:53:59 -04:00
Maksim Salau
bdd94261a5 modbus: serial: Add non-compliant mode with custom stop-bit settings
The mode is activated by the CONFIG_MODBUS_NONCOMPLIANT_SERIAL_MODE option
and allows any stop-bit setting for the serial port.

Signed-off-by: Maksim Salau <msalau@iotecha.com>
2025-06-10 12:53:23 -04:00
Jordan Yates
6e0d0f5879 spi: nrfx_spim: fix incorrect clock control logic
To determine whether device runtime PM is enabled on a device, use
`pm_device_runtime_is_enabled`. This results in the same behaviour when
`CONFIG_PM_DEVICE_RUNTIME=n`, but properly controls the clocks on a
per-instance basis when `CONFIG_PM_DEVICE_RUNTIME=y`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-10 12:53:07 -04:00
Guennadi Liakhovetski
4de0c9abc0 SoC: Intel: ADSP: ACE30: add .imrdata to MMU definitions
On ACE30 platforms adding a section to the linker script isn't
enough, it should also be added to the xtensa_soc_mmu_ranges[] array.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-10 12:52:38 -04:00
Guennadi Liakhovetski
5f4177b47c llext: add context save and restore
Some applications need to save LLEXT context, e.g. when suspending,
to later restore it quickly without a full relinking. Add 2 functions
for context saving and restoring. Since these functions are likely to
change in the future, put them in llext_experimental.c, which depends
on CONFIG_LLEXT_EXPERIMENTAL and is disabled by default.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-10 12:52:38 -04:00
Guennadi Liakhovetski
d8195c05c7 llext: rename _llext_list to llext_list
Beginning symbols or structure field names with an underscore isn't a
widely used style in Zephyr, remove the leading underscore from
_llext_list.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-10 12:52:38 -04:00
Axel Le Bourhis
4a275a06a0 maintainers.yml: Update NXP Platform Wireless scope
Increase the scope of this group to include wireless boards, wireless
socs, hdlc_rcp_if driver, and overlays/conf files in samples.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-06-10 12:52:23 -04:00
Miguel Gazquez
9a30e6bb53 doc: fix file path in sample "perf"
On the documentation of the sample "perf" the path for the script
"stackcollapse" is incorrect.
Fix the path

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-10 12:52:09 -04:00
Alberto Escolar Piedras
2356c1db3c doc native: Clarify that in Windows one needs a VM for native_sim
Be more explicit about the need for a Virtual Machine running Linux if
running in Windows.
Also WSL2 has been out for ~5 years. Let's reduce the amount of info
on how  to run it in WSL1, as probably almost nobody is using it
anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-10 12:51:54 -04:00
Emil Gydesen
44d5e8316d tests: Bluetooth: Fix use of BTP PAST event in BSIM
The is_valid_gap_packet_len check for
btp_gap_ev_periodic_transfer_received_ev referenced a field
that was recently removed.

Modify the check to just check the size, as the event now
has not variable length fields.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-06-10 12:51:32 -04:00
Saravanan Sekar
2c5c0e24e8 samples: drivers: counter: Add support alarm for lp_mspm0g3507
Add a support for timer/counter alarm sample for lp_mspmg3507 board.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-06-10 10:25:10 -04:00
Saravanan Sekar
3fe1eda7fb dts: arm: ti: mspm0: Add a support for TI MSPM0 Timer Counter
Add a support for TI MSPM0 Timer which has sub module for Counter,
Timer Capture and Timer Compare.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-06-10 10:25:10 -04:00
Saravanan Sekar
7a3f79ef86 drivers: counter: Add a support for TI MSPM0 Timer counter
TI MSPM0 SoC series has General Purpose Timer and Advanced control timers
with Counting module, Capture block (measure input signal period/time) and
Compare block (to generate time expiry, output waveform like PWM).

Add a support for counter driver with alarm and counter top functions.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-06-10 10:25:10 -04:00
Krzysztof Chruściński
0261d7d96d drivers: pwm: nrfx: Add option to glitch free 100% duty cycle
IDLEOUT presence in PWM means that there are 3 sources from which
PWM pin can be driven:
- GPIO setting when PWM peripheral is disabled.
- IDLEOUT setting when PWM is enabled.
- PWM Sequence when it is in use.

IDLEOUT setting cannot be changed after enabling PWM so it is
configured to the initial state of the pin. It means that if duty
cycle is 100%, GPIO output is set to 1 but initial pin state was 0
(IDLEOUT setting) there will be a glitch between disabling a PWM
sequence and disabling a PWM peripheral.

By default, PWM driver tries to disable PWM peripheral if all channels
are 0% or 100% duty cycle to safe power. When IDLEOUT feature is
present there will be a short glitch on channels with 100% duty cycle.

In order to avoid that CONFIG_PWM_NRFX_NO_GLITCH_DUTY_100 option is
added (enabled by default). When option is enabled 100% duty cycle
is achieved by PWM sequence and not by driving a GPIO pin. It will
consume more power in cases where all channels are 0% or 100% with
at least one channel set to 100% duty cycle.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-06-10 10:24:16 -04:00
Krzysztof Chruściński
28cfb3fecd dts: pwm: nordic: Add idleout-supported property
Add property which indicates that PWM instance supports IDLEOUT
feature. Add property to all instances that supports it.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-06-10 10:24:16 -04:00
Bjarki Arge Andreasen
39233656b2 tests: spi: loopback: get spi controller before timed transfer
The test which measures and validates transfer times is using the
helper spi_loopback_transceive() to perform the transfer. This
helper internally gets the spi controller, which is useful for
most tests, but for this one, it means the time to get and put
the spi controller is included in the transfer time measurement.

This commit gets the spi controller before calling
spi_loopback_transceive() which results in only the actual
transfer time being measured.

Before this commit, on the nrf54h20:

  START - test_spi_complete_multiple_timed
  Transfer took 745 us vs theoretical minimum 108 us
  Latency measurement: 637 us
   PASS - test_spi_complete_multiple_timed in 0.008 seconds

  START - test_spi_complete_multiple_timed
  Transfer took 700 us vs theoretical minimum 54 us
  Latency measurement: 646 us

      Assertion failed at ...
  Very high latency
   FAIL - test_spi_complete_multiple_timed in 0.027 seconds

After this commit:

  START - test_spi_complete_multiple_timed
  Transfer took 250 us vs theoretical minimum 108 us
  Latency measurement: 142 us
   PASS - test_spi_complete_multiple_timed in 0.008 seconds

  START - test_spi_complete_multiple_timed
  Transfer took 204 us vs theoretical minimum 54 us
  Latency measurement: 150 us
   PASS - test_spi_complete_multiple_timed in 0.008 seconds

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-10 10:23:20 -04:00
Bjarki Arge Andreasen
5163b8c96a tests: spi: loopback: use CONFIG_ZTEST_STACK_SIZE for thread stacks
The spi_loopback test suite creates three internal threads. The
stack sizes for these threads is hardcoded to 512, which is to little
for some socs, namely the nrf54h20 cpuapp if pm device runtime is
enabled. Instead, determine the stack sizes the same way ztest
stack sizes are determined.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-10 10:23:20 -04:00
Maciej Perkowski
61e9de5ec4 twister: Minor quarantine fixes
Statuses of quarantined test cases were not updated properly.
Quarantined tests shouldn't cause errors in integration mode.
Removed obsolate filter type.

Signed-off-by: Maciej Perkowski <maciej.perkowski@nordicsemi.no>
2025-06-10 10:22:51 -04:00
Axel Le Bourhis
b1ad7877f2 samples: bluetooth: enable PM standby on rd_rw612_bga and frdm_rw612
Enable the standby power state by default for the rd_rw612_bga and
frdm_rw612 boards in the peripheral_ht and central_ht Bluetooth samples.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-06-10 13:36:56 +02:00
Benjamin Cabé
e37631eea7 drivers: dac: max22017: return negative errno
Changed the return value for unsupported channel from ENOTSUP to -ENOTSUP

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-10 13:30:33 +02:00
Firas Sammoura
d67cd57fd4 boards: Add drbg0 node to the google_quincy dts file
Enable node drbg0 in the google_quincy device tree. This node is
required to enable the entropy upstream test.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-06-10 13:30:26 +02:00
Romain Jayles
a114b3961b dts: stm32wba: add die_temp node to the nucleo_wba65ri
The die_temp node and die-temp0 alias was missing to the nucleo_wba65ri

Signed-off-by: Romain Jayles <romain.jayles@st.com>
2025-06-10 13:29:47 +02:00
Romain Jayles
778b2dfc40 dts: stm32wba: split temperature calibration address between socs
The temperature calibration addresses of ts-cal1-addr and ts-cal2-addr
are not shared between stm32wba5 and stm32wba6 these addresses are now
separated to the dedicated device-tree

Signed-off-by: Romain Jayles <romain.jayles@st.com>
2025-06-10 13:29:47 +02:00
Alberto Escolar Piedras
f19432a576 include mwdt: Change ifdef from NATIVE_APPLICATION to NATIVE_BUILD
NATIVE_APPLICATION is now deprecated so nobody will set it,
but NATIVE_BUILD should cover the same case this build error
is trying to warn about. Let's use it instead.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-10 13:29:28 +02:00
Alberto Escolar Piedras
3c55048c76 unit_testing: Fix NATIVE_APPLICATION kconfig dependency
NATIVE_APPLICATION is deprecated, let's not use it, let's use instead
NATIVE_BUILD.
unit_testing is not really meant to be covered by NATIVE_APPLICATION,
or NATIVE_BUILD for that matter, as these options are meant for POSIX
arch based targets.
Still, some kconfig options will default to something which will
also be incompatible with unit_testing (primarily CONFIG_PICOLIBC=y)
if we don't set at least NATIVE_BUILD, which would cause some unit
tests to fail. So let's select NATIVE_BUILD to avoid needing to add
extra dependencies on the libCs options.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-10 13:29:28 +02:00
Lyle Zhu
f924af1df5 Bluetooth: Classic: HFP_HF: Fix out of bounds potential issue
There is a potential issue that the index of ACL may out of the
bounds of the array `bt_hfp_hf_pool` if the array size is not aligned
with the array size of `acl_conns`.

To avoid the potential issue, check if the ACL conn index is less than
the array size of `bt_hfp_hf_pool` before accessing the array
`bt_hfp_hf_pool` with ACL conn index.

Fixes #91172

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-06-10 13:29:17 +02:00
Aksel Skauge Mellbye
837b0d303a drivers: clock_control: siwx91x: Fix clock init
New versions of the Wiseconnect HAL require a clock manager init
function to be called as part of clock configuration.

Without this, the default reference clock isn't configured correctly
for use with peripherals.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-06-10 13:29:06 +02:00
Mark Wang
d166d53238 bluetooth: keys: addr is null and assert in bt_keys_find_addr
When there are br connections connected, find_key_in_use call
bt_conn_get_dst to get br connection's dst and bt_conn_get_dst return NULL,
then bt_keys_find_addr aseert because addr is NULL.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-06-10 13:28:55 +02:00
Jérôme Pouiller
69202a7908 tests: drivers: memc: Simplify filters
Currently, every boards that implement a memory controller add an entry
in tests/drivers/memc/ram/testcase.yaml. However, the configuration is
exactly the same for all the boards. So, we can just consider that any
board that declare "memc" capability has to be tested.

For the record here are the boards that has the memc capability:

    adi/apard32690/apard32690_max32690_m4.yaml
    adi/eval_adin1110ebz/adi_eval_adin1110ebz.yaml
    adi/max32690evkit/max32690evkit_max32690_m4.yaml
    arduino/giga_r1/arduino_giga_r1_stm32h747xx_m7.yaml
    arduino/portenta_h7/arduino_portenta_h7_stm32h747xx_m7_1_0_0.yaml
    arduino/portenta_h7/arduino_portenta_h7_stm32h747xx_m7_4_10_0.yaml
    atmel/sam/sam4s_xplained/sam4s_xplained.yaml
    renesas/da1469x_dk_pro/da1469x_dk_pro.yaml
    sifive/hifive_unmatched/hifive_unmatched_s7.yaml
    sifive/hifive_unmatched/hifive_unmatched_u74.yaml
    silabs/radio_boards/siwx917_rb4342a/siwx917_rb4342a.yaml
    st/stm32f746g_disco/stm32f746g_disco.yaml
    st/stm32f7508_dk/stm32f7508_dk.yaml
    st/stm32f769i_disco/stm32f769i_disco.yaml
    st/stm32h735g_disco/stm32h735g_disco.yaml
    st/stm32h745i_disco/stm32h745i_disco_stm32h745xx_m7.yaml
    st/stm32h747i_disco/stm32h747i_disco_stm32h747xx_m7.yaml
    st/stm32h750b_dk/stm32h750b_dk.yaml
    st/stm32h757i_eval/stm32h757i_eval_stm32h757xx_m7.yaml
    st/stm32h7b3i_dk/stm32h7b3i_dk.yaml
    st/stm32h7s78_dk/stm32h7s78_dk.yaml
    st/stm32n6570_dk/twister.yaml

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-10 13:28:48 +02:00
Jérôme Pouiller
033ffd1a2c boards: silabs: siwx91x: Fix test for memory controller
tests/drivers/memc/ram requires the board contains a node labeled
"memc"/.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-10 13:28:48 +02:00
Benjamin Cabé
be504b000d west: spdx: allow to generate for different SPDX versions
When support for SPDX 2.3 was added, it effectively dropped support for
SPDX 2.2, which in retrospect was a bad idea since SPDX 2.2 is the
version that is the current ISO/IEC standard.
This commit adds a `--spdx-version` option to the `west spdx` command
so that users can generate SPDX 2.2 documents if they want.
Default is 2.3 given that's effectively what shipped for a few releases
now, including latest LTS.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-10 13:28:38 +02:00
Benjamin Cabé
22b089432c scripts: west: spdx: handle error codes in makeSPDX()
Add missing error handling of some of the calls to writeSPDX().

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-10 13:28:38 +02:00
Benjamin Cabé
90c6d7f1ba scripts: west: remove excludes for west_commands/spdx.py
File passes all ruff linter checks so no exclude rules needed anymore

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-10 13:28:38 +02:00
Benjamin Cabé
4655e0d9d4 west: spdx: remove unnecessary format strings
As reported by sonarqube, "String formatting should be used correctly"

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-10 13:28:38 +02:00
Szymon Janc
256401ed2b tests: Bluetooth: Tester: Add support for PAST
This adds support for BTP commands and events required for running
PAST tests.

struct btp_gap_ev_periodic_transfer_received_ev is also adjusted
to match BTP specification.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-06-10 13:28:31 +02:00
ZhongYao Luo
821e9f3c6a Bluetooth: SDP: Don't clear l2cap chan on disconnect
- Remove memset on bt_l2cap_br_chan during SDP
  disconnect to prevent overwriting resources
  (e.g., rtx_work) still in use by L2CAP,
  which handles channel cleanup itself.
- Delete unused partial_resp_queue to clean up code.

Signed-off-by: ZhongYao Luo <LuoZhongYao@gmail.com>
2025-06-10 13:28:24 +02:00
Lu Jia
634b72a76c Bluetooth: Add API to obtain ACL connection corresponding to a2dp
When connecting two devices with an application, it
is necessary to differentiate which is the remote device.

Signed-off-by: Lu Jia <jialu@xiaomi.com>
2025-06-10 13:28:16 +02:00
Pieter De Gendt
9983ff708e modules: openthread: platform: logging: Take kconfig into account
Currently all calls to otPlatLog with debug log level are printed.
Cleanup logging.c

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-10 12:26:04 +02:00
Lyle Zhu
2a1bcc2919 Bluetooth: Classic: L2CAP: Fix issue is received data len less than 2
If the received data length is less than 2 in none basic mode, the
L2CAP channel connection will be dropped.

Only check the received data length if the `SAR` is
`BT_L2CAP_CONTROL_SAR_START`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-06-10 12:25:55 +02:00
Lyle Zhu
63dbc4c7f9 Bluetooth: Classic: L2CAP: Support zero-length SDU in none basic mode
Support zero-length SDU sending if the L2CAP channel connection is not
in basic mode.

Flag the zero-length SDU buffer and clear it if it has been processed.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-06-10 12:25:55 +02:00
Lyle Zhu
cad801a314 MAINTAINERS: Add samples/bluetooth/classic/* to Bluetooth Classic
Add the path `samples/bluetooth/classic/*` to Bluetooth Classic.
And remove the path from Bluetooth LE.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-06-10 12:25:46 +02:00
Lyle Zhu
14eba9d2d9 Samples: Bluetooth: HF: Move handsfree and handsfree_ag to './classic'
Move `handsfree` and `handsfree_ag` to sub-folder './classic'.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-06-10 12:25:46 +02:00
Pieter De Gendt
b69fa39904 boards: nxp: mimxrt1170_evk: Add arduino GPIO/SPI/UART header nodes
The MIMXRT1170-EVK/EVKB has an Arduino compatible header, add device
tree nodes for the corresponding pins.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-10 12:25:18 +02:00
Mark Wang
263cc93827 tests: Bluetooth: Classic: Add uuid128 service test
add one sdp service that contains uuid128, improve test to save bumble
hci log.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-06-10 12:13:18 +02:00
Tomasz Chyrowicz
13a0f0504c sysbuild: Allow to use file suffix DTS overlays
Allow to add an image-specific DTS overlay, that is applied based on the
FILE_SUFFIX.
Up to this point, it was possible to specify such Kconfig files
(sysbuild/<image>_<file_suffix>.conf),
but it did not work with dts overlays
(sysbuild/<image>_<file_suffix>.overlay).
This commit aligns the logic of finding configuration files for both
scenarios mentioned above.

Ref: NCSDK-NONE

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-06-10 12:13:10 +02:00
Szymon Janc
ad37e04d17 test: Bluetooth: Tester: Fix build with EATT disabled
This allows to disable EATT when needed.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-06-10 12:13:01 +02:00
Jean Nanchen
bc097a6fe6 drivers: i2c: stm32: fix build error after timeout patch
Follow-up to PR #88631: fix missing variable declarations introduced in
the STM32 I2C LL driver after adding timeouts to blocking loops.

The missing declarations caused a build failure when interrupts were
disabled (CONFIG_I2C_STM32_INTERRUPT=n).

Fixes a regression introduced in #88631.

Signed-off-by: Jean Nanchen <jean.nanchen@gmail.com>
2025-06-10 12:10:59 +02:00
Anas Nashif
4f4ad2e9c3 maintainers: add options to area command
Add options to area command:

--without-maintainers
--without-collaborators

To show areas without any collaborators or maintainers.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-10 12:10:40 +02:00
Anas Nashif
047c9f58d8 scripts: get_maintainers: improve display of areas table
Improve layout and make it more readable.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-10 12:10:40 +02:00
Leifu Zhao
3555c26053 drivers: serial: sedi: add ifndef to uart busy set
The uart_busy_set and uart_busy_clear are only used when runtime
pm is not enabled. So add #ifndef CONFIG_PM_DEVICE_RUNTIME to
enclose these two functions.

Signed-off-by: Leifu Zhao <leifu.zhao@intel.com>
2025-06-10 12:10:01 +02:00
Clément Laigle
b921db6608 driver: sensor: as6212: fix sampling frequency
AS6212 supports 0.25Hz, 1Hz, 4Hz, and 8Hz sampling frequencies, but the
current driver supports 0.25Hz, 1Hz, 4Hz, and 16Hz sampling frequencies.

Signed-off-by: Clément Laigle <c.laigle@catie.fr>
2025-06-10 12:09:51 +02:00
Fabrice DJIATSA
905e3032a0 boards: stm32n6570_dk: add irq-gpios property
There was a missing irq-gpios property that cause
building failure on lvgl and display samples.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-10 12:09:25 +02:00
Mathieu Choplain
4282d67ac2 soc: st: stm32h7: synchronize cores during boot properly
On dual-core STM32H7, the Cortex-M4 core is supposed to wait until the
Cortex-M7 initializes the system before starting to execute. CM7 should
signal this by locking a specific HSEM, which CM4 should poll until locked.
However, the logic on the Cortex-M4 side was reading the "RLR" register of
HSEM, which *locks the semaphore on read* - in turn, this makes the CM4
start directly since it sees that the semaphore is locked (by itself).

Use proper LL API to read HSEM status - which will read the "R" register
instead - to make sure CM4 doesn't begin execution earlier than it should.

Suggested-by: hglassdyb
Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-10 12:08:35 +02:00
Mathieu Choplain
86c5135982 soc: st: stm32: hsem: update description for fifth HSEM
The fifth HSEM (#define is equal to 4 due to zero-indexing) is used on
STM32H7 to synchronize the two cores. Update the comment above the SEMID
define to reflect this alternate usage. Also remove the associated define
CFG_HW_ENTRY_STOP_MODE_MASK_SEMID, which is unused.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-10 12:08:35 +02:00
Mathieu Choplain
97e2dd28b3 soc: st: stm32: hsem: sort hardware semaphore IDs by value
Reorder the HSEM semaphore ID definitions to be sorted by ascending value.
The dummy defines are also changed to be sorted in the same order. The
definitions for STM32MP1 are already in an order that follows this order
so they don't need to be changed.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-10 12:08:35 +02:00
Julien Panis
a92339b8cd dts: arm: ti: cc23x0: Add DMA mode support to UART module
Add support to use DMA mode with cc23x0 UART module. This consists in
specifying the DMA channels and peripherals.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-06-10 12:08:22 +02:00
Julien Panis
fa199b6f6c drivers: serial: cc23x0: Add support for DMA mode
Two DMA channels are assigned to TX and RX respectively:
- A TX DMA request is asserted when there is space in the FIFO.
- A RX DMA request is asserted when data is in the FIFO.

When DMA is enabled for a peripheral, the DMA transfer completion is
signaled on the peripheral's interrupt only (here UART's interrupt).
It is not signaled on the DMA dedicated interrupt.

Also, when DMA is enabled for a peripheral, the DMA controller stops
the normal transfer interrupts for this peripheral from reaching the
NVIC (the interrupts are still reported in the interrupt registers of
the peripheral). Thus, when a large amount of data is transferred using
DMA, instead of receiving multiple interrupts from the peripheral as
data flows, the NVIC receives only one interrupt when the transfer
completes (unmasked peripheral error interrupts continue to be sent
to the NVIC).

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-06-10 12:08:22 +02:00
Julien Panis
b3a32a95d1 dts: arm: ti: cc23x0: Add DMA mode support to ADC module
Add support to use DMA mode with cc23x0 ADC module. This consists in
specifying the DMA channel and peripheral.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-06-10 12:07:54 +02:00
Julien Panis
45a8a0f0c6 drivers: adc: cc23x0: Add support for DMA mode
The ADC has a dedicated interface for communicating with the DMA.
The ADC module provides four interrupt sources (one for each
conversion result storage register) which can be configured to
source the DMA trigger.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-06-10 12:07:54 +02:00
Sai Santhosh Malae
6dcf2fdf34 drivers: adc: siwx91x: adc_api test app support
Add siwx917_rb4338a board overlay and congig files

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-06-10 12:07:33 +02:00
Sai Santhosh Malae
bfe4065657 drivers: adc: siwx91x: Add siwx91x ADC driver
Implement ADC driver for siwx91x device

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-06-10 12:07:33 +02:00
Sai Santhosh Malae
9c436baf85 drivers: adc: siwx91x: Analog pin initialization
Modified pinctrl driver to configure analog pins for
ULP and HP modes.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-06-10 12:07:33 +02:00
Sai Santhosh Malae
34982b1465 drivers: adc: siwx91x: DTS changes for siwx91x ADC driver
1. Create a YAML file for ADC node
2. Add ADC node in the siwx917.dtsi

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-06-10 12:07:33 +02:00
Sai Santhosh Malae
6d5e217262 drivers: adc: siwx91x: ADC clock initialization for siwx91x
Clock driver changes required for initializing the ADC clock
for the siwx91x driver

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-06-10 12:07:33 +02:00
Rahul Gurram
b0de827661 modules: hal_silabs: Imported SDK files
Imported mem pool quota files from the SDK driver
Adding mempool quota files significantly improved
the performance of the SDK driver.While the basic
buffer pool caused issues during long running UDP
data transfers,the mempool quota demonstrated
stable and reliable performance.

Signed-off-by: Rahul Gurram <rahul.gurram@silabs.com>
2025-06-10 12:07:12 +02:00
Adam Mitchell
dcf94aaf7b dts: arm: st: h7: Add support for STM32H742
Adds base Devicetree files for H742Xi/g variants

Signed-off-by: Adam Mitchell <adam.mitchell@brillpower.com>
2025-06-10 08:51:45 +02:00
dependabot[bot]
3172f85b08 ci: github: bump the actions-deps group across 1 directory with 8 updates
Bumps the actions-deps group with 8 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) | `9` | `10` |
| [EnricoMi/publish-unit-test-result-action](https://github.com/enricomi/publish-unit-test-result-action) | `2.19.0` | `2.20.0` |
| [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) | `4.1.0` | `4.2.1` |
| [codecov/codecov-action](https://github.com/codecov/codecov-action) | `5.4.2` | `5.4.3` |
| [github/codeql-action](https://github.com/github/codeql-action) | `3.28.17` | `3.28.18` |
| [zephyrproject-rtos/action-zephyr-setup](https://github.com/zephyrproject-rtos/action-zephyr-setup) | `1.0.6` | `1.0.7` |
| [zgosalvez/github-actions-ensure-sha-pinned-actions](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions) | `3.0.24` | `3.0.25` |
| [ossf/scorecard-action](https://github.com/ossf/scorecard-action) | `2.4.1` | `2.4.2` |



Updates `dawidd6/action-download-artifact` from 9 to 10
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](07ab29fd4a...4c1e823582)

Updates `EnricoMi/publish-unit-test-result-action` from 2.19.0 to 2.20.0
- [Release notes](https://github.com/enricomi/publish-unit-test-result-action/releases)
- [Commits](afb2984f4d...3a74b29574)

Updates `aws-actions/configure-aws-credentials` from 4.1.0 to 4.2.1
- [Release notes](https://github.com/aws-actions/configure-aws-credentials/releases)
- [Changelog](https://github.com/aws-actions/configure-aws-credentials/blob/main/CHANGELOG.md)
- [Commits](ececac1a45...b475783126)

Updates `codecov/codecov-action` from 5.4.2 to 5.4.3
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](ad3126e916...18283e04ce)

Updates `github/codeql-action` from 3.28.17 to 3.28.18
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](60168efe1c...ff0a06e83c)

Updates `zephyrproject-rtos/action-zephyr-setup` from 1.0.6 to 1.0.7
- [Commits](f7b70269a8...b2453c7296)

Updates `zgosalvez/github-actions-ensure-sha-pinned-actions` from 3.0.24 to 3.0.25
- [Release notes](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions/releases)
- [Commits](2d6823da40...fc87bb5b5a)

Updates `ossf/scorecard-action` from 2.4.1 to 2.4.2
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md)
- [Commits](f49aabe0b5...05b42c6244)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-version: '10'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: EnricoMi/publish-unit-test-result-action
  dependency-version: 2.20.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
- dependency-name: aws-actions/configure-aws-credentials
  dependency-version: 4.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
- dependency-name: codecov/codecov-action
  dependency-version: 5.4.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: github/codeql-action
  dependency-version: 3.28.18
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: zephyrproject-rtos/action-zephyr-setup
  dependency-version: 1.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: zgosalvez/github-actions-ensure-sha-pinned-actions
  dependency-version: 3.0.25
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: ossf/scorecard-action
  dependency-version: 2.4.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-10 08:51:26 +02:00
Arunmani Alagarsamy
0faba15717 net: l2: wifi: Fix mode change issue in Wi-Fi shell
The help message for the wifi mode -s command indicates it sets
the Wi-Fi mode to station. However, the Zephyr Wi-Fi shell subsystem
was incorrectly using a get operation instead of set.

This commit corrects the behavior to properly set the Wi-Fi mode,
aligning the implementation with the help message.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-06-10 08:51:15 +02:00
Wenbin Zhang
b9ec30f129 drivers: spi_ll_stm32: Add LOG to indicate that DMA cannot be enabled
Add LOG to indicate the reason why DMA cannot be enabled

Signed-off-by: Wenbin Zhang <freey7955@gmail.com>
2025-06-10 08:50:49 +02:00
Benjamin Cabé
55769dc501 drivers: mdio: fix typo in macro name
s/SOC_SERIES_STM32F1X/CONFIG_SOC_SERIES_STM32F1X/

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-10 08:48:20 +02:00
Jamie McCrae
f8717d756b doc: hardware: porting: soc_porting: Fix cluster typo
Fixes 2 minor issues in the documentation

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-06-10 08:48:13 +02:00
sudarsan N
1d51942c50 drivers: adc: fix overflow and div-by-zero in adc_ad7124_odr_to_fs
Add check for odr <= 0 and cast odr to uint32_t before multiplication
to avoid integer overflow and division by zero.

Fixes: CID 489220

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-10 08:48:05 +02:00
Tom Hughes
6f433a93ab arch: riscv: core: Add support for CONFIG_ISR_TABLES_LOCAL_DECLARATION
Adjust the linker scripts to use the same setup as ARM for
CONFIG_ISR_TABLES_LOCAL_DECLARATION.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-06-10 08:47:51 +02:00
Tahsin Mutlugun
836b6c2ca4 tests: drivers: dma: Add MAX32657 ns board overlay files
Enable 'chan_blen_transfer' and 'loop_transfer' tests for MAX32657EVKIT
nonsecure variant.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-06-10 08:47:42 +02:00
Furkan Akkiz
5ddbb22478 tests: drivers: dma: Add MAX32657 boards overlay files
Enable 'chan_blen_transfer' and 'loop_transfer' tests for MAX32657EVKIT.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-06-10 08:47:42 +02:00
Furkan Akkiz
d448e92848 boards: adi: max32657evkit: Enable DMA for MAX32657 boards
Add DMA into '.yaml' files.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-06-10 08:47:42 +02:00
Furkan Akkiz
e5fb161de4 dts: arm: adi: Add MAX32657 DMA instances and binding file
Add DMA0 and DMA1 nodes to MAX32657 dtsi file and add binding file
for DMA slots.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-06-10 08:47:42 +02:00
Tahsin Mutlugun
f7d315cf49 drivers: dma: max32: Handle channel index conversion in HAL
Handle SoC-level differences in channel numbering logic in HAL.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-06-10 08:47:42 +02:00
Furkan Akkiz
85ef719eb2 drivers: dma: Add a wrapper function to fix build error
For MAX32657, 'MXC_DMA_EnableInt' function requires DMA instance
and this causes build error. To fix this, created wrapper version
of this function and update driver with it.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-06-10 08:47:42 +02:00
jacob kung
2fe357a592 drivers: dma: atcdmac300: add flush chain_block when Data cache is enabled
Add cache flush to ensure dma_chain is written back to memory
for DMA coherence

Signed-off-by: jacob kung <jacob.kung@egistec.com>
2025-06-10 08:47:34 +02:00
Qiankun Li
f31a411770 drivers: wifi: nxp: Modify shim driver to support btwt changes.
Align struct wlan_btwt_config_t in shim driver
with nxp wifi driver.

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-06-10 08:47:25 +02:00
Qiankun Li
448b787c82 net: l2: wifi: Modify btwt_setup usage.
Soft ap supports WIFI_BTWT_AGREEMENT_MAX BTWT sessions.
The BTWT parameters for each session can be different.

The current usage can only set one set of parameters.
All sessions follow this set of parameters.

Add enhance code to support setting different
BTWT parameters for every sessions.

Usage:
wifi twt btwt_setup <sta_wait> <offset>
<twtli> <session_num>
<id0> <mantissa0> <exponent0> <nominal_wake0>
<id1> <mantissa1> <exponent1> <nominal_wake1>
<idx> <mantissax> <exponentx> <nominal_wakex>
The total number of '0, 1, ..., x' is session_num

For example:
wifi twt btwt_setup 0 0 0 2 0 112 10 128 1 32 10 64

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-06-10 08:47:25 +02:00
Van Petrosyan
8d2010e1e1 sensor: sht4x: add device power management support
Registers driver with pm_device_driver_init(). Peform
software reset on TURN_ON. Added a small delay after
power-up

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-06-09 16:45:30 -07:00
Nimish Tambe
936d0278bd posix: fnmatch: fix bugs in fnmatch(), see issue #55186
all tests in tests/posix/c_lib_ext/src/fnmatch.c seem to pass
except one (which is still commented)

Signed-off-by: Nimish Tambe <nimisht@gmail.com>
2025-06-09 17:05:40 -05:00
Al Semjonovs
452fe47765 arch: Add config for downstream toolchains to support local ISR tables
Add config for local toolchains to indicate support for local
declaration of ISR tables.

Signed-off-by: Al Semjonovs <asemjonovs@google.com>
2025-06-09 15:04:25 -07:00
Benjamin Cabé
ec01159440 drivers: clock_control: wch_rcc: remove duplicate reg write
Removed a redundant register write to FLASH->ACTLR

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 15:03:20 -07:00
Joel Holdsworth
08d496b5f5 usb: device_next: Disassociate USB contexts from classes
The usbd_class_remove_all removes all registered classes from a
configuration. However, it previously left the uds_ctx back-pointer to the
usdb_context set, meaning that if the class is re-registered with the
usbd_register_class function, this fails with the error message "Class
registered to other context at different speed" due to uds_ctx being set to
another context.

This patch corrects the issue by clearing udc_ctx after usbd_class_shutdown
has been called.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-06-09 15:02:55 -07:00
Kesavan Yogeswaran
d5fc087690 cmake: Fix warning if a Zephyr library is created in app-mode
zephyr_append_cmake_library attempts to warn the user if a user calls it
to create a Zephyr library while the build is in application mode. At
that stage of the build, the list of Zephyr libraries has already been
processed so the function is effectively a no-op.

This heuristic used to determine if the build was in kernel mode or
application mode checked for the presence of the zephyr_prebuilt target.
This check was broken by a previous commit that renamed this target.

This commit fixes the heuristic by checking for the zephyr_pre0 target.

This was tested by calling zephyr_append_cmake_library from some
application build files, building the application, and seeing the
warning only for the call I added. No warnings were printed for any
Zephyr internal libraries.

Link: https://github.com/zephyrproject-rtos/zephyr/pull/35887
Link: https://github.com/zephyrproject-rtos/zephyr/pull/39959

Signed-off-by: Kesavan Yogeswaran <hikes@google.com>
2025-06-09 15:02:01 -07:00
Benjamin Cabé
5cdcaf7b7c drivers: sensor: veaa_x_3: fix broken config initialization
Fixed typos in the preprocessor macros for pressure range initialization
Unfortunately this particular configuration is not covered in CI since
build_all test has pressue-range "D2" and the broken code was concerning
"D9"

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 15:00:26 -07:00
Robert Lubos
00bd154d84 samples: net: echo_client/server: Lower log level for OpenThread
OpenThread stack prints just too much data at the info log level,
completely obfuscating the output of the sample, which prints a lot on
its own. Therefore, lower the log level for OT logs.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-09 14:59:35 -07:00
Robert Lubos
c63ca134c6 net: openthread: Fix tasklet error printed on boot
OpenThread tries to signal pending tasklets during initialization, which
currently generate an error, as the work queue configured to handle
tasklets is initialized later. This is not a fatal issue, as the
initialization code on the Zephyr side triggers a work item immediately
after the work queue was initialized, but it doesn't look good to have
errors printed on boot.

Therefore, move the work queue initialization before the OpenThread
stack initialization, so that tasklets triggered from OT side can be
signalled properly w/o an error.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-09 14:59:35 -07:00
Quy Tran
452f2b150c drivers: spi: Update unsupported bit width in SPI driver
Add condition to check the unsupported bit width for Renesas
RA spi and spi_b driver

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-06-09 14:58:30 -07:00
Andreas Wolf
dbdfd96c61 drivers: spi: spi_pico_pio: Fix data size issue
To convey the correct data size, use the 'data->dfs' value instead
of '1' when moving the SPI context to the next buffer.

Signed-off-by: Andreas Wolf <awolf002@gmail.com>
2025-06-09 14:56:34 -07:00
Benjamin Cabé
67cfd32e04 drivers: input: esp32: fix threshold calculation
Fix a bug in the touch threshold calculation where channel_num was
incorrectly used instead of channel_sens.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:54:30 -07:00
Benjamin Cabé
3d97b76438 drivers: input: esp32: fix reference voltage assignment
Fixed a copy-paste error where `refl` configuration value was not
properly assigned.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:53:22 -07:00
Benjamin Cabé
c83fbaee14 drivers: pwm: remove duplicate macro definition
Removed duplicate definition of TIM_CC1E macro

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:52:45 -07:00
Benjamin Cabé
9d785706df pinctrl: raspberrypi: rp2350: fix copy-paste error
correct the entry for PWM_3B_P23

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:52:18 -07:00
Benjamin Cabé
3d59a44ab9 drivers: sensor: bma4xx_emul: add missing break statement
Add a missing break statement in set_channel function

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:51:47 -07:00
Benjamin Cabé
1350918ac2 drivers: gpio: cc23x0: return negative error codes
fixed a couple occurrences of not returning -errno.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:51:17 -07:00
Benjamin Cabé
f72942067a drivers: led: fix LED_BRIGTHNESS_MAX typo
Renames LED_BRIGTHNESS_MAX to LED_BRIGHTNESS_MAX in led.h and all
in-tree users of the macro.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:50:33 -07:00
Benjamin Cabé
036a76a4cb drivers: clock_control: esp32c6: fix modem clock source selection
Properly default to MODEM_CLOCK_LPCLK_SRC_RC_SLOW in modem LP
clock source selection

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:49:38 -07:00
Benjamin Cabé
ba17577d7c drivers: sensor: adi: adxl362: change return type of ret variable
Updated the return type of the 'ret' variable in the
adxl362_attr_set_thresh function to int

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:47:41 -07:00
Benjamin Cabé
e744c53fc0 drivers: serial: fix Rx pin configuration in lpuart_esp32
Updated the Rx pin configuration in the lpuart_esp32 driver to fix a
typo and use correct MUX function.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:46:35 -07:00
Benjamin Cabé
48566d834d drivers: sensor: mmc56x3: add error handling in mmc56x3_chip_init
The return code of several initialization functions was being ignored.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:45:27 -07:00
Benjamin Cabé
5fd565e6b4 drivers: sensor: mmc56x3: add missing return statement
Added a missing return statement in the mmc56x3_decoder_get_size_info
causing incorrect size calculation for single channel data

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:45:27 -07:00
Benjamin Cabé
854713cc88 drivers: sensor: fix sensor_handlers checks
z_vrfy_sensor_reconfigure_read_iodev function was performing a
a K_SYSCALL_MEMORY_READ check using an incorrect structure type.

z_vrfy_sensor_get_decoder wasn't properly checking output
parameter `decoder`

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:44:36 -07:00
Benjamin Cabé
fd7c3b4c1c drivers: sensor: paa3905: fix condition in SQE acquisition check
Corrected the logical operator (||, not |) in the condition that checks
for successful acquisition of RTIO SQEs.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:43:42 -07:00
Benjamin Cabé
df2179f2a4 drivers: sensor: icm45686: fix condition in SQE acquisition check
Corrected the logical operator (||, not |) in the condition that checks
for successful acquisition of RTIO SQEs.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 14:43:42 -07:00
Pavel Maloletkov
26cf7a0064 net: http: fix __z_http_service_define fields incorrect order
Fixes an error:
error: designator order for field 'http_service_desc::backlog'
does not match declaration order in 'const http_service_desc'
When compiled for C++

Signed-off-by: Pavel Maloletkov <pavllick@gmail.com>
2025-06-09 14:43:04 -07:00
Muzaffar Ahmed
918d76918f drivers: wifi: siwx91x: Fix TWT wake interval unit conversion
Fixed an incorrect TWT wake interval unit conversion (256 was
incorrectly swapped with 1024)

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-06-09 14:41:20 -07:00
Martin Hoff
91f4082a52 drivers: serial: ns16550: clock subsys correction
Fix clock subsys property selection when having multiple uart device
that uses ns16550 driver.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-06-09 14:40:36 -07:00
Alessandro Manganaro
bbef47fc56 drivers: flash: stm32wba: fix build issue when BLE enabled
Specific flash driver is used for stm32wbax when ble is
enabled. A simple typo error was fixed to properly build
all the samples where flash and ble are enabled,
such as the peripheral one.

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-06-09 14:39:34 -07:00
Robin Kastberg
0fc490956b iar: linker: Do --whole_archive linking
Instead of getting names of all object files, link
against libraries using `--whole_archive`
Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-06-09 14:37:05 -07:00
Raffael Rostagno
8ed4d044d1 tests: dma: esp32c2: esp8684: Add test config
Add test config for chan_blen_transfer suite.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-06-09 14:35:51 -07:00
Raffael Rostagno
04cf4e1389 boards: esp8684_devkitm: Add DMA indication
Add DMA support indication to board's YAML file.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-06-09 14:35:51 -07:00
Raffael Rostagno
0dd3274a92 dts: esp32c2: esp8684: Add GDMA support
Add GDMA peripheral to device tree.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-06-09 14:35:51 -07:00
Sudan Landge
46a7b290e5 doc: arm: MPS4 Corstone-320
Add documentation for MPS4 board.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-06-09 14:35:12 -07:00
Sudan Landge
feb8f7766e tests: update for MPS4
MPS4, similar to MPS3 Corstone-310, splits code between DTCM and SRAM
and thus requires similar handling.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-06-09 14:35:12 -07:00
Sudan Landge
97c501f0f3 modules: ethos_u: arm: update for MPS4
Update support for MPS4 which has default 256 MACs as per FVP.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-06-09 14:35:12 -07:00
Sudan Landge
5a3c4941a2 pinctrl: add support for mps4
Add MPS4 pinctrl support by referring to
`mps4/common/partition/platform_base_address.h`
from TF-M's main branch.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-06-09 14:35:12 -07:00
Sudan Landge
d1e830fe0d boards: arm: add support for MPS4 Corstone-320
Add initial support for the MPS4 Corstone-320 platform, including board
and SoC definitions. This platform features a Cortex-M85 CPU with an
Ethos-U85 NPU and runs in simulation using the FVP_Corstone_SSE-320
Fixed Virtual Platform.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-06-09 14:35:12 -07:00
Raffael Rostagno
5ba88753cc wifi: esp32s3: Fix IRQ allocation
Update HAL to fix wifi IRQ allocation for ESP32-S3.
HAL code depends on ESP_WIFI_TASK_CORE_ID symbol to properly build
the reserved IRQs table. If define is not present, IRQ 0 (wifi) is
not reserved, causing interrupt allocation problems.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-06-09 14:33:12 -07:00
Gang Li
306d9afa90 boards: shields: nxp_m2_wifi_bt: add nxp_m2_2ll_wifi_bt module
Added seperate shield overlay for supported M.2 2LL module to enable
BT or WIFI or Both.

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2025-06-09 14:30:04 -07:00
Guotao Zhang
b2c4397185 drivers: bluetooth: hci: nxp: add Kconfig for IW610
Add Kconfig BT_NXP_IW610.

Signed-off-by: Guotao Zhang <guotao.zhang@nxp.com>
2025-06-09 14:30:04 -07:00
Gang Li
6b62df129b drivers: wifi: nxp: add Kconfig for IW610
Add Kconfig NXP_IW610, NXP_IW610_MURATA_2LL_M2,
NXP_IW610_RD_USD

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2025-06-09 14:30:04 -07:00
Gang Li
299ebfb812 manifest: update hal_nxp to add support for IW610
Add support for IW610

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2025-06-09 14:30:04 -07:00
Chaitanya Tata
f4b58982e7 manifest: nrf_wifi: Pull TX optimization
Pull fix to free TX packets early once handed over to nRF70.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-06-09 14:29:25 -07:00
Julien Racki
31460e667a arch: arm: clear r7 to match aarch64 smp implementation
move mov r7, #0 to use it on both branches as aarch64
implementation uses wzr which returns 0 on read
but r7 might have an undefined value after a reset.

Signed-off-by: Julien Racki <julien.racki@st.com>
2025-06-09 14:28:50 -07:00
Harris Tomy
ab6c6b44f3 dts: stm32u5: Removes trailing 'U's in dt props
Integers in devicetree are always signed.
See https://github.com/zephyrproject-rtos/zephyr/pull/89978#discussion_r2124113613

signed-off-by: Harris Tomy <harristomy@gmail.com>
2025-06-09 14:26:11 -07:00
Harris Tomy
d280d89214 dts/kconfig: stm32u5: add f9 and clean up dts node locations
Adds skeleton dtsi for u5f9 for u5g9 to inherit from

Moves the peripheral nodes into dtsi's that actually has the peripheral
and includes them for SoC's higher in the series where applicable.

signed-off-by: Harris Tomy <harristomy@gmail.com>
2025-06-09 14:26:11 -07:00
Harris Tomy
97876b5d1e dts: stm32u5: add memory package variants
Corrects stm32u53/45xx variants and adds u575Xg and u599Xi

Signed-off-by: Harris Tomy <harristomy@gmail.com>
2025-06-09 14:26:11 -07:00
Fabio Baltieri
c1b36d7ea7 boards/shields: arduino: add few zephyr_i2c labels
Some of these are allegedly ESLOV connectors and have an extra
identification pin, but there's adapters on the market to use them with
qwiic modules, let's label them so they can be used with other
zephyr_i2c shields.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-09 14:25:20 -07:00
Fabio Baltieri
c90c2eb0ea boards: add the zephyr_i2c to a bunch of adafruit and sparkfun boards
These boards have a JST SH I2C connector, add the zephyr_i2c label so
they can be used with shields made for those modules.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-09 14:25:20 -07:00
Fabio Baltieri
3df8b15db7 boards: use zephyr_i2c instead of grove_i2c
These are equivalent and there's adapters on the market, having a single
label allows using it shields with any other board with connectorized
i2c busses.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-09 14:25:20 -07:00
Fabio Baltieri
34954d19be boards: use zephyr_i2c instead of stemmma_qt_i2c
Change the two current instances of stemma_qt_i2c to zephyr_i2c, using
an unified label allows using this in shields.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-09 14:25:20 -07:00
Jordan Yates
25249a010a dts: st: stm32l4p5: re-add SDMMC idma property
The `idma` property added in 94847be1 was removed in the re-organisation
in 306dea6f. Re-add the property at a more generic location.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-09 10:27:03 +01:00
Pieter De Gendt
e5759f469a scripts: zephyr_module.py: Take EXTRA_ZEPHYR_MODULES variable into account
When running purely with Python, the extra modules set with environment
variables are not taken into account.
If left empty, check the environment variables.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-09 10:26:54 +01:00
Phuc Pham
8b438d2288 tests: drivers: gpio: Add support for RZ/G2UL-SMARC
Enable GPIO driver tests for RZ/G2UL-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-06-09 10:26:45 +01:00
Phuc Pham
14ab7d8494 drivers: gpio: Add support for RZ/G2UL
Add GPIO support for RZ/G2UL

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-06-09 10:26:45 +01:00
Phuc Pham
6c15907b7a tests: drivers: serial: Add support for Renesas RZ/G2UL-SMARC
Enable serial driver tests for RZ/G2UL-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-06-09 10:26:45 +01:00
Phuc Pham
da26dbd08a drivers: pinctrl: Add support for Renesas RZ/G2UL
Add pinctrl support for Renesas RZ/G2UL

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-06-09 10:26:45 +01:00
Phuc Pham
82b4a05946 boards: renesas: Add minimal support for Renesas RZ/G2UL-SMARC
Add minimal support for board Renesas RZ/G2UL-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-06-09 10:26:45 +01:00
Phuc Pham
872d5cfc14 dts: arm: renesas: Add support for Renesas RZ/G2UL
Add devicetree to support for Renesas RZ/G2UL

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-06-09 10:26:45 +01:00
Phuc Pham
adeaad5e6f soc: renesas: Add initial support for Renesas RZ/G2UL
Add initial support for Renesas RZ/G2UL

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-06-09 10:26:45 +01:00
Takuya Sasaki
330848cfdc dts: scobc_a1: Add FPGA related definitions
Adds SC-OBC Module A1 FPGA System Register and System Monitor
definitions to DTS.

  - System Register
    Registers for system control of SC-OBC Module A1
    Link: https://sc-obc-fpga-technical-reference-manual.readthedocs.io/ja/latest/#org19067cd

  - System Monitor
    Module for monitoring the SC-OBC Module A1 system
    Link: https://sc-obc-fpga-technical-reference-manual.readthedocs.io/ja/latest/#org8832978

Signed-off-by: Takuya Sasaki <takuya.sasaki@spacecubics.com>
2025-06-09 10:26:27 +01:00
Takuya Sasaki
cf1dc334f5 boards: scobc_a1: Fix YAMLLint error
Fixes the YAMLLint error as below:

   YAMLLint (indentation):wrong indentation: expected 4 but found 2
   File:boards/sc/scobc_a1/board.yml
   Line:12
   Column:3

Signed-off-by: Takuya Sasaki <takuya.sasaki@spacecubics.com>
2025-06-09 10:26:27 +01:00
Takuya Sasaki
3638c435af boards: scobc_a1: Change HRMEM and UART definitions
The following changes have been made in the FM (Flight Model) of the
`SC-OBC Module A1`:

  - Change in the UART Core register address
    Link: https://sc-obc-fpga-technical-reference-manual.readthedocs.io/ja/latest/#orgecb2e01

  - Change in the size of HRMEM (High-Reliability Memory)
    Link: https://sc-obc-fpga-technical-reference-manual.readthedocs.io/ja/latest/#orgc3b1ecc

As a result, we have defined the EM board revision as `1.0.0` and the
FM as `2.0.0`. The EM configuration has been moved to
`scobc_a1_1_0_0.overlay`.

Signed-off-by: Takuya Sasaki <takuya.sasaki@spacecubics.com>
2025-06-09 10:26:27 +01:00
Takuya Sasaki
bfabc50da4 boards: scobc_a1: Increase number of IRQs
Increase number of IRQs for SC-OBC Module A1 to 32, including
reserved entries.

Signed-off-by: Takuya Sasaki <takuya.sasaki@spacecubics.com>
2025-06-09 10:26:27 +01:00
Takuya Sasaki
9c97bdd373 doc: scobc_a1: Rename board name
Rename the board name to `scobc-a1`, and update the board's full name
to `SC-OBC Module A1`. And update the output of the `Hello World`
sample to match the latest Zephyr version.
Then, The supported feature section was replaced with a hw-directive
block.

Signed-off-by: Takuya Sasaki <takuya.sasaki@spacecubics.com>
2025-06-09 10:26:27 +01:00
Takuya Sasaki
479ea7a387 boards: scobc_a1: Rename board name to scobc-a1
In the EM (Engineering Model), the board was referred to as
"Space Cubics Module 1". Starting with the FM (Flight Model) release,
we are officially renaming it to:

  `SC-OBC Module A1`

Accordingly, the board name is updated from `scobc_module1` to
`scobc_a1`.

Signed-off-by: Takuya Sasaki <takuya.sasaki@spacecubics.com>
2025-06-09 10:26:27 +01:00
Fabrice DJIATSA
054efe6f7a tests: drivers: adc: adc_api: boards: turn of time slicing
set CONFIG_TIMESLICE_SIZE to 0 to disable time slicing.

Certain boards like nucleo_g071rb, nucleo_f091rc,
nucleo_l073rz will not start consecutive samplings as fast
as possible.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-09 10:26:03 +01:00
Jordan Yates
5f5a534445 tests: adc: adc_rescale: test adc_raw_to_microvolts_dt
Test that the output of `adc_raw_to_microvolts_dt` matches the output of
`adc_raw_to_millivolts_dt` to the resolution of the latter.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-09 10:25:52 +01:00
Jordan Yates
c0ca636692 adc: add microvolt conversion functions
Add a family of functions that convert to microvolts instead of
millivolts. The resolution of an ADC with a 600 mV reference and a 12
bit output (nRF SAADC for example) is an order of magnitude better than
millivolts (0.146 mV), even before considering non-unity gains.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-09 10:25:52 +01:00
Jordan Yates
8ab300d63e adc: 64bit gain inversion function
Add a variant of `adc_gain_invert` that operates on an `int64_t` instead
of `int32_t`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-09 10:25:52 +01:00
Chris Friedt
4b52921df5 tests: posix: xsi_single_process: remove unnecessary min_ram filter
The xsi single process test suite requires something like 256 bytes
of heap space. There is no legitimate reason to require 24kB of
ram.

This gets rid of a twister error

```
Error found: portability.xsi.single_process.newlib on
qemu_cortex_m0/nrf51822 (Not enough RAM but is one of the integration
platforms)
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-06-09 08:57:14 +02:00
Benjamin Cabé
4524bdf9f5 drivers: clock_control: rpi_pico: fix frequency count typo
fixed what looked like a copy-paste error

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 08:56:33 +02:00
Benjamin Cabé
998ee87635 drivers: flash: use negative errno in Renesas RA HP
fixed an incorrect "return EINVAL" where it should
be -EINVAL.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-09 08:56:19 +02:00
Loic Domaigne
0cc0034eba boards: arduino: uno_r4: enable all ioports needed by the arduino header
The arduino Uno R4 has only ioport1 enabled in the dts. The arduino
header however uses ioport0,1,3 [minima variant] and ioport 0,1,3,4
[wifi variant]. This causes a build failure for some of the pins.

This change makes sure than an application can use any arduino pins.

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-06-09 08:56:11 +02:00
Jiafei Pan
cc4b5ee048 boards: imx93_evk: refine board document
Refine the board document to address Zephyr could run both Cortex-A
Core and Cortex-M33 Core.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-09 08:55:58 +02:00
Tim Lin
9d67375d66 MAINTAINERS: Add maintainer for ITE EC platform and drivers
Add maintainer for ITE EC board, SoC, and driver files.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-06-09 08:55:44 +02:00
Arkadiusz Cholewinski
471aa1b477 PM: Record metrics in power management tests
Add metrics recording functionality to power management tests.

Signed-off-by: Arkadiusz Cholewinski <arkadiuszx.cholewinski@intel.com>
2025-06-09 08:55:31 +02:00
Pieter De Gendt
ffeca1695a scripts: logging: dictionary: log_parser: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-09 08:55:14 +02:00
Pieter De Gendt
3a8106b598 scripts: logging: dictionary: utils: Fix redundant open flags
Fix issue reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-09 08:55:14 +02:00
Pieter De Gendt
5759f5584e scripts: logging: dictionary: mipi_syst: Format imports
Fix format issue reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-09 08:55:14 +02:00
Pieter De Gendt
57df7883b9 scripts: logging: dictionary: log_parser_v3: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-09 08:55:14 +02:00
Pieter De Gendt
18a8e5c5b5 scripts: logging: dictionary: log_parser_v1: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-09 08:55:14 +02:00
Pieter De Gendt
03fbe7fb3f scripts: logging: dictionary: log_parser: Format imports
Fix formatting issue reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-09 08:55:14 +02:00
Pieter De Gendt
4fdd6c6cdc scripts: logging: dictionary: log_database: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-09 08:55:14 +02:00
Pieter De Gendt
00727ed5b1 scripts: logging: dictionary: data_types: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-09 08:55:14 +02:00
Pieter De Gendt
6af247e227 scripts: logging: dictionary: database_gen: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-09 08:55:14 +02:00
Duy Nguyen
9e5aa827bb tests: drivers: spi: Add configuration for SPI test on RX130
Add device tree overlay for spi test on RSKRX130 board

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-09 08:55:05 +02:00
Duy Nguyen
87560b2f1a boards: renesas: Add SPI property node for RSK_RX130 board
This commit update pin control setup and spi node enable
for RSKRX130 board

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-06-09 08:55:05 +02:00
Duy Nguyen
e7c025db24 drivers: spi: Initial support SPI driver on Renesas RX130
Initial commit for SPI driver support on RSK_RX130@512KB board
with RSPI module

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
Signed-off-by: Minh Tang <minh.tang.ue@bp.renesas.com>
2025-06-09 08:55:05 +02:00
Quy Tran
22b373cefd manifest: hal_renesas: Update commit ID for SPI HAL support
Update commit ID for hal_renesas for SPI support

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-06-09 08:55:05 +02:00
Benjamin Cabé
98ba754013 drivers: sensor: infineon: fix typo in calibration gain assertion
Corrected a typo in the calibration gain assertion

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-07 15:39:15 +01:00
TOKITA Hiroshi
77d1276446 tests: drivers: entropy: api: add qemu_cortex_a53 configuration
Add `qemu_cortex_a53` target which has the `virtio,entropy` device.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-07 15:39:06 +01:00
TOKITA Hiroshi
dd9b85f749 tests: drivers: build_all: virtio: add VIRTIO MMIO build test
Add the `qemu_cortex_a53` configuration to run the build test
for the VIRTIO MMIO driver.
To add this test, we have split the virtio-pci and virtio-mmio test cases.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-07 15:39:06 +01:00
TOKITA Hiroshi
a6dec8ee4a boards: qemu: cortex_a53: add virtio-mmio configuration
Add `virtio-mmio` nodes that are retrieved from qemu internal
devicetree dump, to dts.

Also, enable the virtio-rng device on the command line.

Note: Ideally, it would be possible to dynamically generate the
command line by looking at the devicetree state,
but this PR is a fixed implementation to simplify it.
This will be addressed separately.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-07 15:39:06 +01:00
TOKITA Hiroshi
3f7e8f498e drivers: virtio: add VIRTIO MMIO transport driver
Add virtio-mmio driver

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-07 15:39:06 +01:00
TOKITA Hiroshi
3720c9b805 drivers: entropy: virtio: Unify the notation to VIRTIO
Since `VirtIO` is not the official notation,
unify the name to `VIRTIO`.
In the text, `Virtio` and `virtio` can also be used
depending on the context.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-07 15:39:06 +01:00
Benjamin Cabé
0a2b92c21f drivers: sensor: memsic: fix typos in Kconfig
Corrected spelling errors in the Kconfig file for the MC3419
accelerometer driver

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-07 13:30:13 +01:00
Derek Snell
e9c8ed1b88 boards: nxp: frdm_mcxn947 and mcx_n9xx_evk: enable LPADC1 clock
Enable clock for LPADC1.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-06-07 13:29:37 +01:00
Sayooj K Karun
3416ed2847 doc: kernel: data_structures: Add documentation for min-heap
Includes explanation of the min-heap’s properties, constraints and
explains about the uses cases of min-heap. It also contains references
to Sample Application and min-heap API

Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2025-06-07 13:29:24 +01:00
Sayooj K Karun
fc6f9e23ce samples: lib: min_heap: Add min-heap usage example
Introduce a simple sample application demonstrating the usage of the
min-heap API. The sample performs basic insert and remove operations
and logs the results to the console.

Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2025-06-07 13:29:24 +01:00
Sayooj K Karun
ada616b83f tests: lib: min_heap Add unit tests for min-heap API
Introduce test suite using Ztest for validating the min-heap API.
Covers insertion, removal, ordering, and custom comparators.

The tests verify correct behavior under both static and dynamic
initialization modes.

Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2025-06-07 13:29:24 +01:00
Sayooj K Karun
cd7c78e92e lib: min_heap: Add min-heap data structure
Introduce a binary min-heap implementation as a generic data structure
for use in kernel and application code. A min-heap always maintains
the smallest element at the root, making insertion and removal of the
minimum element efficient (O(log n)).

The API allows both static and dynamic initialization, supports custom
comparators.

Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2025-06-07 13:29:24 +01:00
Lin Yu-Cheng
b2e13bd6c3 driver: crypto: add crypto driver for rts5912
Add crypto driver for Realtek rts5912

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-06-07 13:29:07 +01:00
Ivan Wagner
e571f8bab4 drivers: sensor: lsm6dso: added comments in preproc endif
Added comments ad the end of preprocessor if else endif blocks

Signed-off-by: Ivan Wagner <ivan.wagner@tecinvent.ch>
2025-06-06 20:11:46 +01:00
Ivan Wagner
4aa4ee1256 drivers: sensor: lsm6dso: improvements on tilt and tap triggers
Improvements include: check error codes, log level adjustments,
removed unreachable code, disable tilt when not used, call optimized
interrupt handler when tilt and tap are not used.

Signed-off-by: Ivan Wagner <ivan.wagner@tecinvent.ch>
2025-06-06 20:11:46 +01:00
Ivan Wagner
b9cd08b2ea drivers: sensor: lsm6dso: add support for tilt and tap triggers
Tilt or Tap can be selected via config and further tap parameters can be
configured via DT.

Signed-off-by: Ivan Wagner <ivan.wagner@tecinvent.ch>
2025-06-06 20:11:46 +01:00
Piotr Kosycarz
d7006195ac tests: drivers: spi: spi_loopback: configure spi latency expectation
Allow to customize scaling factor used to compare ideal spi transfer
and measured one.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-06-06 20:11:32 +01:00
Carles Cufi
dc006e6b5f arch: arm: cortex-m: Reduce ZLI latency by not disabling them in wrapper
The difference between __irq_disable() and irq_lock() is that the former
essentially translates to `cpsid i`, whereas `irq_lock()` translates to
setting BASEPRI (on cores with BASEPRI). This means that using
irq_lock() does not disable zero-latency interrupts (ZLIs), which
reduces the potential execution latency of ZLIs.

In both isr_wrapper and _arch_isr_direct_pm() (which is just
really an implementation of ISR_DIRECT_PM()), we were using
__irq_disable() to disable all interrups, including ZLIs. But the code
executed with interrupts disabled handles waking up from idle, and so
must only be protected against regular interrupts being executed, not
ZLIs, which should have no effect on the correct execution of the code.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-06 20:11:18 +01:00
Fin Maaß
d0b10fc7c6 west.yml: nxp: fix value of DT_ENUM_HAS_VALUE
make value of DT_ENUM_HAS_VALUE lowercase
in the nxp hal.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 20:10:40 +01:00
Fin Maaß
238f05c782 drivers: pwm: nxp: fix value of DT_ENUM_HAS_VALUE
make value of DT_ENUM_HAS_VALUE lowercase.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 20:10:40 +01:00
Pieter De Gendt
afff1c67e5 drivers: spi: spi_nxp_lpspi: Simplify property or default value
Replace UTIL_AND(DT_INST_NODE_HAS_PROP(... construction with the
DT_INST_PROP_OR helper macro.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-06 20:10:12 +01:00
Armando Visconti
a10f807994 drivers/lis2dux12: add read_and_decode APIs support
Add RTIO async and RTIO stream functionalities that enables,
among all the other things, the sensor data streaming from FIFO.

RTIO stream supports following triggers:

  - SENSOR_TRIG_FIFO_WATERMARK
  - SENSOR_TRIG_FIFO_FULL
  - SENSOR_TRIG_DATA_READY

Following FIFO parameters has to be defined in device tree to
correctly stream sensor data:

  - fifo-watermark
  - accel-fifo-batch-rate

Currently the driver can decode FIFO content with Accelerometer
16-bit samples.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-06-06 09:11:04 -07:00
Jukka Rissanen
a2ff40e112 net: pkt: Fix net_pkt_pull() documentation
Fix the net_pkt_pull() documentation and mention that the
function can remove data from the start of the network packet.
The function is meant to work similar way net_buf_pull() but
it can handle multiple net_buf fragments.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-06 09:09:49 -07:00
Greg Leach
ae42950bd5 boards: ezurio: bl654_usb: Add board.cmake file
Add board.cmake file for build system compatibility.

Signed-off-by: Greg Leach <greg.leach@ezurio.com>
2025-06-06 09:08:47 -07:00
Pisit Sawangvonganan
0abee981fe drivers: disk: nvme: fix include guard typo
Fix include guard name typo in `nvme.h` and `nvme_helpers.h`.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-06-06 09:08:33 -07:00
Jilay Pandya
6cc35eea81 tests: adltc2990: introduce mock_i2c_error function
Introduce mock_i2c_error function in emulator in order to emulate i2c
errors for various registers

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-06 09:08:22 -07:00
Jilay Pandya
529029e4e3 tests: adltc2990: increase coverage
increase test coverage for adltc2990 and fix a bug found during testing

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-06 09:08:22 -07:00
Derek Snell
f7c97c91c9 modules: hal_nxp: mcux-sdk-ng: drivers.cmake: fix flashiap inclusion
Corrects Kconfig operators to set
CONFIG_MCUX_COMPONENT_driver.romapi_flashiap for some MCXN SOCs.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-06-06 16:01:57 +02:00
Fin Maaß
df165766c7 samples: mgmt: hawkbit: add stm32h573i_dk
Add stm32h573i_dk as tested platform.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 16:01:51 +02:00
Fin Maaß
d7b08aa2f3 samples: mgmt: hawkbit: remove shell testcase
The hawkBit shell is already enabled in the
prj.conf, so there is no need for a seperate
testcase.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 16:01:51 +02:00
Fin Maaß
c80f3f8b2d samples: mgmt: hawkbit: support sysbuild
Add support for sysbuild in the hawkBit sample.
Documentation is added later.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 16:01:51 +02:00
Fin Maaß
c4a99d11ba samples: mgmt: hawkbit: enable ddi gateway security
Enable ddi gateway security by default in the
sample, as no security is now deprecated.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 16:01:51 +02:00
Fin Maaß
bb61d6ac78 samples: mgmt: hawkbit: don't overwrite settings
Don't overwrite the server address and port
with the Kconfig default, when the hawkBit
shell is activated. The shell can also be used
to set it and we don't want to overwrite that
value on reboot.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 16:01:51 +02:00
Fin Maaß
23f7be46fc samples: mgmt: hawkbit: enable net shell by default
Enable net shell by default

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 16:01:51 +02:00
Carles Cufi
61cdcb3383 kernel: Guard SYS_CLOCK_HW_CYCLES_PER_SEC to avoid spurious empty macro
If SYS_CLOCK_EXISTS is not enabled, then the SYS_CLOCK_HW_CYCLES_PER_SEC
still gets created, but with no value. This causes the code generation
in misc/generated/CMakeLists.txt to create an empty assembly macro:

`.equ  CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC,`

which then causes a build error.

Disable SYS_CLOCK_HW_CYCLES_PER_SEC entirely when SYS_CLOCK_EXISTS is
disabled to fix this.

This is a follow-up to 03f46db859.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-06 15:01:34 +01:00
Mahesh Mahadevan
c5787e8809 drivers: flash: Fix unused function warning on LPC55S69
is_area_readable() function is no longer used for the LPC55XXX
series.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-06-06 14:49:45 +01:00
Andrzej Głąbek
ec06e638f2 drivers: spi_nrfx_spim: Fix SPIM_REQUESTS_CLOCK() and calls to it
This is a follow-up to commit a068709171.

As the SPIM_REQUESTS_CLOCK() macro changed the type of its parameter,
all of the calls to it need to be updated accordingly. Also the call to
DT_NODELABEL() needs to be removed from that macro as DT_CLOCKS_CTLR()
already returns a node identifier.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-06 14:49:36 +01:00
Alberto Escolar Piedras
e6e5985613 manifest: Update nRF hw models to latest
Update the HW models module to:
9eb489fdcde23d4f69ded78bca872bfc31b5ee79

Including the following:
9eb489f CLOCK (54): Add test interfaces to control duration and to fail
	tuning
787d8c8 CLOCK (52,53): Add test interface control start duration
8bd3a5f NHW_54_AAR_CCM_ECB: Do not inform about the ECB being already
	stopped
ca72ca7 RADIO: Add CodedPhy to old comment mentioning what is supported

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-06 14:49:25 +01:00
Carles Cufi
3b8e1fa8df doc: kernel: Clarify relationship between direct and ZLI interrupts
The documentation did not state clearly that any zero-latency IRQ must
also be declared as a direct ISR. This is critical because failure to do
so may cause race conditions between the ZLI and regular ISRs when
executing the preable/postamble code in regular interrupts.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-06 14:49:16 +01:00
Ayush Singh
c3b3aab77e boards: beagle: pocketbeagle: a53: Enable LEDs
Tested with the blinky example.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-06-06 14:49:07 +01:00
Ayush Singh
5aefdf3e60 dts: arm64: ti: ti_am62x_a53: Add MAIN_GPIO*
Currently only 32 lines are enabled in both, since the GPIO subsystem
does not support > 32 lines.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-06-06 14:49:07 +01:00
Adam Kondraciuk
d0785ce58f tests: kernel: timer: cycle64: Add support for GRTC
For GRTC timer a longer timeout is required:
(2 ^ 32) * 2 * 1us

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-06 14:48:53 +01:00
Raffael Rostagno
0b7c2e42dd boards: esp8684_devkitm: Add i2c support
Add configs for i2c support.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-06-06 14:48:37 +01:00
Raffael Rostagno
a08ec3c0ec soc: esp32c2: esp8684: Add pinctrl for i2c
Add pinctrl configuration for i2c peripheral.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-06-06 14:48:37 +01:00
Raffael Rostagno
6c5ccc2a24 west.yml: hal_espressif: Update HAL for i2c support
Update HAL for i2c support (ESP32-C2/ESP8684).

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-06-06 14:48:37 +01:00
Richard Skriwanek
870703fe85 samples: circular_dma: fix DMA config for nucleo_c031c6
The circular DMA sample incorrectly configured channel 3 for the
NUCLEO-C031C6 board, but this MCU has only 3 channels (0 - 2).
Fixed by changing to channel 2.

Signed-off-by: Richard Skriwanek <richy@fnc.at>
2025-06-06 14:48:24 +01:00
Shan Pen
b194050402 boards: fk743m5: add pyocd runer support
add pyocd support and fix debug section in doc

Signed-off-by: Shan Pen <bricle031@gmail.com>
2025-06-06 14:48:13 +01:00
Shan Pen
0b65f62ddb boards: fk743m5: add sdram support
add sdram support, tested with tests/drivers/memc/ram

Signed-off-by: Shan Pen <bricle031@gmail.com>
2025-06-06 14:48:13 +01:00
Michael Hope
45e55d639d drivers: pwm: fix an off-by-one error in the CH32V PWM driver
The period is the reload register plus 1. Adjust. Note that the
earlier code handles the cases where the pulse time is zero or equal
to the period.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-06 14:48:00 +01:00
Qiang Zhao
ace509fc38 west.yml: update hal_nxp
- Fix Frequency adjust issue for NETC PTP CLOCK

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-06-06 14:47:53 +01:00
Qiang Zhao
e5513ab18b dts: arm: nxp_imx95_m7: add ptp_clock node
Added ptp_clock node on imx95 core m7

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-06-06 14:47:53 +01:00
Qiang Zhao
59ae9c19de dts: bindings: Add NXP NETC PTP binding
Add binding for NXP NETC PTP Clock device

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-06-06 14:47:53 +01:00
Qiang Zhao
ac5bae59ab drivers: ptp_clock: Add NXP NETC PTP Clock Driver
Add Driver for NXP NETC PTP Clock device

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-06-06 14:47:53 +01:00
Adam Mitchell
f70485f088 dts: arm: st: h7: Correct dma-request value for H743 DMAMUX2
Reduces value of dma-requests to 12 as specified in RM0433

Signed-off-by: Adam Mitchell <adam.mitchell@brillpower.com>
2025-06-06 12:03:37 +02:00
Alvis Sun
9f1935923b driver: serial: npcx: add PM support for npck3 series.
This commit adds power management support to the UART driver for npck3
series chip.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-06-06 12:03:25 +02:00
Alvis Sun
bf0fd155ae drivers: serial: npcx: add serial driver support for npck3
This commit adds serial driver support for npck3.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-06-06 12:03:25 +02:00
Bjarki Arge Andreasen
d9cbd4ae1d drivers: gpio: smartbond: fix PM_DEVICE_DEFINE usage
The gpio_smartbond driver incorrectly uses the static
PM_DEVICE_DEFINE() and PM_DEVICE_GET() macros when creating a driver
instance from a devicetree instance number.

Update to use PM_DEVICE_DT_INST_DEFINE() and
PM_DEVICE_DT_INST_GET() macros.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-06 11:52:50 +02:00
Andreas Schuster
3060ee2c5c samples: boards: add nucleo_g0b1re board with mco output
Add overlay file to enable the MCO1&2 output clock on the nucleo_g0b1re.

Signed-off-by: Andreas Schuster <andreas.schuster@schuam.de>
2025-06-06 11:52:40 +02:00
Andreas Schuster
81049c5b75 dts: arm: stm32g0: add mcos node
The newly added mcos node contains two childreen `mco1` and `mco2` that can
be used to output different clocks on the MCO pins of the stm32g0
microcontrollers.

Signed-off-by: Andreas Schuster <andreas.schuster@schuam.de>
2025-06-06 11:52:40 +02:00
Andreas Schuster
41c6257046 include: dt-bindings: stm32g0_clock: add mco macros
Adds macros to be able to use the microcontroller clock output (MCO) on the
STM32G0 microcontroller.

Signed-off-by: Andreas Schuster <andreas.schuster@schuam.de>
2025-06-06 11:52:40 +02:00
Luca Burelli
8e765b78a2 cmake: add_llext_target: fix command expansion
This fixes the invocation of the 'elfconvert' and 'slid_inject' commands
in the `add_llext_target` function by ensuring that the arguments are
expanded correctly before passing them to the shell.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-06-06 11:52:31 +02:00
Tom Hughes
b6766aeb6b cmake: compiler: Remove -fshort-enums
"-fshort-enums" changes the ABI. It's not enabled for gcc, so it's not
clear why it's enabled for clang (only ARM) and armclang, other than it
looks like some users of these toolchains may be linking against code
that is compiled with "-fshort-enums".

As an example, when compiling with clang, CONFIG_LTO, and a toolchain
built without "-fshort-enums", the linker warns:

ld.lld: error: linking module flags 'min_enum_size': IDs have
conflicting values in
'/usr/armv7m-cros-eabi/usr/lib/libc++_static.a(string.cpp.o at 784090)'
and 'ld-temp.o'

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-06-06 11:52:22 +02:00
Pieter De Gendt
c773f42013 scripts: list_hardware: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-06 11:52:17 +02:00
Pieter De Gendt
b2687468b5 scripts: list_boards: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-06 11:52:17 +02:00
Dave Joseph
963fda5e4a drivers: mbox: TI Secure Proxy mbox drivers
Added secure proxy mailbox driver for supported devices using
the binding ti,secure-proxy. This is used to communicate with
a device manager running on a separate core via a secure proxy
mailbox for TI K3 devices. Required for enabling TISCI layer
communication.
Refer: https://software-dl.ti.com/tisci/esd/latest/1_intro/TISCI.html

Tested on MAIN_CORTEX_R5_0 on AM243x EVM.
Refer:https://www.ti.com/lit/pdf/spruim2

Co-developed-by: Vaishnav Achath <vaishnav.a@ti.com>
Signed-off-by: Dave Joseph <d-joseph@ti.com>
2025-06-06 11:52:07 +02:00
Benjamin Cabé
8c6b2c8c88 doc: _extensions: boards: retrieve archs info dynamically
Rather than hardcoding the human readable full names of the archs in the
board catalog, we now retrieve them dynamically from the archs.yml file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-06 10:29:44 +02:00
Benjamin Cabé
a89c79275f scripts: hwm_v2: add full_name property for archs
Allow to specify a human readable full name for archs that can then be
leveraged e.g. in the documentation.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-06 10:29:44 +02:00
Benjamin Cabé
061cbb7bc0 scripts: hwmv2: cache pykwalify validators
speed up the various list_*.py scripts by means of caching the
pykwalify core object so that schemas don't get unnecessarily
processed multiple times.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-06 10:29:38 +02:00
Henrik Lindblom
24b4ce189f drivers: stm32: dma: fix external dcache support
Several drivers checked for the presense and availability of data cache
through Kconfig symbol. This is supported according to the current
documentation, but the symbol DCACHE masks two types of cache devices: arch
and external caches. The latter is present on some Cortex-M33 chips, like
the STM32U5xx. The external dcache is bypassed when accessing internal
SRAM and only used for external memories.

In commit a2dd232410 ("drivers: adc: stm32: dma support") the rationale
for gating dcache for adc_stm32 behind STM32H7X is only hinted at, but
reason seems to be that it was the only SOC the change was tested on. The
SOC configures DCACHE=y so it is most likely safe to swap the SOC gate for
DCACHE.

The DCACHE ifdefs are now hidden inside the shared stm32_buf_in_nocache()
implementation.

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2025-06-06 10:19:58 +02:00
Peter Mitsis
811302e6d2 kernel: sys_heap: Fix chunk size request validation
Updates the heap code to ensure that when converting the requested
number of bytes to chunks, we do not return a value that exceeds
the number of chunks in the heap.

Fixes #90306

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-06-06 10:12:19 +02:00
Marcel Krüger
45f3b71b39 input_gpio: Fix not using latest pin state on pm resume
When the device was suspended and the pin level changed during
that time, the pin level of course isn't updated in the pins cb_data.
Once the device is resumed, this leads to potentially having
a wrong value in the pin state data leading to swallowing the first
event due to comparing the stored level vs. the new level before
reporting.

Also added some `const`s and deleted an unused struct element.

Signed-off-by: Marcel Krüger <marcel@mkgr.dev>
2025-06-06 10:12:11 +02:00
Abderrahmane JARMOUNI
b31251b4b4 drivers: stm32: i2c rtio: Fix 'timings' array size
'timings' is an array of 'struct i2c_config_timing' (3 x uint32_t).
'i2c_timings_##index' is an array of uint32_t (hence the cast when it
is assigned to 'timings'). Therefore 'ARRAY_SIZE(i2c_timings_##index)' is
off by a factor 3 when used for n_timings.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-06-06 10:11:59 +02:00
Yuval Peress
d17956a074 build: Support SYSROOT_DIR in native_sim and clang
When running naive sim builds using clang, respect user passed
SYSROOT_DIR values. Additionally, allow overriding the archive tool
when calling Make for the native simulator.

Add the sysroot (if available) to the native_simulator target and
TOOLCHAIN_C_FLAGS and TOOLCHAIN_LD_FLAGS. Additionally pass CMAKE_AR
to NSI_AR.

Signed-off-by: Yuval Peress <peress@google.com>
2025-06-06 10:11:49 +02:00
Yishai Jaffe
8a26316f17 boards: st: nucleo_l433rc_p: add die_temp, vref, and vbat nodes
Added die_temp, vref, and vbat nodes and their aliases to the
nucleo_l433rc_p board.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-06-06 10:11:42 +02:00
Yishai Jaffe
7fe85f8cb4 drivers: serial: stm32: simplify logic
Simplify the logic for the `uart_stm32_cfg2ll_databits` function
regarding `LL_USART_DATAWIDTH_9B` being defined or not.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-06-06 10:11:29 +02:00
Jan Behrens
0f22fde988 boards: shields: Added Mikroe Stepper 18 Click Shield
This shield includes a drv8426 stepper driver and a mcp4726 dac for
current control. Note that the micro-step pins are controlled by
physical switches and are thus not available in Zephyr.

Signed-off-by: Jan Behrens <jan.behrens@navimatix.de>
2025-06-06 10:11:17 +02:00
Jan Behrens
a3d298cb6a boards: shields: Added Mikroe Stepper 19 Click Shield
This shield includes a ti drv8424 stepper driver that is controlled
via gpio. Some of these pins are only available via the tca9538a gpio
expander on the shield.

Signed-off-by: Jan Behrens <jan.behrens@navimatix.de>
2025-06-06 10:11:17 +02:00
Francois Ramu
cbe3e18396 drivers: flash: stm32h7RS flash size is fixed to 64KBytes
Fix the flash size to 64KB for the stm32H7RS series.
Restore the get_size API function for that series.
This is a specificity of this stm32 mcu (RefMan RM0477).

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-06 10:11:07 +02:00
Alain Volmat
48a8716dec shields: st_b_cams_imx_mb1854: add stm32n6 specifc confs
Add configuration for the STM32N6 DCMIPP driver which currently
requires to have the sensor pixel format and resolutions set via
KConfig

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-06 10:10:58 +02:00
Alain Volmat
314953b19b dts: arm: st: mp13: add dcmipp node in stm32mp135.dtsi
Add node describing the DCMIPP available on stm32mp135.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-06 10:10:58 +02:00
Alain Volmat
e4f6be0e5d boards: st: stm32n6570_dk: csi_22pins connector related labels
Add csi_22pins_connector and related label in order to use
shields relying on csi_pins_connector.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-06 10:10:58 +02:00
Alain Volmat
9600fc523c boards: st: stm32n6570_dk: Add IC17/IC18 settings for DCMIPP/CSI
Add configuration of the IC17 and IC18 clock dividers, used
by the dcmipp and csi IPs in the stm32n6.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-06 10:10:58 +02:00
Alain Volmat
56e38ee034 dts: arm: st: n6: add dcmipp node
Add node describing the dcmipp in stm32n6.dtsi

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-06 10:10:58 +02:00
Alain Volmat
fea5c421b4 drivers: video: dcmipp: add functions for external ISP functions usage
Add weak functions and their call within the dcmipp driver so that
externally provided ISP control functions can be called by the
driver at right timing in order to perform the control of the
ISP part of the DCMIPP.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-06 10:10:58 +02:00
Alain Volmat
cd8dccf211 drivers: video: introduction of the stm32 DCMIPP driver
The STM32 Digital Camera Memory Interface Pixel Processor (DCMIPP)
is a multi-pipeline camera interface allowing to capture
and process frames from parallel or CSI interfaces depending on its
version.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-06 10:10:58 +02:00
Alain Volmat
a3f9d52d10 dts-bindings: video: addition of stm32 dcmipp description
Addition of description for the STM32
Digital Camera Memory Interface Pixel Processor (DCMIPP).

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-06 10:10:58 +02:00
Florijan Plohl
e0bd460de0 drivers: sensor: Add icm40627 6-axis accelerometer driver
Initial driver for the icm40627 from Invensense/TDK, a 6-axis
accelerometer with gyroscope and temperature sensing capabilities.

Signed-off-by: Florijan Plohl <florijan.plohl@norik.com>
2025-06-06 10:10:23 +02:00
Noah Pendleton
b377543628 samples: fs: typo in project name
Looked like copy-paste typo from the `samples/subsys/usb/mass` sample.

Signed-off-by: Noah Pendleton <noah.pendleton@gmail.com>
2025-06-06 08:46:04 +02:00
Carles Cufi
03f46db859 include: sys_clock: Fix compilation when SYS_CLOCK_EXISTS is disabled
If `CONFIG_SYS_CLOCK_EXISTS=n`, then
`CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC` will likely not be defined at all.
Fix the compilation by moving the check for it being `== 0` to a
separate preprocessor #if statement.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-06 08:45:57 +02:00
Tim Lin
97cdedec80 drivers/timer: it51xxx: Compensate time calculation to reduce drift
The EC timer runs at 9.2 MHz, which leads to a non-integer number of
ticks per microsecond. This causes slight overestimation when delays
are computed using whole ticks (e.g., using 10 ticks for 1 µs).
To address this, the busy wait calculation is adjusted with a
compensation factor to minimize cumulative timing error over time.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-06-06 08:45:43 +02:00
Axel Le Bourhis
3c6a3826ad soc: nxp: rw: adjust ACL bt_conn_tx contexts to match Controller's
RW61x's controller uses 8 ACL packets, adjust `BT_BUF_ACL_TX_COUNT`
to match it.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-06-06 08:45:33 +02:00
Axel Le Bourhis
df2dac7a68 soc: nxp: mcxw: adjust ACL bt_conn_tx contexts to match Controller's
MCXW7x's controller uses 12 ACL packets, adjust `BT_BUF_ACL_TX_COUNT`
to match it.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-06-06 08:45:33 +02:00
Axel Le Bourhis
928aa4a196 drivers: bluetooth: hci_nxp: fix discarding multi part adv reports
In case of extended advertising, advertising data can be reported in
parts, so we shouldn't discard them.
Instead, only discard the legacy advertising reports.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-06-06 08:45:33 +02:00
Szymon Czapracki
c91b98c829 tests: Bluetooth: tester: Instructions for btsnoop and RTT logging
Updated the tester README with configuration options required to
build with support for btsnoop and SEGGER RTT log backends. This
helps developers capture logs for debugging and analysis during
Bluetooth testing.

Signed-off-by: Szymon Czapracki <szymon.czapracki@codecoup.pl>
2025-06-06 08:45:23 +02:00
Benjamin Cabé
17ab862169 scripts: ci: add vermin (min python version check)
Add a compliance check that allows to flag when a given file requires a
Python version higher than 3.10 (minimum supported version in Zephyr at
the time of writing) since not all Python scripts are tested against
3.10 in CI and we want to avoid introducing changes that could break
users.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-06 08:45:13 +02:00
Benjamin Cabé
710a7272ba scripts: requirements: update pinned dependencies
Run uv-compile to update to latest minor versions of dependencies.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-06 08:45:13 +02:00
Neil Chen
4427880741 boards: nxp: frdm_mcxa156: Correct macros values
Update macros CLOCK_INIT_CORE_CLOCK and BOARD_BOOTCLOCKFRO96M_CORE_CLOCK
value to 96Mhz, not 960Mhz.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-06-06 08:45:02 +02:00
Mike J. Chen
9564a5e07b drivers: dma_mcux_lpc: fix bug using INPUTMUX
The typical way of calling INPUTMUX_AttachSignal() is to
bracket it around INPUTMUX_Init() and INPUTMUX_Deinit()
calls because we can reduce power consumption by not
keeping the interface powered when not changing INPUTMUX.

This driver was violating that convention, which caused
it to not coexist well with other code that followed the
usage convention because the INPUTMUX might be initialized
or not depending on execution order with the other modules.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-06-06 08:44:54 +02:00
Mike J. Chen
2923504780 soc: nxp: imxrt: imxrt5xx: add Fusion F1 DSP selects
Add select for GEN_HANDLERS to use the more efficient
generated interrupt handlers.

Add select for HIFI3, which are the SIMD related registers.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-06-06 08:43:52 +02:00
Alvis Sun
c2f45ca588 drivers: i3c: npcx: add support for target reset request handling
This patch introduces handling for the target reset request (RSTACT)
in the I3C controller.
It enables the controller to send a broadcast RSTACT command along with
the target reset pattern in a single frame.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-06-06 08:43:32 +02:00
Tomasz Leman
e70765391f soc: intel_adsp: Fix typo in cavs/power.c comment
This patch makes cosmetic changes to cavs/power.c by updating comments to
Doxygen style, fixing typos.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-06-06 08:43:15 +02:00
Tomasz Leman
c26b0767f2 soc: intel_adsp: Update comment style and fix typos
This patch makes cosmetic changes to ace/power.c by updating comments to
Doxygen style, fixing typos, and removing an extraneous character for
improved readability and consistency.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-06-06 08:43:15 +02:00
Tomasz Leman
fbafada9b6 soc: intel_adsp: Manage power gating based on core activity
This patch enhances the power management capabilities of the Intel ADSP
by ensuring that power gating states are appropriately managed based on
core activity. It prevents the primary core from entering power gating
if secondary cores are active and re-enables power gating when all
secondary cores are off, using pm_policy_state_lock_get and
pm_policy_state_lock_put functions.

The Sound Open Firmware (SOF) project currently uses a custom power
management policy to achieve these effects. With this patch, the default
power management policy can be utilized, allowing the option to disable
the custom policy while maintaining system reliability and performance
across different core states.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-06-06 08:43:15 +02:00
Luca Arato
ab0218ed7e sys: Remove static modifier
Remove static struct modifier from SPSC_DECLARE macro.
This solves a warning emitted when compiling for native_sim.

Signed-off-by: Luca Arato <luca.arato@secomind.com>
2025-06-06 08:43:03 +02:00
Bjarki Arge Andreasen
73bf428ea1 tests: kernel: workq: work_queue: add work timeout test
Add workqueue work timeout test to work_queue test suite.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-06 08:42:53 +02:00
Bjarki Arge Andreasen
8f9eae25c9 kernel: workq: introduce work timeout:
Introduce work timeout, which is an optional workqueue configuration
which enables monitoring for work items which take longer than
expected. This could be due to long running or deadlocked handlers.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-06 08:42:53 +02:00
Fin Maaß
7505ef3f04 drivers: ethernet: phy: mii: simplify if all are fixed link
If all instances are fixed link, remove code that is
not needed for that.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 08:42:41 +02:00
Fin Maaß
1c319304d1 tests: add for DT_ALL_INST_HAS_PROP_STATUS_OKAY() macro
add test for DT_ALL_INST_HAS_PROP_STATUS_OKAY() macro.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 08:42:41 +02:00
Fin Maaß
75ab4d5507 devicetree: add DT_ALL_INST_HAS_PROP_STATUS_OKAY() macro
add DT_ALL_INST_HAS_PROP_STATUS_OKAY() macro.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 08:42:41 +02:00
Fin Maaß
416a76002e tests: add for DT_ALL_INST_HAS_BOOL_STATUS_OKAY() macro
add test for DT_ALL_INST_HAS_BOOL_STATUS_OKAY() macro.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 08:42:41 +02:00
Fin Maaß
35a8e37ac2 devicetree: add DT_ALL_INST_HAS_BOOL_STATUS_OKAY() macro
add DT_ALL_INST_HAS_BOOL_STATUS_OKAY() macro.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 08:42:41 +02:00
Fin Maaß
ca6645d508 devicetree: shorten DT_ANY_INST_HAS_*_STATUS_OKAY
shorten DT_ANY_INST_HAS_*_STATUS_OKAY macros

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-06 08:42:41 +02:00
Amneesh Singh
07c1d95d69 drivers: adc: ti_am335x: initial support
This patch adds the ADC driver for TI K3 family of SoCs. Technical
reference can be found in the Technical Reference Manual (TRM) of the
board.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-06-06 08:42:32 +02:00
Francois Ramu
b647d70bca samples: subsys: setting does not apply when sector size is 128K
Exclude the stm32h7 target boards to this samples/subsys/settings
because it does not apply for flash sector flash size larger
than 64K : all those stm32h7 mcu have sector size of 128K
The settings_subsys_init will fails (-33 DOM errno ) when it checks
nvs_sector_size > UINT16_MAX in settings_backend_init()
of the subsys/settings/src/settings_nvs.c

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-06 08:42:22 +02:00
Torsten Rasmussen
2d5a81035a cmake: add tfm / tfa image information to build info
Support for list of images in build info was added with commit
4061311da3 and is used by sysbuild.

Zephyr itself also uses CMake's External Project feature when including
TF-M or TF-A in a Zephyr build.

Populate build info with TF-M / TF-A information when said image is
included in the build.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-06-06 08:42:11 +02:00
Mario Paja
f12ba46175 samples: i2s: add nucleo u575 overlay & conf files
Adds Nucleo U575 overlay and config files

Signed-off-by: Mario Paja <mario.paja@zal.aero>
2025-06-06 08:41:59 +02:00
Mario Paja
041f942ba8 drivers: i2s: add sai support for stm32u5xx
This PR adds initial sai support for STM32u5xx

Signed-off-by: Mario Paja <mario.paja@zal.aero>
2025-06-06 08:41:59 +02:00
Mario Paja
9f78a6969e dts: arm: st: stm32u5xx add sai1 node
Add SAI1 A & B nodes on STM32U5 Series

Signed-off-by: Mario Paja <mario.paja@zal.aero>
2025-06-06 08:41:59 +02:00
Khoa Nguyen
a3868c967c samples: drivers: spi_flash: Add support OSPI for Renesas RA8
Add support OSPI for Renesas ek_ra8m1, ek_ra8d1 to run sample
spi_flash

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Tri Nguyen <tri.nguyen.wj@bp.renesas.com>
Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-06 08:41:46 +02:00
Khoa Nguyen
1d8df2bb40 samples: drivers: jesd216: Add support OSPI for Renesas RA8
Add support OSPI for Renesas ek_ra8m1, ek_ra8d1 to run
sample jesd216

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Tri Nguyen <tri.nguyen.wj@bp.renesas.com>
Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-06 08:41:46 +02:00
Khoa Nguyen
a545e19c5c tests: drivers: flash: Add support "common" for Renesas OSPI_B
Add support test app "flash/common" for testing Renesas RA
OSPI_B on ek_ra8m1, ek_ra8d1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-06 08:41:46 +02:00
Quy Tran
c442fa11d5 boards: renesas: Add boards support for OSPI flash driver on RA8
Add support for OSPI flash driver on EK-RA8D1 and EK-RA8M1

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-06-06 08:41:46 +02:00
Quy Tran
94d5341f27 dts: renesas: Add devicetree property for OSPI support on RA8
Add ospi node on Renesas RA8 devicetree to support QSPI flash driver

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-06-06 08:41:46 +02:00
Tri Nguyen
1005cd9fa2 drivers: flash: Initial support OSPI flash driver on RA8 boards
Support OSPI flash driver on EK-RA8M1 and EK-RA8D1 with ospi_b
and S28HL512T flash.

Signed-off-by: Tri Nguyen <tri.nguyen.wj@bp.renesas.com>
Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-06-06 08:41:46 +02:00
Derek Snell
c65100b521 drivers: ethernet: eth_nxp_enet_qos_mac: remove unused variables
Read MAC registers to clear flags without using variables to avoid
compiler warnings.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-06-06 08:41:29 +02:00
Luca Burelli
ed7f2e0833 scripts: dts: dtlib: preserve order of properties in DTS output
Ensure that the order of properties in the output DTS file matches the
order in which they are defined in the DTS source files by moving props
to the end of the dictionary when they are accessed.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-06-05 15:18:40 -05:00
Luca Burelli
0a4e2e383f scripts: dts: dtlib: improve formatting of long arrays
Split long arrays into multiple lines to improve readability of the
output DTS file. A new line is started when the array data exceeds
80 characters.

Add a few test entries to verify the new behavior.

Note: the F821 linter suppression prevents flagging 'array_start' and
'array_newline' as undefined variables. This is because these variables
are initialized when an opening brace is output, which is necessarily
before any element in a byte or prop array. A sequence of markers not
following this pattern would indicate a bug in the DTS parsing code.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-06-05 15:18:40 -05:00
Rubin Gerritsen
f26a8c0eb1 drivers: clock_control: nrf2_lfclk: Remove LPRC source
This source is not yet supported. It will be added back
later.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-06-05 15:16:28 -05:00
Rubin Gerritsen
f0a433fc03 drivers: clock_control: nrf2_lfclk: Fix selecting lowest power clock
The application or drivers can request the LFCLK with a given
precision and accuracy.
The driver should select the clock source which has
the lowest power consumption and still satisfies the requested
accuracy and precision.

Before this commit, this was not the case.
Consider the case where the BICR has configured the system
to have LFXO with accuracy of 20 ppm.
The existing code would have ordered the clock options as following:
```
[0] = {LFLPRC, 1000 ppm},
[1] = {LFRC, 500 ppm},
[2] = {SYNTH, 30 ppm},
[3] = {LFXO_PIERCE, 20 ppm},
[4] = {LFXO_PIERCE_HP, 20 ppm}
```

**Example 1**: The user requests the clock with an accuracy of 30 ppm.
The existing code would request the power hungry "SYNTH".

**Example 2**: The user requests a clock with an accuracy of 500 ppm.
The existing code would request the LFRC which consumes more power than
the LFXO.

This commit fixes this issue by ordering the clock sources according
to power consumption.
For the examples above we user request would result in requesting the
20 ppm LFXO.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-06-05 15:16:28 -05:00
Aleksandr Khromykh
2411238196 bluetooth: mesh: clarify mesh dfu fwid max length
Commit changes BT_MESH_DFU_FWID_MAXLEN option to be
compliant with BLE Mesh specification.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-06-05 15:14:35 -05:00
Aleksandr Khromykh
a046f25fe7 tests: bluetooth: tester: fix configuration to use max fwid length
Commit sets max possible number of tx and rx segments
to not adapt them anymore.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-06-05 15:14:35 -05:00
Anas Nashif
e12457dd6e twister: reports: try to show more build failures in generated summary
Some Build failures are actually cmake issues, so in that case, if
nothing is found as build failure, try to parse for cmake issues.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-05 15:13:07 -05:00
Gerard Marull-Paretas
1243fdd316 doc: extensions: kconfig: make location permalink optional
If setting is not present, extension will render broken links.
Let's just skip rendering the <a> element if GH base url is unset.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-06-05 15:12:07 -05:00
Al Semjonovs
d7e7839244 i2c: npcx_i2c_ctrl_transfer does not match original declaration
Fix npcx_i2c_ctrl_transfer arguments to match header to prevent
warning: type of 'npcx_i2c_ctrl_transfer' does not match original
declaration

Signed-off-by: Al Semjonovs <asemjonovs@google.com>
2025-06-05 15:11:14 -05:00
Raffael Rostagno
c3aa6589c3 drivers: intc: esp32: Disable IRQ before connect
Disable IRQ before connecting new handler when interrupt is not
shared. This aligns intc behavior to version before PR #87369.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-06-05 15:10:44 -05:00
Raffael Rostagno
00372dd6a9 drivers: pwm: ledc: esp32: Enable RC_FAST clock source
RC_FAST needs to be enabled and calibrated in order to be used
as clock source. Otherwise, clock source is selected but no
PWM is generated.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-06-05 15:09:17 -05:00
Pieter De Gendt
709a373768 boards: shields: nrf7002: docs: Fix blobs command
The blobs for the nRF7002 are located in the nrf_wifi module instead of
hal_nordic.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-05 13:06:46 -07:00
Furkan Akkiz
d02aaf1afc boards: arm: adi: Add WDT instance to MAX32657 boards
Enable WDT0 instance and add WDT into '.yaml' files for MAX32657EVKIT.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-06-05 15:03:11 -05:00
Furkan Akkiz
01d6e15551 dts: arm: adi: Add MAX32657 WDT instances
Add WDT0 node to MAX32657 dtsi files.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-06-05 15:03:11 -05:00
Jordan Yates
3a595f2859 sd: fix incorrect error logging
Fix logging `Could not disable card power via SDHC` when the attempted
operation is turning power on. Update several other logging strings to
minimise the number of unique strings required.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-06-05 15:02:15 -05:00
James Roy
d8b3775306 drivers: sensor: renesas: Fix unchecked return value in hs400x
Fix unchecked return value scanned by Coverity.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-06-05 12:34:01 +02:00
Tom Hughes
d66f081f06 arch: riscv: core: Fix type
riscv_cpu_wake_flag and riscv_cpu_sp are variables, not functions, so
they should use the GDATA macro instead of the GTEXT macro. Otherwise,
the linker will warn when LTO is enabled:

ld.bfd: warning: type of symbol `riscv_cpu_wake_flag' changed from 2 to
1 in /tmp/cc39w5oK.ltrans0.ltrans.o
ld.bfd: warning: type of symbol `riscv_cpu_sp' changed from 2 to 1 in
/tmp/cc39w5oK.ltrans0.ltrans.o

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-06-05 12:33:47 +02:00
Tom Deconinck
e25147647c drivers: sensor: ntc-thermistor-generic: add missing mutex
The ntc-thermistor-generic is not thread safe when calling
sensor_channel_get() due to the mutex not being used in
ntc_thermistor_channel_get() when the sampled data is accessed.
Add the thermistor_data mutex around the data access to fix.

Signed-off-by: Tom Deconinck <t.deconinck@gmail.com>
2025-06-05 12:33:39 +02:00
Ruibin Chang
47d1e38043 drivers/counter: implement it51xxx counter driver
Implement counter driver for ITE it51xxx series chip.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-06-05 12:33:29 +02:00
Ruibin Chang
ec6b34d870 drivers/timer/it51xxx: remove not used timer
Timer 7 is not used in timer driver, which means that timer
driver doesn't initialize timer 7, it's just declared in dtsi.
So I remove it, timer 7 will be used as alarm timer for counter driver.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-06-05 12:33:29 +02:00
Anas Nashif
6559c7f554 sys: slist/sflist: remove stray FIXME
The FIXME asking a question that is not valid anymore, remove the FIXME.

Fixes #90764

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-05 09:34:55 +02:00
Pieter De Gendt
c5d1e8e220 scripts: west_commands: patch: Support Python 3.10
The west patch command used hashlib.file_digest which was introduced in
Python 3.11.
Replace with a loop to support Python 3.10 (the current minimum).

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-05 09:34:40 +02:00
Bjarki Arge Andreasen
a8d44c37c4 pm: policy: remove redundant ifdef exclusion of device_power_lock
Remove redundant ifdef exclusion of calls to
pm_policy_device_power_lock_get() and
pm_policy_device_power_lock_put().

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-05 09:34:31 +02:00
Bjarki Arge Andreasen
b642925491 pm: policy: fix mocks of CONFIG_PM_POLICY_DEVICE_CONSTRAINTS
The APIs pm_policy_device_power_lock_get and
pm_policy_device_power_lock_put are not mocked properly as they
should be excluded based on CONFIG_PM_POLICY_DEVICE_CONSTRAINTS,
not CONFIG_PM.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-05 09:34:31 +02:00
Tim Lin
706b7e9002 drivers/clock: it51xxx: Disable eSPI pad before changing PLL sequence
We have to disable eSPI pad before changing PLL sequence or sequence
will fail if CS# pin is low.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-06-05 09:34:23 +02:00
Tim Lin
a8e467cf2d soc/ite/ec/common: Rename functions to use generic names
Renamed two functions and a macro to use more generic names,
removing chip-specific identifiers.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-06-05 09:34:23 +02:00
Tim Lin
4aaa0f8547 soc/ite/ec: it51xxx: Add condition to select the mode based on CONFIG_ESPI
If CONFIG_ESPI is defined, use 0xA4 (eSPI mode).
Otherwise, use 0xA5 (LPC mode).

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-06-05 09:34:23 +02:00
Tim Lin
5f502499e9 drivers/espi: ite: Refactor register defines into .c for SoC flexibility
Move register definitions from chip_chipregs.h into espi_it8xxx2.c to
make the driver more adaptable to different SoCs.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-06-05 09:34:23 +02:00
Maciej Perkowski
49595c7309 twister: Adjust status for quarantined instances
Skipped status fits quarantined items better than filtered.
Filtered tests are by default removed from reports, which
shouldn't be the case for quarantined tests.
Adjust tests unit and blackbox tests accordingly.

Signed-off-by: Maciej Perkowski <maciej.perkowski@nordicsemi.no>
2025-06-05 09:34:13 +02:00
Maciej Perkowski
50f36f0002 twister: logging: decouple status reporting from logging level
Verbosity >1 should be enough to see filtered tests. Coupling
it with debug logging level makes the output messy.

Signed-off-by: Maciej Perkowski <maciej.perkowski@nordicsemi.no>
2025-06-05 09:34:13 +02:00
TOKITA Hiroshi
7daa75f634 tests: entropy: api: add overlay for VirtIO Entropy device
Add `boards/qemu_x86_64.overlay` and some config modification
for testing `virtio,entropy` device.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-05 09:33:59 +02:00
TOKITA Hiroshi
1422897a85 tests: drivers: build_all: virtio add VirtIO Entropy build test
Add a build test for the VirtIO Entropy driver.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-05 09:33:59 +02:00
TOKITA Hiroshi
4bcf73704f boards: qemu: x86: Add an option for VirtIO Entropy device enabling
If CONFIG_ENTROPY_VIRTIO is enabled, enable `virtio-rng-pci` device
on qemu side.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-05 09:33:59 +02:00
TOKITA Hiroshi
8c9c7a5ddb drivers: entropy: add driver for VirtIO Entropy device
Add VirtIO Entropy driver.

The `virtio,device4` is a somewhat unfamiliar naming convention,
but it follows the convention used in Linux.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-05 09:33:59 +02:00
Declan Snyder
fd6b05c81b drivers: spi_context: Fix spi_context_xx_len_left
These two functions were using the value of ctx->xx_len wrong, the unit
is in words, not bytes, but spi_context_count_xx_buf_lens was iterating
over the length of bytes, not words.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-04 16:11:45 -04:00
Declan Snyder
2c75ad0db3 Revert "drivers: spi: fix the update of spi_context tx & rx length"
This reverts commit 4a486ce51b.

This change was totally wrong.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-04 16:11:45 -04:00
Sudan Landge
c0f17f98ea modules: cmsis: fix: CI with CMSIS
Update to the latest CMSIS because some modules still use CMSIS (v5.x)
which when built with the latest toolchain returns below error in CI:
`error: pac_armv81.h: No such file or directory`

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-06-04 16:09:39 -04:00
Jiafei Pan
ac41bf373b boards: nxp: imx943_evk: add J-Link runner support
J-Link runner can be used to download and boot Zephyr, and also used for
debugging.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-04 15:51:36 -04:00
Jiafei Pan
8c46895d48 boards: imx943_evk: add i.MX 943 EVK board support for A55
The IMX943 EVK board is a design and evaluation platform based on the
NXP i.MX 943 processor.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-04 15:51:36 -04:00
Jiafei Pan
d47b473b85 modules: hal_nxp: disable drivers not used by imx943 a55
Disable power, memory and reset driver which are not used by i.MX 943 A55.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-04 15:51:36 -04:00
Jiafei Pan
a4f9cc90d0 modules: hal_nxp: disable hal clock driver for SCMI clock
If SCMI clock is used in Zephyr, it will not use hal clock API, so
disable hal clock driver and also disable driver clock control in all
the other hal drivers.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-04 15:51:36 -04:00
Jiafei Pan
e40d56c622 modules: hal_nxp: use MU1 driver for i.MX943
i.MX943 uses MU1 hal driver.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-04 15:51:36 -04:00
Jiafei Pan
dbbe5275d6 modules: hal_nxp: specify CMSIS path for Cortex-A Core support
Specify CMSIS patch for Cortex-A Core support in mcux-sdk-ng.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-04 15:51:36 -04:00
Jiafei Pan
b0ba009d4d dts: add i.MX 943 Cortex-A Core dts
Added i.MX 943 Cortex-A Core dts file and clock binding header file.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-04 15:51:36 -04:00
Jiafei Pan
c0aee5c224 soc: imx943: add imx943 soc support
This patch add i.MX 943 soc support.

The i.MX 943 applications processors integrate up to four Arm Cortex-A55
cores and supports functional safety with built-in 2x Arm Cortex -M33 and
-M7 cores which can be configured as a safety island. Optimizing
performance and power efficiency for Industrial, IoT and automotive
devices, i.MX 943 processors are built with NXP’s innovative Energy Flex
architecture.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-04 15:51:36 -04:00
Rahul Gurram
9781a3531f drivers: wifi: siwx91x: Handling data packets for AP mode
In the raw data send API, the interface was hardcoded
for client mode. Now, we determine the opermode and
pass the appropriate interface to the raw data API
based on the current opermode.

Signed-off-by: Rahul Gurram <rahul.gurram@silabs.com>
2025-06-04 15:51:07 -04:00
Alex Ivanov
5a9394a1e0 llext: add dynamic heap allocation support
Some applications require loading extensions into the memory which does
not exist during the boot time and cannot be allocated statically. Make
the application responsible for LLEXT heap allocation. Do not allocate
LLEXT heap statically.

Signed-off-by: Alex Ivanov <alexivanov@google.com>
2025-06-04 15:50:57 -04:00
TOKITA Hiroshi
a76ed223d5 soc: rpi_pico: Set the default SYS_CLOCK_HW_CYCLES_PER_SEC from dt
Avoid the individual `CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC` for each
board instead to referencing the dt value.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-04 15:50:44 -04:00
Alain Volmat
c304da7c67 shields: st_stm32f4dis_cam: ov9655 sensor based shield
Introduction of the STM32F4DIS-CAM shield for STM32 boards
embedding a DVP based OV9655 sensor.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-04 15:50:24 -04:00
Alain Volmat
3db7b40238 video: introduction of driver for Omnivision OV9655
This commit add support for the Omnivision OV9655 sensor,
a 1.3MPix Color SXGA (1280x1024 sensor).
Current driver only allow output of 320x240 and 160x120
resolution either in RGB565 or YUYV.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-04 15:50:24 -04:00
Alain Volmat
c535fa43f1 boards: st: stm32l4r9i_disco: add dcmi pinctrl and zephyr_camera
Add the dcmi interface pinctrl entry related to the stm32l4r9i-disco
board.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-04 15:50:24 -04:00
Alain Volmat
26cee81290 boards: correct dmci_camera_connector typo in stm32h7
The camera connector in stm32h7b3i_dk (and st_b_cams_omv_mb1683 shield)
are refering to the connector name as dmci_... instead of dcmi_...

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-04 15:50:24 -04:00
Alain Volmat
d3d2debcf9 dts: st: l4: add dcmi node on stm32l4p5 and onward
Add the DCMI camera interface available on stm32l4p5
and onward.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-04 15:50:24 -04:00
Alain Volmat
9c62fb8810 video: stm32: dcmi: correct typo dmci -> dcmi
DMA callback is wrongly named as dmci in the source code,
correct the name to be dcmi_dma_callback.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-04 15:50:24 -04:00
Alain Volmat
64149e4df6 video: stm32_dcmi: addition of STM32L4 DMA support
The STM32 DMA LL api differ between the STM32F7 and the STM32L4
in order to get the CHANNEL instance information.  For that
reason, enclose within preproc statements STM32F7 specific code
and add STM32L4 code related to the DMA configuration for the
DCMI peripheral.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-04 15:50:24 -04:00
Alain Volmat
b03ec6dd29 video: stm32: dcmi: fix video interface properties read
This commit fixes an error introduced by commit c0dae0c9ac
("video: stm32: dcmi: perform config based on endpoint properties")
in which incorrect instance was being access leading to usage of
the default value for pixel clock / hsync / vsync polarities and bus
width.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-04 15:50:24 -04:00
Peter Mitsis
e3aa34972e doc: arch: Update file summary for kernel interfaces
Updates the file summary on the various arch-specific kernel
interfaces to accomplish two things:
  1. Fix the path in the comment
  2. Standardize on language/format.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-06-04 15:50:02 -04:00
Valerio Setti
b09a3df131 modules: uoscore-uedhoc: enable legacy Mbed TLS crypto support in TF-M
On TF-M platforms the PSA_WANT_xxx above do not enable the legacy
MBEDTLS_ECP_C build symbol which is required to enable the
mbedtls_pk_ec() function used in uOSCORE/uEDHOC.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-06-04 15:49:54 -04:00
David Brown
c05bcee41d Revert "ci: exclude rust temporarily [REVERT ME]"
This reverts commit 1207880355.

Re-enable Rust CI after bringing in fixes.

Signed-off-by: David Brown <david.brown@linaro.org>
2025-06-04 15:49:27 -04:00
David Brown
bd4d3f8daf modules: optional: rust: Fixes for CI
Bring in the following changes from the rust module:

dd73abc242e zephyr: work: Allow struct to have a additional fields
898662c0889 zephyr-sys: Handle deflected GPIO constants
174ded53bd6 ci-manifest.yml: Add cmsis_6

This should fix CI for Rust.  In addition, the allowing struct to have
addition fields should unblock #88345.

Signed-off-by: David Brown <david.brown@linaro.org>
2025-06-04 15:49:27 -04:00
Benjamin Cabé
c576464508 boards: m5stack: m5stack_fire is not a default test platform
remove testing default=true from this board as it is not a default test
platform

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-04 18:30:05 +01:00
Jilay Pandya
ca2f7254d2 drivers: stepper: tmc50xx: add a null pointer check
Check if the actual velocity pointer is NULL or not, if its null return
-EINVAL in order to avoid null pointer dereferencing later in code

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-04 17:04:30 +02:00
Arunmani Alagarsamy
28be2211f4 drivers: wifi: siwx91x: Correct handling of BSSID in interface status
This commit resolves incorrect results in the interface status response.
The parameter for `sl_wifi_get_wireless_info` has changed following the
HAL Silabs update to version 3.5.0.

In AP mode, the implementation now correctly uses the `mac_address`
variable instead of `bssid`.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-06-04 17:04:24 +02:00
Arunmani Alagarsamy
de6395d5d0 drivers: wifi: siwx91x: Handle error case in power save mode
Power save is not supported in AP mode. This commit ensures that
`-EINVAL` is returned instead of success, preventing incorrect behavior.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-06-04 17:04:24 +02:00
Arunmani Alagarsamy
112c8e6939 soc: silabs: siwg917: Restore missing config and update default settings
Commit `2844850` inadvertently omitted
`SL_SI91X_CUSTOM_FEAT_SOC_CLK_CONFIG_160MHZ`. This commit restores
the missing flag to ensure proper SOC clock setup.

Additionally, `SL_SI91X_CUSTOM_FEAT_LIMIT_PACKETS_PER_STA` is now enabled
as the default setting, aligning with the driver Kconfig.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-06-04 17:04:24 +02:00
Nikodem Kastelik
647477c851 drivers: adc: nrf: align to non-gain configuration
Some nRF devices do not allow to configure gain.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-06-04 17:03:48 +02:00
Nikodem Kastelik
5abf43c7dd drivers: adc: nrf: align to channel-wide burst configuration
Some nRF devices allow to configure burst setting per channel
while others globally.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-06-04 17:03:48 +02:00
Nikodem Kastelik
f46798fa55 manifest: update hal_nordic revision to integrate nrfx 3.12.0
New nrfx release contains MDK 8.71.1
and various fixes for nRF devices.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-06-04 17:03:48 +02:00
Ajith Anandhan
455d0d8698 tests: adc_api: add dts overlay for STM32F4-DISCO
Add a dts overlay file for the STM32F4-DISCO to enable ADC ch testing
with the adc_api test.

Signed-off-by: Ajith Anandhan <ajithanandhan0406@gmail.com>
2025-06-04 17:03:27 +02:00
Ajith Anandhan
c27570f537 samples: adc_dt: add dts overlay for STM32F4-DISCO
Add a board-specif dts overlay file for the adc_dt sample on the
STM32F4-DISCO board to enable for ADC channel support.

Signed-off-by: Ajith Anandhan <ajithanandhan0406@gmail.com>
2025-06-04 17:03:27 +02:00
TOKITA Hiroshi
6fa82f7e84 kernel: mmu: Added a cast to avoid format warnings when logging
At runtime, `cbprintf` outputs a warning of the type check of the
print format.
Added a cast to avoid this warning to the first argument of
`device_map()` to `void*`.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-04 17:03:13 +02:00
Michał Stasiak
72623f98f7 test: drivers: clock_control_api: Fix conf file application
CONF_FILE parameter in testcase.yaml overwrites board
specific configurations. Change it to EXTRA_CONF_FILE
to apply both configurations.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-06-04 17:03:03 +02:00
Jakub Novák
342c737a70 boards: m5stack: add support for M5Stack Fire
Adds support for the M5Stack Fire. Board files are adapted from those
used for the M5Stack Core2.

Aside from the 2 newest revisions the device also contains a BMM150
magnetometer which is not supported.

The LED strips on the sides are also not supported because Zephyr
does not support fast GPIO switching, see: #11917.

The IP5306 charger works by itself but doesn't have a driver written for
it thus it's not able to be interfaced with.

Signed-off-by: Jakub Novák <jakubnovak.cz@outlook.cz>
2025-06-04 17:02:47 +02:00
Luca Burelli
ff40173631 dts: rw6xx: fix flexcomm14 node name
Fix a trivial typo in the DTS for the NXP RW6xx series.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-06-04 17:00:57 +02:00
Bjarki Arge Andreasen
da3b4bc4ad samples: boards: nordic: clock_control: add resolve and startup time
Add resolving the requested clock spec and getting the startup time
of the clock for given clock spec to the nordic specific
clock_control sample.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-04 17:00:40 +02:00
Bjarki Arge Andreasen
077ff2bae9 drivers: clock_control: nrf2_global_hsfll: impl resolve
Implement nrf_clock_control_resolve() API.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-04 17:00:40 +02:00
Bjarki Arge Andreasen
c950c56fe0 drivers: clock_control: nrf2_hsfll: impl resolve
Implement nrf_clock_control_resolve() API.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-04 17:00:40 +02:00
Bjarki Arge Andreasen
9983222cd7 drivers: clock_control: nrf2_fll16m: impl resolve and startup_time
Implement nrf_clock_control_resolve() and
nrf_clock_control_get_startup_time_us() APIs.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-04 17:00:40 +02:00
Bjarki Arge Andreasen
b20a233b05 drivers: clock_control: nrf2_lfclk: impl resolve and startup_time
Implement nrf_clock_control_resolve() and
nrf_clock_control_get_startup_time_us() APIs.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-04 17:00:40 +02:00
Bjarki Arge Andreasen
54d86e8f38 drivers: clock_control: nrf2_hfxo: impl resolve and startup_time
Implement nrf_clock_control_resolve() and
nrf_clock_control_get_startup_time_us() APIs.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-04 17:00:40 +02:00
Bjarki Arge Andreasen
6aeca71a4d drivers: clock_control: nrf_clock_control: introduce startup time
Introduce get_startup_time API which allows users to request
clocks specs to be met in time for an event.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-04 17:00:40 +02:00
Bjarki Arge Andreasen
b1a5588c79 drivers: clock_control: nrf_clock_control: introduce resolve API
Introduce API which allows users to determine what the actual
minimum spec will be resulting from a requested minimum spec. This
is useful for optimizing code as the requested minimum may be
way worse than what will actually be applied.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-04 17:00:40 +02:00
Yishai Jaffe
51f1607395 tests: display: cfb: added htiled display test cases
Added the option to make the SDL emulator htiled and added test cases to
test it.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-06-04 17:00:30 +02:00
Yishai Jaffe
8299817fba cfb: support non vtiled displays
Added support for drawing points on non-vtiled displays.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-06-04 17:00:30 +02:00
Marcio Ribeiro
77c350c149 soc: esp32: virtual e-fuses support
Adds support for virtual e-fuses on esp32 socs

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-06-04 17:00:20 +02:00
Tien Nguyen
85f5bd9520 tests: drivers: gpio: Add support for RZ/V2H-EVK M33 core
Add support for RZ/V2H-EVK M33 core

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
2025-06-04 17:00:01 +02:00
Tien Nguyen
5f69dd15a5 drivers: gpio: Add support for RZ/V2H
Add support for RZ/V2H

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
2025-06-04 17:00:01 +02:00
Tien Nguyen
645acc5e9d drivers: serial: Add support for Renesas RZ/V2H
Add support for Renesas RZ/V2H

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
2025-06-04 17:00:01 +02:00
Tien Nguyen
9a03938015 drivers: pinctrl: Add support for Renesas RZ/V2H
Add support for Renesas RZ/V2H

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
2025-06-04 17:00:01 +02:00
Tien Nguyen
9db4953bf8 boards: renesas: Add minimal support for Renesas RZ/V2H-EVK M33 core
Add minimal support for Renesas RZ/V2H-EVK M33 core

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
2025-06-04 17:00:01 +02:00
Tien Nguyen
58e58a819d dts: arm: renesas: Add support for Renesas RZ/V2H M33 core
Add devicetree to support for Renesas RZ/V2H M33 core

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
2025-06-04 17:00:01 +02:00
Tien Nguyen
9970d21348 soc: renesas: Add initial support for Renesas RZ/V2H
Add initial support for Renesas RZ/V2H

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
2025-06-04 17:00:01 +02:00
Tien Nguyen
769ae5c263 manifest: Update commit id for hal_renesas
Update commit id for hal_renesas

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-04 17:00:01 +02:00
Jiafei Pan
e624cffd9b soc: imx: disable dcache until mmu is enabled during booting
Enable CONFIG_ARM64_BOOT_DISABLE_DCACHE for i.MX Cortex-A platforms.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-04 16:59:43 +02:00
Jiafei Pan
d1b9b06b54 arm64: reset: flush D-Cache before it is disabled
In the commit 573a712bed patch "arm64:
reset: disable cache and MMU for safety", it disables D-Cache and MMU
for safety, but in some cases, for example the code is loaded into memory
by hardware debugger, we need to flush D-Cache before disable it in
order to make sure the data is coherent in the system, otherwise it
will report "Synchronous Abort" when D-Cache is disabled.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-04 16:59:43 +02:00
Jiafei Pan
ad0dfc5df8 Revert "arm64: reset: disable cache and MMU for safety"
This reverts commit 573a712bed.

The original patch disable cache and MMU, but in some cases, for example
the code is loaded into memory by hardware debugger, we need to flush
D-Cache before disable it in order to make sure the data is coherent
in the system, otherwise it will report "Synchronous Abort" when D-Cache
is disabled.

This patch revert the old one and the following patch will flush
the cache before disable it.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-04 16:59:43 +02:00
Jiafei Pan
abcdb18568 arch: arm64: cache: optionally enable APIs for operation all dcache
Added new configuration item to optionally enable APIs for operation
all data cache, by default these APIs are disabled.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-04 16:59:43 +02:00
Jiafei Pan
6aba505eaf Revert "arch: arm64: cache: delete arm64_dcache_all"
In order to clean and invalidate all D-Cache, so reverts commit:
867ba172b4.

Although no software broadcast between different CPU Cores for  D-Cache
maintaining operation, but the hardware bus system should make sure it
is safety for all CPU Cores, because it is common for other SMP OS.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-04 16:59:43 +02:00
Martino Facchin
b927659711 portenta_c33: add initial documentation
Will complete the supported peripheral list and description later

Signed-off-by: Martino Facchin <m.facchin@arduino.cc>
2025-06-04 16:59:15 +02:00
Martino Facchin
e7fe269b81 boards: add support for Arduino Portenta C33
Tested:
* GPIO
* UART
* USB (using USB_DEVICE_NEXT)
* BLE

Signed-off-by: Martino Facchin <m.facchin@arduino.cc>
Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-06-04 16:59:15 +02:00
Adrien Ricciardi
2f17465421 ipc: icbmsg: Add a workqueue name
This allows to easily identify the workqueue thread when using the kernel
shell commands.

Signed-off-by: Adrien Ricciardi <aricciardi@baylibre.com>
2025-06-04 16:59:04 +02:00
Johan Lafon
6dbfc8ee02 tests: drivers: adc: add MCP356xR
Add instance of the MCP356xR ADC to the build all tests.

Signed-off-by: Johan Lafon <johan.lafon@syslinbit.com>
2025-06-04 16:58:52 +02:00
Johan Lafon
cf569036d1 driver: adc: add MCP3561/2/4R driver
Add driver for the microchip MCP3561/2/4R ADC. Registers lock and
CRCCFG protection mecanism is not implemented. Tested on an MCP3564R.

Signed-off-by: Johan Lafon <johan.lafon@syslinbit.com>
2025-06-04 16:58:52 +02:00
Anas Nashif
1207880355 ci: exclude rust temporarily [REVERT ME]
Compat issues with optional module, exclude for now until issues are
fixed.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-04 08:38:44 -04:00
Sudarsan N
34f5f8d556 drivers: adc: Prevent overflow in max1125x_read_sample
Fix potential integer overflow caused by unsafe shift when computing
ADC mid-scale offset. Applies resolution bounds and uses unsigned
shift to avoid undefined behavior.

Fixes: CID 487740
Signed-off-by: Sudarsan N <sudarsansamy2002@gmail.com>
2025-06-04 10:04:14 +02:00
Andre Morishita
1fbb4e87f2 boards: variscite: Add Variscite VAR-SOM-MX93 board
Add Variscite VAR-SOM-MX93 board support. This SoM is based on NXP's
i.MX93 SoC. It includes Cortex-A55 and Cortex-M33 support.

Signed-off-by: Andre Morishita <andre.m@variscite.com>
2025-06-04 10:04:09 +02:00
Shan Pen
8d55e73808 boards: ruiside: RA8D1 Vision Board: add support
this is another board from ruiside, tested uart,
button, led, sdram, sd card

Signed-off-by: Shan Pen <bricle031@gmail.com>
2025-06-04 10:03:51 +02:00
Miguel Gazquez
783103ebf6 scripts: west_commands: runners: fix dt-flash handling in some runners
In minichlink and spi_burn, the script checks if dt_flash is True by
checking if the value is "y". But dt_flash is a boolean.
Fix these checks.

Also, when dt-flash is True, spi_burn calculate the address in a
convoluted way, by substrating CONFIG_FLASH_LOAD_OFFSET to
itself.
Simplify this computation.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-04 10:03:40 +02:00
Miguel Gazquez
8c6a290d4a scripts: west_commands: runners: Fix default value for --dt-flash
The '--dt-flash' parameter accepts a string like "y", "yes", "no", etc,
and is supposed to be converted into a boolean value. This is only the
theory as in practice, the default value is set to 'n' and is never
converted to False afterwards.

Set the default value to False.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-04 10:03:40 +02:00
Miguel Gazquez
f0d26a9d02 runners: add '--dt-flash=y' for silabs commander
Due to a bug in scripts/west_commands/runners/core.py, the value of
--dt-flash can currently be True, False, or the default value, 'n'. The
script silabs_commander.py only check the truth value of --dt-flash,
 so the default value is interpreted as a truthy. That means that the
default case was effectively the same as if dt-flash was set to True.

Set this flag to True by default explicitly, in the same
way as done for pyocd or jlink.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-04 10:03:40 +02:00
Arunmani Alagarsamy
9da4e8f30f west.yml: Update hal_silabs revision
This commit updates the hal_silabs revision in west.yml

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-06-04 08:47:53 +02:00
Tom Hughes
60045b5ee0 arch: Add LLVM toolchain to ISR_TABLES_LOCAL_DECLARATION_SUPPORTED
The LLVM toolchain can also compile this code.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-06-04 08:46:35 +02:00
Derek Snell
6db433bada dt-bindings: adc: mcux-lpadc: add more channel options
Expands the list of macros for more ADC channels needed on MCXN947.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-06-04 08:46:25 +02:00
Mike J. Chen
122b14bc68 drivers: gpio_mcux_lpc: fix bug configuring interrupts with GPIO_INT_WAKEUP
If GPIO_INT_WAKEUP is in the trig argument, the selection
of trigger mode breaks because the GPIO_INT_WAKEUP flag
breaks the equal comparisons.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-06-04 08:46:15 +02:00
Raffael Rostagno
d8358b29a0 tests: drivers: spi_loopback: Fix NULL rx buff testcase
Fixes setup of TX buffer, which shouldn't be NULL in the RX NULL
tescase.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-06-04 08:46:05 +02:00
Wilkins White
00ee4a5887 drivers: flash: mcux: fix read for LPC55XXX
The LPC55XXX SoC series requires the use of a HAL function to read
from uninitialized flash without triggering a hardfault. This
broadens an existing #ifdef clause so that it is triggered for all
chips in the series instead of only the LPC55S36.

Signed-off-by: Wilkins White <ww@novadynamics.com>
2025-06-04 08:45:56 +02:00
Luis Ubieda
564e7ebd8b tests: gnss: Add F9P node to build-all test
For build-time validation.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-06-04 08:44:59 +02:00
Luis Ubieda
b402a47604 gnss: u_blox_f9p: Introduce High-precision GNSS module
Basic support: initialization for sending/handling UBX messages and
run-time navigation configurability through GNSS API.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-06-04 08:44:59 +02:00
Khoa Nguyen
291860e193 tests: drivers: spi: Add support spi_controller_peripheral for RA
Add support test app support spi_controller_peripheral for Renesas
RA boards: ek_ra6m5, ek_ra6m4, ek_ra6m3, ek_ra6m2, ek_ra6m1,
ek_ra6e2, fpb_ra6e2, ek_ra4m1, ek_ra2a1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-06-04 08:44:47 +02:00
Alex Ivanov
3aace9520f llext: Do not print symbol resolution messages
If the LLEXT extension is really large, these messages really add up.
Making them debug messages.

Signed-off-by: Alex Ivanov <alexivanov@google.com>
2025-06-03 21:37:26 -07:00
cyliang tw
4a486ce51b drivers: spi: fix the update of spi_context tx & rx length
The unit of spi_context's tx_len and rx_len is byte instead of frame.
Thus, in spi_context_update_tx(), the value of ctx->tx_len should be
reduced by (len * dfs).
Also to fix the update of ctx->tx_len in spi_context_update_rx().

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-06-03 21:36:39 -07:00
Ryan McClelland
2bda9ad99b drivers: spi: cdns: fixup spi clk divisor
Remove the auto setting of the external spi clock if its not there,
also fix the calculation of calucation the spi divisor value.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-06-03 21:34:25 -07:00
Ryan McClelland
241bb057a0 drivers: spi: cdns: remove pm device call
The PM Device callbacks is rather unimplemented. There currently is
no device agnostic clock management api (yet), and the pinctrl isn't
fully implemented in this driver. Remove it all.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-06-03 21:34:25 -07:00
Ryan McClelland
0d61895385 drivers: spi: cdns: fix missing fifo config
This adds the missing fifo config from the dts which was missed in
the initial revision. This also adds the spi rtio fallback api.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-06-03 21:34:25 -07:00
Tim Pambor
a760ba76b6 net: ip: 6lo: Fix undefined behavior reported by UBSAN
htonl() and htons() take uint32_t/uint16_t as argument. Add the 'u' suffix
to constants to ensure the correct unsigned type is used and to avoid
undefined behavior if these functions are implemented as macros using
bit shifts.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-06-03 21:32:54 -07:00
TOKITA Hiroshi
1e14953480 Revert "modules: hal_rpi_pico: set -std=gnu11 in a toolchain independent way."
This reverts commit 05401b3f44.

Introducing c-std setting with CMake way in the commit,
but the actual command line is below.

```
arm-zephyr-eabi-gcc -DKERNEL ... -std=gnu11 ...  -std=c99 ...
```

The setting `CONFIG_STD_C99` in Kconfig appends the `-std=c99`,
and (At least in gcc,) options are processed last-come-first,
so this setting was meaningless.

This will cause a build error, so we will revert it.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-03 21:32:02 -07:00
Camille BAUD
1d91c4aecb modules: hal_wch: fix conditional compilation
adds _D8W for CH32V208

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-03 21:30:48 -07:00
Tom Hughes
2c851d998c sw_isr_table: Add braces around subobject
When building with clang, it warns:

subsys/mgmt/ec_host_cmd/backends/ec_host_cmd_backend_shi_npcx.c:1000:2:
error: suggest braces around initialization of subobject
[-Werror,-Wmissing-braces]

IRQ_CONNECT(DT_INST_IRQN(0), DT_INST_IRQ(0, priority), shi_npcx_isr,
            DEVICE_DT_INST_GET(0), 0);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/zephyr/irq.h:49:2: note: expanded from macro 'IRQ_CONNECT'
ARCH_IRQ_CONNECT(irq_p, priority_p, isr_p, isr_param_p, flags_p)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/zephyr/arch/arm/irq.h:124:2: note: expanded from macro
'ARCH_IRQ_CONNECT'
Z_ISR_DECLARE(irq_p, 0, isr_p, isr_param_p); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/zephyr/sw_isr_table.h:227:2: note: expanded from macro
'Z_ISR_DECLARE'
Z_ISR_DECLARE_C(irq, flags, func, param, __COUNTER__)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0
to see all)
include/zephyr/sw_isr_table.h:218:16: note: expanded from macro
'_Z_ISR_DECLARE_C'
{irq, flags, _MK_ISR_ELEMENT_SECTION(counter)}
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/zephyr/sw_isr_table.h:197:42: note: expanded from macro
'_MK_ISR_ELEMENT_SECTION'
#define _MK_ISR_ELEMENT_SECTION(counter) _MK_ISR_SECTION_NAME(irq,
                                         __FILE__, counter)
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~
include/zephyr/sw_isr_table.h:195:2: note: expanded from macro
'_MK_ISR_SECTION_NAME'
"." Z_STRINGIFY(prefix) "." file "." Z_STRINGIFY(counter)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-06-03 20:33:33 +02:00
Ian Morris
e362f14ce0 boards: renesas: ek_ra6m4: added arduino labels
Added arduino_header, arduino_serial, arduino_i2c and arduino_spi node
labels to device tree board definition, allowing compatible shield
boards to be used.

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2025-06-03 20:33:05 +02:00
Anas Nashif
67435e394f .github: convert templates to use forms
Convert all templates to use forms.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-03 20:32:59 +02:00
Nirav Agrawal
550f3bb0b9 boards: shields: update document for nxp_m2_wifi_bt shield
- Update hardware rework details require for Bluetooth HCI UART and
 I2S interfaces to work with M.2 module.
- Update west build command for Wi-Fi shell app with extra config
 overlay file.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-06-03 20:32:42 +02:00
Stephan Gatzka
c4c1d92cee drivers: gpio: Use BIT(n) macro to define GPIO constants
This change would also solve that according to the C11 standard,
section 6.5, paragraph 4, the usage of bitwise operators on
signed integers is implementation defined.

Signed-off-by: Stephan Gatzka <stephan.gatzka@gmail.com>
2025-06-03 20:32:33 +02:00
David Corbeil
068d7ec156 modules/zcbor: Added building of zcbor_print.c to zcbor module
Some utilities function implementations were moved to their own
implementation file in zcbor 0.9.0. This commit is simply to compile
those functions so that users can still have access to them without using
the --output-cmake functionality provided by the zcbor python script

Signed-off-by: David Corbeil <david.corbeil@dynon.com>
2025-06-03 20:31:02 +02:00
Mark Wang
2d4e05afc2 bluetooth: improve the controller address resolution enablement
If the controller resolving list is cleared by HCI_LE_Clear_Resolving_List,
don't need to enable the controller address resolution.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-06-03 17:09:02 +02:00
Tomasz Bursztyka
c14ee16463 device: Provide de-init device function only if requested
This feature, fixing a specific corner case, is unilateraly growing
all struct device with a pointer that 99% of the time is not used.
Thus uselessly utilizing ROM.

Making the feature Kconfig controlled.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-06-03 17:08:50 +02:00
Andrew Davis
2edb6d2517 drivers: timer: ti_dmtimer: Do not require systick_timer node label
This driver currently only supports one instance of this timer and uses
it as the system clock. The instance is selected by being the first one
listed in DT in all places except sys_clock_driver_init() where it uses
the node label "systick_timer".

This driver should be fixed to correctly support multiple instances
of this timer, and the one used for the system timer should be selected
based on a flag or alias, not based on label.

For now simply use the 0th instance like everywhere else which removes
the need to have this node labeled a special way and makes no functional
changes to current users.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-06-03 17:08:37 +02:00
Nhut Nguyen
49f520fcd9 tests: kernel: tickless: Add support for RZ/G3S-SMARC
Add test support for System Timer driver of RZ/G3S-SMARC

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
2025-06-03 17:08:30 +02:00
Nhut Nguyen
1e24a6e354 dts: renesas: Add System Timer support for RZ/G3S
Add System Timer nodes to Rensas RZ/G3S devicetree

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
2025-06-03 17:08:30 +02:00
Nhut Nguyen
a1874b11cc drivers: system timer: Initial support for RZ/G3S
Add System Timer driver support for Renesas RZ/G3S

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
2025-06-03 17:08:30 +02:00
Carles Cufi
0fe59bf1e4 boards: nordic: Add an image for the Thingy:53
Image taken from Nordic's official website.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-03 14:49:20 +01:00
Carles Cufi
50d1ba0368 boards: nordic: Add an image for the nRF9161 DK
Image taken from Nordic's official website.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-03 14:49:20 +01:00
Carles Cufi
afa2b01ab0 boards: nordic: Add an image for the nRF9151 DK
Image taken from Nordic's official website.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-03 14:49:20 +01:00
Carles Cufi
37aa056610 boards: nordic: Add an image for the nRF54H20
Image taken from Nordic's official website. No image available for the
DK, so used the IC instead.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-03 14:49:20 +01:00
Carles Cufi
4d89525742 boards: nordic: Add an image for the nRF52833 DK
Image taken from Nordic's official website.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-03 14:49:20 +01:00
Arkadiusz Balys
1dbe7fa2b8 openthread: Fix OpenThread independence from Zephyr network.
If CONFIG_OPENTHREAD_SYS_INIT is enabled, OpenThread initialisation
should also consider running OpenThread automatically if
CONFIG_OPENTHREAD_MANUAL_START is disabled.

Removed also dependency on the `net_bytes_from_str` functions from
the openthread.h file. Now, in the OpenThread module, there is an
additional `openthread_utils.c/.h` file that can implement useful
utilities for the OpenThread platform. Currently, it implements
the `bytes_from_str` function to use it instead of
`net_bytes_from_str`.

Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
2025-06-03 14:48:56 +01:00
Johann Fischer
703e2c5d9d usb: device_next: do not list high-speed functions if not used
Do not add functions to the high-speed iterable section when high-speed
support is disabled.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-03 14:48:29 +01:00
Johann Fischer
fe3c001eeb usb: device_next: disable high-speed USB device descriptor if not used
Disable the high-speed USB device descriptor if it is not in use.
Add checks to the code where the high-speed descriptor may be used.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-03 14:48:29 +01:00
Johann Fischer
8457f50278 usb: device_next: use common UDC pool on full-speed devices for CDC ACM
The required buffer is 128 bytes per instance on a full-speed device.
Use common (UDC) buffer, as this results in a smaller footprint.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-03 14:48:29 +01:00
Johann Fischer
81bf9d1102 usb: device_next: disable high-speed descriptors when not in use
Disable high-speed descriptors when they are not in use saves 64 bytes
in flash/RAM. It is unlikely that it will scale well enough to be used
in all class implementations or to support a different speed.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-03 14:48:29 +01:00
Johann Fischer
1c2d692d60 usb: device_next: use system workqueue in CDC ACM by default
Add Kconfig option to use dedicated workqueue in CDC ACM but use the
system work queue in CDC ACM by default.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-03 14:48:29 +01:00
Johann Fischer
6ea06038d9 usb: device_next: allow message callback to be executed from USBD thread
Allowing message callback execution from the USBD thread saves about 800
bytes. For small devices, the option can be useful to reduce flash/RAM
usage, those with enough resources should not bother about it.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-03 14:48:29 +01:00
Johann Fischer
187703c777 usb: device_next: allow vendor request support to be disabled
Disabling it if not needed can save about 100 bytes of flash memory.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-03 14:48:29 +01:00
Johann Fischer
ed4c27bd41 usb: device_next: allow BOS support to be disabled
Disabling it if not needed can save about 400 bytes of flash memory.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-03 14:48:29 +01:00
Maciej Meijer
3400aaf278 modules: hal_nordic: nrfs: update manifest
Add request to enable/disable dPlus pullup.

Signed-off-by: Maciej Meijer <maciej.meijer@nordicsemi.no>
2025-06-03 14:46:42 +01:00
Mathieu Choplain
8bc3a14c05 doc: board_porting: fix minor typo
Correct a minor typo in the hardware/porting/board_porting documentation
page.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-03 13:51:46 +02:00
Cla Mattia Galliard
02d2cc519a net: sockets: Enable gethostname even if socket-offloading is selected
Also allow `gethostname` to be compiled in, even when the socket offloading
option is selected.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-06-03 13:51:23 +02:00
Tomasz Moń
2248396873 drivers: udc_dwc2: Execute post enable quirk after enable
Device can be considered enabled only after the Soft Disconnect bit is
cleared. Move the post enable quirk past the SftDiscon bit clear.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-06-03 13:50:55 +02:00
Krzysztof Chruściński
4cf184773e drivers: serial: nrfx_uarte: Support for low power polling mode
Add support for getting to the lowest power mode when polling is
used with disable-rx property and interrupts are not used for
that UARTE. So far disabling of the UARTE peripheral was done in
the interrupt but in some cases interrupt may not be available
and in that case uart_poll_out shall wait until byte is transferred
and put UARTE into the lowest power state.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-06-03 13:50:38 +02:00
Manuel Argüelles
77c2c454f7 drivers: dma: esp32: guard driver's kconfig options
Wrap the driver's options to prevent them from showing up in the global
Kconfig menu.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-06-03 09:15:28 +02:00
Benjamin Cabé
b751bc00e2 doc: secure_storage: update Kconfig options formatting
Revised the documentation for PSA Secure Storage API configuration to
use the new :kconfig:option-regex: role for Kconfig options.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-03 09:15:19 +02:00
Benjamin Cabé
cfed396ffa doc: _extensions: kconfig: add :kconfig:option-regex: role
Allow users to create links to Kconfig regex searches.
The new role generates links to the Kconfig search page with the regex
pattern as the search query.

Fixes zephyrproject-rtos/zephyr#90571

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-03 09:15:19 +02:00
Zongchun Yu
2c2d12f765 boards: nxp: imx91_evk: add GPIO support
Add gpio in board yaml file, gpio2 is enabled by default.
Add btn and led nodes to ensure the button and blinky samples can work.
Add board overlay file for driver test case: gpio_basic_api.

Signed-off-by: Zongchun Yu <zongchun.yu@nxp.com>
2025-06-03 09:15:09 +02:00
Zongchun Yu
29bf4e7548 dts: arm64: nxp: imx91: add GPIO device tree nodes
Add GPIO device tree nodes for imx91.

Signed-off-by: Zongchun Yu <zongchun.yu@nxp.com>
2025-06-03 09:15:09 +02:00
Zongchun Yu
fef4b66280 west.yml: update hal_nxp
update hal_nxp for imx91 pinctrl

Signed-off-by: Zongchun Yu <zongchun.yu@nxp.com>
2025-06-03 09:15:09 +02:00
Joel Guittet
05f71f3874 drivers: counter: fix counter node in esp32 timers
Fix counter device tree node of the esp32 timers in the counter sample
and test app.

Signed-off-by: Joel Guittet <joelguittet@gmail.com>
2025-06-02 22:36:03 -04:00
Alain Volmat
2c2b2268af video: imx335: only include gpio code if needed
Rely on DT_ANY_INST_HAS_PROP_STATUS_OKAY to only build the
gpio handling code for reset pin if this is being used by
one or more instance of the device.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-02 22:35:45 -04:00
Alain Volmat
fc6d5c4871 video: imx335: increase T4 delay post reset
Increase the T4 delay after releasing the reset of the
sensor in order to avoid getting I2C communication issues
at initialization time.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-02 22:35:45 -04:00
Alain Volmat
4e63863b46 video: ov5640: only include gpio code if needed
Rely on DT_ANY_INST_HAS_PROP_STATUS_OKAY to only build the
gpio handling code for reset and powerdown pins if this is
being used by one or more instance of the device.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-02 22:35:45 -04:00
Alain Volmat
9f81f4f7ec video: ov5640: allow usage without reset or powerdown gpios
reset and powerdown pins are optionals.

gpio_is_ready_dt should not be called in case of reset or
powerdown are not present.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-02 22:35:45 -04:00
Mike J. Chen
e6d38ce11c drivers: clock_control_mcux_syscon: Added get support for I2S FLEXCOMM
Previously, I2S_MCUX_FLEXCOMM was expected to use the external
MCLK only but it's possible for I2S_MCUX_FLEXCOMM to be sourced
from other clocks like the audio_pll_clk, in which case the
driver needs to be able to get the current clock frequency
in order to properly set dividers for requested sample rate.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-06-02 22:35:29 -04:00
Tom Hughes
94edd97233 soc: npcx: Add __packed to flags struct in npcx_pinctrl
When building with clang and CONFIG_LTO, clang warns:

soc/nuvoton/npcx/common/pinctrl_soc.h:141:4: error: field flags within
'struct npcx_pinctrl' is less aligned than 'struct (unnamed struct at
soc/nuvoton/npcx/common/./pinctrl_soc.h:128:2)' and is usually due to
'struct npcx_pinctrl' being packed, which can lead to unaligned accesses
[-Werror,-Wunaligned-access]
         } flags;
           ^

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-06-02 22:35:14 -04:00
Sylvio Alves
ad3df1d0f2 driver: counter: esp32: make sure callback is executed
User callback can be used to re-trigger the alarm.
In such case, copy current callback before it is overritten.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-02 22:10:51 +02:00
Adib Taraben
293b8d6003 drivers: enet: eth_nxp_enet_qos_mac: handle errors in RX queue worker
Handle each error individually.
Do not skip RX loop on first error.
Revise DMA buf size to CONFIG_NET_BUF_DATA_SIZE.

Signed-off-by: Adib Taraben <theadib@gmail.com>
2025-06-02 22:10:27 +02:00
Fin Maaß
bf111b44ad mgmt: hawkbit: add shell autohandler timeout Kconfig
Add shell autohandler timeout configuration option.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-02 22:10:13 +02:00
Benjamin Cabé
eec8db7bfb soc: esp32c6: Fix clock references
since commit e0a915a178, rtc is now clock

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-02 22:10:02 +02:00
Fabio Baltieri
124af38a1d github: hello_world_multiplatform: set the toolchain list
The SDK is growing bigger and bigger, set the toolchain list so we only
fetch the ones needed by the tests we run, save some disk space,
apparently this workflow is getting close.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-02 20:23:22 +02:00
Anas Nashif
09f43f500c MAINTAINERS: move Debug: Profiling: Perf into Debug
consolidate area without collaborators into an existing maintained area.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-02 20:23:00 +02:00
Anas Nashif
e6d8dc68ca MAINTAINERS: add collaborators to interrupt handling area
Fill empty area.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-06-02 20:23:00 +02:00
Pieter De Gendt
88d7715a29 scripts: west_commands: zspdx: writer: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-02 20:22:51 +02:00
Pieter De Gendt
01bfd2600d scripts: west_commands: zspdx: walker: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-02 20:22:51 +02:00
Pieter De Gendt
e365746fd9 scripts: west_commands: zspdx: scanner: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-02 20:22:51 +02:00
Pieter De Gendt
10bd714110 scripts: west_commands: zspdx: sbom: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-02 20:22:51 +02:00
Pieter De Gendt
8360238ae5 scripts: west_commands: zspdx: getincludes: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-02 20:22:51 +02:00
Pieter De Gendt
3ccda0e4fe scripts: west_commands: zspdx: datatypes: Fix UP008
Replace super call with parameters reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-02 20:22:51 +02:00
Pieter De Gendt
6c4decf272 scripts: west_commands: zspdx: cmakefileapijson: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-02 20:22:51 +02:00
Pieter De Gendt
2913bfee6f scripts: west_commands: zspdx: cmakefileapi: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-02 20:22:51 +02:00
Pieter De Gendt
0a0e691750 scripts: west_commands: zspdx: cmakecache: Fix linter issue
Fix redundant open mode.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-06-02 20:22:51 +02:00
Borislav Kereziev
10e5753d20 drivers: sensor: Add support for BH1730 ambient light sensor
This commit adds support for BH1730 ambient light sensor.

Signed-off-by: Borislav Kereziev <b.kereziev@gmail.com>
2025-06-02 20:22:42 +02:00
Rubin Gerritsen
b8bff65fcb include: common: sys_bitops: Specify sign when bitshifting
When left-shifting '1' by 31, the result is undefined. This is
something ASAN detects.

Solve this by explicitly defining that the integer is unsigned.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-06-02 20:22:20 +02:00
Sylvio Alves
e0a915a178 soc: espressif: convert rtc peripheral to clock subsystem
Current ESP32 clock system is mixed with RTC labeling/registers,
but it doesn't implement a real-time clock (RTC) driver.

To avoid confusion and allow adding a proper RTC driver later,
this commit renames the existing RTC interface to CLOCK and make
it as a subsystem without any peripheral attached to it.

This better reflects its actual purpose as a general clock controller.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-02 17:38:08 +02:00
Parthiban Nallathambi
c42cd2d0a2 MAINTAINERS: group dts into respective platforms
currently all the dts changes of Texas Instruments platform
tags Simplelink due to the directory inclusion.

Split the dts inclusion for respective groups i.e K3, simplelink
and mspm0 is already correctly grouped.

MSP432 is currently not under any tree of maintainence.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-06-02 17:38:01 +02:00
Chaitanya Tata
810697bf4b samples: net: zperf: Add Zperf server report skip
This way server report is skipped, but client stats are still dumped.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-06-02 17:37:55 +02:00
Chaitanya Tata
2f991f2bff net: lib: zperf: Add support for skipping UDP upload server report
Add support for skipping UDP upload server report, useful in test TX
only with loopback (packets are dropped, so, no report).

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-06-02 17:37:55 +02:00
Chaitanya Tata
778d72a215 samples: net: zperf: Fix the loopback drop config
This should have been disabled, by default we want loopback and
optionally TX only.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-06-02 17:37:55 +02:00
Ayush Singh
debdd80da1 drivers: i2c: omap: Make reg pointers volatile
Since the __IO macro use has been removed, make the whole reg pointer
volatile. This is similar to what is done in the gpio-davinci driver.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-06-02 17:37:43 +02:00
Ayush Singh
c13e23d12e boards: beagle: pocketbeagle_2: a53: Enable main_i2c2
- Pins P1.26 and P1.28

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-06-02 17:37:43 +02:00
Ayush Singh
03758cddd8 boards: beagle: pocketbeagle_2: a53: Add MAIN I2C2 Pinmux
Add pimux for I2C on pins P1.26 and P1.28

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-06-02 17:37:43 +02:00
Ayush Singh
9c1f59264e drivers: i2c: i2c_omap: Fix for PocketBeagle 2 A53
Remove __IO macro.

Fix build errors for PocketBeagle 2 A53 target

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-06-02 17:37:43 +02:00
Ayush Singh
764cab78a6 dts: arm64: ti: ti_am62x_a53: Add MAIN_I2C*
Add all main domain i2cs.

Also using the naming scheme from linux kernel to use the domain prefix
in nodes. It would be best if the naming scheme is followed for all new
additions.

I will create PRs to migrate the already defined nodes to the prefix
based naming scheme in the future.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-06-02 17:37:43 +02:00
Filip Kokosinski
07e4ba4240 soc/sifive: differentiate between FE310-G000 and FE310-G002
This commit reflects a difference between FE310-G000 and FE310-G002 SoCs,
since only the latter supports PMP. The result of that is the split of the
HiFive1 board into two separate targets, since the HWMv2 right now assumes
that board revisions share the same SoC.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-06-02 17:37:32 +02:00
Filip Kokosinski
ba562ee684 tests: add min_ram for heap-using testcases
Two testcases have an implicit minimum memory requirement due to heap usage
and are failing with `ENOMEM` for some platforms:
* portability.xsi.single_process.newlib
* kernel.message_queue.usage

This commit filters out platform that can't satisfy this requirement.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-06-02 17:37:32 +02:00
Piotr Ciura
29a191ad38 drivers: usb: Prevent from perpetual locked state
The USB CDC driver is unable to process any bulk IN transfers
after receiving spurious 'Clear Feature - Endpoint Halt' request
from host due to perpetual locked state caused by previously
scheduled transfer, that will never be finished, as the endpoint's state
is set to NAK. Fix by ignoring spurious request.

Signed-off-by: Piotr Ciura <piotr.ciura@hidglobal.com>
2025-06-02 17:37:14 +02:00
Jakub Michalski
b7565240a3 tests: add VIRTIO PCI build test
This commit adds a build test for the VIRTIO PCI device.

Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-06-02 17:37:07 +02:00
Jakub Michalski
43b3781f93 docs: virtio: add virtio docs
This commit adds virtio section in documentation, describing
virtio-related concepts

Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-06-02 17:37:07 +02:00
Jakub Michalski
c7107fc4d6 virtio: add API for VIRTIO devices and add VIRTIO PCI driver
This commit adds the API for accessing VIRTIO devices, and adds a driver
for a VIRTIO PCIE device based on the newly added API.

This commit is based on the Virtual I/O Device (VIRTIO) Version 1.3
specification:
https://docs.oasis-open.org/virtio/virtio/v1.3/csd01/virtio-v1.3-csd01.pdf

Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-06-02 17:37:07 +02:00
Shrek Wang
6e7756a542 net: tcp: Change SYN FIN to use send_data_timer
The send_queue was used as SYN/FIN packet retransmission. Before
the SYN/FIN being ACKed and dequeue-ed, the following packets in
the send_queue cannot be sent out. That's why Zephyr had to send
a FIN+ACK instead of a duplicated ACK-only in FINWAIT1, CLOSING.
In fact, we can take SYN/FIN as kind of data and use the same
send_data_timer for retransmission, like other OSes do. This way,
the send_queue is simply used for local traffics.
Benefits (in theory):
1. The code is easier,
2. TxPkt performance is better after skipping enq/deq send_queue,
3. The struct tcp{} node is a few bytes smaller, saving memory.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-06-02 13:30:19 +02:00
Michael Hope
31fe70805f modules: hal_wch: update the HAL to pull in CH32V00x support
Now that the HAL has been commited, pick it and fix the related build
errors.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-02 13:30:04 +02:00
Dawid Niedzwiecki
964aa56ea7 interrupt_controller: intc_plic: move unused function
Move function that is used only if some configs are defined.

Signed-off-by: Dawid Niedzwiecki <dawidn@google.com>
2025-06-02 13:29:30 +02:00
Dawid Niedzwiecki
968dcc9fda arch: riscv: guard some funcions
Guard some functions with ifdefs to avoid unused function
compilation errors.

Signed-off-by: Dawid Niedzwiecki <dawidn@google.com>
2025-06-02 13:29:30 +02:00
Henrik Brix Andersen
362e17a0c0 drivers: can: mcp2515: reformat files using clang-format
Reformat the MCP2515 driver files using clang-format and remove excessive
newlines between variable declarations.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-06-02 13:29:17 +02:00
Henrik Brix Andersen
e4fa41e2ad drivers: can: mcp2515: merge nested if-statements into one
Merge two nested if-statements into one.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-06-02 13:29:17 +02:00
Henrik Brix Andersen
c4247c6430 drivers: can: mcp2515: terminate if...else if construct with an else
Terminate the if...else if construct with an else block in order to adhere
to coding guidelines.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-06-02 13:29:17 +02:00
Henrik Brix Andersen
214b9c5278 drivers: can: mcp2515: declare the variable "data_idx" inside the loops
Declare the variable "data_idx" inside the loops to limit it's scope.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-06-02 13:29:17 +02:00
Adam Kondraciuk
8b6c2b1e8b tests: drivers: i2s: Align tests to TDM peripheral
Some of nRF54's has TDM peripheral instead of I2S.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-02 13:29:10 +02:00
Adam Kondraciuk
5676c65ee8 drivers: i2s: Add support for nRF TDM peripherals
Add a shim that allows using the nRF TDM
(Time division multiplexed audio interface) HAL by I2S Zephyr API.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-02 13:29:10 +02:00
Adam Kondraciuk
7381c8919e dts: nordic: nrf54: add TDM support for nRF54
Add TDM support for nRF54H20 and nRF54L20

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-02 13:29:10 +02:00
Adam Kondraciuk
f691d8e020 drivers: pinctrl: nrf: Add support for TDM peripheral
Add support for configuring pins of the nRF TDM peripheral.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-02 13:29:10 +02:00
Adam Kondraciuk
fa55c30e46 soc: nordic_nrf: add support for TDM
Add Kconfig options for TDM130 and TDM131.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-06-02 13:29:10 +02:00
Josuah Demangeon
cf6170cbe6 doc: build: dts: api: document the zephyr,camera chosen node
The zephyr,camera was used in several samples, but was not documented.
Add the missing documentation entry for it in the list.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-02 05:48:21 +02:00
Josuah Demangeon
c00015ded5 samples: drivers: video: tcpserversink: add _dev suffix to variable
Variables that holds pointers to 'const struct device' typically end-up
with '_dev'. The tcpserversink video sample did not have it. Add it.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-02 05:48:21 +02:00
Josuah Demangeon
be5df19664 samples: drivers: video: tcpserversink: sort header alphabetically
Since this sample's headers are now grouped it is possible to sort them
alphabetically.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-02 05:48:21 +02:00
Josuah Demangeon
1b3f96ce3e samples: drivers: video: convert to new LOG_MODULE_REGISTER() syntax
Convert the log module declarationto the new syntax introduced in
5e34681 proposing a more compact syntax.
This fixes the log level not being updated in the "capture" sample.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-02 05:48:21 +02:00
Josuah Demangeon
a3465f8f4d drivers: video: sw_generator: convert to use the devicetree
Make the video software generator a devicetree node, which allows enabling
several instances, and select it as chosen { zephyr,camera = &... }; node.
It can be enabled via a `video-sw-generator` snippet.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-02 05:48:21 +02:00
Josuah Demangeon
cc664676ac samples: drivers: video: fix board definitions
By having an "auto-fallback" mechanism, the VIDEO_SW_GENERATOR did shadow
the fact that "platform:mimxrt1064_evk:SHIELD=dvp_fpc24_mt9m114" was
missing the full specification, and therefore was not matched at all:
the shield was not selected, but the CI still worked.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-02 05:48:21 +02:00
Alain Volmat
5fa26d9aea video: gc2145: use VGA resolution as default
Since QVGA resolution is currently not working in CSI, use VGA
as default resolution to avoid failing during the init of the
driver.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-02 05:48:12 +02:00
Alain Volmat
79e218aaf4 video: gc2145: add CSI mode of the GC2145 sensor
Add possibility to use the gc2145 sensor in CSI mode by
adding the bus-type property in the device-tree.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-02 05:48:12 +02:00
Alain Volmat
979d8ff0fe video: gc2145: avoid default DVP enabling
Do not enable by default the DVP streaming to avoid conflict
with the introduction of the MIPI mode of the GC2145.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-02 05:48:12 +02:00
Alain Volmat
eeab052505 video: st_mipid02: addition of ST MIPID02 CSI bridge
Addition of the support for the CSI to DVP bridge ST MIPID02.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-02 05:48:03 +02:00
Alain Volmat
b0432a8f48 video: add LINK_FREQ ctrl and a helper to retrieve it
Add a ctrl VIDEO_CID_LINK_FREQ to indicate to a sink
the frequency at which a device streams data over
CSI2. Since not all source device currently provide the
LINK_FREQ control, add a helper function to retrieve
it, with a fall-back by doing an approximate via the
PIXEL_RATE control.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-02 05:48:03 +02:00
Alain Volmat
b5d8aee7d7 video: common: addition of INTEGER_MENU control type
Add a new INTEGER_MENU type allowing to store signed 64bits
integer into a menu.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-02 05:48:03 +02:00
Alain Volmat
a459f1dbe8 video: addition of CSI2 standard data-type defines
Add standard data-type macros within the video.h in order
to avoid having to redefine them all in each and every CSI
based driver.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-06-02 05:48:03 +02:00
Anas Nashif
450345aea3 ci: move weekly build back to sunday night
Now that we have faster runners, we can move this back to the night and
be productive during the day :)

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-31 11:31:21 -04:00
Ryan McClelland
8c7417a552 drivers: i3c: fix adv_info_get ret code
It's possible if a device is an i3c v1.0 spec, no hdr, no mxds,
no controller caps, and does not have a mrl nor mwl. It should
return 0 if it doesn't need to do anything.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-05-31 07:06:13 -04:00
Anas Nashif
8286b0ee61 doc: coding guidelines: clarify severity
Make a note about the severity column which is informational and
directly taken from MISRA. All rules in the table are required for
Zephyr.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-31 07:05:41 -04:00
Sven Depoorter
ff3d5f89a2 drivers: pwm: pwm_nrf_sw: use shutdown task if available
Add a workaround for NRF52 anomaly 78: "High current consumption when
using timer STOP task only. Use the SHUTDOWN task instead."

Signed-off-by: Sven Depoorter <svndepoorter@gmail.com>
2025-05-31 07:04:01 -04:00
Adrian Bonislawski
240b56008c drivers: ssp: unify clock selection flow across ACE platforms
During intensive testing, it was found that the clock should
be set the same way on all ACE platforms

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-05-31 07:03:39 -04:00
Ryan McClelland
af1ba95ba7 drivers: i3c: cdns: add busy status
Add busy status for cadence i3c.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-05-31 07:03:19 -04:00
Björn Bergman
bb797ab421 cmake: Fix compilation options for kobject_hash*.c
Rework how the compilation-options for the gperf generated
kobject_hash*.c files are put together to fix problems with SHELL:
and cmake-list separators handling.

zephyr_get_compile_options_for_lang_as_string() returns the set of
options as a cmake generator expression string which is cumbersome to
edit. This caused the command line for the IAR toolchain to have broken
SHELL: entries, and other some command line entries being postfixed by
"gnu".

This also adds CMake compiler properties for no_function_sections and
no_data_sections options

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-05-31 07:02:36 -04:00
Michal Morsisko
e87e0542b8 drivers: spi_bitbang: Increase supported word size to 32 bits
This change introduces support for words up to 32 bits size
to the spi_bitbang driver

Signed-off-by: Michal Morsisko <morsisko@gmail.com>
2025-05-31 07:02:06 -04:00
Mathieu Choplain
c8c0c294b1 arch: arm: cortex_a_r: use correct name for TLB Conflict Abort
Commit 87719828ac introduced FSR definitions
for ARMv7-A/R; however, the value 16 which is documented in the ARM[1] as
a "TLB Conflict Abort", was introduced as "TLB Conflict Fault" instead and
described as a "Table Conflict Fault".

Update all affected files to use the ARM's naming for this error instead.

[1] Architecture Reference Manual (Document ID: ARM DDI 0406C.d)
    "ARM Architecture Reference Manual for ARMv7-A and ARMv7-R Edition"

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-05-31 07:01:36 -04:00
Sudan Landge
5ab74ff1de doc: arm: cortex_m: Update PACBTI support
Update PACBTI support for architecture variants in the features table
and add a new section introducing PACBTI support/limitations.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-05-31 06:55:18 -04:00
Sudan Landge
c6d1932b17 doc: arm: cortex_m: Update feature table
Add Cortex-M85 under the Arm v8.1-M architecture variant column.
Cortex-M85 shares feature support with Cortex-M55, including Privileged
Execute Never (PXN), and additionally introduces Pointer Authentication
and Branch Target Identification (PACBTI) extensions.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-05-31 06:55:18 -04:00
Sudan Landge
35b5fb3bd6 arch: arm: cortex_m: Add support for PACBTI flags
Introduce a Kconfig choice to select Pointer Authentication and Branch
Target Identification (PACBTI) features on Armv8.1-M Mainline CPUs.
The available options map to supported `-mbranch-protection` levels
(`standard`, `pac-ret`, `bti`, and combinations) documented at
https://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html
These options enable hardware-assisted control-flow integrity mechanisms on
targets like Cortex-M85, and require a toolchain with PACBTI support, such
as GCC 14.2 or newer.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-05-31 06:55:18 -04:00
Bas van Loon
e7dd7abc0e drivers: i2c: Add support for clock stretching in the i2c-gpio module.
Some I2C peripherals like TI charger or gauge chips need support for I2C
clock stretching. This patch includes that and makes these modules
usable with I2C emulation over GPIO.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-05-31 06:55:10 -04:00
Ryan McClelland
d3a7b7df9a drivers: i3c: cdns: fix ibi length with no payload
If the BCR value is not set for ibi w/ payload, then it still
has a ibi length of 1 due to the MDB. Set the PL accordingly.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-05-31 06:54:59 -04:00
Daniel Kampert
a673871970 drivers: sensor: Remove broken reset from apds9306 driver
The reset may cause initialization issues because of a missing
ACK from the sensor. The error check for the I2C communication
is removed to avoid issues during the initialization.

Closes #89850

Signed-off-by: Daniel Kampert <DanielKampert@kampis-elektroecke.de>
2025-05-31 06:54:52 -04:00
Pieter De Gendt
62ea066794 scripts: west_commands: simulate: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-31 06:54:39 -04:00
Pieter De Gendt
b9fb5d79e4 scripts: west_commands: robot: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-31 06:54:39 -04:00
Pieter De Gendt
359a0c2809 scripts: west_commands: flash: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-31 06:54:39 -04:00
Pieter De Gendt
5321c14628 scripts: west_commands: debug: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-31 06:54:39 -04:00
Pieter De Gendt
d9d4daa940 scripts: west_commands: build_helpers: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-31 06:54:39 -04:00
Pieter De Gendt
166fd3e506 scripts: west_commands: build: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-31 06:54:39 -04:00
Derek Snell
2dc9c2b360 samples: subsys: nvs: add testcase for MCXN947 internal flash
For boards frdm_mcxn947 and mcx_n9xx_evk test NVS in internal flash in
addition to external QSPI flash.  Also enable the NVS subsystem on
these boards for Twister.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-05-31 05:57:40 -04:00
Derek Snell
bb7f776194 boards: nxp: frdm_mcxn947 and mcx_n9xx_evk: enable clock for FMU
For internal flash FMU programg/erase operations, enable the FRO12MHZ
clock when the flash driver is enabled.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-05-31 05:57:40 -04:00
Derek Snell
1fd24fbdbb soc: nxp: mcx: MCXNx4x: update SOC to use flash_k4 driver
Use flash_k4 driver for internal flash instead of ROM API driver.  One
benefit is the flash program phrase size decreases from 128 Bytes to 16
Bytes.  16 Byte phrases enables this SOC to leverage the Zephyr NVS
subsystem, and the MCUboot swap mode.

Signed-off-by: Derek Snell <derek.snell@nxp.com>

Conflicts:
	west.yml
2025-05-31 05:57:40 -04:00
Manuel Argüelles
6681f8d342 soc: nxp: s32k3: configure missing mpu regions
This fixes a regression introduced in c31640239c where all regions
except Flash and RAM where left unmapped. Before introducing region
0 that prevents speculative access to the entire memory space, we
were relying on the architectural background map to access them.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-05-31 05:57:18 -04:00
Manuel Argüelles
63ebf4d23f Revert "arch: arm: mpu: fix erratum 1013783-B"
This reverts commit 983b1d088c.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-05-31 05:57:18 -04:00
Tom Hughes
db726c40a9 sw_isr_table: Add spaces to fix compiler warning
When using clang to build a C++ file that includes this file, it warns:

include/zephyr/sw_isr_table.h:195:28: error: invalid suffix on literal;
C++11 requires a space between literal and identifier
[-Wreserved-user-defined-literal]
         "." Z_STRINGIFY(prefix)"."file"." Z_STRINGIFY(counter)

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-05-31 05:56:28 -04:00
Luis Ubieda
ae114f175f tests: modem_ubx: Fix clang failure by removing static keyword
Reported on latest clang-build run (250530).

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-31 05:56:01 -04:00
Ederson de Souza
923fedb429 arch/x86/core: Use CONFIG_QEMU_TARGET for QEMU specific code
Instead of both checking CONFIG_BOARD_QEMU_X86 and
CONFIG_BOARD_QEMU_X86_64, simply check for CONFIG_QEMU_TARGET.

This also helps qemu_x86_tiny, qemu_x86_lakemont and any
future/downstream QEMU targets to keep things simple.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-05-31 05:55:41 -04:00
Dhruv Menon
d54c308695 docs: fix typo in vendor-prefixes for Digilent Inc.
This commit corrects the spelling to reflect the official name

Signed-off-by: Dhruv Menon <dhruvmenon1104@gmail.com>
2025-05-31 03:38:01 +02:00
Piotr Kosycarz
dbb32434ba samples: sensor: accel_trig: add fixture for shield-tap
Prevent execution on devices without proper shield.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-05-31 03:37:40 +02:00
Matthieu Speder
66d90e7782 soc: nxp_kinetis: Mark __kinetis_flash_config with __used attribute
This is a fix for issue #90426 .
Marking __kinetis_flash_config  with __used attribute prevents
unwanted deletion when compiling with LTO.

Signed-off-by: Matthieu Speder <mspeder@users.sourceforge.net>
2025-05-31 03:37:20 +02:00
Declan Snyder
481711e5a6 tests: spi_loopback: Fix fail handle of thread test
Right now the thread test case does not handle when the test fails, the
test will be aborted by ztest in one of the spawned threads, and cause
desynchronization which messes up the rest of the test. Fix by
synchronizing in the case of fails and return fail from main test thread
instead of the spawned ones.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-31 03:36:33 +02:00
Declan Snyder
c10c13b961 tests: spi_loopback: Handle overflow of print latency
The test that checks latency also prints a measurement of the latency
which is just a visual information for the test output. However, this
print uses a subtraction which can have an overflow in the case where
the kernel timer is behind, so just clamp to 0 in that case where there
is an overflow. This change does not affect the test pass/fail logic.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-31 03:36:33 +02:00
Andrej Butok
eb5014f7a3 soc: imxrt: add mimxrt1052/1062 flashing configuration
- Adds a flash runner configuration for mimxrt1052 and mimxrt1062,
  used for sysbuild multi-image projects, mainly for MCU-boot.
- Avoid unwanted multiple erases and resets.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-05-31 03:36:24 +02:00
Michal Kozikowski
df65918cfa drivers: spi: spi_context.h: remove multithreading dependency
Replace semaphores with proper atomic flags when used without
multithreading enabled.

Signed-off-by: Michal Kozikowski <michal.kozikowski@nordicsemi.no>
2025-05-31 03:36:14 +02:00
John Shelton
7af55237da driver: sensor: aosong,dht: fix sensor protocol broken since change #83192
A recent change 9eeb60c improperly removed a critical line in the driver.

This commit replaces that line and moves an irq_lock to above any pin

value manipulation since the timing is sensitive with the DHT protocol.

This should also fix the timing issue 9eeb60c attempted to fix.

Signed-off-by: John Shelton <moosery@gmail.com>
2025-05-31 03:35:47 +02:00
Benjamin Cabé
1fb86e1470 doc: release: update/consolidate LTS information
Update documentation with new LTS lifecycle information following TSC
decision to extend LTS support to 5 years.
Also removed some duplicate information.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-31 03:35:36 +02:00
David Brown
36e0b3dea7 modules: optional: rust: Update to latest development
Bring in the following changes to the Rust module, updating since rev 4.1.

1cab77b436b dts.pest: Add support for comments in devicetree source files
e53f6de1c06 fix(cmake): Evaluate generator expressions in sample cargo...
e64cadb3c9e zephyr: thread: Add 'join_timeout' to RunningThread
a683eb8a3b5 zephyr: Replace critical-section implementation
26cd3bc0c8a zephyr-sys: Export irq_lock/unlock
901edef9bc8 zephyr: Specify minimum rust version
0de6f6c390d zephyr-build: Simplify dt-yaml syntax
edcef3ba39c zephyr: Remove stale doc references to futures
4096ad7c803 cmake: Fix dependency problem
5557cb3fc35 zephyr: object: Fix bad doc link
d921320cc7d zephyr: devicetree: Allow non-snake-case names in DT nodes
14618bd02f7 zephyr: sys: sync: Semaphore: Remove incorrect ALLOC check
47e270d5ac5 zephyr: sync: Conditionalize PinWeak on alloc
f8b228fe71c samples: bench: Increase thread stack size on 64-bit platforms
ec50a4317b9 zephyr: sync: Create PinWeak type
2e5059a209d samples: async-philosophers: Remove overly specific imports
a0061313850 samples: async-philosophers: Convert to general async
5c15fbb9d20 zephyr: Remove work-queue executor
f107c93dce6 samples: rename work-philosophers to async-philosophers
ed8d08bc890 samples: bench: Replace old async with new
087e584eae9 zephyr-macros: Incorporate fn name into thread name
72ed3818192 samples: philosophers: Migrate to new task declaration
44b2dd28073 zephyr: Add proc macro for thread declaration
8952b444b3a CI: Force python version 3.12
e3518de6d07 cmake: add USES_TERMINAL to show cargo output
b7dacdac984 zephyr: embassy: Use a semaphore for the executor
a871c7f588c Add support for board native_sim/native/64
349164d630a samples: blinky: Remove incorrect integration platform
b0866632d42 samples/tests: Ensure test/sample names are unique
7395ae4f486 zephyr-build: fix DTS parser for Windows
a341bc50041 samples: philosophers: Migrate Mutex to const constructor
5000f459f26 samples: bench: Clean up formatting
6020ab7db36 zephyr: Run rustfmt
c1d74e1d5df samples: bench: Make Semaphores static
37754d29e0b samples: bench: Reduce benchmark iterations
11067823e53 samples: bench: Remove the 'basesem' prototype
3a4f08ba1ea zepyr: sys: sync: Mutex/Condvar
64605eb89cf samples: bench: fix for API change
8d7ca493801 zephyr: Convert `Queue` to new atomic initializer up
3a0016dace2 zephyr: sys: sync: Make Semaphore constructors `const`
5ceccc155c2 zephyr: object: Implement new ZephyrObject wrapper
2790674bb7f docgen: Enable async features for doc generation
1b475b7a9a8 tests: drivers: gpio-async: Test the async gpio operations
0347eac6882 zephyr: Add async 'wait_for_high' and 'wait_for_low' to gpio
b60408c54ef zephyr: device: Add a possible static element with each device
28f7ec6b515 zephyr: device: gpio: Add a few more methods
bcc9ee433bd zephyr: embassy: Add Default implementation
a458d8e33eb zephyr: embassy: Eliminate unused printkln import
dea64363115 samples: embassy: Detect proper end to the test
04d9e5714e6 samples: embassy: Increase task pool size
eae89bc4d2b samples: embassy: Fix test name
758a2c264c7 samples: embassy: Update formatting
ac0eaac9d8b zephyr: Update rustfmt
db93ee7978e samples: embassy: Update Embassy Demo for Zephyr executor
a9958395985 zephyr: Implement `executor-zephyr` to use with Embassy
60d7c5396ac samples: embassy: Start of an embassy demo
1540e9ab785 zephyr: Add initial support for embassy
1503a982e00 docs: Update top-level index
c58d1f20024 zephyr: Expand top-level crate docs

Signed-off-by: David Brown <david.brown@linaro.org>
2025-05-30 19:40:57 +02:00
Grzegorz Chwierut
c6a41a47d9 tests: boot: Update imgtool path in west_sign_wrapper
Fixes tests/boot/with_mcumgr in case, when imgtool is
not installed. Added imgtool path to west sign wrapper.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-05-30 19:40:44 +02:00
Dipak Shetty
f5d1803eca tests: drivers: build_all: stepper: add uart configuration for tmc51xx
Now added a node to test builds with tmc51xx on uart.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-05-30 19:40:34 +02:00
Dipak Shetty
358907b25f drivers: stepper: adi_tmc: tmc51xx uart support
Added support for tmc51xx uart support alongside the
existing spi support. The tmc51xx driver is now consolidated
into a dedicated folder.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-05-30 19:40:34 +02:00
Dipak Shetty
a66d064dc4 drivers: stepper: adi_tmc: extend rampstat mask range
Now added pos_reached_mask for polling rampstat when
position reached event is not supported, for example,
with uart drivers. Consequently, when the position is
reached, the position is reached, and the event flag is
set active. Hence, an additional value is now introduced.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-05-30 19:40:34 +02:00
Dipak Shetty
b914537603 drivers: stepper: adi_tmc: extend to support uart
Add support for trinamic controller with single wire UART

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-05-30 19:40:34 +02:00
Dipak Shetty
6cc860d892 drivers: stepper: adi_tmc: bus: abstraction layer for bus
Now a bus abstraction for Trinamic stepper drivers with
unified interface for SPI/UART communication. Separates
transport logic from device-specific functionality.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-05-30 19:40:34 +02:00
Dipak Shetty
bceeb766fc dts: bindings: stepper: adi: tmc51xx uart support
Now adds support to tmc51xx via uart. The base yaml supports
the common properties, and uart and spi bindings are
configuration-specific.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-05-30 19:40:34 +02:00
Luis Ubieda
94a7f028ef ubx: Refactor codebase in order to improve usability
During testing and code inspection, there were various anti-patterns
on this (and U-Blox driver) codebase(s), including obfuscation, and
lack of data validation. This made it increasingly difficult to
introduce further variants of u-blox GNSS modems.

With this patch, both the UBX modem and the M8 driver have been
refactored to ease the reliability and maintainability of these
codebases. Here are some highlights:

WRT UBX modem:
- Helper macros to easily create UBX frames, (including checksum
calculation), at compile time; thus, making it easier to extend UBX
commands.
- Logic validation by the inclusion of the modem_ubx testsuite, used to
refactor the code through TDD.
- Ability to receive unsolicited messages, in order to enable U-Blox
drivers to rely on modem_ubx to transceive all commands, and avoid
hopping between modem_ubx and modem_chat.

WRT M8 driver:
- Remove GNSS specific protocol header files. Instead, unify them under
modem/ubx/protocol.h. Background: After a survey and looking at ubxlib
SDK I conclude the UBX protocol is by definition a GNSS protocol (there
are non-GNSS u-blox modems, but they're not interfaced through UBX
protocol).
- Establish pattern to create and send/receive commands using new
foundations on modem ubx.
- Remove dependency of Modem chat, and instead use UBX unsolicited
messages to get Navigation and Satellites data.
- Switch from the auto-baudrate detection pattern to a pattern of
transitioning between an initial known baudrate to a desired baudrate,
in order to improve initialization time.
- Add dts property to configure default fix-rate.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-30 19:40:19 +02:00
Declan Snyder
f1df21278c soc: rw: Enable flexcomm wakeup/sleep clocking
Following the new feature in the flexcomm driver to be able to wake up
from low power mode, the clock control drivers have to handle the
platform specific details, so this commit adds to the already ugly mess
that is the LPC syscon driver which is used by RW currently and makes
the required devicetree changes.

Make the console/shell uart on the FRDM_RW612 take advantage of this by
default.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-30 19:40:11 +02:00
Declan Snyder
e5a35e6435 drivers: uart_mcux_flexcomm: Enable as wakeup src
Add the feature for the flexcomm uart to be able to be a wakeup source
from low power modes. To be able to do this on a relevant platform, the
DT node for the UART needs to have the wakeup-source property and define
a "sleep" clock. The details of handling the sleep clock and default
clock are still platform specific but handled by the clock control
driver of the platform, so that this code should be able to be
applicable to any platform that follows the same DT definition.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-30 19:40:11 +02:00
Declan Snyder
4598c18754 soc: rw: Switch main clock on PM2 to LPOSC
On RW, normal configuration has all clock generators gated in PM2.
Only the LPOSC is available for main clock source since it is a low
power clock.

Many of the peripherals on the chip are still "on" and do need a
main clock source in order to be effective as wakeup sources
to the chip as intended. So we should make this switch for PM2
specifically in order to achieve desired wakeup capabilities.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-30 19:40:11 +02:00
Declan Snyder
6bd6e50838 pm: Add API to check if a state disables a device
Add an API function that can be used by client code to check if a state
disables a device.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-30 19:40:11 +02:00
Declan Snyder
65ebecbf78 pm: refactor policy_device_ get/put
Refactor this code so it has less nesting and is able to share some code
between functions, by making a function to find the device constraints
object which can be called before doing operations using it.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-30 19:40:11 +02:00
Declan Snyder
481a2faf1e uart_mcux_flexcomm: Fix TX garbage char bug in PM
There is currently a bug where when entering low power modes, there is a
garbage character sent if the UART is in the middle of a transmit when
entering low power mode. This is because the fifo interrupt happens when
last character is pulled by transmitter from fifo and then we unlock PM
constraints at that moment, instead of waiting for actual transmitter to
become idle. Fix by adding work item to check for this when needed.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-30 19:40:11 +02:00
Jordan Yates
a550c74da1 doc: document WIFI_USAGE_MODE
Add docs for `WIFI_USAGE_MODE` in the Wi-Fi section and release notes.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-30 19:40:01 +02:00
Jordan Yates
3aa61a9503 tests: wifi: nrf_wifi: reduce config overrides
Reduce the number of config overrides needed for the various testcases
by only enabling the options if needed in the first place.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-30 19:40:01 +02:00
Jordan Yates
3d7979ea4a drivers: wifi: nxp: auto NXP_WIFI_SOFTAP_SUPPORT
Automatically enabled `NXP_WIFI_SOFTAP_SUPPORT` if the application
specifies it wants AP support.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-30 19:40:01 +02:00
Jordan Yates
53cf5ff576 drivers: wifi: esp32: auto ESP32_WIFI_AP_STA_MODE
Automatically enabled `ESP32_WIFI_AP_STA_MODE` if the application
specifies it wants either feature.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-30 19:40:01 +02:00
Jordan Yates
90a2d0ec92 drivers: wifi: nrf_wifi: operation mode from application request
Default the operation mode from the application requested Wi-Fi
features, not the nRF70 part number.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-30 19:40:01 +02:00
Jordan Yates
7dbd36a222 drivers: wifi: options for application usage of Wi-Fi
The `CONFIG_WIFI` symbol currently covers a number of different
use-cases of Wi-Fi, primarily:
  * Wi-Fi AP (Broadcasting a network others can connect to)
  * Wi-Fi Station (Connecting to an AP + SSID scanning)
  * Wi-Fi AP + Station (Both the above)
  * Wi-Fi SSID scanning (SSID scanning only)

Each of these application usages of Wi-Fi requires a different set of
supporting options to operate correctly (`WPA_SUPP`,
`NET_CONNECTION_MANAGER`, etc), and different opportunities for resource
optimisation (System heap, buffer counts, etc).

Currently, optimizing the Wi-Fi drivers depends on driver specific
options, which can be challenging to find and are obviously not portable
across different drivers.

The addition of this choice allows applications to specify in a single
Kconfig option which features of Wi-Fi they use, and enable individual
Wi-Fi drivers to choose defaults based on those features.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-30 19:40:01 +02:00
Fabian Blatz
5cffb8e5a6 modules: lvgl: Register print callback after lv_init
Move initialization of the print callback handler after calling lv_init, as
the latter zeroes the global callback structure.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-05-30 16:37:57 +02:00
Bjarki Arge Andreasen
3d24070890 kernel: work: add k_work_queue_run()
Add the ability to block and process a work queue by invoking
`k_work_queue_run` from an existing thread. This can be particularly useful
for using the main thread to process work items, in the same vein as the
system work queue, but from a lower priority/preemptible thread.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
Co-authored-by: Peter Johanson <peter@peterjohanson.com>
2025-05-30 16:37:02 +02:00
Jamie McCrae
2c69e7ca34 dts: vendor: nordic: Fix wrong GPREGRET addresses
Fixes invalid addresses for this peripheral

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-05-30 16:36:03 +02:00
Adrian Gielniewski
e04f679093 openthread: Add Kconfigs for packet TX time and carrier functions
Add new Kconfig options to enable platform-specific features in
OpenThread:

- CONFIG_OPENTHREAD_PLATFORM_PKT_TXTIME enables support for packet TX
time when CONFIG_NET_PKT_TXTIME is selected.
- CONFIG_OPENTHREAD_PLATFORM_CARRIER_FUNCTIONS enables modulated and
continuous carrier functions when CONFIG_OPENTHREAD_DIAG and
CONFIG_IEEE802154_CARRIER_FUNCTIONS are enabled.

Update preprocessor conditionals to use the new options instead of
relying directly on CONFIG_NET_PKT_TXTIME and
CONFIG_IEEE802154_CARRIER_FUNCTIONS.

This change improves configurability and allows to reuse the platform
implementation when not using Zephyr networking.

Signed-off-by: Adrian Gielniewski <adrian.gielniewski@nordicsemi.no>
2025-05-30 16:35:39 +02:00
Fabio Baltieri
033672114b led: fix up the ENOSYS condition to pass coverity
The current ENOSYS check code can proceed for a driver that
hypothetically implements the on() but not the off() function of
vice versa, which would result in a null pointer dereference.

This would be a weird use case but Coverity catches the situation, no
harm in changing the ENOSYS check to fail if the on/off is half
implemented, so let's change it to do that.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-30 16:35:30 +02:00
Sebastian Głąb
af434877ec tests: boards: nrf: i2s: i2s_divider: Confirm CLK divider value
Frame rate selected by the user may not be obtained due to
PCLK frequency and finite number of clock divider values.
In such case, driver shall select divider that results in
frame clock rate closest to the requested value.
There was a bug that was discarding perfect match divider.

Add test which confirms correct clock divider selection.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-05-30 16:35:22 +02:00
Sebastian Głąb
b9916322cb tests: drivers: i2s: i2s_speed: Fix typo in Kconfig file
Fix typo in the Kconfig file.
Change 'per socond' to 'per second'.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-05-30 16:35:22 +02:00
Håkon Amundsen
801107eb4d drivers: firmware: add IRONside boot report
The boot report is used to pass information from IRONside to a CPU
being booted.

Integrate the boot report to the update service sample.

Signed-off-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
2025-05-30 16:35:15 +02:00
Raffael Rostagno
588c2e66e9 soc: esp32c6: Fix sleep routine
PMU related functions need to be located in IRAM when sleep
process is triggered, as cache is disabled past a certain point
in the execution of the sleep process.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-05-30 16:34:48 +02:00
Raffael Rostagno
5712c967d3 west.yml: hal_espressif: Fix ESP32-C6 sleep routine
Update hal_espressif to fix ESP32-C6 sleep routine.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-05-30 16:34:48 +02:00
Mark Wang
8951711f96 drivers: uhc: udc: use DYNAMIC_INTERRUPTS for KHCI and EHCI
Because the same IP supports both device and host, so use
DYNAMIC_INTERRUPTS for KHCI and EHCI if both device and host
are enabled.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-05-30 16:34:41 +02:00
Mark Wang
e98cfa48e3 boards: nxp: add uhc support for mimxrt1050_evk
add uhc related items to dts.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-05-30 16:34:41 +02:00
Mark Wang
a8796ca6ee boards: nxp: add uhc support for frdm_k22f, rt1060, lpc55s69 and lpc55s28
add uhc related items to dts.
add clock initialization
add BM4 if CONFIG_USB_UHC_NXP_KHCI is enabled
add pin mux
update board related CMakeLists.txt
update sdk-ng CMake to include NXP controller drivers
update west.yml to contain the hal_nxp pr

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-05-30 16:34:41 +02:00
Mark Wang
abfa9455cc drivers: uhc: implement nxp mcux uhc driver
It is based on SDK USB Host controller driver.
Support NXP EHCI, KHCI, OHCI and IP3516HS controllers.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-05-30 16:34:41 +02:00
Anas Nashif
7bbb834deb Revert "posix: rwlock: Refactor locking using k_timepoint_t"
This reverts commit 833eaccfd1.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-30 08:27:19 -04:00
Anas Nashif
0a6e579987 Revert "posix: net: move static inline gethostname() to lib definition"
This reverts commit e60070d91b.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-30 08:27:19 -04:00
Anas Nashif
a649b31cfc Revert "posix: device_io: mark pwrite() buf as const"
This reverts commit c14f97f194.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-30 08:27:19 -04:00
Anas Nashif
da48a04572 Revert "posix: sysconf: match _SC* defines with newlib/picolib"
This reverts commit c5f1c43b8c.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-30 08:27:19 -04:00
Anas Nashif
a098f5c3a3 Revert "posix: move PTHREAD_STACK_MIN to posix_features"
This reverts commit d6edc75699.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-30 06:20:59 -04:00
Hao Luo
d410b2cc67 samples: counter: alarm: undef redefined TIMER for ambiq
There's duplicated TIMER defined in ambiq hal, need to undef the
old one in alarm sample.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-30 10:28:13 +02:00
Pieter De Gendt
d5931bae93 net: lib: coap: Return an error on removing a non-existing observer
If we're parsing a CoAP request with an observe option of '1', but there is
no matching observer, return an error instead of returning a zero.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-30 10:28:02 +02:00
Piotr Kosycarz
39ae9c3813 samples: drivers: counter: alarm: support nrf54h and nrf54l
Fix building/running for nrf54h and nrf54l.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-05-30 10:27:50 +02:00
David Leach
c0c1b0af44 drivers: flash: Align NXP flash drivers on parameter checking
Parameter checking of flash read API expects checking for len == 0
before checking dest buffer validation.

Fixes #87021

Signed-off-by: David Leach <david.leach@nxp.com>
2025-05-30 10:27:26 +02:00
David Leach
298f6d8d6c drivers: flash: Add documentation on read API
Add some clarity on expected parameter validation order to have
consistency between implementations.

Signed-off-by: David Leach <david.leach@nxp.com>
2025-05-30 10:27:26 +02:00
Adrian Gielniewski
73faf5cc15 doc: doxygen: Add openthread module header to INPUT
Add openthread module header to INPUT due to dependencies to symbols in
`zephyr/net/openthread.h`

Signed-off-by: Adrian Gielniewski <adrian.gielniewski@nordicsemi.no>
2025-05-30 10:26:44 +02:00
Adrian Gielniewski
47f39a1323 net: openthread: Remove OpenThread module API from net header
Use OpenThread module header instead of redefining its API.

Signed-off-by: Adrian Gielniewski <adrian.gielniewski@nordicsemi.no>
2025-05-30 10:26:44 +02:00
Adrian Gielniewski
201d92884f openthread: Add header for OpenThread module
* Add header with public API of OpenThread module.
* Add module include directory to Zephyr include directories.
* Use new header in platform implementation.

Signed-off-by: Adrian Gielniewski <adrian.gielniewski@nordicsemi.no>
2025-05-30 10:26:44 +02:00
Khoa Nguyen
463f518192 drivers: Update dtc transfer info alignment
Update dtc transfer info alignment for Renesas drivers

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-05-30 10:26:34 +02:00
Nicholas Lowell
c5f1c43b8c posix: sysconf: match _SC* defines with newlib/picolib
It's possible for newlib/picolib libc libraries to
internally call sysconf() which would execute zephyr's
implementation.  However, if the _SC* defines do not have
matching values, then the incorrect switch case executes.

This issue arises when using newlib/picolib libc that includes
sysconf implementation for ARM.  With current defaults, the
zephyr sysconf() overrides the original libc sysconf() so
we must ensure proper operation.

We will switch to the #define list just like newlib/picolib.
We can't currently use their unistd.h directly due to a domino
of declaration conflicts.
For the "small" macro implementation, we have to drop using
CONCAT to prevent pre-expansion of the new #defines

Signed-off-by: Nicholas Lowell <Nicholas.Lowell@lexmark.com>
2025-05-30 10:26:22 +02:00
Nicholas Lowell
c14f97f194 posix: device_io: mark pwrite() buf as const
match standard by having input void *buf parameter
for pwrite() marked as const, and avoid any potential
declaration conflicts

Signed-off-by: Nicholas Lowell <Nicholas.Lowell@lexmark.com>
2025-05-30 10:26:22 +02:00
Nicholas Lowell
e60070d91b posix: net: move static inline gethostname() to lib definition
static inline gethostname() in unistd.h can cause declaration collisions.
we should just move it to a normal function definition like the
rest of the network functions.

Signed-off-by: Nicholas Lowell <Nicholas.Lowell@lexmark.com>
2025-05-30 10:26:22 +02:00
Nicholas Lowell
d6edc75699 posix: move PTHREAD_STACK_MIN to posix_features
PTHREAD_STACK_MIN is one of the very few posix features
referenced in sysconf that is not defined in posix_features.h
Move it to minimize header dependencies.

Signed-off-by: Nicholas Lowell <Nicholas.Lowell@lexmark.com>
2025-05-30 10:26:22 +02:00
Cla Mattia Galliard
833eaccfd1 posix: rwlock: Refactor locking using k_timepoint_t
Make use of k_timepoint_t ind the calculation of the remaining time for the
rwlock.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-05-30 10:26:02 +02:00
Hake Huang
8e2c053cd1 linker: device_state : add alignment setting
the device_state need realocate when boot as second core.
as the relocation does not know the alignment, this could
be a case that the next data is mis-place after relocation.

fix this by add a alignment in device_state section.

still need revert aec0355380
reported in #86871

fixes: #82841

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-05-29 20:22:57 -04:00
Jiawei Yang
b2340babdf tests: Bluetooth: BR: Add test suite gap_client
IUT works as a Bluetooth GAP Client. The peer device (tester) is
configured to respond to inquiries and process connection requests.

Add tests to verify GAP client functionality for inquiry, connection,
and disconnection scenarios.

In the test suite, there are six test cases:
Case 1: General Inquiry followed by Connection and Active Disconnection.
Verifies that DUT can perform general inquiry, establish connection, and
actively disconnect from tester.
Case 2: General Inquiry followed by Connection and Passive
Disconnection. Verifies that DUT can perform general inquiry, establish
connection, and handle disconnection initiated by tester.
Case 3: General Inquiry followed by Rejected Connection Request.
Verifies that DUT can perform general inquiry and handle connection
rejection from tester.
Case 4: Limited Inquiry followed by Connection and Active Disconnection.
Verifies that DUT can perform limited inquiry, establish connection, and
actively disconnect from tester.
Case 5: Limited Inquiry followed by Connection and Passive
Disconnection. Verifies that DUT can perform limited inquiry, establish
connection, and handle disconnection initiated by tester.
Case 6: Limited Inquiry followed by Rejected Connection Request.
Verifies that DUT can perform limited inquiry and handle connection
rejection from tester.

Signed-off-by: Jiawei Yang <jiawei.yang_1@nxp.com>
2025-05-29 20:21:50 -04:00
Jiawei Yang
38a6fc5e6f tests: Bluetooth: BR: Add GAP Server role test suite
IUT works as a GAP Server (Peripheral) in the Bluetooth system. The peer
device, GAP Client,
is a PC running Bumble as a test tool.

This test suite implements the following test cases:
Case 1, Non-connectable Mode Testing. Verifies DUT can operate in
non-connectable mode without allowing connections.
Case 2, Connectable Non-discoverable Mode with Active Disconnection.
Verifies DUT can accept connections and initiate disconnection.
Case 3, Connectable Non-discoverable Mode with Passive Disconnection.
Verifies DUT can accept connections and handle passive disconnection.
Case 4, Connectable Non-discoverable Mode with Connection Rejection.
Verifies DUT can reject connection requests.
Case 5, Limited Discoverable Mode with Active Disconnection. Verifies
DUT in limited discoverable mode can be discovered, accept connections
and initiate disconnection.
Case 6, Limited Discoverable Mode with Passive Disconnection. Verifies
DUT can be discovered, accept connections and handle passive
disconnection.
Case 7, Limited Discoverable Mode with Connection Rejection. Verifies
DUT can be discovered but reject connection requests.
Case 8, General Discoverable Mode with Active Disconnection. Verifies
DUT in general discoverable mode can be discovered, accept connections
and initiate disconnection.
Case 9, General Discoverable Mode with Passive Disconnection. Verifies
DUT can be discovered, accept connections and handle passive
disconnection.
Case 10, General Discoverable Mode with Connection Rejection. Verifies
DUT can be discovered but reject connection requests.

Signed-off-by: Jiawei Yang <jiawei.yang_1@nxp.com>
2025-05-29 20:21:40 -04:00
Lyle Zhu
f34d7766af Bluetooth: Classic: L2CAP: Add echo command set
Add echo test shell commands, `register`, `unregister`, `req`, and
`rsp`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-29 20:19:38 -04:00
Lyle Zhu
6f2b8f8a97 Bluetooth: Classic: L2CAP: implement ECHO REQ/RSP
Handle the ECHO request/response of classic L2CAP signaling packets.

Add the functions `bt_l2cap_br_echo_cb_register()` and
`bt_l2cap_br_echo_cb_unregister()` to register/unregister the ECHO
callbacks to monitor the ECHO REQ and RSP.

Add the function `bt_l2cap_br_echo_req()` to send the ECHO REQ through
classic L2CAP signaling channel.

Add the function `bt_l2cap_br_echo_rsp()` to reply the ECHO REQ
through the classic L2CAP signaling channel.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-29 20:19:38 -04:00
Sreeram Tatapudi
02f2beab29 drivers: timer: Add support for IFX Low power timer
Adding support for low power timer to enable low power modes

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-05-29 20:19:18 -04:00
Andrej Butok
d34cb70449 tests: littlefs: add mimxrt1064/1160-evk support
Adds support for mimxrt1064-evk and mimxrt1160-evk boards
to the littlefs test.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-05-29 20:19:05 -04:00
Daniel Leung
069cd4b861 i3c: rtio: deal with rtio_cqe_consume() returning NULL
rtio_cqe_consume() may return NULL so we need to check before
using any members of the returned struct.

Fixes #90473
Fixes #90489
Fixes #90497

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-05-29 20:18:43 -04:00
Daniel Leung
157bea57c8 i3c: set default return for i3c_device_adv_info_get()
Coverity flagged that the return variable ret may not be
initialized when returning. So give it a default value.

Fixes #90509

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-05-29 20:18:43 -04:00
Daniel Leung
8970009e39 tests: logging/log_syst: fix unused var warnings
When CONFIG_ZTEST_ASSERT_VERBOS is 0, syst_headers_name[] is
not exactly being used by zassert_mem_equal(). Mark it as
__maybe_unused to avoid compiler warnings.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-05-29 20:18:34 -04:00
Daniel Leung
ee8bb8d473 tests: timer_api: unused var when CONFIG_ZTEST_ASSERT_VERBOSE=0
When CONFIG_ZTEST_ASSERT_VERBOSE is 0, the array round_s is not
being used by zassert_true(). So mark it __maybe_unused to
avoid compiler warnings.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-05-29 20:18:34 -04:00
Dominik Ermel
53c79c61b9 tests/flash_map: Allow custom maps to opt out from some scenarios
The commit modifies the Flash Map test, providing Kconfigs that
allow to opt out from testing disabled partitions and testing
DTS node access.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-05-29 23:26:04 +02:00
Neil Chen
13d8ca5d28 samples: usb: Exclude frdm_mcxa153 platform from dfu sample
Exclude the platform frdm_mcxa153 from dfu sample.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-29 23:25:57 +02:00
Neil Chen
dbf78a1bc4 boards: nxp: frdm_mcxa153: Support usb for NXP frdm_mcxa153 board
Support usb for NXP frdm_mcxa153 board.
Test it using samples/subsys/usb/console.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-29 23:25:57 +02:00
Neil Chen
42737a78ae dts: arm/nxp: Add usb nodes to NXP MCXA153 dtsi file
Add usb nodes to NXP MCXA153 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-29 23:25:57 +02:00
Camille BAUD
11a18da98c drivers: pinctrl: fix SPI pinctrl for CH32V00x/CH32V006
This fixes incorrect/incomplete pinctrl for CH32V006

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-29 23:25:49 +02:00
Camille BAUD
f81e7559bf drivers: spi: introduce basic spi driver for wch
introduces a basic SPI driver for CH32 series

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-29 23:25:49 +02:00
Vincent van der Locht
a06ded8db6 drivers: ieee802154: added raw mode to mcxw ieee802154 driver
Add support for raw mode of mcxw ieee802154 driver.

Signed-off-by: Vincent van der Locht <vincent@synchronicit.nl>
2025-05-29 23:25:41 +02:00
jhan bo chao
a95d413128 driver: espi: add espi peripheral channel driver for rts5912
add espi peripheral channel driver for rts5912

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-05-29 23:25:27 +02:00
jhan bo chao
da767376ca driver: espi: add espi peripheral channel 8042_KBC driver for rts5912
add espi peripheral channel 8042_KBC driver for rts5912

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-05-29 23:25:27 +02:00
jhan bo chao
805b213424 driver: espi: add espi peripheral channel acpi shd mem driver for rts5912
add espi peripheral channel acpi shd mem driver for rts5912

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-05-29 23:25:27 +02:00
jhan bo chao
4320fb5249 driver: espi: add espi peripheral channel acpi driver for rts5912
add espi peripheral channel acpi driver for rts5912

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-05-29 23:25:27 +02:00
jhan bo chao
8ceb0d0f11 driver: espi: add espi peripheral channel HOST_CMD driver for rts5912
espi: add espi peripheral channel HOST_CMD driver for rts5912

Unlike other chips using IO port 0x800-0x8ff, we utilize shared memory to
transfer host command parameters. The AP firmware must have corresponding
settings for this configuration.

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-05-29 23:25:27 +02:00
jhan bo chao
1bc30251a6 driver: espi: add espi peripheral channel port 80 driver for rts5912
add espi peripheral channel port 80 driver for rts5912

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-05-29 23:25:27 +02:00
jhan bo chao
1c461e38ca driver: espi: add espi vw channel driver for rts5912
add espi vw channel driver for rts5912

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-05-29 23:25:27 +02:00
jhan bo chao
9d41eac7ac driver: espi: add espi oob channel driver for rts5912
add espi oob channel driver for rts5912

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-05-29 23:25:27 +02:00
jhan bo chao
00fac713ea driver: espi: add espi flash channel driver for rts5912
add espi flash channel driver for rts5912

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-05-29 23:25:27 +02:00
jhan bo chao
537791facf driver: espi: add espi driver for rts5912
add espi driver for rts5912

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-05-29 23:25:27 +02:00
Anas Nashif
3f72a1a73e MAINTAINERS: add scripts/requirements-actions. under CI
Add scripts/requirements-actions.* needed for actions into the CI area.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-29 23:25:10 +02:00
Anas Nashif
e9451b7294 actions: update python requirements
Lower version of elasticsearch to match the server version we are using.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-29 23:25:10 +02:00
Raffael Rostagno
3780f9d817 drivers: spi: esp32: Fix NULL buffers condition
Fix condition in which both TX and RX buffers are NULL inside
spi_buf_set structures.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-05-29 20:17:33 +02:00
Jamel Arbi
bb81347dfb samples: openthread: net: shell: Add NXP rcp host configuration
Add the NXP shell configuration for openthread RCP host

Signed-off-by: Jamel Arbi <jamel.arbi@nxp.com>
2025-05-29 20:17:23 +02:00
Manuel Argüelles
983b1d088c arch: arm: mpu: fix erratum 1013783-B
Due to erratum 1013783-B, speculative accesses might be performed
to normal memory unmapped in the MPU. This can be avoided by using
MPU region 0 to cover all unmapped memory and make this region
execute-never and inaccessible.

Note that this applies when CPU Cortex-M7 implements MPU and D-cache.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-05-29 20:17:14 +02:00
Manuel Argüelles
c31640239c soc: nxp: s32k3: fix erratum ERR011573
Due to erratum ERR011573, speculative accesses might be performed
to normal memory unmapped in the MPU. This can be avoided by using
MPU region 0 to cover all unmapped memory and make this region
execute-never and inaccessible.

Fixes #89852

Co-authored-by: Peter van der Perk <peter.vanderperk@nxp.com>
Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-05-29 20:17:14 +02:00
Titan Chen
13a024218e drivers: i2c: add i2c dw support error checks.
support errors check for
1. tx_abrt: nack and sda stuck low
2. scl stuck low

Signed-off-by: Titan Chen <titan.chen@realtek.com>
2025-05-29 20:17:05 +02:00
Titan Chen
748789eadf drivers: i2c: rts5912 i2c dirver
base on DesignWare I2C driver to implement RTS5912 I2C driver.

1. support customize bus recovery function.
2. fix isr timing issue by enable tx empty control.
3. support stuck at low handle by enable bus clear feature.
4. support custom stuck at low timeout set from dts
5. disable block mode in rts5912 i2c.
6. support I2C_ALLOW_NO_STOP_TRANSACTIONS

Signed-off-by: Titan Chen <titan.chen@realtek.com>
2025-05-29 20:17:05 +02:00
Hake Huang
11c543e24c Revert "samples: counter: alarm: remove platform_allow filterring"
this sample needs add dts defines for each platform, so should not be
generally enabled.

fixes: #90714

This reverts commit 022962c90d.

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-05-29 15:17:38 +01:00
Alberto Escolar Piedras
13fa0c5ebc tests/c_lib/common/src/test_sqrt: Fix code compliance issues
Fix several code compliance issues.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-29 15:17:32 +01:00
Alberto Escolar Piedras
37089cfc03 tests/c_lib/common/src/test_sqrt: Fix when double is not 64 bits
The combination of
3231269244
74c9e7afab
broke this test, when __SIZEOF_DOUBLE__ != 8.
In that case the test will fail to build,
as the variables the code uses are left ifdef'ed out.

Let's fix it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-29 15:17:32 +01:00
Marcin Szymczyk
b5ca5b4147 soc: nordic: nrf54l: fix ordering in Kconfig
Application cores should be next to eachother.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2025-05-29 15:16:52 +01:00
Marcin Szymczyk
b9d97aba21 drivers: misc: nordic_vpr_launcher: move SoC-specific config to DT
Targets that require setting secure attribute to VPR should specify
it in devicetree.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2025-05-29 15:16:52 +01:00
Guðni Már Gilbert
f32223aac5 debug: ASSERT_VERBOSE depends on PRINTK
When both PRINTK and ASSERT are disabled, the firmware image will still
contain a symbol for assert_print function which increases the memory
footprint by 14 bytes. In this case the function doesn't do anything and
so these 14 bytes are not useful.

This change also reduces the memory footprint elsewhere such as in the
bluetooth subsystem which implements BT_ASSERT_VERBOSE. Now it will be
nop. On nRF52832 this is on the order of 300 - 400 bytes when configured
for peripheral only (just as an example).

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
2025-05-29 15:16:41 +01:00
Chaitanya Tata
f6821fbc7e manifest: nrf_wifi: Fix the PR reference
The PR was merged pre-maturely, so, fix the PR reference.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-05-29 13:38:03 +01:00
Chaitanya Tata
5601af34b7 drivers: nrf_wifi: Rejig the statistics
Separate out host(local) and FW(remote) statistics and in case of a
FW statistics timeout, return success with a magic value in the FW
statistics, this way atleast host statistics would be handy for
debugging instead of sending failure up.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-05-29 12:07:09 +02:00
Chaitanya Tata
a26fff8c17 manifest: nrf_wifi: Pull fixes for stats timeout handling
Fixes a corruption when active traffic is run along with stats in the
background.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-05-29 12:07:09 +02:00
Loic Domaigne
a8eace10b3 drivers: sensor: bme280: fix "config" register intialization issue
A write to the "ctrl_meas" register can cause the sensor to transition
from sleep to normal mode (which is default Kconfig settings). As per
BME280 datasheet, writes to the "config" register in normal mode may be
ignored. This can lead to use BME280_STANDBY_05MS and BME280_FILTER_OFF
instead of the values set by the application. To fix this, write to the
"config" register before "ctrl_meas" in the sensor init function.

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-05-29 12:06:39 +02:00
Robert Lubos
38e00d1969 net: tcp: Fix user_data provided to accept callback
TCP implementation provided the parent net_context pointer to the
accept callback instead of the user_data pointer registered with
net_tcp_accept(). This worked fine with the socket integration, as
sockets explicitly registered parent context as user_data, however it
shouldn't be hardcoded like this at the TCP level.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-29 12:05:58 +02:00
Pieter De Gendt
b029d792c6 debug: coredump: coredump_backend_flash: Update checksum only on success
If the flash stream API fails to write a buffer, exclude it from the
calculated checksum.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-29 12:05:42 +02:00
Pieter De Gendt
125389ea32 debug: coredump: coredump_backend_flash: Keep error in context on flush
Do not override the last known value in backend_ctx.error with the result
of flushing.
Any previous error would be cleared and the coredump would appear to have
succeeded.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-29 12:05:42 +02:00
Yangbo Lu
600cae64c2 scripts: blobs: add auto-accept option for license click-through
Added auto-accept option for license click-through.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-29 10:46:56 +02:00
Tim Lin
e1b5b8b5f9 drivers/i2c: ite: Add handling for read operation with 0-byte length
The current I2C driver assumes that at least one byte will be read in CQ
(command queue) mode. However, when a 0-byte read is issued
(e.g., by cmd_i2c_scan),
The read handler uses (len - 1) to set the command queue length.
When len is 0, this underflows to 0xFF, leading to an incorrect transfer
length and possible crash.

To fix this, add a check in cq_mode_allowed() for reads with length 0:

-Fallback to PIO mode in such cases.
-Properly handle 0-byte reads by issuing STOP (E_FINISH) when the slave
 address is acknowledged.
-Add appropriate handling for NACK conditions when the slave address is
 not acknowledged.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-05-29 10:46:47 +02:00
Lyle Zhu
d1deb20b95 Bluetooth: Classic: L2CAP: Disconn channel if proposed MTU is invalid
Disconnect the L2CAP channel connection if the proposed MTU is less
than min MTU or more than local supported MTU.

The main scenes are as follows.
If the proposed MTU is less than MIN MTU.
1. The channel connection of client and server is established,
2. Client/server sends channel config REQ (MTU=50),
3. Peer replies channel config RQP (Unaccepted/success with MTU=30),
4. The client/server will repeat step 3~4 if the RSP is unacceptable.

With the change applied, the local will disconnect the L2CAP channel
connection in step 3.

If the proposed MTU is more than local supported MTU.
1. The channel connection of client and server is established,
2. Client/server sends channel config REQ (MTU=50),
3. Peer replies channel config RQP (Unaccepted/success with MTU=80),
4. The client/server will repeat step 3~4 if the RSP is unacceptable.

With the change applied, the local will disconnect the L2CAP channel
connection in step 3.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-29 10:46:26 +02:00
Lyle Zhu
858e64cded Bluetooth: Shell: Classic: Add command select to select BR connect
Add a shell command `select` to select a specific BR connect according
to the given BR address.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-29 10:46:12 +02:00
Lyle Zhu
1572277a2e Bluetooth: Shell: Classic: Add command info to get conn info
Add shell command `info` to get the BR connect info.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-29 10:46:12 +02:00
Shrek Wang
744380a278 net: tcp: Use correct seqnum for tcp_out and tcp_out_ext
Based on TCP Spec., the outgoing TCP packets shoud use SND.NXT as
the seqnum. In Zephyr, the conn->seq works as the SND.UNA and the
conn->seq + conn->unacked_len works as the SND.NXT. Currently, it
uses SND.UNA in tcp_out() as the seqnum, which might get dropped
as old packets and could not deliver the message to the peer.
A few exceptions use SND.NXT - 1 as the seqnum are: keepalive,
zero-window-probe, FIN/SYN retransmissions. And, for closing a
connection, Zephyr won't send out FIN until all the data has been
ACKed, so the conn->unacked_len is 0 and it is ok to use conn->seq
as the SND.NXT.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-05-29 08:42:20 +02:00
Tim Lin
022043c6f6 soc/ite/ec: it51xxx: Add a new SoC variant it51526bw
1. Add it51526bw SoC variant to it51xxx SoC series.
2. Create the .dtsi file with adjusted flash size for 512Kb (default = 1M).

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-05-29 08:42:08 +02:00
Joel Guittet
9d4530fb79 drivers: counter: introduce counter node in esp32 timers
Add counter device tree node to the esp32 timers.

Signed-off-by: Joel Guittet <joelguittet@gmail.com>
2025-05-29 08:41:59 +02:00
Davi Herculano
46f7313db1 board: esp32_eye: doc: fix link formatting in board page
Fixed link formatting from Markdown to reStructuredText.

Signed-off-by: Davi Herculano <davi.herculano@adam-audio.de>
2025-05-29 06:32:11 +02:00
Piotr Koziar
5545e5806b Revert "modules: hal_nordic: nrf_802154: emit hfclk_ready with timer on nRF54LM20A"
This reverts commit 3c050cfcfd.

Signed-off-by: Piotr Koziar <piotr.koziar@nordicsemi.no>
2025-05-29 06:31:58 +02:00
The Nguyen
bd87dbc368 driver: can: renesas: remove first can bus starting at init
Remove can bus starting at initial function

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-05-29 06:31:47 +02:00
The Nguyen
990b000e31 drivers: can: renesas: avoid breaking driver instance access
Keep data instance inside of data structure.
Avoid accessing global data or using pointers to out of
data instance.

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-05-29 06:31:47 +02:00
Lyle Zhu
ff41c71737 Bluetooth: Class: Shell: HFP_HF: Add auto_select_codec command
Add shell command `auto_select_codec` to select codec automatically
when codec negotiation callback is notified.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-29 06:31:32 +02:00
Lyle Zhu
aaef7eb658 Bluetooth: Classic: HGP_AG: change get_ongoing_call() to async mode
Change the callback `get_ongoing_call()` of the AG from synchronous to
asynchronous mode. It will help to avoid the Bluetooth host stack be
blocked in the context of callback `get_ongoing_call()`.

Add a function `bt_hfp_ag_ongoing_calls()` to set the ongoing calls and
reply the AT command `AT+CIND?` after the callback `get_ongoing_call()`
has been notified.

Add a delayable worker to avoid the AT command `AT+CIND?` never being
replied. After the time exceeds
@kconfig{CONFIG_BT_HFP_AG_GET_ONGOING_CALL_TIMEOUT}, the response of
the AT command `AT+CIND?` will be replied.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-29 06:31:32 +02:00
Lyle Zhu
d6dc7fbd66 Bluetooth: Classic: Shell: Add command ongoing_calls
Add shell command `ongoing_calls` to set the ongoing calls.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-29 06:31:32 +02:00
Lyle Zhu
488d577910 Bluetooth: Classic: HFP_HF: Support ongoing calls before SLC
If the any value of Call, Call Setup, and Held Call indicators is not
zero in the response of `AT+CIND?`, get all calls via `AT+CLCC`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-29 06:31:32 +02:00
Lyle Zhu
09f3c31818 Bluetooth: Classic: HFP_AG: Remove unnecessary lock/unlock
For read-only access to fields, `lock/unlock` is unnecessary.

Remove unnecessary `lock/unlock` protection for read-only access
fields of AG.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-29 06:31:32 +02:00
Lyle Zhu
2b4de08c7c Bluetooth: Classic: HFP_AG: Support ongoing calls before SLC
Support the case that there are some calls existed before SLC
established.

Add a callback to get the ongoing calls one by one from upper layer
when the response of the AT command `AT+CIND=?` from HF has been sent.

And set the Call, Call Setup, and Held Call indicators and report the
values int the response of AT command `AT+CIND?`. Then report all
ongoing calls in the `+CLCC` response.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-29 06:31:32 +02:00
Jiawei Yang
dc20d44d69 Sample: bluetooth: Enable MIMXRT1170 EVKB for peripheral_ht
Enable MIMXRT1170 EVKB for peripheral_ht.

Signed-off-by: Jiawei Yang <jiawei.yang_1@nxp.com>
2025-05-29 06:31:20 +02:00
Benjamin Cabé
af46f628a0 include: kernel: doc: add doxygen for k_sem
It can be confusing for users browsing the API docs to not find any
documentation for the k_sem structure. This commit adds doxygen
comments so that it now shows up.

Fixes zephyrproject-rtos/zephyr#90608.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 21:29:37 +02:00
Derek Snell
c7e36f0169 boards: nxp: mcx_n9xx_evk_cpu0_qspi: boot directly from QSPI flash
Configures QSPI board variant to boot directly from external QSPI flash
on the FlexSPI.  Secondary bootloader is no longer required.  Moves the
MCUboot boot_partition to QSPI flash.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-05-28 21:29:29 +02:00
Derek Snell
19315f5173 boards: nxp: frdm_mcxn947_cpu0_qspi: boot directly from QSPI flash
Configures QSPI board variant to boot directly from external QSPI flash
on the FlexSPI.  Secondary bootloader is no longer required.  Moves the
MCUboot boot_partition to QSPI flash.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-05-28 21:29:29 +02:00
Derek Snell
7c77d0ea48 soc: nxp: MCXNx4x: enable booting from QSPI flash
The ROM bootloader has the option to boot from external QSPI flash on
the FlexSPI instead of internal flash.  Adds
CONFIG_NXP_FLEXSPI_BOOT_HEADER to include the FlexSPI boot ROM header
in the image.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-05-28 21:29:29 +02:00
Sreeram Tatapudi
33e5748a4f drivers: gpio: Update GPIO driver to support XMC7200
Update GPIO driver to support XMC7200

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-05-28 21:29:20 +02:00
Sreeram Tatapudi
774a62e67b drivers: serial: Update UART driver to support XMC7200
Update UART driver to support XMC7200

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-05-28 21:29:20 +02:00
Sreeram Tatapudi
1fe5cb5982 drivers: clock_control: update clock control driver to support XMC7200
update clock control driver to support XMC7200

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-05-28 21:29:20 +02:00
Sreeram Tatapudi
b3067bde98 board: infineon: add XMC7200 Eval board support
- Support for kit_xmc72_evk

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
Signed-off-by: Yurii Lozynskyi <yurii.lozynskyi@infineon.com>
2025-05-28 21:29:20 +02:00
Luis Ubieda
5cd3a7e79c sensor: afbr_s50: Add DTS configuration bindings
The following parameters are exposed through DTS bindings:
- ODR.
- Dual Frequency Mode.
- Measurement Mode.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-28 21:29:13 +02:00
Luis Ubieda
820975a409 sensor: afbr_s50: Add private channel to obtain pixel matrix
Each time this sensor gets a reading, it contains a matrix of 4 x 32
pixels containing distance readings, from which the 1-D result is
calculated. The private channel would expose this array through
Sensor APIs.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-28 21:29:13 +02:00
Luis Ubieda
f9d9e5bb6d modules: afbr: Add basic functionality
- Add AFBR module as a HAL.
- Platform layer to support running AFBR API using Zephyr.
- Ability to instantiate on device-tree.
- Samples in the module proving foundations works.
- Zephyr Sensor API support, by introducing:
    - Read/Decode for SENSOR_CHAN_DISTANCE (1-D results).
    - Streaming mode for DATA_READY (1-D results).

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-28 21:29:13 +02:00
Daniel Baluta
85b6ff0b0b drivers: dma: sdma: Make access to DMA channel stats atomic
DMA channel stats like pending_length or free is not protected
and can be modified in parallel by a consumer and a producer.

This can result in non-atomic updates which in turn will result
in using stale data.

Fix this by making regions of code accessing dma stats atomic.

Fixes: e94c86f395 ("drivers: dma: Add initial support for NXP SDMA")
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2025-05-28 20:02:31 +02:00
Daniel Baluta
312ff1c904 drivers: dma: sdma: Fix noise issue with pause/resume
Each time we configure an SDMA channel we also compute the total
allocated DMA buffer length but we assume is initialized with zero.

This is true each time a channel is requested. But if there are
multiple calls to configure without releasing the channel the buffer
length is not correctly computed.

So, we need to initialize it with zero each time we reconfigure the dma
channel.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2025-05-28 20:02:31 +02:00
Gerson Fernando Budke
49990869a0 boards: doiting: Introduce dt_bl10_devkit board
Introduce dt_bl10_devkit board from doiting vendor.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-05-28 20:02:17 +02:00
Gerson Fernando Budke
9048bd07ed dts: bindings: vendor-prefixes: Add doiting prefix
Add doiting vendor prefix.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-05-28 20:02:17 +02:00
Daniel Leung
d31ee53b60 xtensa: allow flushing auto-refill DTLBs on page table swap
This adds a new kconfig and corresponding code to allow flushing
auto-refill data TLBs when page tables are swapped (e.g. during
context switching). This is mainly used to avoid multi-hit TLB
exception raised by certain memory access pattern. If memory is
only marked for user mode access but not inside a memory domain,
accessing that page in kernel mode would result in a TLB being
filled with kernel ASID. When going back into user mode, access
to the memory would result in another TLB being filled with
the user mode ASID. Now there are two entries on the same memory
page, and the multi-hit TLB exception will be raised if that
memory page is accessed. This type of access is better served
using memory partition and memory domain to share data. However,
this type of access is not prohibited but highly discouraged.
Wrapping the code in kconfig is simply because of the execution
penalty as there will be unnecessary TLB refilling being done.
So only enable this if necessary.

Fixes #88772

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-05-28 20:01:58 +02:00
Chaitanya Tata
e92677bd3c doc: wifi: Improve runtime cert docs
* Remove the obsolete path reference, command is enough
* Add a note for the volatility of the certificates

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-05-28 17:50:46 +02:00
Benjamin Cabé
f38946428e doc: _extensions: board: show/hide boards and shield in catalog
Adds the ability to show/hide boards and shields in the board catalog.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 17:50:13 +02:00
Fabio Baltieri
77763a2800 led: fix up the API requirement comment
With the current implementation one can implement either on/off or
set_brigthness, change the comment to reflect that.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-28 17:49:59 +02:00
Benjamin Cabé
fdf713ab51 drivers: sensor: icp101xx: update channel check condition
Removed a logically dead else by doing sensor channel check
in a way that's more aligned with how other drivers do it.

Fixes: CID 505949
Fixes: zephyrproject-rtos/zephyr#90558
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 17:49:50 +02:00
Bjarki Arge Andreasen
b668e9de40 drivers: clock_control: nrf: adapt NRF_HFINT_CALIBRATION option
CLOCK_CONTROL_NRF_HFINT_CALIBRATION depended on the renamed
nordic,nrf-hfxo -> nordic,nrf54l-hfxo. Update config to depend on
DT_HAS_NORDIC_NRF54L_HFXO_ENABLED to match new compat name.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Bjarki Arge Andreasen
400c038008 drivers: clock_control: z_nrf_clock: add get_startup_time API
Implement vendor specific
z_nrf_clock_bt_ctlr_hf_get_startup_time_us() which gets the startup
time of the high frequency clock used for Bluetooth.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Bjarki Arge Andreasen
bb8ef777fb dts: bindings: clock: nrf54l-hfxo: add startup-time-us prop
Add the clock startup time property to the nrf54l series HFXO binding.

Note that the values added to the soc .dtsi files are worst case
defaults, which will be replaced with optimal values at board level
in the future, as they depend on the specific crystal in use.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Bjarki Arge Andreasen
393a9e50b5 dts: bindings: clock: rename nordic,nrf-lfxo -> nordic,nrf54l-lfxo
Each nrf series has its own variant of the lfxo clock, specified
by the binding which includes the series in the name. The nrf54L
series is no different, hence the binding should be clearly
specified by having the series name within it.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Bjarki Arge Andreasen
e3c70ee8a6 dts: bindings: clock: rename nordic,nrf-hfxo -> nordic,nrf54l-hfxo
Each nrf series has its own variant of the hfxo clock, specified
by the binding which includes the series in the name. The nrf54L
series is no different, hence the binding should be clearly
specified by having the series name within it.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Bjarki Arge Andreasen
b9fdef65ca dts: bindings: clock: nrf53-hfxo: add startup-time-us prop
Add the clock startup time property to the nrf53 series HFXO binding.

Note that the values added to the soc .dtsi files are worst case
defaults, which will be replaced with optimal values at board level
in the future, as they depend on the specific crystal in use.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Bjarki Arge Andreasen
a81dad9c5b dts: arm: nrf52: add hfxo binding and nodes
Add nrf52 series hfxo binding and nodes to socs.

Note that the values added to the soc .dtsi files are worst case
defaults, which will be replaced with optimal values at board level
in the future, as they depend on the specific crystal in use.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Bjarki Arge Andreasen
9ba72a5079 dts: arm: nrf51: add hfxo binding and nodes
Add nrf51 series hfxo binding and nodes to socs.

Note that the values added to the soc .dtsi files are worst case
defaults, which will be replaced with optimal values at board level
in the future, as they depend on the specific crystal in use.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-28 17:49:41 +02:00
Sudan Landge
6d038d3d49 boards: arm: mps3: fix intermittent ci failures
FVP's are functionally accurate but not cycle accurate which is
different from QEMU which prefers speed over accuracy.
This sometimes leads to intermittent test failures with FVP which
would otherwise pass with QEMU.
The intermittent failed tests are successful on retries however,
adding a timeout_multiplier would reduce the chance of failures so
we set the timeout_multiplier to a value which will avoid the issue.

Fixes #90654

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-05-28 17:49:31 +02:00
Yangbo Lu
045c6e4419 MAINTAINERS: add yangbolu1991 as maintainer for PTP Clock
I once worked as maintainer for Linux PTP VIRTUAL CLOCK SUPPORT
and FREESCALE QORIQ PTP CLOCK DRIVER.

Although I haven't been working on zephyr PTP for long, I have
clear understanding for current zephyr PTP clock and PTP/gPTP stack.
And started to contribute for it.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-28 17:49:05 +02:00
Fin Maaß
f7153012ef dts: enum_macros: make sure that they are lowercase
DT_ENUM_HAS_VALUE_BY_IDX states, that the value
must be lowercase-and-underscores, this makes sure,
that they can match.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-28 17:48:57 +02:00
Brandon Allen
979933cfb4 drivers: current_sense_amplifier: add zero-current-voltage binding
some current sense amplifiers have a non zero offset voltage
that correlates to zero current. adding this offset voltage binding
allows the driver to be used with this type of circuitry.

Signed-off-by: Brandon Allen <brandon.allen@exacttechnology.com>
2025-05-28 17:48:47 +02:00
Yishai Jaffe
f384a86cc9 boards: silabs: fix boards DTS files coding style issues
Fix board DTS coding style issues to prevent them from spreading when a
new board is introduced and uses an existing DTS as a referance.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Don’t insert empty lines before a deindenting };.
- Insert a single empty line to separate nodes at the same hierarchy
  level.
- status is "okay" by default.
- compatible property comes first in node.
- reg property comes second in node.
- status property comes last in node.
- the rest of the properties within are nodes naturally sorted.
- child nodes are sorted by address or alphabetically if there is no
  address.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-05-28 16:38:15 +02:00
Antonino Scarpaci
1508d7ec7e samples: drivers: video: fix capture_to_lvgl statistics
CONFIG_LV_USE_PERF_MONITOR depends on CONFIG_LV_USE_SYSMON.

Signed-off-by: Antonino Scarpaci <antonino.scarpaci@gmail.com>
2025-05-28 16:38:05 +02:00
Olivier Lalonde
afc481ab31 modem_cellular: Add support for the simcom a76xx modem
Add support for the simcom a76xx modem which is similar to the simcom 7080
but has a few key differences. Tested with a simcom A7672SA module but as
there is a single simcom A76XX AT commands manual, the driver should work
with other modems of the series.

Signed-off-by: Olivier Lalonde <o@syskall.com>
2025-05-28 16:37:53 +02:00
Cong Nguyen Huu
50964e4ef9 sample: arch: mpu: mpu_test: skip run automate for SoC S32Z
Due to input automated testing, the memory addresses (0x1, 0x2)
are not available in any managed memory region, causing the
automated test to fail. This test should be run manually.

Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
2025-05-28 16:37:44 +02:00
Mathieu Choplain
5e9a10cb5b drivers: clock_control: stm32: don't enable RUNTIME_NMI all the time
The Clock Security System (CSS) feature signals failure of an external
oscillator by triggering an NMI. As such, when this feature is enabled,
RUNTIME_NMI must also be enabled such that the NMI handler can be modified
to point to the appropriate function.

The STM32 clock control Kconfig checks whether the CSS has been enabled in
Device Tree, and forcefully selects RUNTIME_NMI if enabled since the driver
code will require it. However, the check has been implemented improperly:
"dt_nodelabel_has_prop" was used instead of "dt_nodelabel_bool_prop", an
error similar to using DT_NODE_HAS_PROP() instead of DT_PROP() in C code.

Since the property always exists, as long as the HSE is enabled, the
RUNTIME_NMI option is always select'ed, even if not actually required.

Use the correct Kconfig function to ensure RUNTIME_NMI is select'ed only
when it is required, instead of whenever HSE is enabled regardless of CSS.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-05-28 15:38:31 +02:00
Benjamin Cabé
688c3a5db2 shields: add supported_features to shields
Sets the list of supported hardware features for all the shields
currently defined in the tree.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 15:33:50 +02:00
Benjamin Cabé
804915841a shields: doc: allow to indicate supported hw features
Shield authors can now indicate an optional list of hardware features
that the shield supports, in the form of the same kind of "binding type"
already used for boards.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 15:33:50 +02:00
Robert Lubos
c26f39450d net: context: Verify if CONFIG_NET_SOCKETS_PACKET_DGRAM is enabled
Verify if CONFIG_NET_SOCKETS_PACKET_DGRAM is enabled when creating a
datagram packet socket. Otherwise, it's possible to create
non-functional AF_PACKET/SOCK_DGRAM socket w/o an error.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-28 15:33:24 +02:00
Andrzej Głąbek
a9405d005c drivers: adc_ad4130|adc_7124: Add ret initialization in *_perform_read()
Add initialization of `ret` to avoid reports of uninitialized variable
being returned. This variable normally gets initialized while the loop
iterates over channels, but potentially it could be left uninitialized
if the loop finished in its first iteration because of no channels to
be processed.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-05-28 15:33:14 +02:00
Pieter De Gendt
432db03003 scripts: requirements-actions: Update packages
Update packages installed by GH actions.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-28 15:32:33 +02:00
Pieter De Gendt
3c234b4ecb scripts: Update ruff and generate excludes
Update to the latest version of ruff and generate linter and format
exclusions for current python files in tree.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-28 15:32:33 +02:00
Ricardo Rivera-Matos
2bb7fcc5df charger: axp2101: Guards against out-of-bounds read
Corrects the out-of-bounds check when reading
constant_charge_voltage_lut

Signed-off-by: Ricardo Rivera-Matos <ricardo.rivera-matos@cirrus.com>
2025-05-28 12:22:21 +02:00
Henrik Brix Andersen
18aa6c8901 drivers: can: mcan: merge nested if-statements into one
Merge two nested if-statements into one.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-05-28 12:22:11 +02:00
Henrik Brix Andersen
45511fe634 drivers: can: mcan: declare the loop condition variables inside the loops
Declare the loop condition variable inside the loops to limit their scope.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-05-28 12:22:11 +02:00
Bartosz Miller
364ec03afb samples: drivers: nrf: flash: Execute nrf soc flash sample on nrf54l
Add nrf54l to nrf_soc_flash sample allowed targets

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-05-28 12:22:04 +02:00
Andrej Butok
c0960d2282 boards: nxp: mimxrt1160_evk: set LinkServer as the default runner
Sets LinkServer as the default runner for mimxrt1160-evk boards,
as the board is configured for CMSIS-DAP by default.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-05-28 11:19:46 +02:00
Henrik Brix Andersen
40ec42e26f drivers: can: rcar: merge nested if-statements into one
Merge two nested if-statements into one.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-05-28 11:18:23 +02:00
Henrik Brix Andersen
09f54c98a7 drivers: can: rcar: declare the loop condition variables inside the loops
Declare the loop condition variable inside the loops to limit their scope.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-05-28 11:18:23 +02:00
Henrik Brix Andersen
24a46a597c drivers: can: rcar: always initialize return value variable
Always initialize the return value variable to avoid returning garbage.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-05-28 11:18:23 +02:00
Andrej Butok
0d2cf4f77e boards: nxp: mimxrt1064_evk: doc: fix user guide link.
- Fixes link to the MIMXRT1064-EVK User Guide (was broken).
- Adds a note about SW7 and SW5 settings to boot from QSPI.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-05-28 11:18:12 +02:00
Andrej Butok
150b741883 boards: nxp: mimxrt1064_evk: set LinkServer as the default runner.
Sets LinkServer as the default runner for mimxrt1064-evk boards,
as the board is configured for CMSIS-DAP by default.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-05-28 11:18:12 +02:00
Pieter De Gendt
8e2e319925 scripts: west_commands: export: Sorted imports
Sort imports with ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-28 11:13:51 +02:00
Pieter De Gendt
476a8c2c39 scripts: west_commands: completion: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-28 11:13:51 +02:00
Pieter De Gendt
eba120384a scripts: west_commands: blobs: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-28 11:13:51 +02:00
Pieter De Gendt
0c18197325 scripts: west_commands: bindesc: Fix linter issues
Fix issues reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-28 11:13:51 +02:00
Lyle Zhu
5f7fbb6c1d Bluetooth: Classic: Fix LTK cannot be derived issue
The LTK cannot be derived by LK when LK is not weaker than the old LTK.

Improve the function `smp_br_pairing_allowed()` to avoid the LTK be
overwrote when old LTK has MITM protection but new LK has not MITM
protection.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-28 11:13:40 +02:00
Ricardo Rivera-Matos
68f300dc31 charger: bq25713: Corrects unsigned int comparison
Removes an unnecessary comparison of an unsigned int against the value
zero.

Signed-off-by: Ricardo Rivera-Matos <ricardo.rivera-matos@cirrus.com>
2025-05-28 11:10:43 +02:00
John Lin
578a7019df dts: vendor: raspberrypi: Add partitions for Raspberry Pi
Add partitions for Raspberry Pi boards with default to use
Storage partitions and option to use Sysbuild partitions.

Signed-off-by: John Lin <john.lin@beechwoods.com>
2025-05-28 11:10:33 +02:00
Ricardo Rivera-Matos
48854a8bcf charger: axp2101: Corrects unsigned int comparison
Removes an unnecessary comparison of an unsigned int against the value
zero.

Signed-off-by: Ricardo Rivera-Matos <ricardo.rivera-matos@cirrus.com>
2025-05-28 11:10:10 +02:00
Noah Pendleton
7f1a639327 west: blobs: fetch exit immediately on HTTP error
If an HTTP error occurs during `west blobs fetch`, the response was written
to a file (even if the response body is empty), and then the checksum
validation fails, which can be somewhat confusing.

Add an immediate error message and exit-with-error-code when the HTTP
request fails.

Tested by modify a blob manifest to have an invalid URL:

```bash
# test with invalid URL
❯ west blobs fetch nrf_wifi
Fetching blob nrf_wifi: .../wifi_fw_bins/default/nrf70.bin
ERROR: HTTP error occurred: 404 Client Error: Not Found for url: ...

# test with networking disabled
❯ west blobs fetch nrf_wifi
Fetching blob nrf_wifi: .../wifi_fw_bins/default/nrf70.bin
ERROR: An error occurred: HTTPSConnectionPool(host='git.... \
  Max retries exceeded with url: \
  .../zzzz/nrf_wifi/bin/zephyr/default/nrf70.bin
...
```

Signed-off-by: Noah Pendleton <noah.pendleton@gmail.com>
2025-05-28 11:09:54 +02:00
Can Wang
a95f900bfa Bluetooth: Shell: Fix issue that BR connection is not selected.
LE and BR connection have already been established, after that, LE
disconnection occurs, BR connection will not be selected as the next
default connection.

Fix this issue by searching for both BR and LE after disconnection
occurs.

Signed-off-by: Can Wang <can.wang@nxp.com>
2025-05-28 11:09:44 +02:00
Can Wang
361f8e2795 Bluetooth: Shell: Fix issue that BR security level cannot be set to 4.
Host stack supports to set BR security level to 4 but the security level
cannot be set to 4 by the shell command.

Update the code to support BR security level 4.

Signed-off-by: Can Wang <can.wang@nxp.com>
2025-05-28 11:09:44 +02:00
Can Wang
c24594a7bb Bluetooth: Shell: Remove redundant spaces in string.
This string contains two consecutive spaces. Remove one of them.

Signed-off-by: Can Wang <can.wang@nxp.com>
2025-05-28 11:09:44 +02:00
Anas Nashif
dd56691227 arc: prep_c: remove dead code
Remove commented code enclosed in if(0) {}.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-28 11:09:21 +02:00
Neal Jackson
b13983a048 mgmt: hawkbit: add migration note for device_id prepend with custom id
When `CONFIG_HAWKBIT_CUSTOM_DEVICE_ID` is selected, the device_id will
no longer be automatically prepended with `CONFIG_BOARD`.

Signed-off-by: Neal Jackson <neal@blueirislabs.com>
2025-05-28 11:09:10 +02:00
Neal Jackson
d07f8eed55 mgmt: hawkbit: do not prepend custom controllerId
This commit changes how the controllerId is generated based on device
id, and disentangles the two. The controllerId is what hawkbit uses to
uniquely identify a device, and is not necessarily the same as the
device id, and should be fully customizeable by the user if needed.
Previously, all custom device ids were being prepended with
`CONFIG_BOARD`. When a user selects `CONFIG_HAWKBIT_CUSTOM_DEVICE_ID`,
they should be able to specify the full controllerId used with hawkbit,
without a forced prepend.

Signed-off-by: Neal Jackson <neal@blueirislabs.com>
2025-05-28 11:09:10 +02:00
Vinayak Kariappa Chettimada
ff26592272 Bluetooth: Controller: Remove conn context NULL check
Remove conn variable NULL check before calling
ull_cp_release_tx() to support conditional compilation of
LLCP_TX_CTRL_BUF_QUEUE_ENABLE variant.

Relates to commit 1ff458ec87 ("Bluetooth: controller:
llcp: fixing tx buffer queue handling").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-28 11:09:01 +02:00
Vinayak Kariappa Chettimada
c3f107596a Bluetooth: Controller: Add ll_conn_get() return value check
Add ll_conn_get() return value check for valid connection
context.

Build command:
cmake -GNinja -DBOARD=nrf52833dk/nrf52833
 -DEXTRA_CONF_FILE=overlay-all-bt_ll_sw_split.conf
 -DDTC_OVERLAY_FILE=boards/nrf52833dk_nrf52833_df.overlay
 -DSNIPPET="bt-ll-sw-split" ../../samples/bluetooth/hci_uart
ninja

Before:
Memory region         Used Size  Region Size  %age Used
           FLASH:      283716 B       512 KB     54.11%
             RAM:      109752 B       128 KB     83.73%
        IDT_LIST:          0 GB        32 KB      0.00%

After:
Memory region         Used Size  Region Size  %age Used
           FLASH:      284992 B       512 KB     54.36%
             RAM:      109752 B       128 KB     83.73%
        IDT_LIST:          0 GB        32 KB      0.00%

After (use of `conn != NULL`):
Memory region         Used Size  Region Size  %age Used
           FLASH:      285044 B       512 KB     54.37%
             RAM:      109752 B       128 KB     83.73%
        IDT_LIST:          0 GB        32 KB      0.00%

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-28 11:09:01 +02:00
Vinayak Kariappa Chettimada
a396bdd30a Bluetooth: Controller: Fix missing connection handle invalidate
Fix missing connection handle invalidate on Controller
power up.

The connection context are zero-initialized on startup and
calls to `ll_connected_get()` would incorrectly return a
valid connection context pointer for connection handle 0.

Relates to commit fa02dc4d02 ("Bluetooth: Controller: Fix
missing reset of connection handle").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-28 11:09:01 +02:00
Neal Jackson
2ef1ddea73 mgmt: hawkbit: interface support for ip addresses and domain name
Previously, hawkbit interface only supported a url/hostname and a port,
and internally it resolves to an IP address. This does not work for
network layers that rely on NAT64, like OpenThread.  Zephyr's
implementation of `getaddrinfo` is not aware of NAT64.  DNS will resolve
an IPV4 address that needs to be converted to IPV6 with the NAT64
prefix.

This commit alters the Hawkbit interface to allow providing an explicit
domain name as a string via `server_domain`, and an already resolved IP
address as `server_addr`.

This commit changes the usage of `hawkbit_runtime_config.server_addr` to
point to either an IP address or domain name. It adds a new Kconfig
(`HAWKBIT_USE_DOMAIN_NAME`) to specify an explicit domain name and adds
a new variable `hawkbit_runtime_config.server_domain`. If
`HAWKBIT_USE_DOMAIN_NAME` is enabled and a user provides an IP address
to `server_addr`, the user must provide a domain name to
`server_domain`.

Signed-off-by: Neal Jackson <neal@blueirislabs.com>
2025-05-28 11:08:53 +02:00
Jukka Rissanen
d718b46ddb net: ipv6: Do not access link address past array length
It is possible to manually set link address length past 6 at runtime
and trying to check IPv6 ll address that way. This should fail
as we could read two bytes past the address buffer.

Coverity-CID: 516242

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-05-28 10:05:30 +02:00
Jukka Rissanen
e44ed8dbb8 net: ipv6: Make sure we do not access link address past array length
It is possible to manually set link address length past 6 at runtime
and trying to generate IPv6 IID address that way. This should fail
as we could read two bytes past the address buffer. There is no issues
in the copying as the target buffer has plenty of space.

Coverity-CID: 516232

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-05-28 10:05:21 +02:00
Andrzej Głąbek
ec8632dcd1 drivers: adc_ad4130: Fix out-of-bounds accesses to channel_setup_cfg
Correct the size of the channel_setup_cfg array, as it should contain
entries for all available channels (AD4130_MAX_CHANNELS), not for the
available configuration slots (AD4130_MAX_SETUPS).
Move also checking of the channel index to the very beginning of
adc_ad4130_channel_setup(), to avoid potential writes to .live_cfg
beyond the channel_setup_cfg array.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-05-28 10:05:02 +02:00
IBEN EL HADJ MESSAOUD Marwa
9b14f9b924 drivers: usb: Enable USB and UDC OTGPHY clock
- Reset specific configuration bits in
  USB1_HS_PHYC->USBPHYC_CR before setting new values.
- Set the Frequency Selection (FSEL) bits to operate
  the USB PHY Control Register at 24 MHz for proper communication.
- Enable the OTGPHY1 peripheral clock using LL_AHB5_GRP1_EnableClock.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-05-28 10:04:40 +02:00
Hao Luo
ba21058cd7 drivers: uart: add dma support for ambiq uart driver
This commit adds dma support for ambiq uart driver

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-28 10:04:26 +02:00
Benson Huang
3e8ec3aaf2 driver: flash: Add Set/ Get write protect function
Add Set_WP function to set SPI flash WP line to low
Add Get_WP function to obtain status of the SPI flash WP line

Signed-off-by: Benson Huang <benson7633769@gmail.com>
2025-05-28 08:14:27 +02:00
Ayush Singh
42aef1be54 dts: arm: ti: Adjust GPIO memory address
Adjust GPIO davinci memory address

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-05-28 08:14:18 +02:00
Ayush Singh
18c569829a drivers: gpio: davinci: Match GPIO address with Linux
Currently, the Zephyr dt requires address to the direction register
instead of the base GPIO address. usually means base address + 0x10 when
compared with Linux.

To make things more consistent between linux and zephyr, handle the
direction offset in the driver itself. This also lays the foundation for
supporting more than 32 GPIOs per port in the future by introducing
offsets for all the banks.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-05-28 08:14:18 +02:00
Tony Han
f862716eb6 boards: microchip: sam: add the device-tree file for sama7g54_ek board
Introduce sama7g54_ek.dts for sama7g54_ek board.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Tony Han
190fa9846e dts: microchip: add the DTSI file for sama7g5
Add the base DTSI file for Microchip sama7g5.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Tony Han
d251ecd116 drivers: timer: sam: add pit64b timer for sama7g5
Use pit64b0 as systick, make "kernel sleep/uptime" commands work.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Tony Han
64485c6b24 drivers: pinctrl: sam: add pinctrl for sama7g5
Support pull up/down, open drain for sam7g5's PIO.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Tony Han
0b2958373d drivers: serial: sam: update serial to support sama7g5
The USART is compatiable with the USART feature in sama7g5's Flexcom.
Update serial/usart_sam to support sama7g5.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Tony Han
cc206e05b9 drivers: mfd: add FLEXCOM drivers for Microchip SAM devices
The FLEXCOM offers several serial communication protocols that are
managed by the three sub-modules USART, SPI, and TWI (I2C).

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Tony Han
3e20172ccc drivers: clock_control: microchip: add support for sama7g5 SCKC
Add driver for sama7g5 Slow Clock Controller (SCKC).

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Tony Han
8f5a0559c6 drivers: clock_control: microchip: add drivers for sama7g5 PMC
Initialize the configurations for PMC driver.
Add implement of the API for PMC clocks.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Tony Han
21da37b400 soc: microchip: sam: add code for sama7g5 clocks
Add code for sama7g5 Generic Clock, Main Clock, Main System Bus Clock,
Peripheral Clock, Programmable Clock and PLL Clock.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Tony Han
a10b87b2b4 boards: microchip: add new board sama7g54-ek
Product URL: https://www.microchip.com/en-us/development-tool/ev21h18a

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Tony Han
c7efdb9c73 soc: microchip: add new soc sama7g54
Product URL: https://www.microchip.com/en-us/product/SAMA7G54

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Tony Han
0dd1048577 west.yml: Update west.yml for sama7g54 hal
Update west.yml for SAMA7G54 HAL

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-05-28 08:14:08 +02:00
Thiyagarajan Pandiyan
f432d5d510 drivers: rtc: pcf8563: fix get alarm time
While getting alarm time, BIT(7) of each register is checked if it is
set, which send the alarm time as 0 to the requestor. Fix it by checking
if the BIT(7) of each register is not set.

Signed-off-by: Thiyagarajan Pandiyan <psvthiyagarajan@gmail.com>
2025-05-28 05:54:49 +02:00
Tu Nguyen Van
0e8fdf6b56 drivers: ethernet: adapt code with new RTD 2.0.1
update members in struct Netc_Eth_Ip_StationInterfaceConfigType
in RTD 2.0.1 for both psi and vsi driver code.

Netc_Eth_Ip_VsiToPsiMsgType need to relocate nocache section
in RTD 2.0.1

Signed-off-by: Tu Nguyen Van <tu.nguyenvan@nxp.com>
2025-05-28 05:54:38 +02:00
Tu Nguyen Van
0e132ecd86 drivers: pwm: update variable and marco name in RTD 2.0.1
eMios_Icu_Ip_IndexInChState is changed to
eMios_Icu_Ip_u8IndexInChState and EMIOS_ICU_BUS_F
is removed in RTD 2.0.1

Signed-off-by: Tu Nguyen Van <tu.nguyenvan@nxp.com>
2025-05-28 05:54:38 +02:00
Tu Nguyen Van
6f4f702ed2 drivers: adc: update new macro name in RTD 2.0.1
FEATURE_ADC_MAX_CHN_COUNT changed to ADC_SAR_IP_MAX_CHN_COUNT
in RTD 2.0.1

Signed-off-by: Tu Nguyen Van <tu.nguyenvan@nxp.com>
2025-05-28 05:54:38 +02:00
Michael Hope
5c2e2b7edc drivers: wch: fix the ch32vfun.h path after the recent HAL update
https://github.com/zephyrproject-rtos/zephyr/pull/87125 renamed the
`ch32vfun.h` header but missed some of the drivers. Fix.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-05-28 05:54:28 +02:00
Alain Volmat
087a08c5fb video: sw_generator: remove frmival values check
Now that api core functions check that denominator / numerator are not
null, it is no more necessary to perform this check within drivers.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-28 05:54:15 +02:00
Alain Volmat
5d10955863 video: common: add checks of frame interval values
Add checks regarding specific values (numerator / denominator) not being
0 for frame intervals.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-28 05:54:15 +02:00
Alain Volmat
5623772ff3 video: remove valid pointer check in api entry points
Now that video api functions have __ASSERT_NO_MSG calls, drivers
do not need to check the entry point functions pointers.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-28 05:54:15 +02:00
Alain Volmat
08df2fd92e video: common: add __ASSERT_NO_MSG in video api function entry
Protect video API functions via __ASSERT_NO_MSG call to ensure that
required pointers are valid when entering functions.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-28 05:54:15 +02:00
Joel Guittet
7b429462d8 version.h.in: fix cmake comment
Fix comment indicating path to the cmake script generating version.h file.

Signed-off-by: Joel Guittet <joelguittet@gmail.com>
2025-05-28 05:53:55 +02:00
Jeremy Dick
621f29e331 drivers: input: cap12xx Fix integer overflow warning
Check that calsens values are valid to prevent integer overflow

Coverity-CID: 524767
Fixes #90481

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-05-28 01:48:22 +02:00
Alberto Escolar Piedras
da6742b776 subsys/fs/fuse: Fix adding missing stddef header
Instead of relaying on stddef.h being included by other headers
let's include it explicitly, following a report of it being
missing for Ubuntu 22.04 (glibc 2.35)

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-28 01:48:13 +02:00
Vytautas Virvičius
087267a0ff drivers: modem: add support for Quectel EG800Q
Added support for Quectel EG800Q LTE Cat 1bis modem.

Signed-off-by: Vytautas Virvičius <vytautas@virvicius.dev>
2025-05-28 01:47:56 +02:00
Oleh Kravchenko
8708964049 drivers: display: ssd1306: fix reset
The recommended reset sequence from the datasheet is as follows:

  void SSD1309 ()
  {
  	RES=0;
  	delay(1000);
  	RES=1;
  	delay(1000);
  	..

Signed-off-by: Oleh Kravchenko <oleg@kaa.org.ua>
2025-05-28 01:47:24 +02:00
Benjamin Cabé
f759bdc8ae bindings: sensor: fix typo in Aosong sensor descriptions
Corrected the spelling of "Asosong" to "Aosong".

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 01:47:02 +02:00
Benjamin Cabé
ef860ed5f8 bindings: sensor: adi: fix "functionality" typo
s/funcionality/functionality/g

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 01:47:02 +02:00
Benjamin Cabé
98e61da55c bindings: dma: fix naming of xlnx bindings
file should be named after the compatible and these files where using
an incorrect vendor prefix.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 01:47:02 +02:00
Benjamin Cabé
eb79bf033f bindings: audio: fix naming of cirrus,cs43l22 binding file
file should be named after the compatible

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 01:47:02 +02:00
Benjamin Cabé
d6c7f2c30b bindings: spi: Cypress "SBC" should be "SCB"
acronym for Cypress Serial Communication Block is SCB, not SBC.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 01:47:02 +02:00
Benjamin Cabé
e4282c3b91 bindings: spi: rename andestech,atcspi200 binding file
file needs to be named after the compatible

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 01:47:02 +02:00
Benjamin Cabé
ec26de1008 bindings: i2c: correct description for GigaDevice GD32 I2C
Updated the description in the gd,gd32-i2c.yaml file to reflect the
correct name "GigaDevice" instead of "GigiDevice".

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 01:47:02 +02:00
Benjamin Cabé
bbe4048ae0 bindings: i2c: fix typo in atmel,sam-i2c-twim.yaml
Corrected the spelling of "osciloscope" to "oscilloscope"

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 01:47:02 +02:00
Benjamin Cabé
2aa0ee156e bindings: ethernet: fix typo in infineon,xmc4xxx-ethernet
Corrected the description for the rxd3-port-ctrl property as there was a
typo.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 01:47:02 +02:00
Benjamin Cabé
23a9462949 bindings: bluetooth: fix typo
Corrected the spelling of "boudrate" to "baudrate".

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 01:47:02 +02:00
Benjamin Cabé
f12cc08434 bindings: auxdisplay: correct typos in SerLCD YAML binding
Corrected the spelling of "bitrare" to "bitrate" and "relativily" to
"relatively".

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 01:47:02 +02:00
Benjamin Cabé
1eebc9f5d9 bindings: raspberrypi: rename binding file with typo
rename the file to get rid of the typo ("raspberrrypi") and align with
the compatible

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-28 01:47:02 +02:00
Tahsin Mutlugun
7ad934701f dts: common: adi: Update default power state durations
Set new default minimum sleep amount for each power state. Users can
still update these values depending on their needs.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-05-28 01:46:50 +02:00
Furkan Akkiz
43a1e68b56 tests: subsys: pm: Enable power_mgmt_soc for MAX78002EVKIT
Enables power management test for MAX78002EVKIT.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-05-28 01:46:50 +02:00
Sadik Ozer
ec9ac2308a tests: subsysm: pm: Enable power_mgmt_soc for MAX32655
This commit enables power_mgmt_soc test for MAX32655 boards
- max32655evkit
- max32655fthr

RTC clocked in most low power modes so that this timer
is linked with idle timer. By this way device able to wakeup
from low power modes.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-28 01:46:50 +02:00
Sadik Ozer
6f98b8cbbe tests: subsysm: pm: Enable power_mgmt_soc for MAX32690
This commit enables power_mgmt_soc test for MAX32690 board

Low power timer is used as idle timer that will wakeup device
from sleep modes. Lowpower timer clocked with RTC clock which
always on.

RTC can be used as idle clock timer too, in that case below
line need to be added in overlay file

/ {
    chosen {
    	zephyr,cortex-m-idle-timer = &rtc;
    };
};

&rtc {
    status = okay;
    wakeup-source;
};

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-28 01:46:50 +02:00
Sadik Ozer
4e858066bc soc: adi: max32: Add dependency to idle cpu hook
To simplify usage add dependecy to MAX32_ON_ENTER_CPU_IDLE_HOOK
If CONFIG_PM not defined set to to y as current,
If CONFIG_PM defined not set it
If user set CONFIG_PM not need to disable
MAX32_ON_ENTER_CPU_IDLE_HOOK anymore

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-28 01:46:50 +02:00
Sadik Ozer
9b7927f2a3 soc: arm: adi: max32: Add power management feature
This commit add power.c file that provides device goes to low power modes

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-28 01:46:50 +02:00
Sadik Ozer
2415dcc5ea dts: arm: adi: Add power management states in devicetree
This commits added power management states in max32xxx MCUs
Common states added in max32xxx.dtsi file and additional ones
added in max32655.dtsi

Exit-latency-us value set as per of device datasheet spec.
The typical value is mentioned in DS is multiplied with 2.
For more information please take a look:
https://www.analog.com/en/products/max32655.html

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-28 01:46:50 +02:00
Sadik Ozer
497f2ce835 dts: adi: Enable low-power pin modes
low-power pins can be used while device power management enabled.
Usage

...
&uart0a_rx_p0_0 {
  pinmux = <MAX32_PINMUX(0, 0, AF1)>;
  low-power-enable;
  /* Add low power mode flags, like: */
  output-high;
  bias-disable;
  ...
};
...

Default gpio sleep states are defined, user shall update sleep_pins
configuration as per of their needs

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-28 01:46:50 +02:00
Phi Bang Nguyen
66e8a6f873 drivers: video: Combine some API function pointer types
Some API function pointer types such as set/get_format(),
set/get_frmival() are indentical. Combine them to save some spaces.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-28 01:46:32 +02:00
Nathan Olff
2ac316465f tests: drivers: sensor: add ad2s1210 to build_all test
add ad2s1210 to build_all test in spi.dtsi

Signed-off-by: Nathan Olff <nathan@kickmaker.net>
2025-05-27 23:43:56 +02:00
Nathan Olff
b88a27a3e8 drivers: sensor: adi: add ad2s1210 resolver support
implement driver for ad2s1210 resolver

Signed-off-by: Nathan Olff <nathan@kickmaker.net>
2025-05-27 23:43:56 +02:00
Magpie Embedded
bf664b88cd samples: sensor: Modify MAX30101 sample to generic heart rate sensor sample
This commit modifies the MAX30101 sample to produce a generic heart rate
sensor sample.
Support for the BH1790 sensor is added.

Signed-off-by: Magpie Embedded <magpieembedded@gmail.com>
2025-05-27 23:43:43 +02:00
Magpie Embedded
74ef345dc1 drivers: sensor: Add sensor driver for BH1790
This commit adds a driver for the BH1790 Heart Rate Monitor IC.

Based on the approach used by the MAX30101 driver, an existing optical
heart rate sensor with a sample in Zephyr.

Signed-off-by: Magpie Embedded <magpieembedded@gmail.com>
2025-05-27 23:43:43 +02:00
Phi Bang Nguyen
fadb9c7ccb MAINTAINERS: Add video maintainer
Add Josuah Demangeon "josuah" and Phi Bang Nguyen "ngphibang"
as maintainers for video drivers.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-27 21:41:18 +02:00
David Leach
88c34b06dd doc: binary blobs: remove TSC approval requirement
Remove the TSC approval requirements for binary blobs. Clarify
in the language that the submitter and reviewers shall ensure
that all binary blob requirements are being met before approval
and integration into Zephyr.

Signed-off-by: David Leach <david.leach@nxp.com>
2025-05-27 21:40:06 +02:00
Benjamin Cabé
464a49d1af dts: riscv: aesc: Add reg-names to machine timer node
Commit 42fb9067e4 makes it mandatory to
now have reg-names property on the riscv,machine-timer node. This DTS
file was somehow missed as part of the refactoring.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-27 21:39:55 +02:00
Chen Xingyu
2752814eab doc: migration: 4.2: Clarify machine timer DTS changes
Clarify the changes introduced in machine timer bindings:

* Several legacy compatibles (e.g. andestech,machine-timer,
  neorv32-machine-timer, etc.) have been unified under riscv,machine-timer.
* MTIME and MTIMECMP addresses must now be specified explicitly using the
  reg and reg-names properties.
* The reg-names property is now required and must match the reg entries
  one-to-one.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-05-27 19:04:22 +02:00
Chen Xingyu
e40315eb27 dts: riscv: Add reg-names to machine timer nodes
This commit updates all relevant device tree source files using the
riscv,machine-timer binding to explicitly define `reg-names` for the MTIME
and MTIMECMP registers.

This change ensures compatibility with the updated riscv_machine_timer
driver, which now relies on `reg-names` to resolve register addresses
instead of using fixed index positions.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-05-27 19:04:22 +02:00
Chen Xingyu
42fb9067e4 drivers: timer: riscv_machine_timer: Use reg-names to access registers
This commit updates the riscv_machine_timer driver to resolve MTIME and
MTIMECMP register addresses by their `reg-names` instead of relying on
index order.

This improves clarity and robustness in DTS bindings, and is a prerequisite
for handling cases where not both MTIME and MTIMECMP registers are present
or accessible.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-05-27 19:04:22 +02:00
Fin Maaß
7db4b5e647 MAINTAINERS.yml: rename NXP Drivers
The set_assignees.py script detects platforms
by checking if the Area title contains the string
"Platform",  this was missing for some NXP
Platforms, so this adds it. This way the platform
maintainers are assigned preferably.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-27 19:04:05 +02:00
Anas Nashif
1fbd8d3aa3 templates: use a new bug template based on forms.
Use a form based template instead of freesyle template. This will force
bug reporters to follow the template and provide the needed information
and will make triage easier and bug reports consistent.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-27 19:03:56 +02:00
Verena Schweinstetter
9313df9813 drivers: stepper: allegro: Fix missing break statement
Fix missing break statement in a4979.c after line 123

Signed-off-by: Verena Schweinstetter <verena.schweinstetter@zeiss.com>
2025-05-27 17:56:27 +02:00
Jilay Pandya
2ef1558896 drivers: stepper: add missing include guard
Add missing include guard in drv84xx pubic header

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-05-27 17:56:13 +02:00
Abderrahmane JARMOUNI
d2f857f000 samples: lvgl: multi_display: fix typo in sample yaml
fix typo that prevents sample from being built in CI

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-27 17:56:02 +02:00
Grzegorz Chwierut
632d006260 twister: Convert platform names before printing
Just move a code with workaroud to convert platform names
to the full name with variants.
It fixes an issue, that not every platforms are printed
before running tests.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-05-27 17:55:46 +02:00
Wouter Horré
5052919a2b drivers: i2c: stm32: Fix size calculation of n_timings
`timings` is an array of `struct i2c_config_timing` (3 x `uint32_t`).
`i2c_timings_##index` is an array of `uint32_t` (hence the cast when it
is assigned to `timings`). Therefore `ARRAY_SIZE(i2c_timings_##index)` is
off by a factor 3 when used for `n_timings`.

Parentheses around the second `sizeof` are there to silence the gcc warning
(-Wsizeof-array-div) that warns about not computing the size of
`i2c_timings_##index`.

Signed-off-by: Wouter Horré <wouter@versasense.com>
2025-05-27 17:55:36 +02:00
Robert Lubos
17c00ce868 tests: net: http_client: Increase ztest stack size
The ztest stack was too small on some platforms (e.g. nRF52840), so
increase the stack size.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-27 16:49:01 +02:00
Fin Maaß
4d7e35be1c mgmt: hawkbit: reset action ID after successful update report
reset action ID after successful update report.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-27 16:45:21 +02:00
Valerio Setti
a03b06fd04 tests: modules: uoscore: remove unnecessary dependencies
PSA Crypto dependencies are automatically selected in the uOSCORE's
Kconfig.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-05-27 16:45:13 +02:00
Valerio Setti
9e190f6d92 modules: uoscore-uedhoc: select required PSA Crypto features
Let uOSCORE and uEDHOC Kconfigs select required PSA Crypto features
instead of having them selected in Mbed TLS' Kconfigs. Besides this the
previous configuration was enabling legacy support in Mbed TLS whereas
uOSCORE/uEDHOC use PSA Crypto APIs.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-05-27 16:45:13 +02:00
Valerio Setti
df3485360a modules: mbedtls: don't enable RSA support for UOSCORE or UEDHOC
uOSCORE and uEDHOC only use ECDSA and ECDH for signatures and key
agreement respectively, so the support for RSA is not required.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-05-27 16:45:13 +02:00
Benjamin Cabé
3534a23c61 doc: introduction: replace NIOS II mention by Renesas RX
Remove one last (?) mention of NIOS II in the docs ; use it as an
opportunity to mention recently added support for Renesas RX.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-27 16:45:09 +02:00
Benjamin Cabé
54945f7979 boards: sparkfun: adopt zephyr:board directive
updates a couple boards to make the most of Sphinx board extensions.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-27 16:44:56 +02:00
Mark Wang
38fce64e6a bluetooth: shell: the setting is forced as disabled for mimxrt1170_evkb
delete the default configs of disabling the setting on mimxrt1170_evkb.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-05-27 16:44:45 +02:00
David Leach
c52bea0a6d soc: imxrt: remove MEMC config selection
MEMC no longer needs to be default y on RT builds.

Fixes #89782

Signed-off-by: David Leach <david.leach@nxp.com>
2025-05-27 16:44:37 +02:00
Mark Wang
18c18c6905 bluetooth: shell: pairing_accept callback access NULL pointer
pairing_accept callback is called with feat as NULL in
the bt_hci_io_capa_req.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-05-27 16:44:28 +02:00
Szymon Janc
5e0d3cce8b Bluetooth: Host: L2CAP: Fix checking signaling packets size
Recent test specification added additional test for validating
invalid packet sizes on L2CAP signaling channel. IUT is allowed
to either disconnect link, ignore packet, reject packet or
issue a warning to upper tester if other action is taken.

To keep things in line with previous check for too small size
simply ignore fixed size packets of invalid length.

This was affecting L2CAP/COS/CED/BI-11-C qualification test.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-05-27 16:44:17 +02:00
Tomi Fontanilles
18b14e7a2c secure_storage: its: transform: improve expandability
Instead of checking whether a custom implementation is present, check
whether the AEAD one is used.
This allows downstream users to expand the implementation choice with
more options.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-05-27 15:46:37 +02:00
Tomi Fontanilles
001d054bc3 secure_storage: its: make definitions available outside of transform.h
Some ITS store module implementations may make use of them.
This is the case of the custom one in the
secure_storage.psa.its.secure_storage.custom.store test.

Instead of making transform.h conditionally available, move the definitions
to common.h and simply make them available whenever the ITS transform
module is enabled.

At the same time, remove unneeded/redundant includes/build asserts.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-05-27 15:46:37 +02:00
Tomi Fontanilles
9379678fcf secure_storage: its: transform: aead: improve expandability
Instead of checking for CONFIG_SECURE_STORAGE_ITS_TRANSFORM_AEAD_*_CUSTOM,
check for any of the existing providers.
This allows downstream users to expand the choices with more options

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-05-27 15:46:37 +02:00
Tomi Fontanilles
b87befb36b secure_storage: its: improve return codes
Some minor improvements.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-05-27 15:46:37 +02:00
Sudarsan N
8cf71d091e samples: adc_dt: add overlay for STM32F0-DISCO
Add board-specific overlay file for the adc_dt sample
on the STM32F0-DISCO board to enable ADC channel support.

Signed-off-by: Sudarsan N <sudarsansamy2002@gmail.com>
2025-05-27 15:46:19 +02:00
Marek Matej
c203760784 drivers: wifi: esp32: Add option for WiFi SPIRAM
Update kconfig to support SPIRAM.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-05-27 15:46:08 +02:00
Marek Matej
937ed1fca7 manifest: hal_espressif
Update HAL to support Wi-Fi buffers in PSRAM.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-05-27 15:46:08 +02:00
Emil Gydesen
52f089af23 Bluetooth: CSIP: Set member: Fix issue with re-registration
The bt_csip_set_member_register kept a counter that was not
decreased when bt_csip_set_member_unregister was called.
This meant that we could register and unregister CSIS,
but we could not re-register once it had been unregistered.

This commit fixes this by removing the counter and instead
rely on the service instance state, which also requires restoring
the original service definition, as well as adding a test that would
have failed with the previous version.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-27 14:45:15 +02:00
Flavio Ceolin
287984f629 docs: pm: Update runtime PM documentation and release notes
Add new configuration options for runtime PM to the release notes,
including stack size, priority, and system work queue usage. Update
the runtime PM documentation to explain the implications of using the
system work queue and disabling asynchronous operations. Include a new
version of the sequence diagram for asynchronous operations.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-05-27 14:45:07 +02:00
Flavio Ceolin
437b56d22e pm: device_runtime: Make async optional
Async now uses its own work queue, which means it consumes more
resources. Since not all applications need the async API, we can make
it optional without any penalty for those applications.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-05-27 14:45:07 +02:00
Flavio Ceolin
64e38bab55 pm: device_runtime: Allow to use a dedicated wq
Device runtime is using the system workqueue to do operations
that are mostly blockers (suspend a device). This should not happen.

This commit adds an option to use dedicated queue for the device runtime
async operations.

The test for this API was assuming that the system workqueue
priority (which is cooperative) so we need to change the test priority
to be lower than the device runtime workqueue priority.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-05-27 14:45:07 +02:00
Sergei Ovchinnikov
eb811d1753 drivers: mfd: npm2100: fix timer value calculation
A -1 was missing from the timer value calculation. In addition,
DIV_ROUND_CLOSEST was replaced with a custom macro fixing #84782.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-05-27 14:44:59 +02:00
Alvis Sun
bcf7717e97 drivers: clock_control: npcx: add NPCXn variant support in clock init
As title.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-05-27 12:15:36 +01:00
Emil Gydesen
f24ba75aba Bluetooth: BAP: BA: Add check for mixing NO_PREF with specific BIS
Based on a dicussion on the Bluetooth SIG GAWG reflector, it is
not allowed for a broadcast assistant to request specific BIS
indexes as well as BT_BAP_BIS_SYNC_NO_PREF in the same
request.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-27 12:02:16 +01:00
Emil Gydesen
de4752c393 Bluetooth: BAP: SD: Add check for mixing NO_PREF with specific BIS
Based on a dicussion on the Bluetooth SIG GAWG reflector, it is
not allowed for a broadcast assistant to request specific BIS
indexes as well as BT_BAP_BIS_SYNC_NO_PREF in the same
request.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-27 12:02:16 +01:00
Emil Gydesen
60e9f99582 tests: Bluetooth: Split CAP and GMAP AC tests into separate scripts
This commit splits the CAP and GMAP audio configuration (AC)
tests into separate scripts. The purpose of this is to reduce
the runtime of the individual scripts (some, like the cap_ac_11,
tests takes a long time to run all combinations).
This split also improves support for running them in parallel.

An additional, positive, side effect of this is that the logs will
also be smaller per run.

The new scripts can be run directly, or via the e.g. _cap_ac_X.sh
scripts that run entire audio configuration for all presets.

The design of how the parameters are passed around, are based
on variable instead of function arguments. Effectively they can
be used for the same thing, but variables have the advantage
that it is easier to deal with longer names,
and that any of the test scripts can be called with additional
arguments that can, when using variables, easily be forwarded
to the call to Execute for the PHY in the
_ac_common.sh.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-27 12:01:59 +01:00
Jean Nanchen
2066b8c7b9 drivers: i2c: stm32: add timeout to avoid infinite loop
Fix issue where STM32 I2C LL driver could block forever when SDA and SCL
are shorted and interrupts are disabled (CONFIG_I2C_STM32_INTERRUPT=n).

Added timeouts to all blocking wait loops in the STM32 LL I2C driver to
avoid indefinite blocking.

Fixes #88506

Signed-off-by: Jean Nanchen <jean.nanchen@hevs.ch>
2025-05-27 12:01:31 +01:00
Chen Tao
b513e08271 net: wifi: fix the bug by non-wifi network call
Added network type check to fix the system crash caused by non-wifi
network card calling wifi api interface

Company:BSH Crop
Signed-off-by: Chen Tao <ct05342@163.com>
2025-05-27 11:51:23 +02:00
Muzaffar Ahmed
ecaa19b71b drivers: wifi: siwx91x: Remove set credential for open mode
Removed the unnecessary set_credential API call in open security mode

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-05-27 11:51:17 +02:00
Muzaffar Ahmed
9600995af8 drivers: wifi: siwx91x: Fix NWP bootup assert
Fixed the assert related to AP mode / Hidden SSID in NWP bootup

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-05-27 11:51:17 +02:00
Damian Krolik
391290e67d net: shell: udp: allow sending packet when bound
"udp bind" and "udp send" commands use the same net context
variable and they fail early if the context is already used.

This prevents from using "udp send" after "udp bind", which
makes the commands hard to use for testing bidirectional
communication. Make "udp send" reuse the already bound
context if possible, and resort to allocating temporary one
otherwise.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2025-05-27 11:51:11 +02:00
Lyle Zhu
81141b1618 Bluetooth: Shell: Improve command bt connections to support BR conn
When execute `bt connections`, only the peer device address of selected
LE connection is flagged with `*`.

Improve the command `bt connections` to support BR connections.
Regardless of the connection type, `*` will be shown to indicate the
peer address of the current connection if the peer device address is
the peer address of selected connection.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-27 11:50:58 +02:00
Neal Jackson
f9701a1a21 mgmt: hawkbit: remove DNS_RESOLVER requirement for server_addr
This commit removes the requirement for DNS_RESOLVER. If DNS_RESOLVER is
enabled, hawkbit uses `CONFIG_DNS_RESOLVER_MAX_QUERY_LEN` for the
server_addr buffer, if disabled it uses `CONFIG_INET6_ADDRSTRLEN`.
This adheres to #89533 which removes the requirement for DNS_RESOLVER.

Signed-off-by: Neal Jackson <neal@blueirislabs.com>
2025-05-27 11:50:52 +02:00
Neal Jackson
64de800aa9 mgmt: hawkbit: use sizeof in server_addr length checks
Simplify length checks by using sizeof for the server_addr array.

Signed-off-by: Neal Jackson <neal@blueirislabs.com>
2025-05-27 11:50:52 +02:00
Neal Jackson
d9be126eca mgmt: hawkbit: add check for valid domain name length
This commit adds a `strnlen` length check for `server_addr` to ensure that
it will not be truncated and result in a silent failure. Instead, the
call to `hawkbit_set_config` will return -EINVAL if the supplied
`server_addr` is too long for the internal buffer.

Signed-off-by: Neal Jackson <neal@blueirislabs.com>
2025-05-27 11:50:52 +02:00
Neal Jackson
f75a11d22a mgmt: hawkbit: replace DNS_MAX_NAME_SIZE with DNS_RESOLVER_MAX_QUERY_LEN
The hawkbit subsystem was erroneously using DNS_MAX_NAME_SIZE as the
maximum query length. This limited query strings to only 20 bytes,
truncating many domain names.

Signed-off-by: Neal Jackson <neal@blueirislabs.com>
2025-05-27 11:50:52 +02:00
The Nguyen
022962c90d samples: counter: alarm: remove platform_allow filterring
Because this is a common testing scenario, almost any counter instance
should be able to run. Some counter instances cannot run this sample
should be filtered by platform_exclude or filter keywords.

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-05-27 11:50:37 +02:00
The Nguyen
aed47c62cc samples: counter: alarm: add support for Renesas RA devices
Add overlay to enable counter node for Renesas RA devices

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-05-27 11:50:37 +02:00
The Nguyen
47f7fc9a45 tests: counter: add support for renesas,ra-agt-counter
Enable test support for renesas,ra-agt-counter

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-05-27 11:50:37 +02:00
The Nguyen
f96be3c1ca dts: arm: renesas: enable support AGT on Renesas RA device
Add device node for AGT counter support on Renesas RA family

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-05-27 11:50:37 +02:00
The Nguyen
613ee72670 drivers: counter: migrate counter AGT to using HAL support
Migrate renesas,ra-agt-counter implementation to use hal_renesas.
Add additional AGT_CLOCK_SUBCLOCK count source.
Add constraint for counter resolution to 32 or 16 bit variant.

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-05-27 11:50:37 +02:00
The Nguyen
37b4cff8f2 tests: counter: correct checkpoint for downward counter
Modify the expected ticks check to adapt with a downward counter
instance

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-05-27 11:50:37 +02:00
Jianxiong Gu
a505a43626 tests: drivers: Add FUSB307 driver
Add a build test to verify fusb307 driver builds correctly.

Signed-off-by: Jianxiong Gu <jianxiong.gu@outlook.com>
2025-05-27 11:50:29 +02:00
Jianxiong Gu
0a8aa23c7c usbc: Enable VBUS measurement before VBUS check level
Enable VBUS measurement before checking the VBUS level and
disable it when unattached.

Signed-off-by: Jianxiong Gu <jianxiong.gu@outlook.com>
2025-05-27 11:50:29 +02:00
Jianxiong Gu
d9486cd3f0 drivers: tcpc: Add TCPC driver for FUSB307
Add support for FUSB307.

Signed-off-by: Jianxiong Gu <jianxiong.gu@outlook.com>
2025-05-27 11:50:29 +02:00
Jianxiong Gu
b25bdc4fa7 usbc: tcpc: Update set_drp_toggle function
Updated set_drp_toggle to handle differences in TCPCI revisions.
Added a macro for TCPCI revision and read it from the chip register
during initialization.

Signed-off-by: Jianxiong Gu <jianxiong.gu@outlook.com>
2025-05-27 11:50:29 +02:00
Jianxiong Gu
3f48195113 drivers: tcpc: ps8xxx: Update to use generic TCPCI function
Update set_snk_ctrl, set_src_ctrl, and set_low_power_mode
to use the generic TCPCI function.

Signed-off-by: Jianxiong Gu <jianxiong.gu@outlook.com>
2025-05-27 11:50:29 +02:00
Jianxiong Gu
d18308cde1 usbc: tcpc: Add generic TCPCI related functions
Add generic functions that will be common to TCPCI compliant drivers.

Signed-off-by: Jianxiong Gu <jianxiong.gu@outlook.com>
2025-05-27 11:50:29 +02:00
Jianxiong Gu
a4cf7d11a7 usbc: fix errors in TCPC_REG_PD_REV and TCPC_REG_PD_INT_REV macros
Corrected macro definitions.

Signed-off-by: Jianxiong Gu <jianxiong.gu@outlook.com>
2025-05-27 11:50:29 +02:00
Karol Lasończyk
22ffe4f531 soc: drivers: nrf: Add support for UARTE23 and UARTE24
Extends configuration to support instances used in new SOCs.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-05-27 10:29:41 +02:00
Valerio Setti
31e38c83b3 lib: uuid: do not support UUID_v5 on TF-M platforms
When TF-M is enabled, Mbed TLS's MD module (which is used to generate
v5 UUIDs) will dispacth hash operations to TF-M. Unfortunately TF-M
does not support SHA-1 (because it's a weak algorithm) so the
computation will fail.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-05-27 10:29:34 +02:00
Nirav Agrawal
767772aad1 samples: bluetooth: fix adv_update error in bthome_sensor_template
- "bt_le_adv_update_data()" func calls just after bt_enable() call
 without completion of bt_ready() which is called as part of worker
 thread within init_work() causes issue where bluetooth controller
 has not been initialized and provides cb to app before app requests
 advertise_update to the stack.
- remove bt_ready() func and place content within main() post
 bt_enable() fixes this issue.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-05-27 10:29:28 +02:00
Arnaud Pouliquen
46cf96a04a samples: ipc: openamp_rsc_table: conditional virtio ID sent on IPM device
Some IPM devices return an error if we request to transfer data.
Use IPM_MAX_DATA_SIZE to determine if the virtio ID can be transferred
through the IPM device.
Send data to IPM only if CONFIG_IPM_MAX_DATA_SIZE is not zero.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-05-27 10:29:20 +02:00
Arnaud Pouliquen
c1a13340ce driver: ipm: introduce IPM_MAX_DATA_SIZE build configuration
The ipm_send() allows transferring data through the IPM device.
However, depending on the platform, the mailbox peripheral may either
transmit a limited amount of data or not transfer data at all.
Introducing this configuration allows exposing the IPM capability to the
application.
This commit defines a default value of 1024 bytes to avoid impacting
existing IPM drivers and sets the value to 0 for the STM32 IPCC and
STM32 HSEM devices.

This allows, in a next step, other devices to use this configuration to
expose their capabilities instead of using proprietary configuration or
a static definition.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-05-27 10:29:20 +02:00
Miguel Gazquez
1b849323f7 doc: boards: fix typo in CH32V303VCT6-EVT board name
The name of the boards was incorrect in the documentation,
Fix the name of the board according to the official name.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-05-27 09:16:20 +02:00
Miguel Gazquez
e5d6504eee doc: boards: fix typo in doc for wch boards
In almost all WCH boards doc, the name of the processor had a typo:
QingKe 32-bit RISC-V4F instead of QingKe V4F 32-bit RISC-V

Fix the doc for all relevant boards.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-05-27 09:16:20 +02:00
Krzysztof Chruściński
5acd29e651 tests: all: Fix remaining issues reported by string validation
Fix issues reported by string validation which was added to strings
used in zassert macros.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-27 09:16:08 +02:00
Andrei Menzopol
88a180556d soc: nxp: mcxw: update macro in Kconfig.defconfig
Use IEEE802154 as it is set by the L2 macros too.

Signed-off-by: Andrei Menzopol <andrei.menzopol@nxp.com>
2025-05-27 09:16:04 +02:00
Andrei Menzopol
415214a99a modules: hal_nxp: update mcux-sdk-ng compoments.cmake
Select driver.spc
Use CONFIG_IEEE802154

Signed-off-by: Andrei Menzopol <andrei.menzopol@nxp.com>
2025-05-27 09:16:04 +02:00
Andrei Menzopol
137199b19f drivers: ieee802154: fix mcxw ieee802154 driver
Fix mcxw_cca function.
Remove not used / not implemented caps.
Select counter as dependency.

Signed-off-by: Andrei Menzopol <andrei.menzopol@nxp.com>
2025-05-27 09:16:04 +02:00
Andrei Menzopol
67af404f7e west.yml: update hal_nxp to include middleware cmake update
Include hal_nxp to include middleware cmake update

Signed-off-by: Andrei Menzopol <andrei.menzopol@nxp.com>
2025-05-27 09:16:04 +02:00
Shrek Wang
b5a31dcb49 net: tcp: Move the CLOSED state to the front
In enum tcp_state {}, the CLOSED state was put at the last one.
When we do Sequence & Ack validation, we will need to skip the
CLOSED, LISTEN, SYNSENT states. It is easier for coding if we
put the CLOSED to the front, e.g. if state > SYNSENT. And, in
other OSes, the state sequence is normally defined like this.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-05-27 06:51:46 +02:00
Chris Friedt
dc7b6a0c82 doc: release: 4.2.0: add notes about timespec utils
Add release notes about the new timespec utilities.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-27 06:51:38 +02:00
Chris Friedt
13e827fe1b sys: timeutil: add missing copyright for recent changes
Add copyright for changes that were included with #90060.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-27 06:51:38 +02:00
Carles Cufi
c2c1495b4c actions: manifest: Handle binary blobs
Update to a revision of the manifest action that includes:
https://github.com/zephyrproject-rtos/action-manifest/pull/21

Also add the corresponding binary blobs labels parameters to the
workflow.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-05-26 19:41:09 -04:00
Keith Packard
3231269244 tests/c_lib: Skip double sqrt test when double is not 64 bits
This test only works for 64-bit values. On targets which use 32 bits for
double, skip this version. The float test will check the 32-bit math for
that.

This is the 'nicer' version of this fix which uses sizeof rather than
relying on __SIZEOF_DOUBLE__.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-05-26 19:40:06 -04:00
Adrian Gielniewski
4d8ffcca93 net: if: Add dummy member to anonymous union in net_if_addr
When both CONFIG_NET_IPV6_DAD and CONFIG_NET_IPV4_ACD are disabled, the
anonymous union in struct net_if_addr ends up with no members, which
results in a different struct layout between C and C++.

In C, an empty union has size 0, while in C++ it has size >=1, which
shifts the offsets of the following fields.

Add a 1-byte dummy member to the union to ensure consistent layout
across both compilers.

Signed-off-by: Adrian Gielniewski <adrian.gielniewski@nordicsemi.no>
2025-05-26 23:35:51 +02:00
Bjarki Arge Andreasen
d265dadf1c tests: drivers: spi: spi_loopback: skip tests if invalid config
The spi_loopback_transceive() helper currently only prints a
message if a configuration is invalid, continuing the test
case as if it succeeded. This results in the test case using the
helper trying to validate the result from a spi transaction that
was skipped.

Fix this by explicitly skipping the test using the ztest
framework's ztest_test_skip() function, which skips the entire
test case.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-26 23:35:42 +02:00
Ayush Singh
6faa29d33b boards: beagle: pocketbeagle_2: Add support for A53s
- Add support to run Zephyr on A53 with U-boot for rev A0.
- Only UART support for now

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-05-26 23:35:20 +02:00
Ayush Singh
fb79cbd917 dts: arm64: ti: Add ti_am6232_a53 support
- Add devicetree for AM6232, the dual core AM62 processor without GPU
- Used in revision A0 of PocketBeagle 2

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-05-26 23:35:20 +02:00
Ayush Singh
cb867a8afb soc: ti: k3: Add support for AM6232 A53 cores
- AM6232 is a dual core variant of AM6234 with everything being same.
- Used in the first batch of PocketBeagle 2

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-05-26 23:35:20 +02:00
Andrzej Głąbek
da74ae83cf tests: arch: arm_interrupt: Fix stack overflows in .no_optimizations
With e337b7b65d, the test started to
fail with stack overflows in the no_optimizations scenario, so give
the ztest thread a little more space.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-05-26 17:59:34 +02:00
Håkon Alseth
3ce2ef7fdd boards: nordic: nrf54l15dk: update lfxo capacitance
Update the lfxo node load-capacitance-femtofarad to
match the chosen external lfxo on the nRF54L15-DK design.
Previous stray capacitance value was incorrect, which
resulted in a too low load capacitance.

Signed-off-by: Håkon Alseth <haal@nordicsemi.no>
2025-05-26 17:59:13 +02:00
John Whittington
6437f9ed3a boards: sam: sam_v71_xult add hsmci for sdhc
Based on 4.3.6 https://ww1.microchip.com/downloads/en/devicedoc/atmel-42408-samv71-xplained-ultra_user-guide.pdf

Signed-off-by: John Whittington <git@jbrengineering.co.uk>
2025-05-26 17:59:03 +02:00
John Whittington
957e6341d3 boards: atmel: samx7x add hsmci peripheral
Adds samx7x hsmci peripheral according to datasheet sections 10-1 and 14.1: https://ww1.microchip.com/downloads/aemDocuments/documents/MCU32/ProductDocuments/DataSheets/SAM-E70-S70-V70-V71-Family-Data-Sheet-DS60001527.pdf

Updates sam_e70_xplained overlay to include pin mapping to the SD card
connected to the hsmci and adds sdhc0 alias.

Signed-off-by: John Whittington <git@jbrengineering.co.uk>
2025-05-26 17:59:03 +02:00
Nitin Pandey
21b20de1eb drivers: wifi: siwx91x: Fix passive scan bug
- Setting default value of passive scan
  dwell time of 400ms as SDK doesn't
  configure default value.

Signed-off-by: Nitin Pandey <nitin.pandey@silabs.com>
2025-05-26 14:17:30 +02:00
Nitin Pandey
efd9519c0a drivers: wifi: siwx91x: Fix MFP bug in wifi status
- Extracting MFP from security mode
  instead of join feature bitmap

Signed-off-by: Nitin Pandey <nitin.pandey@silabs.com>
2025-05-26 14:17:30 +02:00
Nitin Pandey
67ff90d945 drivers: wifi: siwx91x: Fix bssid value in wi-fi status
- changed the BSSID value in siwx91x_status
  from STA MAC address to MAC address of
  connected AP

Signed-off-by: Nitin Pandey <nitin.pandey@silabs.com>
2025-05-26 14:17:30 +02:00
Björn Bergman
01d3316810 linker generator: Handle .last_section
Add  cmake linker generator things for .last_section.

Follow up to #88970. Fixes bug #89719, for gcc/ld & iar

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-05-26 14:17:21 +02:00
Muzaffar Ahmed
f489670cfb drivers: wifi: siwx91x: Add twt_retry_interval
Added twt_retry_interval (set to 5, the minimum required value by 917)

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-05-26 14:17:15 +02:00
Muzaffar Ahmed
e72b0735b1 drivers: wifi: siwx91x: Add missing 11ax flags
Added flags needed for 11ax and TWT to be enabled

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-05-26 14:17:15 +02:00
Ibrahim Abdalkader
a4b9e71ab2 drivers: wifi: Add WiFi drivers for ESP hosted firmware.
This is a host driver for ESP32 chips running the esp-hosted
firmware, which turns ESP32s into a WLAN/BT co-processor.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-05-26 14:17:10 +02:00
Pavel Vasilyev
9cb00bee6a tests: bsim: bluetooth: mesh: Remove bsim tests with TinyCrypt
As TinyCrypt gets deprecated, we need to remove all bsim tests that use
it. This commit switches all Bluetooth mesh bsim tests to PSA as a
default crypto backend.

This includes:
- removing `CONFIG_BT_MESH_USES_TINYCRYPT` as PSA is default crypto
  backend for mesh. `CONFIG_BT_MESH_USES_MBEDTLS_PSA` is not required to
  be enabled;
- merging `overlay_psa.conf` into `prj.conf` as this configuration
  becomes default for all mesh bsim tests;
- merging `overlay_ss.conf` into `overlay_pst.conf` as secure storage is
  required for running persistent storage bsim tests with PSA;

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-05-26 13:17:08 +02:00
Pavel Vasilyev
b965128f0f tests: bsim: bluetooth: mesh: Run low latency adv tests with PSA
This is a preparation commit for switching all bsim tests to PSA as
TinyCrypt will be removed soon.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-05-26 13:17:08 +02:00
Andrzej Głąbek
76e770de4b drivers: gpio_nrfx: Add missing break statements in gpio_pin_get_config
... so that the pull-up pin configuration can be correctly reported.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-05-26 13:17:01 +02:00
Sylvio Alves
dba2d7bfc1 tests: counter: add esp32 timer in cancel test case
Allow ESP32 devices to test the scenario where
when alarm should not be triggered after being cancelled.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-05-26 13:16:53 +02:00
Sylvio Alves
d48e10a44c drivers: counter: esp32: remove rtc counter test
As part of counter API updates, RTC timer will be removed from
counter API driver and can be removed from the test list.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-05-26 13:16:53 +02:00
Sylvio Alves
df5ade9c3e drivers: counter: esp32: add guard period support
Implements guard period support.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-05-26 13:16:53 +02:00
Sylvio Alves
65473e8bee drivers: counter: esp32: add top value handling
Implements top value callback and handling.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-05-26 13:16:53 +02:00
Sylvio Alves
dca598e311 drivers: counter: esp32: add reset counter function
Adds option to reset counter value.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-05-26 13:16:53 +02:00
Amneesh Singh
8eb075fa7b drivers: gpio: davinci: fix gpio output
Currently to set/clear the pins, we do a logical OR of the value with the
existing values in set/clear registers. However, reading these registers
always returns the value in out_data register. This is undesirable as it
can cause unnecessary complications. Consider the following scenario:

We need to set PIN 0:
set_data |= BIT(0)

We need to clear PIN 1:
clr_data |= BIT(1)

The latter would also clear the 0th bit due to the aforementioned
behaviour.

This patch fixes this by writing the mask directly without ORing.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-05-26 11:54:21 +02:00
Sylvain Chouleur
a8b3238437 arm64: core: force data synchronization between context switch
This patch fixes memory corruption that can happen when running in
multi-thread and multi-core environment with heavy scheduling stress.

In SMP configuration, we must ensure that all thread's context is
stored before writing the switch_handle flag. Otherwise some of the
thread context writes could be delayed after another CPU begins to
schedule this thread which could lead to memory corruptions.

Signed-off-by: Sylvain Chouleur <schouleur@snapchat.com>
2025-05-26 11:54:13 +02:00
Lyle Zhu
71ef6c6979 Drivers: Bluetooth: H4: Use a semaphore to wake up HCI RX thread
There is an issue that the buffer cannot be allocated by the function
`read_payload()` in UART ISR context. Then the UART RX will be
disabled. The H4 driver hopes to get the receive buffer in the HCI RX
thread and then open the UART RX again. However, there is a situation
where the HCI RX thread is blocked in getting the received data
buffer. However, since the UARt RX has been disabled, the HCI RX
thread cannot get the received data buffer. Therefore, the RX thread
is always blocked here, causing the Bluetooth host to not work
properly.

Add a semaphore `rx.ready` to notify new received data buffer has
been added to H4 RX queue.

Wait for the semaphore `rx.ready` instead of H4 RX queue in HCI RX
thread.

Wake up the HCI RX thread when failing to allocate the RX buffer.

Fixes #89879.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-26 11:54:09 +02:00
Etienne Carriere
74056a7aed boards: st: stm32f0_disco: fix partition inline comment
Fix end offset value in inline comment of the internal partition node.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
785c454207 boards: st: fix STM32WL5 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
a8430ef296 boards: st: fix STM32WB boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Don’t insert empty lines before a dedenting };.
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
0e8069e7e3 boards: st: fix STM32WBA boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
84add0da76 boards: st: fix STM32WB0 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
2418d03869 boards: st: fix STM3U5 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Indent with tabs.
- Don’t insert empty lines before a dedenting };.
- Insert a single empty line to separate nodes at the same hierarchy level.

Also remove a few spurious space characters.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
d9354ad48c boards: st: fix STM3U0 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
9777242353 boards: st: fix STM3N6 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
cb09d19d19 boards: st: fix STM3MP1* boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
0a3526b6de boards: st: fix STM32L5 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Indent with tabs.
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
37d545a52f boards: st: fix STM32L4 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Don’t insert empty lines before a dedenting };.
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
ea0eacebd6 boards: st: fix STM32L1 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
af3f64fba2 boards: st: fix STM32L0 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
39a9fe9f59 boards: st: fix STM32H7* boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Indent with tabs.
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
135e0dd7a3 boards: st: fix STM32H5 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Indent with tabs.
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
1aa8f51374 boards: st: fix STM32G4 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Insert a single empty line to separate nodes at the same hierarchy level.

By the way, also correct indentation in node stm32_lp_tick_source of
b_g474e_dpow1.dts.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
e8e3560ecf boards: st: fix STM32G0 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
3782c24ad7 boards: st: fix STM32F7 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Indent with tabs.
- Don’t insert empty lines before a dedenting };.
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
721b3b8e39 boards: st: fix STM32F4 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Indent with tabs.
- Don’t insert empty lines before a dedenting };.
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
b6a3c0cf93 boards: st: fix STM32F3 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Indent with tabs.
- Don’t insert empty lines before a dedenting };.
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
41129ab7c7 boards: st: fix STM32F2 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
c217fc4c30 boards: st: fix STM32F1 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
c865aa5b39 boards: st: fix STM32F0 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Etienne Carriere
8f02dc5633 boards: st: fix STM32C0 boards DTS files coding style
Fix board DTS coding style issues to prevent they spread when a	new
board is introduced and used this DTS as example start point.

Issues addressed from Zephyr devicetree style guidelines [1]:
- Don’t insert empty lines before a dedenting };.
- Insert a single empty line to separate nodes at the same hierarchy level.

No functional change.

Link: https://docs.zephyrproject.org/latest/contribute/style/devicetree.html [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-05-26 09:20:08 +02:00
Yonas Alizadeh
440de0dde0 fs: nvs: fix invalid block compare when data CRC is enabled
When nvs_write is called, the nvs_flash_block_cmp is used to check if
the new data to be written matches the data already on flash. This check
always fail when CONFIG_NVS_DATA_CRC is enabled, caused by the
NVS_DATA_CRC_SIZE being added to the len parameter. The pointer to the
new data does not already have the CRC part added, while the data on
flash does, and the size to be compared includes CRC section.
By removing the addition of NVS_DATA_CRC_SIZE to the compare size, only
the data without CRC is compared, which will make the compare work in
both cases.

Signed-off-by: Yonas Alizadeh <yonas.alizadeh@alfalaval.com>
2025-05-26 09:19:54 +02:00
Sebastian Głąb
691816d213 tests: drivers: spi: spi_loopback: Test fast spi on slow GPIO port
Add test configuration where fast SPI instance operates at slow
GPIO port 2.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-05-26 09:19:45 +02:00
Jiawei Yang
623479cc3c Bluetooth: RFCOMM: Fix CR bit in DISC frame
The CR bit in DISC frames should be set as a command rather than a
response.
This patch fixes the rfcomm_send_disc function to correctly use
BT_RFCOMM_CMD_CR instead of BT_RFCOMM_RESP_CR when setting the CR bit in
the address field of DISC frames.

Signed-off-by: Jiawei Yang <jiawei.yang_1@nxp.com>
2025-05-26 09:19:35 +02:00
Camille BAUD
f06f6beecc boards: ai_wb2_12f: default to bflb_mcu_tool runner for flashing
Sets bflb_mcu_tool to be the tool used by default for flashing

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-26 09:19:26 +02:00
Camille BAUD
75972e0e21 tests: west_runners: Add bflb_mcu_tool to import test
Adds bflb_mcu_tool to import test

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-26 09:19:26 +02:00
Camille BAUD
f275463fee boards: bl604e_iot_dvk: default to bflb_mcu_tool runner for flashing
Sets bflb_mcu_tool to be the tool used by default for flashing

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-26 09:19:26 +02:00
Camille BAUD
fb937beb62 scripts: runners: Introduce bflb_mcu_tool runner
Introduces one of the official flash tools for bouffalolab platforms.

Co-authored-by: Gerson Fernando Budke <nandojve@gmail.com>
Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-26 09:19:26 +02:00
Camille BAUD
94f78a035b drivers: display: Fix Black White Red SSD16xx displays
This fixes SSD16xx tricolor displays being all red when using this driver.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-25 21:55:17 +02:00
Lucien Zhao
e70fef36e1 samples: net/secure_mqtt_sensor_actuator: replenish filter condition
The original filtering condition was only whether ambient-temp0
device existed or not. However, registering ambient temp0 does
not mean that NET-related devices have been enabled.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-05-25 21:55:07 +02:00
Lucien Zhao
0baa6bc37b sample: sensor: Add support for temperature sensor on RT700 cm33_cpu1
Add support for p3t1755 temperature sensor on RT700 cm33_cpu1 core
Add net driver condition to exclude rt700 platform

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-05-25 21:55:07 +02:00
Lucien Zhao
84fb8700ee dts: arm: nxp: add i3c2/3 instances for cm33_cpu1
add i3c2/3 instances for cm33_cpu1

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-05-25 21:55:07 +02:00
Lars-Ove Karlsson
64ac57abcb arch: arm: Added IAR support to ARM irq header macros
Added IAR support to the macros ARCH_ISR_DIAG_OFF and
ARCH_ISR_DIAG_ON and updated the IAR warning macros.

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-05-24 18:04:20 +02:00
Lars-Ove Karlsson
8cfd84986d arch: arm: mpu: Fix alignment check for iccarm
The IAR C/C++ compiler can't resolve a cast on a pointer
to a constant expression. This is used in the
_ARCH_MEM_PARTITION_ALIGN_CHECK macro.

This fix checks if an IAR compiler is used and disables the
start-alignment check if it is.

This was already fixed for v7 in rev d34d554d.

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-05-24 18:04:09 +02:00
Miguel Gazquez
a9f2a19b82 boards: Add support for the board CH32V303EVT
Adds support for the CH32V303EVT board, based on the CH32V303 soc.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-05-24 18:03:53 +02:00
Miguel Gazquez
be9549be60 soc: Add support for the WCH CH32V303
Adds support for building an image for the ch32v303.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-05-24 18:03:53 +02:00
Miguel Gazquez
2b91c467f2 modules: Update hal_wch
Update hal_wch.

As the hal upstream changed name, there is now a name conflict.
Rename ch32fun.h to hal_ch32fun.h to fix this conflict.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-05-24 18:03:53 +02:00
Andre Morishita
265cfb45a8 boards: variscite: Adjust index.rst
Adjust hierarchy level in index.rst of Variscite boards.

Signed-off-by: Andre Morishita <andre.m@variscite.com>
2025-05-24 09:37:46 +02:00
Andre Morishita
d3ecec1e2c boards: variscite: Add Variscite DART-MX93 board
Add Variscite DART-MX93 board support. This SoM is based on NXP's
i.MX93 SoC. It includes Cortex-A55 and Cortex-M33 support.

Signed-off-by: Andre Morishita <andre.m@variscite.com>
2025-05-24 09:37:46 +02:00
Benjamin Cabé
aa3af71eb4 shields: add shield.yml for st_b_cams_imx_mb1854
The PR for this shield was in-flight while shield.yml was being introduced.
Add the missing file so that this shield is properly listed in the
board catalog.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-24 06:01:13 +02:00
Parthiban Nallathambi
b2de146ea8 boards: ti: lp_mspm0g3507: fix doc to use code-block
fix documentation to use code-block for west commands to flash.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-05-24 06:01:06 +02:00
Parthiban Nallathambi
18360d574b dts: arm: ti: mspm0: fix typo
fix typo, s/oscialltors/oscillators/

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-05-24 06:01:06 +02:00
Sreeram Tatapudi
c4866ec68a soc: cyw20829: Initial integrate Cypress MCUBoot for 20829
Added custom mcuboot cmake for sign/encrypt by using cysecuretools

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
Signed-off-by: Nazar Palamar <nazar.palamar@infineon.com>
2025-05-24 06:00:57 +02:00
Sreeram Tatapudi
968704e6b7 soc: cyw20829: add support of Secure LCS
Enable support of SECURE LCS stage. In this stage, the protection
state is set to “secure”. A secured device will boot only when the
authentication of its flash boot and application code succeeds

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-05-24 06:00:57 +02:00
Sreeram Tatapudi
7ef83fca97 soc: cyw20829: Use python script to generate app header
Instead of using app_header.c generate the app header using python
script and merge with final binary post build

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-05-24 06:00:57 +02:00
Sreeram Tatapudi
3d26d4cc87 boards: cyw20829: add custom flashloader with 64k of erase block size
Add custom flashloader (for openocd) with 64k of erase block size.
Default one has 512, which cause MCUbootloader overwrite during flash
primary application.

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-05-24 06:00:57 +02:00
Carles Cufi
bcf4d1ad38 doc: west: releases: Fix typo
s/manidest/manifest.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-05-23 23:49:48 +02:00
Anas Nashif
732c80f3e9 ci: use new docker image v0.28.0.20250523
New docker image with SDK 0.17.1 and update docker base is (ubuntu
24.04).

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-23 17:41:40 -04:00
Anas Nashif
b8f3263df0 toolchain: clang: compiler opt: -Ofast -> -O3 -ffast-math
clang 20 does not like -Ofast.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-23 17:41:40 -04:00
Keith Packard
e4b4a8dfe8 riscv: Increase TEST_EXTRA_STACK_SIZE to 4096 if c++ exceptions
Initializing the C++ stack unwinding data structures takes quite a bit
of stack space. Increase the TEST_EXTRA_STACK_SIZE when using these.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-05-23 17:41:40 -04:00
Keith Packard
3cdc5a9f9a tests/kernel: Disable -Werror when testing deprecated pipe APIs
These two tests are validating that deprecated APIs still work
correctly. Which means they will definitely generate compile warnings.

To disable -Werror while letting it be enabled for other tests, create a
new Kconfig variable, DEPRECATION_TEST and make
COMPILER_WARNINGS_AS_ERRORS depend on that option being unselected. Add
this option to the two tests so that the resulting configuration
disables -Werror.

Signed-off-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-23 17:41:40 -04:00
Keith Packard
0adac7cafc libc/minimal: Add stub 'sys/lock.h'
This file is explicitly included by the espressif hal module. It's an
internal file provided by picolibc and newlib. Provide a stub to let
code designed for those to work with the minimal C library.

Signed-off-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-23 17:41:40 -04:00
Keith Packard
74c9e7afab tests/c_lib: Skip double sqrt test when double is not 64 bits
This test only works for 64-bit values. On targets which use 32 bits for
double, skip this version. The float test will check the 32-bit math for
that.

Signed-off-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-23 17:41:40 -04:00
Flavio Ceolin
c6a21074af doc: release-notes-4.2: Information about TC shim
Add information about the removal of the TinyCrypt crypto driver.

Signed-off-by: Flavio Ceolin <flavio.ceolin@gmail.com>
2025-05-23 17:41:06 -04:00
Flavio Ceolin
dfde32144a drivers; crypto: Remove TinyCrypt shim
TC crypto driver was depecrated in 4.0 release. Time to
remove it \o/

Signed-off-by: Flavio Ceolin <flavio.ceolin@gmail.com>
2025-05-23 17:41:06 -04:00
Sudan Landge
2ddec2f0a9 arch: arm: update to use CMSIS_6 compatible macros
Zephyr switched to using CMSIS_6 module in f726cb51
which breaks certain boards like `nucleo_h745zi_q/stm32h745xx/m7` when
CONFIG_CORTEX_M_DWT, CONFIG_TIMING_FUNCTIONS are enabled and cmsis from
`module/hal/cmsis` is not available (deleted explicitly after west
update).

This commit adds a provision to be able to use CMSIS_6 macros when the
module cmsis is not available.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-05-23 17:40:55 -04:00
Sudan Landge
8b13c60ca6 modules: CMSIS_6: update copyright
As noted in PR #89370, the content of these files falls below the
trivial threshold. Therefore, it is not necessary to retain the original
copyright, which was carried over when the files were copied from the
`cmsis` module.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-05-23 17:40:55 -04:00
Sudan Landge
b853f01010 doc: Update on switch to CMSIS_6
Add a note to announce the switch to CMSIS_6 for Cortex-M arch.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-05-23 17:40:55 -04:00
Alex Fabre
219fae6946 sca: llvm: add support for clang static analyzer
This commit brings a convenient way to run clang static analyzer on a
project with 'analyze-build' llvm utility.

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-05-23 17:40:36 -04:00
Alex Fabre
7e00170fa9 doc: toolchain: ATfE: fix formating
This commit fixe text formatting, removing numbered paragraphs, and
adding sub-titled parts.

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-05-23 17:40:36 -04:00
Stefan Schwendeler
b234e86ca6 tests: net: lib: lwm2m: detects no-operation setter and getter functions
Test case `test_set_bulk` and `test_get_set` test the LwM2m getter and
setter function by
- init a buffer with some value
- calling lwm2m_set_... with buffer as parameter
- calling lwm2_get_... by letting `get` write-back into the same
  buffer(!)
- compare the buffer with the init value

That implementation can't recognize a no-operation getter function.

This change adds some C macro magic for both test cases where
an `out` buffer for setter and an `in` buffer for getter functions
exists. The buffers are checked before use for inequality to avoid
any unexpected pass.

Signed-off-by: Stefan Schwendeler <Stefan.Schwendeler@husqvarnagroup.com>
2025-05-23 19:49:54 +02:00
Julien Panis
42ad57972a samples: drivers: adc_sequence: Add lp_em_cc2340r5 DT overlay
Add LP-EM-CC2340R5 board support to ADC sample.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-05-23 19:49:48 +02:00
Julien Panis
0acad3e404 samples: drivers: adc_dt: Add lp_em_cc2340r5 DT overlay
Add LP-EM-CC2340R5 board support to ADC sample.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-05-23 19:49:48 +02:00
Julien Panis
0800aa094c boards: ti: lp_em_cc2340r5: Add ADC support
Enable ADC.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-05-23 19:49:48 +02:00
Julien Panis
d9134b3a8a dts: arm: ti: cc23x0: Add ADC support
Add support for ADC to cc23x0 SoC.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-05-23 19:49:48 +02:00
Julien Panis
dd5ed02146 drivers: adc: Add support for cc23x0 ADC
Add support for 16-channel ADC to cc23x0 SoC. The driver supports the
following conversion modes:
- Single channel | Single conversion,
- Sequence of channels (up to 4) | Single conversion.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-05-23 19:49:48 +02:00
Derek Snell
66eb61ae38 drivers: clock_control_mcux_syscon: confine RTC code to SOC_SERIES_MCXN
Some RTC clock code introduced is specific to SOC_SERIES_MCXN, and
causes build failures on other SOCs.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-05-23 17:20:51 +02:00
Jérôme Pouiller
d7f1c0ad5f drivers: wifi: siwx91x: Add support for Enhanced Legacy Power Save
Siwx91x support a specific mode slightly better than the old legacy PS
mode.

This mode has to be set on the NWP boot, so it is not easy to configure
it during the runtime. Hence, this patch only provide a compile time
option to enable it.

Co-authored-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-05-23 17:20:34 +02:00
Jérôme Pouiller
c3ce29eb81 drivers: wifi: siwx91x: Add support for get_power_save_config()
We can now implement the get_power_save_config() callback.

Co-authored-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-05-23 17:20:34 +02:00
Arunmani Alagarsamy
adae16812e drivers: wifi: siwx91x: Add support for set_power_save()
Added power-save mode support to optimize station wake-up timing
and reduce power consumption. The device currently supports
only legacy power-save mode.

This feature can be tested using the Wifi shell:
  - ps: Enable the PS. By default, the device operates in fast
        PSP mode.
  - ps_exit_strategy: Updates mode if enabled; otherwise, follows
        the configured exit strategy when power-save is enabled.
  - ps_wakeup_mode: Configures the wake-up behavior.
  - ps_timeout: Defines the timeout duration for power-save mode.

Co-authored-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-05-23 17:20:34 +02:00
Robert Lubos
b939714204 doc: migration-guide-4.2: Add note about HTTP client response cb
Add entry about change in HTTP response callback function signature.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-23 17:20:24 +02:00
Robert Lubos
00d214c3ae tests: net: http_client: Add new testsuite for HTTP client
And some basic tests.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-23 17:20:24 +02:00
Robert Lubos
3572c9f825 net: http: client: Allow to abort download from response callback
Update the response callback function signature to allow the callback to
return an error code, which in turn will cause the HTTP client to abort
the download.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-23 17:20:24 +02:00
Robert Lubos
73e248f6cf net: zperf: Make UDP upload report retransmission count configurable
Add a Kconfig option to configure the maximum retransmission count of
the UDP upload report.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-23 17:20:10 +02:00
Robert Lubos
02530beeda net: zperf: Fix invalid zsock_recv() error check
The return value can only be -1, errno value should be verified instead
for the actual error code.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-23 17:20:10 +02:00
Benjamin Cabé
a94209b098 shields: migrate to shield.yml
Adopt shield.yml for all the shields in-tree.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-23 17:19:58 +02:00
Benjamin Cabé
79e3ecb7a9 doc: boards: catalog: add shields to board catalog
Populate board catalog with shields as well and have them show up in the
boards/index page.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-23 17:19:58 +02:00
Benjamin Cabé
df01afa8c6 scripts: west: commands: make use of shield.yml in west shields command
This change introduces the use of shield.yml in the `west shields`
command so that when using the `-f` option one can output the shields'
full name and vendor information.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-23 17:19:58 +02:00
Benjamin Cabé
3a62b17b85 cmake: shields: introduce shield.yml
While legacy shields are still supported, this introduces a shield.yml
file similar to board.yml that allows to more explicitly declare a
shield and to set some useful metadata such as vendor and full name.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-23 17:19:58 +02:00
Benjamin Cabé
66fda826e1 shields: scripts: cmake: use list_shields.py in shields.cmake
The logic to "guess" shield names/dirs was duplicated between
list_shields.py (which is used by e.g. west shields) and shields.cmake.
This commit moves the logic to list_shields.py, and updates
shields.cmake to call the script and process its JSON output.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-23 17:19:58 +02:00
Benjamin Cabé
93ced043f5 scripts: shields: handle BOARD_ROOT not containing shields folder
Prevent list_shields.py from crashing if a provided BOARD_ROOT
does not contain a shields folder.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-23 17:19:58 +02:00
Benjamin Cabé
84980e0f4b boards: aithinker: update vendor name for Ai-Thinker WB2-12F board
This board is from aithinker, not BouffaloLabs, so update the vendor
info accordingly.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-23 17:19:49 +02:00
Benjamin Cabé
e99e15d2ed bindings: vendor-prefixes: add Ai-Thinker Co., Ltd. entry
This commit adds a new vendor prefix for Ai-Thinker Co., Ltd. to the
vendor-prefixes.txt file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-23 17:19:49 +02:00
Phi Bang Nguyen
e462ef3c07 drivers: video: ov7670: Set default format to RGB565 QVGA
The default format for ov7670 is currently VGA YUYV and it counts on the
smartdma to reset the format to RGB565 QVGA when get_format() is called.

Recently, set_format() is decoupled from get_format() so this assumption
is nolonger correct.

Set the default format to RGB565 QVGA instead.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-23 15:39:31 +02:00
Erwan Gouriou
2e258205e1 boards: stm32n6570_dk: Add touch screen support
Configure touch screen on stm32n6570_dk.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-05-23 15:39:21 +02:00
Bartlomiej Buczek
5406259c47 tests: drivers: gpio_hogs: Add nrf54 platforms.
Add overlays and entries in testcase.yaml to enable tests execution on
nrf54 DKs.

Signed-off-by: Bartlomiej Buczek <bartlomiej.buczek@nordicsemi.no>
2025-05-23 15:31:30 +02:00
Krzysztof Chruściński
80b9040146 soc: nordic: dmm: Add lock around sys_heap operations
sys_heap alloc and free are not thread safe so lock is needed to
prevent data corruption.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-23 15:31:25 +02:00
Loek Le Blansch
37b4407a69 dts/renesas/smartbond: Add support for the ARMv8-M MPU
This commit updates the DTS for the da1469x and defconfig for the
da1469x_dk_pro and da14695_dk_usb boards to support the ARMv8-M MPU.

Signed-off-by: Loek Le Blansch <loek@pipeframe.xyz>
2025-05-23 15:30:53 +02:00
Rodrigo Peixoto
bf93559856 doc: releases: State zbus API as stable
Zbus has been around since Zephyr v3.3.0 and fulfills all the requirements
to be a stable API.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-05-23 15:30:48 +02:00
Rodrigo Peixoto
c71f51c829 api: zbus: Make zbus a stable API
Make zbus stable API since it fulfills all the requirements that
makes an API stable.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-05-23 15:30:48 +02:00
Chris Friedt
d3ec91674a sys: timeutil: check for 32-bit time_t to avoid warning (part 2)
Same error had to be fixed in the branch where optimizations were done.

This is probably a good example of where using `if (IS_ENABLED()) ...`
is a better choice than using `#ifdef`. Because the compiler would have
caught this error last time as well.

Anyway, same problem - different line(s)!

A warning was propogated to error when building for
native_sim/native.

```
timeutil.h:682:17: error: result of comparison of constant \
  -9223372036854775808 with expression of type '__time_t' (aka 'long') \
  is always false [-Werror,-Wtautological-constant-out-of-range-compare]
timeutil.h:680:17: error: result of comparison of constant \
  -9223372036854775808 with expression of type '__time_t' (aka 'long') \
  is always false [-Werror,-Wtautological-constant-out-of-range-compare]
```

This is due to the issue described in #90029.

Add workarounds for `timespec_to_timeout()` and `timespec_negate()`
until 90029 is resolved.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-23 14:04:53 +02:00
Bartlomiej Buczek
4dea09da3f test: drivers: gpio: turn off rand generator.
Generator was enabled some time ago to use sys_rand32_get() however this
function is no longer in use.

Signed-off-by: Bartlomiej Buczek <bartlomiej.buczek@nordicsemi.no>
2025-05-23 14:04:45 +02:00
Jamie McCrae
270f5d6771 soc: nordic: Use proper devicetree entries for clock frequency
Sets the SYS_CLOCK_HW_CYCLES_PER_SEC Kconfig from devicetree
entries. Also fixes invalid configuration on nrf54h20 whereby it
attempts to take the clock frequency from a peripheral that does
not exist

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-05-23 14:04:32 +02:00
Jamie McCrae
dd99eda025 dts: arm: nordic: Add default rtc1 clock frequency to nrf53 network core
Adds the default 32.768KHz clock frequency to this peripheral, as it is
used as the system timing source

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-05-23 14:04:32 +02:00
Jamie McCrae
e553b290f7 dts: bindings: timer: Add default clock frequency for nordic grtc
Adds a default for the nordic grtc

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-05-23 14:04:32 +02:00
Jamie McCrae
a9d0a36332 scripts: kconfig: Add dt_nodelabel_int_prop function
Adds a function which can be used to get the integer value of a
devicetree property in Kconfig from a nodelabel

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-05-23 14:04:32 +02:00
Adam Kondraciuk
bc06d8522e tests: kernel: timer: Align timer tests to nRF54
The new Nordic platforms use GRTC instead of RTC
as the system timer.
Also the nrf54h20 CPUPPR target does not have enough memory
to execute the `timer_behavior` test.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-05-23 14:04:29 +02:00
Mark O'Donovan
b1f9351930 boards: opta: enable qspi
Features enabled by this commit:
* QSPI

Signed-off-by: Mark O'Donovan <shiftee@posteo.net>
2025-05-23 11:04:47 +02:00
Jiafei Pan
0537df8dd2 MAINTAINERS: nxp-mpu: add more collaborators
Add yangbolu1991 and Zhiqiang-Hou as the collaborators for NXP MPU,
yangbolu1991 has contributed a lot of in scope of MPU M-core and
Zhiqiang-Hou has contributed a lot of in scope of MPU A-Core, they
could help to fast the review process.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-05-23 11:04:38 +02:00
Hao Luo
0e4ff0f3fe drivers: gpio: ambiq: need to select AMBIQ_HAL_USE_GPIO
This commit selects AMBIQ_HAL_USE_GPIO to include ambiq GPIO HAL

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-23 11:04:34 +02:00
Hao Luo
76caed2e37 dts: bindings: add back missing pl011 for apollo4p
This commit adds back missing pl011 for apollo4p and
fixed compiling errors.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-23 11:04:34 +02:00
Karun Kumar Eagalapati
7f5b686d65 manifest: Update nrf_wifi for Raw modes boot failure
pull fix for raw modes boot failure

Signed-off-by: Karun Kumar Eagalapati <karun.kumar@nordicsemi.no>
2025-05-23 11:04:26 +02:00
Luca Burelli
8151dd9c6c drivers: flash_stm32h7: fix flash size detection
Commit 0e41b07309 ("drivers : flash:
update way to get flash size") changed the way to get flash size from
the LL_FLASH_GetSize() HAL function to the current DT_REG_SIZE() macro.

However, they are not equivalent:

- With LL_FLASH_GetSize(), REAL_FLASH_SIZE_KB returned the *total* size
  of the Flash memory, reading it from a ROM register of the CPU. For
  example, it was 2048 (2MB) for a STM32H747xI.

- The current DT_REG_SIZE() applies to a flash *bank*, therefore it only
  returns half of the total Flash size on dual bank devices.

This mismatch causes issues with the DISCONTINUOUS_BANKS logic below,
incorrectly matching partitions close to the end of the first bank as
appearing to span both and triggering the "range overlaps discontinuity"
check later.

Fix it by doubling the size when appropriate, in the same way it is
already done for the M4 core.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-05-23 11:04:15 +02:00
Emil Lindqvist
65b7470972 hwinfo: stm32: reverse device id byte order to match v4.1 order
Reverse back the device id byte order to the way it was in v4.1 to
return the same device id.

Signed-off-by: Emil Lindqvist <emil@lindq.gr>
2025-05-23 11:04:10 +02:00
Ayush Singh
4c3491d8a4 drivers: i2c: omap: Fix for RAM MMIO
- RAM MMIO is initialized using DEVICE_MMIO_MAP. So add it to init code.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-05-23 11:04:00 +02:00
Ayush Singh
d4ee678fe3 drivers: i2c: omap: Use non-named mmio macros
- Since only one mmio region is used, use the non-named macros

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-05-23 11:04:00 +02:00
Ayush Singh
9db744ba06 drivers: i2c: omap: Use DEVICE_MMIO macro for registers
- Use DEVICE_MMIO_* macros for getting the registers.
- These macros automatically used the proper RAM/ROM address.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-05-23 11:04:00 +02:00
Sven Ginka
3239544e60 board: sensry: sy1xx: default slew-rate for rgmii interface
Set default slew-rate of tx pins of rgmii interfaces to 16pf.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-05-23 11:03:41 +02:00
Sven Ginka
70ea3b115d drivers: pinctrl: added slew-rate setting for the sy1xx soc
With this commit we have the option to set the pad slew-rates
for all available pins on the soc.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-05-23 11:03:41 +02:00
Jaro Van Landschoot
79f5575f46 tests: drivers: build_all: audio: add pcm1681 to tests
Add an spi overlay for the audio build_all tests.
Add the pcm1681 to both i2c and spi overlays.

Signed-off-by: Jaro Van Landschoot <jaro.vanlandschoot@basalte.be>
2025-05-23 11:03:32 +02:00
Jaro Van Landschoot
219770df71 drivers: audio: pcm1681: add driver
Add a basic driver for the PCM1681 and PCM1681-Q1 DAC

Signed-off-by: Jaro Van Landschoot <jaro.vanlandschoot@basalte.be>
2025-05-23 11:03:32 +02:00
Stoyan Bogdanov
58431564e1 dts: arm: ti: cc23x0: Add LGPT support
Add support for LGPT0, LGPT1, LGPT2 and LGPT3 to cc23x0 SoC.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-05-23 11:03:24 +02:00
Stoyan Bogdanov
cfe7a58a28 drivers: counter: Add support for cc23x0 LGPT
Add support for LGPT0, LGPT1, LGPT2 and LGPT3 to cc23x0 SoC.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-05-23 11:03:24 +02:00
Yishai Jaffe
fc56305c2f drivers: display: st7567: add display_clear support
Add support for `display_clear` API to the st7567 display.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-05-23 09:37:58 +02:00
Yishai Jaffe
bdb69c4afd drivers: display: ls0xx: add display_clear support
Add support for `display_clear` API to the Sharp display.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-05-23 09:37:48 +02:00
Yishai Jaffe
1d4a0fe8c0 bindings: sensor: si7006: fix title
Added the Si7020 support to the bindings title as stated in the
description

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-05-23 09:37:38 +02:00
Markus Lassila
28e40128aa modem_cellular: Close carrier with suspend
Fix regression introduced by dormant state, where the
carrier does not get closed when Cellular Modem driver
is suspended.

Signed-off-by: Markus Lassila <markus.lassila@nordicsemi.no>
2025-05-23 09:37:29 +02:00
Veijo Pesonen
68f8c1b256 toolchain: gcc: ramfunc with Clang
With Clang you can't set long_call attribute on function basis. Instead
of converting all calls to long calls let the linker create veneers when
necessary.

Signed-off-by: Veijo Pesonen <veijo.pesonen@alifsemi.com>
2025-05-23 09:37:16 +02:00
Chun-Chieh Li
35cf9ada0e modules: hal_ethos_u: fix failure to override ETHOSU_TARGET_NPU_CONFIG
This fixes failure to override ETHOSU_TARGET_NPU_CONFIG in hal_ethos_u
due to CMP0126 not being NEW. See:
https://cmake.org/cmake/help/latest/policy/CMP0126.html#policy:CMP0126

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-05-23 09:37:07 +02:00
Erwan Gouriou
30c441bc21 west.yml: Update hal_stm32 for new signals in -pcintrl.dtsi
Mostly ETH,SAI pins on MP13 and HSPI pins on STM32U5.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-05-23 09:36:58 +02:00
Chris Friedt
d61a7a80ad sys: timeutil: check for 32-bit time_t to avoid warning
A warning was propogated to error when building for
native_sim/native.

```
timeutil.h:519:17: error: result of comparison of constant \
  -9223372036854775808 with expression of type '__time_t' (aka 'long') \
  is always false [-Werror,-Wtautological-constant-out-of-range-compare]
```

This is due to the issue described in #90029.

Add workarounds for `timespec_to_timeout()` and `timespec_negate()`
until 90029 is resolved.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-23 09:36:41 +02:00
Duy Nguyen
f77e258cb9 cmake: Set RX build use 64bit doubles as default
The RX floating-point hardware only works on 32-bit values
so default gcc will build doubles as 32-bit, this make many
test fail on RX build test.
This commit force the build for RX arch to use 64-bit doubles
FPU will be supported later on this arch

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-22 23:57:26 +02:00
Chris Friedt
8a5c744213 posix: timers: use newly added timespec util functions
Use the newly added timespec util functions to manipulate and
compare timespec structures with overflow detection.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-22 23:57:17 +02:00
Chris Friedt
03099f30da doc: kernel: timeutil: add documentation for timespec apis
Add documentation in the timeutil group for recently added functions
for validating, comparing, and manipulating `struct timespec`
objects as well as functions for converting between representation
of time durations as either `struct timespec` or `k_timeout_t`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-22 23:57:17 +02:00
Chris Friedt
13fe95b51d tests: lib: timeutil: add timespec util testsuite
Add a timespec util testsuite. This should have reasonably high enough
coverage to be useful.

I would have preferred to add this as an architecture-independent
unit test (for the unit_testing platform) under tests/unit/timeutil but
there is an inconsistency about the size of time_t on the unit_testing
and native_sim/native platforms. On every other platform supported by
Zephyr, time_t is 64-bits. However, on those platforms, time_t is only
32-bits.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-22 23:57:17 +02:00
Chris Friedt
21b8bd1ba1 sys: timeutil: add utility functions for struct timespec
Add a number of utility functions for manipulating struct timespec.

* timespec_add()
* timespec_compare()
* timespec_equal()
* timespec_is_valid()
* timespec_negate()
* timespec_normalize()
* timespec_sub()
* timespec_from_timeout()
* timespec_to_timeout()

If the `__builtin_add_overflow()` function is available, then the
API is mostly branchless, which should provide decent performance on
systems with an instruction cache and branch prediction. Otherwise,
manually written alternatives exist that are also perhaps more
readable.

The two functions at the end convert time durations between
representation as `struct timespec` and `k_timeout_t`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-22 23:57:17 +02:00
Chris Friedt
246c65bfe9 timeutil: correct position of doxygen end-group comment
swap the relative position of the __cplusplus closing
bracket and the doxygen end-group comment.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-22 23:57:17 +02:00
Yuval Peress
6c73b5813f i2c: npcx: Loosen requirements for target registration
Allow NPCX_I2C_ERROR_RECOVERY as a valid state when registering a
target.

Signed-off-by: Yuval Peress <peress@google.com>
2025-05-22 23:57:08 +02:00
Yuval Peress
270c98bc23 i2c: npcx: Improve error logging
Add the device name to the error logs so we can differentiate which
device caused the error and not just which port.

Signed-off-by: Yuval Peress <peress@google.com>
2025-05-22 23:57:08 +02:00
Yuval Peress
27f6bc861c i2c: npcx: Remove erroneous debug messages
When enabling I2C debug logging these messages make it impossible to
see what's going on.

Signed-off-by: Yuval Peress <peress@google.com>
2025-05-22 23:57:08 +02:00
Andriy Gelman
b78fb2c39d kernel/init: Corrected a typo
"bot region" should read "boot region".

Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
2025-05-22 23:56:59 +02:00
Nazar Palamar
4c822b7e03 soc: modifications for cyw920829m2evk_02 power configuration
Added possibility to configure buck regulators according to
power profile.

Signed-off-by: Nazar Palamar <nazar.palamar@infineon.com>
2025-05-22 23:56:48 +02:00
Joel Holdsworth
8b5fe624e2 include: usb_ch9: ensure packing of usb_setup_packet
struct usb_setup_packet represents the setup data payload of a USB control
message which is exactly 8-bytes in length.

On a legacy build of GCC 4.1.2 for an OpenRISC-like architecture it was
found that the compiler added padding after the bmRequestType anonymous
union, and subsequently the bRequest field causing the structure to be
padded to 12-bytes in length with the fields incorrectly laid out.

This patch corrects the issue by applying the __packed attribute to the
anonymous union. This corrects the issue.

The __packed attribute is also applied to the outer structure for the sake
of consistency.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-05-22 20:57:47 +02:00
Joel Holdsworth
39916042d1 code_relocation: use booleans for string_create_helper arguments
The string_create_helper function has the arguments: load_address_in_flash
and is_copy. These arguments take logical values, but previously the
calling code used 1 and 0 rather than the more idiomatic True and False.

This patch corrects the issue by replacing use of int values with bool
values.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-05-22 20:57:39 +02:00
Joel Holdsworth
f7332da62e code_relocation: improve code conciseness
This patch makes various simplifications to the code structure which make
it more concise by reducing repetition.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-05-22 20:57:39 +02:00
Joel Holdsworth
33d9961f56 code_relocation: use named fields in string templates
Previously the script used templates where the fields were identified by
numeric ordinal-identified placeholders. This makes the code hard to read
because it is hard to tell which string corresponds to which placeholder
in the substitution.

This patch corrects the issue by replacing the ordinal placeholders with
named placeholders.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-05-22 20:57:39 +02:00
Joel Holdsworth
567984c12e code_relocation: fix ruff UP037 warnings
In Python, type annotations can be quoted to avoid forward references.

However, if "from __future__ import annotations" is present, Python will
always evaluate type annotations in a deferred manner, making the quotes
unnecessary.

The ruff python linter produces UP037 warnings to indicate cases where
quoting of type annotations can be removed. This patch corrects the
warnings.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-05-22 20:57:39 +02:00
Joel Holdsworth
8ee466337e code_relocation: fix ruff UP006 and UP035 warnings
PEP585 enabled collections in the Python standard library (like tuple) to
be used as generic type annotations directly, instead of importing
analogous members from the typing module (like typing.Tuple).

The ruff python linter produces a UP006 warning if the deprecated type
annotations continue to be used.

This patch corrects the issue by correcting the single instance where
PEP585-style type annotations can be used.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-05-22 20:57:39 +02:00
Joel Holdsworth
6ede0d5bc1 code_relocation: fix ruff SUM401 warning
The ruff python linter produces a SIM401 warning when a dictionary is
accessed using if-statements to check for key presence. In this case, the
dict.get() method could be used instead.

For example:

    value = foo["bar"] if "bar" in foo else 0

...can be replaced with:

    value = foo.get("bar", 0)

This patch corrects the single instance of this issue in the script.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-05-22 20:57:39 +02:00
Joel Holdsworth
f4c54fcb93 code_relocation: fix ruff SIM102 warning
The ruff python linter produces a SIM102 warning when there are nested if
statements which can be collapsed into a single if statement:

    if foo:
        if bar:
	    ...

...becomes...

    if foo and bar:
        ...

This patch corrects the single instance of this issue in the script.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-05-22 20:57:39 +02:00
Joel Holdsworth
3db20541de code_relocation: fix ruff I001 warning
The ruff python linter produces a I001 warning when the imports of a Python
script are not sorted. This patch corrects the issue by sorting them.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-05-22 20:57:39 +02:00
Joel Holdsworth
8a8b42be8c code_relocation: combine typing imports onto a single line
The script can be made more concise by combining the imports of three
classes from the typing module into a single line.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-05-22 20:57:39 +02:00
Joel Holdsworth
4f0b402224 code_relocation: fix ruff B028 warnings
The ruff python linter produces a B028 warning when the warnings.warn()
function is called with a stacklevel parameter.

By default the function will set a stacklevel of 1 which causes it to
output the stack frame of the line where the function is called without
any context information from higher up the stack.

It is recommended to use a stacklevel of 2 or higher. Therfore, this patch
sets the stacklevel parameter of all warnings.warn() calls to to 2.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-05-22 20:57:39 +02:00
Joel Holdsworth
66e35624af code_relocation: applied ruff code formatting to gen_relocate_app
Ruff is the Zephyr projects supported Python formatting tool. This patch
applies auto-formatting gen_relocate_app.py in preparation for coming
tidy-ups and improvements.

With the Ruff auto-formatter applied, error E501 can be removed from
.ruff-excludes.toml exclusion rules.

gen_relocate_app.py has also been removed from the format exclude list.

Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com>
2025-05-22 20:57:39 +02:00
Benson Huang
a20572703e soc: realtek: Modify image header to accelerate code loading
Use SPI frequency 50M to speedup code loading

Signed-off-by: Benson Huang <benson7633769@gmail.com>
2025-05-22 20:57:24 +02:00
jhan bo chao
85dc257072 drivers: counter: rts5912: clear pending irq when setup
clear pending irq when setup.

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-05-22 20:57:15 +02:00
Alain Volmat
d0240abb2a shields: st_b_cams_imx_mb1854: add imx335 based MB1854 board shield
Introduce the B_CAMS_IMX camera shield for STM32 which embeds
a IMX335 camera sensor.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-22 20:56:38 +02:00
Alain Volmat
f6a5aa0117 dts: bindings: addition of RaspberryPi CSI 22 pins camera connector
Add RaspberryPi CSI 22 pins camera connector description.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-22 20:56:38 +02:00
Alain Volmat
1d6c2c7926 drivers: video: introduction of imx335 sensor driver
Add support for the Sony IMX335 CSI sensor.
This sensor supports resolution of 2592x1944 in RGGB bayer format
either 10 or 12 bits and using 2 or 4 CSI lanes.
For the time being only 10 bits on 2 CSI lanes is supported via
this commit.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-22 20:56:38 +02:00
Alain Volmat
b2f799a581 dts: bindings: video: imx335: addition of imx335 description
Introduction of bindings for the imx335 sensor.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-22 20:56:38 +02:00
Guillaume Gautier
b2f8496389 drivers: i2c: stm32 i2cv1 controller driver using rtio
Adds the simplest possible I2Cv1 controller driver for STM32 with the RTIO
interface. Currently only interrupt driven transfers are supported.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-05-22 20:56:28 +02:00
Guillaume Gautier
e8bd35e305 drivers: i2c: stm32 i2cv2 controller driver using rtio
Adds the simplest possible I2Cv2 controller driver for STM32 with the RTIO
interface. Currently only interrupt driven transfers are supported.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
Co-authored-by: Tom Burdick <thomas.burdick@intel.com>
2025-05-22 20:56:28 +02:00
Guillaume Gautier
2397a6322f drivers: i2c: move functions to a common file
In preparation of the introduction of the STM32 I2Cv2 RTIO driver, move
some functions that are used in both drivers into a common file.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-05-22 20:56:28 +02:00
Guillaume Gautier
0c59977195 drivers: i2c: renaming, formatting and clean up
Rename all functions and macros starting by stm32_i2c_* to i2c_stm32_* to
harmonize the driver.
Reformat some indents for better alignment.
Remove i2c_stm32_get_config function declaration from header since it is
not used.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-05-22 20:56:28 +02:00
Benjamin Cabé
75d50742a7 Revert "testsuite: ztest: Add validation of zassert strings"
This reverts commit 6deca93285.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-22 11:58:43 -04:00
Maochen Wang
804e6a22ce net: l2: wifi:fix the parameter count error when start SAP
During previous commit of adding interface arg, wrongly change the
parameter count of 'wifi ap enable' to a small one. Change the value
to 47 can fix this issue and match the need of adding interface arg.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-05-22 17:03:39 +02:00
Pieter De Gendt
f8a4b0ad53 doc: develop: west: Update west API for v1.4.0
Update the west API documentation for the added active_only arguments
to as_dict/as_frozen_dict/as_yaml/as_frozen_yaml.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-22 16:55:44 +02:00
Pieter De Gendt
b18b08a3f0 doc: develop: west: Update release notes
Add release notes for v1.3.0 and v1.4.0.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-22 16:55:44 +02:00
Jonathan Nilsen
eb7b9781b2 samples: boards: nordic: add sample for nrf_ironside update service
Add a sample demonstrating how to use the IRONside update service to
update the IRONside SE firmware on the nrf54h20dk/nrf54h20/cpuapp/iron
board.

Co-authored-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-05-22 16:17:35 +02:00
Jonathan Nilsen
51609f0380 drivers: firmware: nrf_ironside: add IRONside update service
Add an IPC service API for triggering updates of the Nordic IRONside SE
firmware using the IRONside call module.

Co-authored-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-05-22 16:17:35 +02:00
Sebastian Bøe
afc83895f4 samples: sysbuild: Add support for nrf54h20dk/nrf54h20/cpuapp/iron
Add support for nrf54h20dk/nrf54h20/cpuapp/iron to the
samples/sysbuild/hello_world sample.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-05-22 16:17:35 +02:00
Sebastian Bøe
d949932234 cpuconf: Boot the radiocore from the app in soc_late_init_hook
Boot the radiocore from the app in soc_late_init_hook.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-05-22 16:17:35 +02:00
Sebastian Bøe
14a47cbe05 drivers: firmware: nrf_ironside: add IRONside CPUCONF service
Add an IPC service API for booting local domain cores.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-05-22 16:17:35 +02:00
Sebastian Bøe
c0c4170c42 soc: nrf54: Port SYS_INIT to use soc_early_init_hook
Port SYS_INIT to use soc_early_init_hook as SYS_INITs are legacy.

Due to moving dmm_init() from PRE_KERNEL_1 SYS_INIT to
soc_early_init_hook(), the DMM test is also updated to ensure that
its setup function runs before dmm_init().

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-05-22 16:17:35 +02:00
Sebastian Bøe
2ba5d469f8 boards: nordic: add 'iron' board variant for radio
This is needed for next generation Secure Domain firmware.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-05-22 16:17:35 +02:00
Mark Wang
36bdc6c502 bluetooth: pairing_accept's feat parameter is NULL in BR/EDR SSP case
Add description in the callback definition.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-05-22 16:17:29 +02:00
Krzysztof Chruściński
782d698d46 submanifests: Update zscilib
Update zscilib with cleanup in zassert macros.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-22 16:17:23 +02:00
Krzysztof Chruściński
eafe83d3f2 tests: unit: Fix zassert string
Fix wrong parameter used in zassert macros.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-22 16:17:23 +02:00
Krzysztof Chruściński
6f4f72d1a3 tests: subsys: Fix zassert string
Fix wrong parameter used in zassert macros.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-22 16:17:23 +02:00
Krzysztof Chruściński
a068293559 tests: drivers: Fix zassert string
Fix wrong parameter used in zassert macros.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-22 16:17:23 +02:00
Krzysztof Chruściński
96e2f8bcd0 tests: lib: Fix zassert string
Fix wrong parameter used in zassert macros.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-22 16:17:23 +02:00
Krzysztof Chruściński
6ea6e5704d tests: arch: Fix zassert string
Fix wrong parameters used in zassert macros.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-22 16:17:23 +02:00
Krzysztof Chruściński
95737cda54 tests: boards: Fix zassert string
Fix wrong parameter used in zassert macros.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-22 16:17:23 +02:00
Krzysztof Chruściński
07a729b480 tests: fs: Fix zassert strings
After introducing compile time argument validation of strings
used in zassert macros multiple warnings appear. Fix all of
them.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-22 16:17:23 +02:00
Krzysztof Chruściński
6deca93285 testsuite: ztest: Add validation of zassert strings
Add noncallable printf with string used for ztest assert/assume
macros to ensure printf-like argument validation at compile time.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-22 16:17:23 +02:00
Anas Nashif
d8c8333917 toolchain: do not redefine __fallthrough
Do not redefine __fallthrough if already defined by the c library.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-22 16:17:12 +02:00
Raffael Rostagno
f6883c4d69 boards: esp32c6_devkitc: Add i2s support and samples
Add default configs for i2s and onboard LED and i2s output samples.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-05-22 15:25:12 +02:00
Raffael Rostagno
d8c6376030 soc: esp32c6: i2s: Add support
Add i2s support to ESP32-C6.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-05-22 15:25:12 +02:00
Piotr Koziar
3c050cfcfd modules: hal_nordic: nrf_802154: emit hfclk_ready with timer on nRF54LM20A
Right now, the power_clock_irq is not available on nRF54LM20A.
Since the onoff mechanism relies on the irq, the timer is used
to emit the hfclk_ready callback.

Signed-off-by: Piotr Koziar <piotr.koziar@nordicsemi.no>
2025-05-22 15:24:51 +02:00
Raffael Rostagno
fd3cc9b19f samples: boards: esp32c6_devkitc: Add QDEC sample for PCNT
Add QDEC sample for PCNT driver testing.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-05-22 15:23:31 +02:00
Raffael Rostagno
fb2b48fe41 drivers: pcnt: esp32c6: Add support
Add PCNT support to ESP32-C6.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-05-22 15:23:31 +02:00
Pieter De Gendt
280171076e doc: services: storage: settings: Fix kconfig directive
Add CONFIG_ prefix to kconfig directive.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-22 13:45:06 +02:00
Pieter De Gendt
6840193071 doc: releases: migration-guide-4.2: Fix kconfig directives
Add CONFIG_ prefix to kconfig directives.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-22 13:45:06 +02:00
Pieter De Gendt
24fb7df0f1 doc: kernel: service: interrupts: Fix kconfig directives
Add missing CONFIG_ prefix to kconfig directives.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-22 13:45:06 +02:00
Fabio Baltieri
a361c45af6 drivers: dp: use atomic APIs for pin set/reset
Use LL_GPIO_SetOutputPin and LL_GPIO_ResetOutputPin for the STM32
optimized DP functions. This yelds a speedup of the bit-banged interface
from about 585kHz to 640kHz on an STM32C0.

Suggested-by: Mathieu Choplain <mathieu.choplain@st.com>
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-22 13:44:55 +02:00
Fabio Baltieri
fd44146ad2 drivers: dp: rework the ARM delay loop
Rework the ARM delay loop to avoid it causing assembler issue in the
rest of the code.

Link: https://github.com/zephyrproject-rtos/zephyr/pull/90211#issuecomment-2894157705
Suggested-by: Mathieu Choplain <mathieu.choplain@st.com>
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-22 13:44:55 +02:00
Robert Lubos
6aa8f3fe57 tests: net: socket: tls_ext: Add test case for cert veirfy cb option
Add test case to verify if TLS_CERT_VERIFY_CALLBACK socket option works
as expected.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-22 13:44:43 +02:00
Robert Lubos
2bb9aef4b1 net: sockets: tls: Add new option to register certificate verify cb
Add new TLS socket option, TLS_CERT_VERIFY_CALLBACK, which allows to
register an application callback to verify certificates obtained during
the TLS handshake.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-22 13:44:43 +02:00
Robert Lubos
0956271bc3 tests: net: socket: tls_ext: Add test case for verify result option
Add test case to verify if TLS_CERT_VERIFY_RESULT socket option works as
expected.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-22 13:44:43 +02:00
Robert Lubos
6be66aac60 tests: net: socket: tls_ext: Extract common code into functions
Extract server configuration, client configuration and test shutdown
into separate functions so that they're reusable in other tests.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-22 13:44:43 +02:00
Robert Lubos
887e8e0e7e net: sockets: tls: Add new option to retrieve cert verification result
Add new TLS socket option, TLS_CERT_VERIFY_RESULT, to obtain the
certificate verification result from the most recent handshake on the
socket. The option works if TLS_PEER_VERIFY_OPTIONAL was set on the
socket, in which case the handshake may succeed even if certificate
verification fails.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-22 13:44:43 +02:00
Jordan Yates
646f08cbb7 samples: shields: npm1300_ek: update GPIO config
Update the nPM1300 GPIO configuration for the sample to match new
requirements.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-22 13:44:31 +02:00
Jordan Yates
4904c27777 regulator: npm1300: convert regulator GPIOs to array
Convert the enable, pwm, and retention `gpios` properties away from the
GPIO specifier space to an integer array.

While this is a less specific type than the GPIO property, it has the
advantage of not requiring the PMIC gpios node to be both present and
enabled.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-22 13:44:31 +02:00
Grzegorz Swiderski
da197fe9ef sysbuild: Import image devicetrees
Make the image devicetrees available to sysbuild for advanced use cases.

This is done by calling `zephyr_dt_import` on each image target. The DT
target properties are all expected to be prefixed with `DT_`, so there
should be no conflicts.

Thus, the DT contents of a given `<image>` can be retrieved using e.g.:

    dt_nodelabel(<var> NODELABEL <label> TARGET <image>)

as noted in `extensions.cmake`.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-05-22 13:44:18 +02:00
Grzegorz Swiderski
7cddb2a5e5 cmake: extensions: Add TARGET arguments to the dt_* API
The CMake dt_* API is backed by target properties. By default, it uses
the target named `devicetree_target` that is initialized in `dts.cmake`.

We should be able to customize this, now that we have a function for
loading those properties into a different target. For example:

    zephyr_dt_import(EDT_PICKLE_FILE /path/to/edt.pickle TARGET target)

    dt_nodelabel(node NODELABEL label TARGET target)

This would make it possible to reference multiple devicetrees in the
same build system, particularly sysbuild.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-05-22 13:44:18 +02:00
Grzegorz Swiderski
468db18389 cmake: modules: Add zephyr_dt_import
Extract the part of `dts.cmake` that invokes `gen_dts_cmake.py`, then
generalize it into a CMake extension, which can be reused by sysbuild.

The Python script itself is also updated, so that the generated CMake
file can accept an input variable DEVICETREE_TARGET, which comes from
the `zephyr_dt_import(TARGET ...)` argument.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-05-22 13:44:18 +02:00
Mirai SHINJO
438ed6d74a boards: nucleo_h753zi: add pyOCD support
This patch adds pyOCD runner configuration for
the nucleo_h753zi board.

Signed-off-by: Mirai SHINJO <oss@mshinjo.com>
2025-05-22 11:32:02 +02:00
Jordan Yates
1abe095b8e tests: net: conn_mgr_nsos: added
Add basic tests for the NSOS Connectivity Manager implementation.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-22 11:31:54 +02:00
Jordan Yates
2203a571bc net: nsos_sockets: conn_mgr support
Add support for using native sockets with the connectivity API. This
allows libraries that use the connectivity API to be tested in an
application with real connectivity, without external hardware.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-22 11:31:54 +02:00
Tom Chang
797779d4c2 mgmt: ec_host_cmd: npcx: remove the SHI enable in the init
This commit removes the SHI enable in the initialization. It can be
enabled by the application explicitly calling it when needed. The SHI
backend relies on the application layer to provide a data buffer for EC
Host Commands. If SHI is enabled before this buffer is initialized,
there is a risk that the driver may access a NULL buffer, leading to a
system panic.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-05-22 11:31:47 +02:00
Yau-ming Leung
6dff8dc639 drivers: icm42688: fix accel and gyro frequency in period calculation
When calculating accel and gyro period for 12.5Hz, the frequency value is
incorrect. Updated to correct value.

Signed-off-by: Yau-ming Leung <ymleung314@gmail.com>
2025-05-22 11:31:41 +02:00
Yau-ming Leung
39923e3e19 drivers: icm42688: pin9 function
PIN9 of an ICM42688 can be configured as an interrupt output, external
clock input or frame sync output. Pin function can now be set via a sensor
attribute.

Signed-off-by: Yau-ming Leung <ymleung314@gmail.com>
2025-05-22 11:31:41 +02:00
Andrey Dodonov
b7f046dd10 doc: kernel: services: correct usage example of k_poll_signal_reset
k_poll_signal_reset expects a pointer

Signed-off-by: Andrey Dodonov <Andrey.Dodonov@endress.com>
2025-05-22 04:53:17 +02:00
Jordan Yates
b212fb91bd net: ip: net_pkt: conditional net_if_get_by_iface
Don't reference `net_if_get_by_iface` if `CONFIG_NET_RAW_MODE=y`, since
`net_if.c` is not compiled in that case, leading to linker errors.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-22 04:53:08 +02:00
Anas Nashif
e80d86ab85 sca: eclair: substitute deprecated service STD.emptrecd
The ECLAIR service STD.emptrecd (which checks for empty structures) is now
deprecated.
Use STD.anonstct (which checks for structures with no named
members, an UB in C99)

Based on a change by Nicola Vetrini in the Xen project:

https://lists.xenproject.org/archives/html/xen-changelog/2024-12/msg00125.html

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-22 04:52:56 +02:00
Benson Huang
728a018f86 drivers: gpio: Fix GPIO initial status
The current procedure to initialize the GPIO is:
If the GPIO is configured as GPIO_OUTPUT and also has the
GPIO_OUTPUT_INIT_HIGH flag, set it to output high; otherwise, set it to
output low.

This may fail if the GPIO is simply configured as GPIO_OUTPUT without
specifying either INIT_HIGH or INIT_LOW, which means it is intended to
preserve the previous status. But in this case, we are currently setting it
to output low.

Fix this by explicitly initializing the GPIO to high or low according to
the configuration:
If the GPIO is configured as GPIO_OUTPUT and also with the
GPIO_OUTPUT_INIT_HIGH flag, set it to output high.
If the GPIO is configured as GPIO_OUTPUT and also with the
GPIO_OUTPUT_INIT_LOW flag, set it to output low.
If the GPIO is configured as GPIO_OUTPUT only,
do not set the output value.

Signed-off-by: Benson Huang <benson7633769@gmail.com>
2025-05-22 04:51:57 +02:00
Alvis Sun
9cf6d66062 soc: npcx: npcx9: disable CCDEV_SEL in early initialization.
Enabling CCDEV_SEL_EN may interfere with the expected behavior of
VCC1_RST#.
To prevent potential issues, this commit sets CCDEV_SEL_EN
to be disabled by default, ensuring reliable VCC1_RST# behavior.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-05-22 04:51:44 +02:00
jhan bo chao
98478189f2 drivers: adc: rts5912: clear pending irq when setup
clear pending irq when setup.

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-05-22 04:51:36 +02:00
Felix Moessbauer
0f818e3e6b dts: lilygo/ttgo_tbeam: add axp2101 fuel-gauge node
The board has the axp2101 chip and we now have a matching driver.

Signed-off-by: Felix Moessbauer <felix.moessbauer@gmail.com>
2025-05-22 04:51:27 +02:00
Felix Moessbauer
84ebbdcd4b fuel_gauge: add basic support for AXP2101 chip
The AXP2101 chip is a multi functional power chip offering a regulator,
charge controller and a fuel gauge (battery percentage and voltage).
Hereby, the fuel gauge provides much more reliable data compared to using
an ADC.

We implement minimal support for this chip (connected state, voltage and
gauge) and bind it to the fuel gauge subsystem.

Closes: #89158
Signed-off-by: Felix Moessbauer <felix.moessbauer@gmail.com>
2025-05-22 04:51:27 +02:00
Philipp Steiner
9a8e4663ac drivers: fuelgauge: Add missing property values
Adds missing property values for battery connect and present state

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-05-22 04:51:27 +02:00
Fabio Baltieri
ac1dec0498 led: drop led_context.h
led_context.h contains a single struct with max and min period, current
drivers that use it have hardcoded values and they set it at init.

This data is not used anywhere, and it makes very little sense to use
some SRAM for it.

Hardcode the limit for each driver and drop the struct and file.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-22 02:21:51 +02:00
Peter van der Perk
3d024e0953 modules: hal_nxp: Include TPM HAL driver for QDEC
Include TPM hal layer in case CONFIG_QDEC_TPM is enabled

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-05-22 02:21:39 +02:00
Peter van der Perk
49e33d38c1 drivers: sensor: qdec_tpm: Add QDEC support for NXP TPM
Allows to run the NXP Timer/PWM Module (TPM) in Quadrature
Decoder Mode.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-05-22 02:21:39 +02:00
Vit Stanicek
0d73b53310 samples: Add i.MX RTxxx AMP samples
Add common structure for RTxxx AMP samples. Add amp_blink, amp_mbox,
amp_audio_output and amp_audio_loopback samples.

These samples are now configured only for the mimxrt685_evk, but are
intended to support other NXP microcontrollers with Xtensa-family cores
at a later date.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-05-22 02:21:29 +02:00
Lin Yu-Cheng
1e38f94473 drivers: timer : fix rtmr timer.
RTMR clear the interrupt status bit in the init and isr function.

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-05-22 02:21:12 +02:00
Keith Packard
843d661b82 modules: Update picolibc to version 1.8.10
Switch to latest picolib release, version 1.8.10

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-05-22 02:21:01 +02:00
Keith Packard
47f2136e3c tests/kernel: Adapt to picolibc 1.8.10 symbol changes
Picolibc changed things like _WANT_MINIMAL_IO_LONG_LONG to
__IO_MINIMAL_LONG_LONG in an attempt to regularize the exposed names and
eliminate names that weren't prefixed with even a single underscore.

Adapt to this change by looking for both old and new symbols.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-05-22 02:21:01 +02:00
Keith Packard
627f0ef565 posix: Use picolibc's limits.h when building POSIX code
When building POSIX code, we need to use picolibc's limits.h instead of
manually defining the POSIX values. This avoids duplicate definitions of
these symbols.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-05-22 02:21:01 +02:00
Vit Stanicek
9367592240 boards: Add mimxrt685_evk/mimxrt685s/hifi4
Add definitions and init code for mimxrt685_evk/mimxrt685s/hifi4 (i.MX
RT685's HiFi 4 DSP core on MIMXRT685-EVK).

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-05-21 20:11:19 +02:00
Vit Stanicek
eba03e8571 dts: Add DT for brd mimxrt685_evk/mimxrt685s/hifi4
Add DT for mimxrt685_evk/mimxrt685s/hifi4 (i.MX RT685's HiFi 4 DSP
core).

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-05-21 20:11:19 +02:00
Vit Stanicek
cb1a7df652 dts: xtensa: Add DT for SoC mimxrt685s/hifi4
Add DT for the mimxrt685s/hifi4 SoC (i.MX RT685's HiFi 4 DSP core).

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-05-21 20:11:19 +02:00
Vit Stanicek
e253c3b57f soc: xtensa: Add mimxrt685s/hifi4
Add definitions, linker file and init code for mimxrt685s/hifi4 (i.MX
RT685's HiFi 4 DSP).

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-05-21 20:11:19 +02:00
Vit Stanicek
44ae59e589 modules: hal_nxp: Edit lists for mimxrt685s/hifi4
Exclude fsl_power.c from DSP domains, as it doesn't compile on those
because of missing register definitions. Include fsl_dsp.c wherever it
can be included, as it's required for initialisation of DSP domains.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-05-21 20:11:19 +02:00
Vit Stanicek
e3edf462f0 manifest: Repoint hal_nxp
Repoint hal_nxp to a new revision, which reflects changes needed for
mimxrt685_evk/mimxrt685s/hifi4.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-05-21 20:11:19 +02:00
Oleg Kokorin
7b7b0de6d6 boards: quail: MikroBUS
boards: mikroe: Add quail board

Signed-off-by: Oleg Kokorin <ole2mail@mail.com>
2025-05-21 20:10:48 +02:00
Stoyan Bogdanov
bdca32d88f drivers: flash: Remove VIMS calls for cc23x0
Remove VIMS calls for flash operations, since they are not needed.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-05-21 19:57:28 +02:00
Lauren Murphy
c96356d7da x86: llext: add ram and only_tags to enable tests
Adds missing RAM to qemu_x86 boards .yaml files, as well
as llext tag to only_tags to get llext tests to run on a subset
of x86 QEMU targets.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-05-21 19:57:20 +02:00
Lauren Murphy
7bbe425fe4 llext: basic x86 support
Adds basic x86 support for LLEXT.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-05-21 19:57:20 +02:00
Neil Chen
9941902e2c boards: nxp: frdm_mcxa153: Support wwdt for NXP frdm_mcxa153 board
Support watchdog for NXP frdm_mcxa153 board.
Test it using samples/drivers/watchdog.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-21 19:57:05 +02:00
Neil Chen
94a04a8259 dts: arm/nxp: Add wwdt nodes to NXP MCXA153 dtsi file
Add wwdt nodes to NXP MCXA153 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-21 19:57:05 +02:00
Neil Chen
8a9afc94be boards: frdm_mcxn236: Fix USB next support on this board
This board was missing key code changes needed to
support Zephyr USB Next

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-21 19:56:55 +02:00
Alexandre Rey
3b407609b4 soc: mcxn: formatting
Run clang-format on soc/nxp/mcx/mcxn/soc.c.

Signed-off-by: Alexandre Rey <alexandre.rey@swisstiming.com>
2025-05-21 19:56:47 +02:00
Alexandre Rey
11d3279e53 dts: mcxn547: add dts for MCXN547
Add SOC DTS for MCXN547.
Reorganizes DTS with a common file for MXNx4x SoCs.

Signed-off-by: Alexandre Rey <alexandre.rey@swisstiming.com>
2025-05-21 19:56:47 +02:00
Alexandre Rey
59a23b57f6 soc: mcxn547: add support for MCXN547
Add MCXN547 support

Signed-off-by: Alexandre Rey <alexandre.rey@swisstiming.com>
2025-05-21 19:56:47 +02:00
Tobias Meyer
713fc17a26 drivers: stts22h: Add attr_lower/high_tresh
Add threshold attribute handling to set low and high
temperature at runtime and validation for runtime changes

Signed-off-by: Tobias Meyer <tobiuhg@gmail.com>
2025-05-21 19:56:38 +02:00
Josuah Demangeon
b95d7e2a94 samples: drivers: video: capture: logging improvements
Remove trailing spaces at the end of log string.
Move arguments on the next line for readability.
Align arguments to first line.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-21 19:56:30 +02:00
Josuah Demangeon
d272c12e01 samples: drivers: video: set an initial video buffer
Provide an initial video buffer in the first call to video_dequeue().
It is used by the driver for choosing between the input or output queue.
Applied to capture, capture_to_lvgl and tcpserversink samples.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-21 19:56:30 +02:00
Josuah Demangeon
638cb67191 drivers: video: sw_generator: sort header alphabetically
Sort alphabetically the header added in the previous few commits
as well as the original implementation.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-21 19:56:30 +02:00
Josuah Demangeon
4f344584ce drivers: video: sw_generator: fix div by zero on very low framerate
When the FPS value stored in data->frame_rate is zero, a division by zero
occurs. Fix it by clamping the frame rate between min and max values.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-21 19:56:30 +02:00
Josuah Demangeon
5687dc80c7 drivers: video: sw_generator: make k_work_sync a local variable
The documentation of k_work_cancel_delayable_sync() states that the input
k_work_sync parameter needs to be valid until the function call returns,
so there is no need to preserve the state across successive calls.
Now that there is a single work-related field in the struct, rename it
to simply "work".

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-21 19:56:30 +02:00
Josuah Demangeon
04912d461b drivers: video: sw_generator: introduce the RGB24 test pattern
This complements the 32-bit RGB (XRGB32) test pattern with an equivalent
24-bit RGB (RGB24) implementation.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-21 19:56:30 +02:00
Josuah Demangeon
d1e71ae901 drivers: video: sw_generator: add support for bayer and YUV formats
This refactors the pattern generator functions to also offer bayer formats
as input. 4 variant of bayer formats are proposed. The pixel packing is
also now split from the color selection: only a single RGB and single YUV
array used by all the pattern generators.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-21 19:56:30 +02:00
Josuah Demangeon
70b4b93985 drivers: video: sw_generator: modify video_sw_generator_fill_colorbar()
Add a check for the array size to avoid overwriting unrelated memory when
the buffer is too small for the full format. It first check if there is
enough buffer for one line, and fill it programmatically. Then, it will
try to duplicate that line over the entire buffer, in the limit of the
room available.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-21 19:56:30 +02:00
Josuah Demangeon
82d2f94f12 drivers: video: sw_generator: fix video_sw_generator_enum_frmival()
Return an error on fie.index >= 1 as there is only one framerate entry
per pixelformat, this prevents an endless loop.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-21 19:56:30 +02:00
Josuah Demangeon
ba5d3bad8b drivers: video: sw_generator: use video_format_caps_index()
Use the video_format_caps_index() function to check if a format matches
any entry of the format caps.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-21 19:56:30 +02:00
Josuah Demangeon
c15f24de60 drivers: video: sw_generator: refactor: flatten arrays
Help with maintainance and possibly readability by using a more regular
layout for various tables of numbers. This adds a comma on the last
element to help with formatters like clang-format.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-21 19:56:30 +02:00
Josuah Demangeon
d8d04ba66b drivers: video: sw_generator: preserve full prefix for internal functions
In order to help debugging through GDB and other error messages and debug
tools, convert the __xxx prefix to video_sw_generator_xxx full prefix.
To help keep function names short, use slightly shorter sufixes.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-21 19:56:30 +02:00
Francois Ramu
b926ba6abf boards: arm: stm32h7s78 disco kit supporting xspi instance
Add the XSPI 2 which is an octoSPI connection to a octo NOR flash
mx66uw1g45 on the stm32h7s78_dk disco kit

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-21 17:35:06 +02:00
Francois Ramu
78cc8ab1d8 boards: st: stm32h7s3l8 nucleo board supporting xspi instance
Add the XSPI 2 which is an octoSPI connection to a octo NOR flash
MX25UW25645GXDI00 (256 Mbits, 1.8 V, 200 MHz, DTR, rww)
on the nucleo_h7s3l8 board.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-21 17:35:06 +02:00
Francois Ramu
faddb5a813 dts: arm: stm32h7rs mcu with external memory area
Defines the corresponding memory area of the MPU for
the external NOR xspi node.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-21 17:35:06 +02:00
Francois Ramu
4bb618c66f drivers: clock control: stm32H7RS has a PLL2 & 3 or HCLK5 output
Add the definitions of the PLL2 and PLL3 outputs for the stm32H7RS mcus
and the HCLK 5 which is clock source for the XSPI instance.
and other HCLKn for other peripherals.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-21 17:35:06 +02:00
Francois Ramu
e13722bc38 drivers: flash: stm32 xspi flash driver set the DelayBlock if exists
The stm32H7RS serie has no DelayBlock Bypass control in its DCR1 register.
For other stm32 devices with DelayBlock bypass control, set the value
directly in the structure.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-21 17:35:06 +02:00
Francois Ramu
93b983d578 drivers: flash: stm32 xspi drivers supporting the stm32h7r/s mcu
Add the support of the stm32h7rs serie to the
drivers/flash/flash_stm32_xspi driver.
The stm32h7rs has no delayblock

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-21 17:35:06 +02:00
Francois Ramu
8cb8017038 drivers: flash: stm32 xspi driver supports clock domain config
Add the clock domain configuration for the xspi nodes
Where the DTS defines main clock and peripheral clock sel
plus a XSPIM clock

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-21 17:35:06 +02:00
Francois Ramu
ad0466f423 soc: st: stm32 Kconfig to retrieve the external Flash Base address
This commit is retrieving the config FLASH_BASE_ADDRESS
from the XSPI node of the stm32 device dtsi <reg> property of the
"st,stm32-xspi" node. For example the CONFIG_FLASH_BASE_ADDRESS
 is 0x90000000 and application is linked for that address.
Size is given by the size property of the "st,stm32-xspi-nor" node.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-21 17:35:06 +02:00
Maciej Meijer
982abadd34 mbox: workaround for missing ic-msg
When a LD sends an ic-msg to SCFW - it happens that sometimes that SCFW
does not handle the request.
For the moment the problem is solved by sending a second vevif event
shortly after the initial request.

Signed-off-by: Maciej Meijer <maciej.meijer@nordicsemi.no>
2025-05-21 17:34:56 +02:00
Stoyan Bogdanov
198230bef2 samples: drivers: counter: alarm: Add lp_em_cc2340r5 overlay
Add overlay for lp_em_cc2340r5 to counter/alarm sample.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-05-21 17:34:16 +02:00
Stoyan Bogdanov
a6db5c783b dts: arm: ti: cc23x0: Add RTC support
Add support for RTC counter to cc23x0 SoC.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-05-21 17:34:16 +02:00
Stoyan Bogdanov
dddbfcce76 drivers: counter: Add support for cc23x0 RTC counter
Add support for cc23x0 RTC driver in counter.
RTC is always ON after device boot. Timer is restared only
on POR, and is active during STANDBY and ACTIVE power states.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-05-21 17:34:16 +02:00
David Leach
d2acc5ff67 maintainers: NXP Wireless: add mcxw driver filter
Add mcxw filter to catch changes to drivers/ieee802154/ieee802154_mcxw.c
Add George-Stefan as a collaborator for NXP Wireless

Signed-off-by: David Leach <david.leach@nxp.com>
2025-05-21 14:04:31 +02:00
Francois Ramu
abc3fec255 drivers: clock control: stm32H7 has the same clock source for all PLL
Select the PLL clock source for PLL2 or PLL3 as well as main PLL
This choice is useful if main PLL is off (sysclock from fixed clock)
but PLL2 or PLL3 are on for other peripherals
All PLL must have the same source else this is an error.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-21 14:04:26 +02:00
Ioannis Damigos
3956dff4b8 drivers: hwinfo_smartbond: Implement hwinfo_get_device_id() function
Implement hwinfo_get_device_id() function

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-05-21 14:04:17 +02:00
Mark O'Donovan
d33da4db35 drivers: flash_stm32_qspi: add st,read-id-dummy-cycles
Add new device tree property specifying the number of
dummy-cycles required when reading the JEDEC ID.

The Arduino Opta has an at25sf128a with JEDEC ID 1F 89 01.
The PR below adds support for this, but the id read is 01 1F 89.
Changing DummyCycles to 16 causes the correct value to be read.

https://github.com/zephyrproject-rtos/zephyr/pull/89539

Signed-off-by: Mark O'Donovan <shiftee@posteo.net>
2025-05-21 14:04:09 +02:00
Chun-Chieh Li
369f15d8c9 soc: nuvoton: numaker: m55m1x: support mve feature
Nuvoton M55M1 series supports M-profile Vector Extension (MVE) (also
known as Arm Helium technology). This enables compute applications
such as DSP and machine learning.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-05-21 12:35:40 +02:00
Alberto Escolar Piedras
bb085820fc subsys/portability/cmsis_rtos_v2: Fix code compliance issues
Fix issues detected by checkpatch

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-21 12:35:28 +02:00
Alberto Escolar Piedras
44699baff5 subsys/net/lib/shell: Fix code compliance issues
Fix issues detected by checkpatch

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-21 12:35:28 +02:00
Alberto Escolar Piedras
b2ee13cc12 tests/net/socket/af_packet: Fix typo
Just a typo

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-21 12:35:28 +02:00
Alberto Escolar Piedras
4d4f3728c9 tests/bluetooth & bsim: Fix code compliance issues
Fix issues detected by checkpatch

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-21 12:35:28 +02:00
Alberto Escolar Piedras
7be8872e6b tests/kernel: Fix code compliance issues
Fix issues detected by checkpatch

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-21 12:35:28 +02:00
Alberto Escolar Piedras
5d31bce072 drivers/i2c/i2c_ambiq: Fix code compliance issues
Fix 4 issues detected by checkpatch

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-21 12:35:28 +02:00
Alberto Escolar Piedras
448eac13d4 soc/ambiq/apollo5x: Fix code compliance issues
Fix issues detected by checkpatch

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-21 12:35:28 +02:00
Alberto Escolar Piedras
ed4ed05501 drivers/video/video_ctrls: Fix code compliance issues
Fix issues detected by checkpatch

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-21 12:35:28 +02:00
Alberto Escolar Piedras
d20adfedb1 drivers/stepper/adi_tmc: Fix code compliance issues
Fix issues detected by checkpatch

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-21 12:35:28 +02:00
Alberto Escolar Piedras
08ff55af07 drivers/display/display_stm32_ltdc: Fix code compliance issues
Fix 2 issues detected by checkpatch

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-21 12:35:28 +02:00
Alberto Escolar Piedras
d96158aa26 doc/connectivity/networking/api/zperf: Fix typo
Just a typo

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-21 12:35:28 +02:00
Alberto Escolar Piedras
e3fcdc4617 doc boards/beagle/pocketbeagle_2: Fix typo
Just a typo

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-21 12:35:28 +02:00
Zhaoxiang Jin
1b230f8741 pm: policy: default: Removed unused code
Removed unused code

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-05-21 12:35:08 +02:00
Yangbo Lu
d91b8b4070 scripts: blobs: add click-through property
Added a click-through property. Some downloading may need to
accept license to continue.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-21 12:34:59 +02:00
Markus Lassila
5357013768 modem: backend: uart: Alignment check to recv buf
Receive buffer must be aligned to word when
CONFIG_MODEM_BACKEND_UART_ASYNC_HWFC=y is set.

Signed-off-by: Markus Lassila <markus.lassila@nordicsemi.no>
2025-05-21 12:34:44 +02:00
Vit Stanicek
5cfaebf44e dts: mimxrt685s/cm33: Instantiate nxp,rtxxx-dsp-ctrl
Instantiate the nxp,rtxxx-dsp-ctrl driver to enable DSP code upload and
run control.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-05-21 12:34:32 +02:00
Vit Stanicek
37ec78f3dc drivers: misc: Add nxp,rtxxx-dsp-ctrl
Add the nxp,rtxxx-dsp-ctrl driver.

Responsibility of this driver is to load code executed by Xtensa-family
cores on NXP i.MX RTxxx microcontrollers and to control their run.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-05-21 12:34:32 +02:00
Chaitanya Tata
50e0123d47 doc: releases: Update migration with Wi-Fi shell
Document old and new options for Wi-Fi shell to help with the migration.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-05-21 12:34:22 +02:00
Chaitanya Tata
5f6e2a73cb modules: hostap: Fix build
Due to recent POSIX rejig, we need to select an extra config option for
"gettimeofday".

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-05-21 12:34:22 +02:00
Chaitanya Tata
3611d5eeaf net: l2: wifi: Add interface arg for all commands
In order to support working with multiple VIFs (e.g., STA + AP) add
interface as an option for all commands.

The interface can belong to same chipset or different (hypothetical).

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-05-21 12:34:22 +02:00
Fabrice DJIATSA
23b3602aa1 tests: drivers: spi: spi_loopback: update gpdma1 request sel
According to wba55 refman RM0493, gpdma1 request for
spi1_rx_dma and spi1_tx_dma is 1 and 2.

solve failed test on drivers.spi.stm32_spi_dma.loopback
scenario.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-05-21 12:34:12 +02:00
Fabrice DJIATSA
4418b90c84 tests: drivers: uart: uart_async_api: update uart driver test
add stm32u083c_dk overlay file for driver test purpose.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-05-21 12:33:43 +02:00
Fabrice DJIATSA
3b88b3cd4c tests: drivers: spi: spi_loopback: update spi_loopback test
- add stm32u083c_dk board for spi_loopback driver test.
- update testcase yaml file for CI integration

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-05-21 12:33:43 +02:00
Fabrice DJIATSA
877b05ac5c boards: st: stm32u083c_dk: add spi3 node
- enable spi3 and usart3 nodes for  driver test purpose.
- delete usart1 node due to conflicting pins with i2c1
node
Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-05-21 12:33:43 +02:00
Jens Rehhoff Thomsen
9ac38c48fe Bluetooth samples: Improve multi subgroup support
For the BAP broadcast sink sample handling of requested BIS sync set
to BT_BAP_BIS_SYNC_NO_PREF for one or more subgroups is now added.
In case of no preference of requested BIS then sync is adjusted to the
number of streams available when no target allocation present.

Signed-off-by: Jens Rehhoff Thomsen <jthm@demant.com>
2025-05-21 12:33:28 +02:00
Hui Bai
67ef6af8d3 samples: pm: Enable PM3 mode for RW612 in wifi example
Added overlay file for RW612 in wifi example to enable standby mode (PM3).
Set IMU as wakeup source.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-05-21 12:33:10 +02:00
Krzysztof Chruściński
1ca4b333b4 modules: hal_nordic: nrfx: Decouple clock control from nrfx_clock
Create Kconfig configuration for nrfx_clock driver and use that to export
configuration to nrfx via nrfx_kconfig. So far nrfx_kconfig was using
Kconfig flags from clock_control which created a fixed connection between
nrfx_clock and clock_control and nrfx_clock could not be used without
clock_control in Zephyr.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-21 12:33:00 +02:00
Benjamin Cabé
0c82c3516f Revert "cmake: shields: introduce shield.yml"
This reverts commit 9d5b19710b.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-21 09:30:30 +02:00
Benjamin Cabé
0ed2ca7ced Revert "scripts: west: commands: make use of shield.yml in west shields command"
This reverts commit 9dd10af28b.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-21 09:30:30 +02:00
Benjamin Cabé
928472b4c7 Revert "doc: boards: catalog: add shields to board catalog"
This reverts commit 11fea40a40.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-21 09:30:30 +02:00
Benjamin Cabé
c8713ff9d7 Revert "shields: migrate to shield.yml"
This reverts commit 8af9de4901.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-21 09:30:30 +02:00
Jukka Rissanen
4f1095206f net: if: Add debug prints for IPv6 prefix selection
Useful to see what prefix is being selected for a given
IPv6 address if debugging is enabled.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-05-21 09:30:22 +02:00
Jukka Rissanen
75860479cd tests: net: ipv6: Fix deprecated address selection
Make sure the IPv6 address selection works as specified.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-05-21 09:30:22 +02:00
Jukka Rissanen
da13b5184c net: if: Prefer always preferred IPv6 address
Always prefer preferred IPv6 address over deprecated one
regardless of prefix length. This works now same way as in
Linux.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-05-21 09:30:22 +02:00
Krzysztof Chruściński
c58ae7467b drivers: serial: nrfx_uarte: Workaround for spurious RXTO during restart
Some SoCs generates unexpected RXTO event during restart.
Restart happens when ENDRX_STARTRX short is enabled and STOPRX
is triggered (via short or by CPU). STOPRX starts closing
procedure and ENDRX event is generated at some point which
triggers STARTRX and closing procedure is interrupted. RXTO
should not be triggered in that case. Due to internal timings
some SoC on fast UARTE instance will trigger RXTO followed
by RXSTARTED. This RXTO event shall be cleared as receiver is
actually restarted and not stopped.

Affected SoC is not in tree so Kconfig is added which enables
the workaround.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-21 09:30:15 +02:00
Saravanan Sekar
bff7e660be MAINTAINERS: Add maintainers for Texas Instruments MSPM0
Add maintainers for Texas Instruments MSPM0 Series SoC

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-05-21 08:04:32 +02:00
Saravanan Sekar
dda92f8dd8 boards: ti: lp_mspm0g3507: Add initial support TI LP_MSPM0G3507 board
Add initial support for Texas Instruments LP_MSPM0G3507 Launchpad.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
Signed-off-by: Jackson Farley <j-farley@ti.com>
2025-05-21 08:04:32 +02:00
Saravanan Sekar
c2bc1c3fef dts: arm: ti: mspm0: Add a support for uart
Add a support for serial debug uart.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
Signed-off-by: Jackson Farley <j-farley@ti.com>
2025-05-21 08:04:32 +02:00
Saravanan Sekar
f236a56040 drivers: serial: Add initial support TI MSPM0 UART
Add initial support for TI MSPM0 UART with basic poll-in and poll-out
functionality.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
Signed-off-by: Jackson Farley <j-farley@ti.com>
2025-05-21 08:04:32 +02:00
Saravanan Sekar
ff3ec7496f dts: arm: mspm0: Add pinctrl and gpio entry for MSPM0
Add pinctrl and gpio data for TI MSPM0 Family.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
Signed-off-by: Jackson Farley <j-farley@ti.com>
2025-05-21 08:04:32 +02:00
Saravanan Sekar
dee5a06a45 drivers: gpio: mspm0: Add a gpio support for MSPM0 family
Add a GPIO driver support for TI MSPM0 SoC family.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
Signed-off-by: Jackson Farley <j-farley@ti.com>
2025-05-21 08:04:32 +02:00
Saravanan Sekar
258cc7e9cf drivers: pinctrl: mspm0: Add a pinctrl driver for TI MSPM0
Added a pinctrl driver support for MSPM0 Family.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
Signed-off-by: Jackson Farley <j-farley@ti.com>
2025-05-21 08:04:32 +02:00
Saravanan Sekar
2aebc074c2 dts: arm: ti: mspm0: Add a support for MSPM0 clock module
Add a support for TI MSPM0 clock module.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
Signed-off-by: Jackson Farley <j-farley@ti.com>
2025-05-21 08:04:32 +02:00
Saravanan Sekar
51bb5ddde4 drivers: clock: ti: Add initial support TI MSPM0 clock module
Add initial support TI MSPM0 clock module

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
Signed-off-by: Jackson Farley <j-farley@ti.com>
2025-05-21 08:04:32 +02:00
Saravanan Sekar
234d28919d dts: ti: mspm0: Add a support for TI MSPMO-G series SoC
Add a initial support for TI MSPMO-G series SoC

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
Signed-off-by: Jackson Farley <j-farley@ti.com>
2025-05-21 08:04:32 +02:00
Saravanan Sekar
ce2c8f2b99 soc: mspm0: Add a support for TI MSPM0-G series SoC
Add a support for Texas Instruments MSPM0 fmaily and
MSPM0-G series SoC.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
Signed-off-by: Jackson Farley <j-farley@ti.com>
2025-05-21 08:04:32 +02:00
Saravanan Sekar
c3da77fcfa west: west.yml pointed to ti_hal with MSPM0 support
Add TI MSPM0 hal layer dependency.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
Signed-off-by: Jackson Farley <j-farley@ti.com>
2025-05-21 08:04:32 +02:00
Yangbo Lu
09ff615f67 drivers: ptp_clock_nxp_enet: re-enable ENET timestamp IRQ
ENET timestamp IRQ still needed to be enabled from IP.

This is a fix-up for below commit:

faa55bd44b drivers: ptp_clock_nxp_enet: avoid configuring
            IRQ handlers again

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-21 08:02:22 +02:00
Yangbo Lu
2da6257bec drivers: eth_nxp_enet: support handling ENET timestamp events
The ENET timestamp events may be via ENET IRQ rather than ENET
timer IRQ handled in ptp driver for some platforms like i.MX RT1060.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-21 08:02:22 +02:00
Alex Apostolu
e0417c7a36 Tests: Subsys: Logging: removed unused variable
Removed unused variable test_msg.

Signed-off-by: Alex Apostolu <apostolu240@gmail.com>
2025-05-21 08:02:08 +02:00
Shrek Wang
20489a1f18 net: tcp: Fix TCP reset issue
According to RFC793 chapter3.5 with the 'Reset Processing' part,
"In the SYN-SENT state (a RST received in response to an initial
SYN), the RST is acceptable if the ACK field acknowledges the SYN."
So, in the net_tcp_reply_rst() we should use 'ack++' if no ACK
flag but have SYN flag.
And, all the RST packet should use net_tcp_reply_rst() instead of
tcp_out().

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-05-21 08:01:55 +02:00
Yangbo Lu
2c10b2fb46 drivers: ptp_clock: add ptp_clock shell commands
Added ptp_clock shell commands to check, use, and verify
ptp clock. Supported get, set, adjust, rate adjust, and
selftest functions.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-21 08:01:44 +02:00
TOKITA Hiroshi
550441480b boards: raspberrypi: Aggregate debugging info to rpi_pico docs
Debugging information for RP2040/RP2350 is aggregated into the rpi pico
document, making other boards only refer to it.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
Co-authored-by: Benjamin Cabé <kartben@gmail.com>
Co-authored-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-05-21 08:01:36 +02:00
TOKITA Hiroshi
aaa9d705a9 doc: develop: flash_debug: Add descs about blackmagicprobe and uf2
Add description about blackmagicprobe(host-tools and probes) and
uf2(host-tools only).

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
Co-authored-by: Benjamin Cabé <kartben@gmail.com>
Co-authored-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-05-21 08:01:36 +02:00
Sadik Ozer
7898a5141c soc: adi: Do not download hal_adi for TF-M build
Set HAL_ADI_PATH to TF-M uses hal_adi that comes with zephyr.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-21 08:01:25 +02:00
Sadik Ozer
d9ab6371be samples: tfm_integration: psa_crypto: To works on MAX32657
Update psa_crypto test not work on MAX32657
This commit enable/disable flags for MAX32657 to
make it works for MAX32657.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-21 08:01:25 +02:00
Sadik Ozer
8796a6fec2 samples: tfm_integration: Enable psa_protected test for max32657evkit
This commit enable psa_protected_storage test for max32657evkit/ns board

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-21 08:01:25 +02:00
Sadik Ozer
d5cc01f0a3 samples: tfm_integration: Enable secure_partion on max32657evkit
This commit enables secure_partion sample for max32657evkit NS board

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-21 08:01:25 +02:00
Sadik Ozer
6dc0ef4a48 tests: subsys: jwt: Exlucde JWT test from auto tests
JWT test fails on max32657evkit/max32657/ns board, due to
it requries hardware TRNG on TF-M side which not activated
yet until it's issue been fixed it is excluded from automated
test to workflow been succeeded

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-21 08:01:25 +02:00
Mert Ekren
2ca15bd9f3 boards: max32657evkit/max32657/ns: flash tfm_merged.hex on default
This commit provides flashing tfm_merged.hex (includes
mcuboot+tfm+ns_image) on default.

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2025-05-21 08:01:25 +02:00
Sadik Ozer
97ecad58fb boards: adi: MAX32657evkit disable TF-M debugging
MAX32657 has one UART interface,
It can be used either on TF-M or Zephyr
Enabling debug (TFM_SPM_LOG_LEVEL || TFM_PARTITION_LOG_LEVEL)
will transfer it to the TF-M side
Disabling TF-M debug will transfer it to the Zephyr side.

This commit disable TFM debugs

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-21 08:01:25 +02:00
Sadik Ozer
ccb3588003 boards: Add MAX32657EVKit NS board
This commit enables max32657 NS board support

To build:
- west build -b max32657evkit/max32657/ns -p

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-21 08:01:25 +02:00
Sadik Ozer
367cd74ed1 soc: Add the MAX32657 NS Peripheral
This commit adds MAX32657 Non-Secure peripheral support

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-21 08:01:25 +02:00
Sadik Ozer
51d52ada20 manifest: Update tf-m module for MAX32657
Update tf-m node to get MAX32657 support

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-05-21 08:01:25 +02:00
Josuah Demangeon
c8ff2b89d9 drivers: video: common: introduce CCI utilities
Add a library for the Camera Common Interface, part of the MIPI CSI
protocol standard defining methods to configure a camera device over I2C,
such as which size for the register address/data.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-21 08:01:12 +02:00
Sebastian Głąb
f47f3fe410 tests: drivers: spi: spi_loopback: Test fast instance at low frequency
Due to limited value of clock divider, fast SPI instance
can work only at higher bitrates.

Add check for error message when fast instance is
configured to work at low/unsupported bitrate.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-05-20 22:38:08 +02:00
Daniel Leung
5413270502 tests: stack_unwind/x86: no need to force no optimizations
Previously, forcing no compiler optimizations is required for
x86_64 to unwind stack. However, this is not the case anymore
as long as frame pointers are not omitted. So update custom
kconfigs for x86 in the stack_unwind test.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-05-20 22:37:57 +02:00
Daniel Leung
ec6a6eb04d x86: x86_64: ARCH_HAS_STACKWALK possible with optimization
Stack walking on x86_64 can run with compiler optimization and
does not need CONFIG_NO_OPTIMIZATIONS as long as frame pointers
are not omitted. So remove the "depends on" for x86_64
from CONFIG_ARCH_HAS_STACKWALK.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-05-20 22:37:57 +02:00
Declan Snyder
74f3b7faa9 tests: spi_loopback: Add CS testing
Add test code to ensure CS is behaving properly in many different
scenarios.

Also add a test case for the SPI_HOLD_ON_CS flag in the API.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-20 22:37:35 +02:00
Declan Snyder
a6273993ee tests: spi_loopback: Add test case of multithread
Add test cases for multithread access with both same spec and different
specs to make sure nothing goes awry.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-20 22:37:35 +02:00
Declan Snyder
972dac1a73 tests: spi_loopback: Add timing testcase
Add testcase to ensure some aspects of the timing is correct.

If the transfer happens faster than it should, fail the test.
If the transfer takes way longer than it should, fail the test.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-20 22:37:35 +02:00
Declan Snyder
4b7ba78b40 tests: spi_loopback: Add test cases for clock modes
Turn the old spi_complete_loop case into 4 cases to test configuring
the different clock modes. The old case was kind of redundant with
everything else anyways so this is more useful to replace it with.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-20 22:37:35 +02:00
Declan Snyder
60d9a16040 tests: spi_loopback: Add different wordsize tests
Add tests for different data frame sizes,
as long as the controller can handle that word size.

Starting out with new tests of 7, 9, 16, 24, 32, 64.

The skipping behavior of ZTest is still not clear for me so for now just
return instead of using zassume or ztest skip if not supported.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-20 22:37:35 +02:00
Declan Snyder
ddb372e602 tests: spi_loopback: Add testcases for same bufs
A common usage of the SPI API by in tree consumers is to have one
underlying buffer used to both RX to and TX from. Add some test cases
ensuring this works properly:
- A case to ensure that RX writes back properly the same data that was
  TX from the buf.
- A case simulating a very common paradigm which is to use one
  underlying buf but declare the spi buf sets as though the first word
  is a command from TX and the rest are data for RX.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-20 22:37:35 +02:00
Andrzej Głąbek
610a7e2241 tests: arch: arm_irq_vector_table: Fix IRQ number used by nRF GRTC
Instead of using hard-coded GRTC_0_IRQn value, obtain information from
DT to get the IRQ number actually used by the nrf_grtc_timer driver.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-05-20 18:28:13 +02:00
Peter Wang
dd1bc2434a boards: frdm_mcxa166, frdm_mcxa276: add hwinfo reset_cause support
1. enable hwinfo support
   - get_reset_cause
   - get_supported_reset_cause
   - clear_reset_cause
2. verified tests/drivers/hwinfo

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-05-20 18:27:56 +02:00
Peter Wang
1312dc771c boards: frdm_mcxa166, frdm_mcxa276: add hwinfo device_id_get support
1. enable hwinfo support: device_id_get
2. verified tests/drivers/hwinfo

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-05-20 18:27:56 +02:00
Josuah Demangeon
8248854663 samples: drivers: video: capture: convert #ifdef into if()
Convert #ifdef CONFIG_TEST into if (IS_ENABLED(CONFIG_TEST)) to improve
readability.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-20 18:27:43 +02:00
Josuah Demangeon
585ee76425 sample: drivers: video: capture: add support for the video shell
Modify the capture sample to only run the video shell when the user
enables it with -DCONFIG_VIDEO_SHELL=y, as an alternative way to trigger
captures.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-20 18:27:43 +02:00
Josuah Demangeon
c67b915482 drivers: video: shell: introduce the video shell
Introduce the video shell and implement some video shell commands.
Make use of the various querying API to implement tab-completion, and
validiate the data, as well as convert string names into integers.
Commands provided: frmival, format, ctrl, start, stop, capture

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-20 18:27:43 +02:00
Phi Bang Nguyen
075ee09bd1 drivers: video: mcux_smartdma: Don't set_format() in get_format()
Do not set_format() when doing get_format(). This design seems initially
to simplify the sample (just get_format() and everything works out of the
box) but it makes thing incomprehensive and error prone.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-20 18:27:35 +02:00
Phi Bang Nguyen
d0eedc5192 drivers: video: mcux_csi: Don't set_format() in get_format()
Do not set_format() when doing get_format(). This design seems initially
to simplify the sample (just get_format() and everything works out of the
box) but it makes thing incomprehensive and error prone.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-20 18:27:35 +02:00
Phi Bang Nguyen
0c1e2c9e6d drivers: video: Move format pitch setting to bridge drivers
The format pitch (bytesperline) field is typically set by the bridge
drivers, i.e. DMA, ISP drivers who actually handle the memory as they
know exactly the memory layout constraints.

Application just set the pixel format and resolution and must always
read back this field to see what the driver actually sets (to allocate
buffers for example).

Also, drop format pitch setting in sensor drivers as this is not needed.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-20 18:27:35 +02:00
Phi Bang Nguyen
0b090fafa3 drivers: video: stm32-dcmi: Drop video_stm32_dcmi_is_fmt_valid
Drop video_stm32_dcmi_is_fmt_valid() as it is not needed. In this
function, (i) checking against a format based on another utility
function video_bits_per_pixel() is not robust, this check is done in
the sensor driver, (ii) checking against the heap size is not
appropriate because this should be done when allocating buffers, not
in get/set format.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-20 18:27:35 +02:00
Phi Bang Nguyen
fcadb792be drivers: video: Compute bits per pixel according to format
Compute bits per pixel according to the pixel format instead of
hardcoding it.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-20 18:27:35 +02:00
Trung Hieu Le
da12135525 drivers: video: ov5640: Fix constrast value sign
Fix sign's register for constrast value.

Signed-off-by: Trung Hieu Le <trunghieu.le@nxp.com>
Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-20 18:27:35 +02:00
Trung Hieu Le
a3c31a5ca1 drivers: video: ov5640: Fix brightness control register
Fix the sign register for brightness control

Signed-off-by: Trung Hieu Le <trunghieu.le@nxp.com>
Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-20 18:27:35 +02:00
Trung Hieu Le
cc5f5506da drivers: video: ov5640: Fix HUE register write
SDE_CTRL8_REG's value must be modified using modify_register.

Signed-off-by: Trung Hieu Le <trunghieu.le@nxp.com>
Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-20 18:27:35 +02:00
Phi Bang Nguyen
ae63908ae7 drivers: video: ov5640: Drop cur_pixrate internal variable
Update the control value directly. No need for an internal variable.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-20 18:27:35 +02:00
Farah Fliss
33ff1f65d6 drivers: video: mt9m114: Make the driver multi-instance
The mt9m114 camera driver used to be single-instance.
Improve it to multi-instance.

Signed-off-by: Farah Fliss <farah.fliss@nxp.com>
Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-20 18:27:35 +02:00
Farah Fliss
46bf6b589f drivers: video: mt9m114: Fix coding style
Fix coding style in a variable naming.

Signed-off-by: Farah Fliss <farah.fliss@nxp.com>
Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-20 18:27:35 +02:00
Phi Bang Nguyen
c94bcb883b drivers: video: mipi_csi2rx: Fix type range related to pixel rate
Fix some type range related to pixel rate which can cause overflow.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-20 18:27:35 +02:00
Phi Bang Nguyen
a1e58acf4b drivers: video: mipi_csi2rx: Explicitly set init priority
The MIPI CSI-2 Rx needs to be initialized after the camera sensor which
is generally initialized with CONFIG_VIDEO_INIT_PRIORITY.

This is currently true "by chance" due to the order the linker links the
object files. This linker order is not easily controlled, so use an
explicit priority value to ensure this requirement.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-20 18:27:35 +02:00
Bjarki Arge Andreasen
8cf519db06 drivers: spi: nrfx_spim: self resume until spi_release()
The nrxf_spim driver currently resumes itself for the duration of
a transfer, however, in case SPI_LOCK_ON is used, the driver needs
to keep itself resumed until spi_release() is called. Currently,
this results in unbalanced suspend as the bus puts itself both
after transaction is done, and when spi_release() is called.

This patch makes the driver check if SPI_LOCK_ON is set once
transaction is complete, if yes, selv get one more time to
account for the two puts which will follow.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-20 16:09:11 +01:00
Bjarki Arge Andreasen
43720efe31 Revert "drivers: spi: nrfx_spim: prevent self suspend until spi_release()"
This reverts commit 937a44a74e.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-20 16:09:11 +01:00
Alessandro Manganaro
2c1b3020a1 west.yml: update BLE stm32wba lib to cube version V1.6.0
Update BLE lib version for STM32WBAxx serie
from version v1.5.0 to version v1.6.0.

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-05-20 16:08:58 +01:00
Sylvio Alves
5d82ec5155 west.yml: remove unused header file in hal_espressif
Fixes GCC 14.2 build errors due to lock.h header file.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-05-20 16:08:50 +01:00
Krzysztof Chruściński
08d327d595 soc: nordic: nrf54h: Fix s2ram
Cache was not enabled when s2ram did not completed which
lead to system malfunction. Always power up cache when
returning from s2ram function.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-20 16:08:39 +01:00
Bjarki Arge Andreasen
b7d663297e tests: drivers: clock_control: nrf_clock_control: update fll16m
Update the nrf clock control test suite to not attempt to set the
removed closed loop mode of the fll16m clock.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-20 16:08:31 +01:00
Bjarki Arge Andreasen
f94c6f20ff drivers: clock_control: nrf fll16 remove closed loop impl
Remove the closed loop mode implementation for the fll16m clock.
Closed loop causes a hardware bug resulting in increased current
consumption if SoC experiences high, but within spec, temperatures.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-20 16:08:31 +01:00
Miika Karanki
53e751dcf9 modules: littlefs: update to v2.11.0
Update LittleFS to version 2.11.0

Signed-off-by: Miika Karanki <miika.karanki@vaisala.com>
2025-05-20 15:27:47 +02:00
Aleksandr Khromykh
b3e5aba6ba tests: bluetooth: mesh: bsim test to check memory leak after suspending
Commit adds mesh bsim test to check adv pool memory leakage
after mesh has been suspended.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-05-20 15:25:06 +02:00
Aleksandr Khromykh
9e0c6d5d96 bluetooth: mesh: fix buffer leakage if mesh was suspended
Commit fixes bug when advertisements were disabled and stopped
during suspending without unreferencing allocated advertisements.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-05-20 15:25:06 +02:00
Marcin Szymczyk
fe1b0e31b7 soc: nordic: allow setting VPR_LAUNCHER support for out of tree SoCs
Make the compilation of vpr_launcher dependent on sysbuild Kconfig
that can be set by SoC.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2025-05-20 15:24:58 +02:00
Sai Santhosh Malae
4ad36e72e4 drivers: i2s: siwx91x: i2s output app support
Add siwx917_rb4338a board overlay file

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-05-20 15:24:50 +02:00
Sai Santhosh Malae
1971bc0a8e drivers: i2s: siwx91x: Add siwx91x I2S primary driver
Implement I2S driver for siwx91x device

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-05-20 15:24:50 +02:00
Sai Santhosh Malae
f671b68742 drivers: i2s: siwx91x: DTS changes for siwx91x I2S driver
1. Create a YAML file for I2S node
2. Add I2S node in the siwx917.dtsi

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-05-20 15:24:50 +02:00
Sai Santhosh Malae
dcdc8e8a55 drivers: i2s: siwx91x: I2S clock initialization for siwx91x
Clock driver changes required for initializing the I2S clock
for the siwx91x driver

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-05-20 15:24:50 +02:00
Yau-ming Leung
d95ca654cc drivers: icm42688: fix FIFO HIRES packet gyro scale
The original scale value used to convert raw gyro value to q31 format is
incorrect. Updated to the correct value.

Signed-off-by: Yau-ming Leung <ymleung314@gmail.com>
2025-05-20 15:24:39 +02:00
Bindu S
93f2143b14 boards: intel: btl: Enabled drivers supported for BTL-S
Added drivers supported for btl-s platform in yaml file.

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-05-20 15:24:18 +02:00
Bindu S
95ddb09bb5 tests: drivers: smbus: Enabled smbus test for BTL-S platform
Added overlay for smbus for intel_btl_s_crb platform.

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-05-20 15:24:18 +02:00
Bindu S
667e64c7af samples: drivers: misc: Enabled timeaware-gpio for BTL-S
Added overlay to enable timeaware-gpio for BTL-S platform.

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-05-20 15:24:18 +02:00
Bindu S
a63bf7727e tests: drivers: pwm: Enabled PWM test for BTL-S
Enabled pwm tests for intel_btl_s_crb platform.

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-05-20 15:24:18 +02:00
Bindu S
00419aec9b tests: drivers: watchdog: Add intel_btl_s_crb overlay
Add overlay to enable watchdog for BTL-S platform.

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-05-20 15:24:18 +02:00
Bindu S
ffc9cfb8f5 tests: drivers: uart: uart_async_api: Enabled tests for BTL-S
Enabled tests for intel_btl_s_crb platform.

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-05-20 15:24:18 +02:00
Bindu S
17d1895962 tests: drivers: gpio: gpio_basic_api: Enabled gpio test for BTL-S
Enabled gpio_basic_api test for BTL-S platform.

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-05-20 15:24:18 +02:00
Bindu S
6f1b49179c tests: disks: disk_performance: Enabled NVMe disk to BTL-S platform
Added overlay and conf to enable NVMe disk performance tests
on BTL-S board.

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-05-20 15:24:18 +02:00
Bindu S
c6c5716c81 tests: disks : Enabled NVMe disk to BTL-S platform
Added overlay and conf to enable NVMe disk tests on BTL-S board.

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-05-20 15:24:18 +02:00
Bindu S
d33cd0ea69 tests: drivers: spi: spi_loopback: Enabled SPI in BTL-S
Added overlay and conf to enable SPI tests on BTL-S board.

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-05-20 15:24:18 +02:00
Arunmani Alagarsamy
2844850de8 soc: silabs: siwg917: Refactor siwx91x_get_nwp_config
Refactor siwx91x_get_nwp_config function to reduce its
Cognitive Complexity from 34 to below the allowed limit of 25
as per SonarQube guidelines. Extracted configuration logic into
smaller helper functions.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-05-20 15:24:06 +02:00
Arunmani Alagarsamy
88846ddc81 drivers: wifi: siwx91x: Add Wi-Fi mgmt events
- Implement event handling for AP and STA modes
- Enable configurations for security (PSK), aggregation,
  and hidden PSK credentials

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-05-20 15:24:06 +02:00
Arunmani Alagarsamy
4c1a91fa63 drivers: wifi: siwx91x: Enable AP configuration support
- Adds support for configuring client maximum inactivity timeout.
- Adds support for bandwidth, It supports 20MHZ only.
- Adds support for setting the maximum number of clients and
  hidden SSID mode by rebooting the NWP device.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-05-20 15:24:06 +02:00
Arunmani Alagarsamy
0459bd8638 drivers: wifi: siwx91x: Replace opermode flags
Replaced SL_SI91X_CLIENT_MODE and SL_SI91X_ACCESS_POINT_MODE with
WIFI_STA_MODE and WIFI_SOFTAP_MODE, respectively, for AP configuration
command intergration.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-05-20 15:24:06 +02:00
Arunmani Alagarsamy
c8a29b3038 drivers: wifi: siwx91x: Add interface state validation
This patch introduces validation checks to ensure Wi-Fi commands are
executed only when the device is in a valid operational mode.

- Restricts command execution if the device is not in an appropriate mode
- Prevents reconfiguring the device when it is already in an active state
- Enabled Advanced multiprobe setting as default.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-05-20 15:24:06 +02:00
Xudong Zheng
151ca3a31f fs: littlefs: define default disk version in Kconfig
This makes it possible to set the disk version when Devicetree is not
used for configuration.

Signed-off-by: Xudong Zheng <7pkvm5aw@slicealias.com>
2025-05-20 15:24:00 +02:00
Maureen Helm
6fd0363f46 samples: sensor: Disable uart console when rtt console is enabled
Configures the accelerometer polling and trigger samples to disable the
uart console when the rtt console is enabled. Having both consoles
enabled simultaneously doesn't currently work on the apard32690 platform
and it's redundant anyway.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-05-20 15:23:51 +02:00
Maureen Helm
b9d6f53b71 samples: sensor: Add adxl345 streaming and trigger configurations
Adds adxl345 streaming and trigger configurations to accelerometer
samples for profiling the performance impact of adding rtio support to
max32 spi and adxl345 accelerometer drivers.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-05-20 15:23:51 +02:00
Maureen Helm
7837c0b65b samples: sensor: accel_polling: Don't drop data on FIFO watermark
Changes the accelerometer polling sample to include data with the FIFO
watermark trigger instead of dropping it.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-05-20 15:23:51 +02:00
Maureen Helm
4fec504985 boards: shields: pmod_acl: Specify accelerometer interrupt pin
Specifies which gpio pin on the pmod header is attached to the adxl345
accelerometer interrupt.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-05-20 15:23:51 +02:00
Maureen Helm
a9c65f09d1 boards: shields: pmod_acl: Fix default accelerometer odr
Fixes the pmod_acl shield board to specify the default accelerometer
output data rate with a preprocessor macro that corresponds to an
encoded register field value, rather than an integer value in Hertz.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-05-20 15:23:51 +02:00
Maureen Helm
34c8167f6c boards: adi: apard32690: Specify pmod gpio pins
Specifies which gpio pins are connected to the pmod spi header on the
apard32690 board. This will enable using the adxl345 accelerometer
interrupt when attaching the pmod_acl shield.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-05-20 15:23:51 +02:00
Maureen Helm
77f7b1feb1 drivers: sensor: adi: Set adxl345 thread name
Sets the adxl345 driver thread name for easier debugging.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-05-20 15:23:51 +02:00
Luis Ubieda
75fda15b8c sensor: adxl345: Set FIFO to bypass mode when DRDY is enabled
In order to prevent not serving all events that would clear the
interrupt line. This patch also removes FIFO servicing through
fetch/get APIs, as this is only exposed through streaming mode.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-20 15:23:51 +02:00
Benjamin Cabé
8af9de4901 shields: migrate to shield.yml
Adopt shield.yml for all the shields in-tree.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-20 15:23:34 +02:00
Benjamin Cabé
b6e56a3788 shields: amg88xx: rename image files
Align image file names with shields' name

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-20 15:23:34 +02:00
Benjamin Cabé
11fea40a40 doc: boards: catalog: add shields to board catalog
Populate board catalog with shields as well and have them show up in the
boards/index page.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-20 15:23:34 +02:00
Benjamin Cabé
3c4b6417b3 doc: fix label for in catalog search form
The label for "Supported Hardware Capabilities" search field was
pointing to an HTML element with the wrong ID.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-20 15:23:34 +02:00
Benjamin Cabé
9dd10af28b scripts: west: commands: make use of shield.yml in west shields command
This change introduces the use of shield.yml in the `west shields`
command so that when using the `-f` option one can output the shields'
full name and vendor information.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-20 15:23:34 +02:00
Benjamin Cabé
9d5b19710b cmake: shields: introduce shield.yml
While legacy shields are still supported, this introduces a shield.yml
file similar to board.yml that allows to more explicitly declare a
shield and to set some useful metadata such as vendor and full name.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-20 15:23:34 +02:00
Benjamin Cabé
9decff5e37 doc: shields: waveshare_ups: fix documentation
- remove broken table (people can refer to Waveshare docs)
- use zephyr-app-commands compact mode

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-20 15:23:34 +02:00
Oleg Zinovyev
2619fb0b9f doc: develop: tools: CLion: update link
Change the link.

Signed-off-by: Oleg Zinovyev <oleg.zinovyev@jetbrains.com>
2025-05-20 15:23:25 +02:00
Marcin Szymczyk
6bdd19bda3 drivers: clock_control: nrf2_fll16m: use HAL
HAL function for setting clock source in nrf_lrcconf is now available.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2025-05-20 12:47:47 +02:00
Tomasz Moń
8b4c53e05a drivers: udc_dwc2: Optimize endpoint interrupt handling
SEGGER Ozone J-Trace Code Profile identified iterations over daint value
as hot path. The iterations show at the very top of code profile because
full iteration happens whenever there is any activity on endpoint.

Optimize daint handling loops so only set bits are iterated over. While
this optimization depends on find_lsb_set() efficiency, it seems to be
worth it solely on the basis that quite often only few bits are set.

After a bit deeper analysis, I was suprised that on ARM Cortex-M33 the
find_lsb_set() approach is faster than naive iteration even if all bits
are set (which is extreme case because USB applications are unlikely to
use all 16 IN and 16 OUT endpoints simultaneously). This is due to fact
that there is only one conditional jump CBNZ and find_lsb_set() - 1
translates to RBIT + CLZ and then clearing the bit uses LSL.W + BIC.W.
Whereas the naive itation uses ADDS + CMP + BNE for the loop handling
and also has LSR.W + LSLS + BPL (+ ADD.W instruction on each iteration
to add 16 for OUT endpoints) for the continue check. Therefore the
optimized code on ARM Cortex-M33 is never worse than naive iteration.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-05-20 12:47:34 +02:00
Ederson de Souza
050b8a915c cmake/emu: Use SIMICS_PROJECT environment variable as working dir
Some simics dependencies live at its own directory, not application's.

Note we need to change it to its absolute path, because relative paths
for `add_custom_target` are relative to the build directory, while
relative SIMICS_PROJECT are more likely to be relative to ZEPHYR_BASE,
from where west or twister are normally run.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-05-20 12:47:25 +02:00
Paul Schaetzle
9b1969a206 doc: dts: explain the usage of pre_dt_shield.cmake
Mention the possible use of pre_dt_shield.cmake in the devicetree and
shield documentation.

Signed-off-by: Paul Schaetzle <paulschaetzle@mailbox.org>
2025-05-20 12:47:00 +02:00
Paul Schaetzle
269799e0e9 cmake: modules: shields: pre_dt_shield.cmake file
Similar to the pre_dt_board.cmake, this is an optional file for
additional arguments that need to get passed to the devicetree compiler.

Signed-off-by: Paul Schaetzle <paulschaetzle@mailbox.org>
2025-05-20 12:47:00 +02:00
Fabio Baltieri
649eb6280d ci: pr_metadata_check: convert DNM logic to python
GitHub seems to have issue with workflow state caching that causes the
DNM step to not work properly in few cases and not detecting changes in
the DNM tag, forcing people to mess with tags or close/opening PRs,
which in turns restarts all workflows.

Convert the script to Python so that the tag data is guaranteed to be
fresh.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-20 10:17:19 +02:00
Samuel Quiniou
13808aee26 boards: stm32h573i_dk: add touch panel support
- The stm32h573i_dk board uses a ft3267 i2c controller for the touchscreen
connected on i2c4.
  - The zephyr driver ft5336 can control it.
- Use the I2C STM32 V2 Timing calculation.

Signed-off-by: Samuel Quiniou <samuel.quiniou@rtone.fr>
2025-05-20 10:17:06 +02:00
Marek Metelski
595fa2b2be boards: openocd: Use STM32-specific configuration for ST boards
The OpenOCD STM32-specific configuration was included into the common
configuration, which was then used in board files. Follow nRF5
convention instead: use manufacturer-specific config in boards.

Also due to the fact that the include of STM32-specific config was
placed *after* board_finalize_runner_args() it didn't really work
anyways.

Signed-off-by: Marek Metelski <marek@metelski.dev>
2025-05-20 10:16:33 +02:00
Oleh Kravchenko
4f69acc3d4 soc: stm32f1x: Add support for stop/standby modes
Add config and overlay to samples for testing stop/standby modes:

- samples/boards/st/power_mgmt/blinky
- samples/boards/st/power_mgmt/wkup_pins

I've measured consumption for each low-power mode:
- stop (regulator in run mode) ~217 uA
- stop (regulator in low-power mode) ~206 uA
- standby mode ~3.5 uA

Low-power mode wakeup timings from the datasheet,
but it barely meets these in reality:
- stop (regulator in run mode) 3.6 us
- stop (regulator in low-power mode) 5.4 us
- standby 50 us

It's possible to use RTC as idle timer to exit from stop mode.

Signed-off-by: Oleh Kravchenko <oleg@kaa.org.ua>
2025-05-20 10:16:20 +02:00
Bansidhar Mangalwedhekar
90a48e814b nrf7002ek: dts: Add pull down to SPIM GPIO pins
Add a pull down to SPIM GPIO pins on nRF5340DK to ensure the i/o pins
on the nrf7002 device are not floating when SPI is inactive.

Signed-off-by: Bansidhar Mangalwedhekar <bansidhar.mangalwedhekar@nordicsemi.no>
2025-05-20 09:17:15 +02:00
Babak Arisian
021c96dcad Bluetooth: controller: Correct validation for CONNECT_IND interval
Previously, the interval was only checked for non-zero. Now it is
validated to be within the allowed range (BT_HCI_LE_INTERVAL_MIN
to BT_HCI_LE_INTERVAL_MAX) to avoid invalid values.

Signed-off-by: Babak Arisian <bbaa@demant.com>
2025-05-20 09:17:07 +02:00
Fabrice DJIATSA
598987ef6a tests: drivers: gpio: gpio_basic_api: update arduino pins header
Loopback with D4 <-> D5 to avoid a failed test with the error
"physical pull-down does not read low."
It looks like pins D2-D3 couldn't be configured to pull-up
for some reason.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-05-20 09:16:56 +02:00
Jiafei Pan
999c4cb652 boards: imx93_evk: refine jlink runner
The ogirnal design is using a J-Link script, then the path of image
is saved into the script file during building, it will has issue
when generate twister artifacts and copy it to another path for
testing as path is changed. so refine it to use new parameter of
J-Link runner parameter "--flash-sram" to fix this issue.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-05-20 09:16:47 +02:00
Jiafei Pan
48ed1a74a6 scripts: runners: jlink: add support to flash to sram
Add new parameter "--flash-sram" for J-Link runner to flash the image
to SRAM and modify the PC register to start of SRAM.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-05-20 09:16:47 +02:00
jhan bo chao
31b756562a drivers: input: rts5912: clear pending irq when setup
clear pending irq when setup.

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-05-20 09:16:31 +02:00
Adrian Warecki
042bf2c3fa kernel: userspace: Fix memory leak in dynamic_object_create
If memory allocation for a dynamic object fails, an attempt is made to free
a null pointer instead of the allocated element of the dynamic object list.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2025-05-20 00:26:30 +01:00
Sylvio Alves
b78d1a1c96 tests: build_all: video: add esp32s3_eye board
Make sure esp32s3 video driver is built during CI tests.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-05-19 21:55:32 +02:00
Sylvio Alves
b1ab17a015 driver: video: remove endpoint id in esp32 driver
Remove endpoint ID entry in esp32 video driver needed after
API changes.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-05-19 21:55:32 +02:00
Mahesh Mahadevan
dcad2e036e drivers: nxp_pint: Add power handlers for the NXP PINT driver
This is needed to restore state on wakeup from certain low power
modes.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-05-19 21:55:15 +02:00
Mahesh Mahadevan
b694af6576 drivers: gpio: Setup the pinctrl in the NXP LPC GPIO driver
The pinctrl register bits need to be restored to GPIO mode
after we exit from certain low power modes. We cannot rely
on the pin function to default to GPIO.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-05-19 21:55:15 +02:00
Vinayak Kariappa Chettimada
920117922b Bluetooth: Controller: nRF53x: Fix NRF_CCM MAXPACKETSIZE value
Fix NRF_CCM MAXPACKETSIZE value to mitigate Bus Faults.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-19 21:55:04 +02:00
Vinayak Kariappa Chettimada
20576597df Bluetooth: Controller: nRF54Lx: Fix MDATA length to avoid MIC failures
Fix MDATA length with extra bytes to mitigate MIC failures.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-19 21:55:04 +02:00
Vinayak Kariappa Chettimada
d720032a43 Bluetooth: Controller: Fix assertion establishing Peripheral ISO
Fix assertion observed establishing subsequent Peripheral
ISO connection due to a race between the new CIS context
being acquired into a CIG and LLL getting a CIS sorted by
CIS offset in that CIG. Get only active CISes from the CIG
in the LLL prepare.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-19 21:55:04 +02:00
Vinayak Kariappa Chettimada
0ef1d98ec8 Bluetooth: Controller: Fix max tx octets value used
Fix max tx octets value used as given to the Host by the
LE Read Buffer Size command response.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-19 21:55:04 +02:00
Vinayak Kariappa Chettimada
33a8a33d79 Bluetooth: Controller: Fix redundant ISO Rx size in ACL Rx
Fix missing removal of redundant ISO Rx size in ACL Rx PDU
allocation size.

Related to commit 7c89f1fe9f ("Bluetooth: controller:
Support for separate ISO RX data path").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-19 21:55:04 +02:00
Mahesh Mahadevan
84ba8d783b samples: lvgl: Enable PM for frdm_rw612 boards
Also enable Standy mode which maps to PM Mode 3

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-05-19 21:54:55 +02:00
Mahesh Mahadevan
6698f3b4e8 drivers: dma: Add PM handler for NXP LPC DMA driver
Add the PM handler. Reinitialize the DMA block in the
TURN_ON action, this is needed for some SoC's after the system
exits certain power modes.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-05-19 21:54:55 +02:00
Hank Wang
5379f4a16b drivers: sensor: tmp1075: add support for fractional threshold values
Previously, the TMP1075 driver only used the integer part (val1) of the
sensor_value when setting TLOW and THIGH thresholds. This limited the
precision of temperature threshold configuration and could be insufficient
in applications requiring fine-grained control.

This patch adds proper handling for the fractional part (val2) by encoding
it into bits [7:4] of the 12-bit temperature register according to the
TMP1075 datasheet. The decoding logic in get_threshold_attribute() is also
updated to recover the fractional value accurately.

Signed-off-by: Hank Wang <wanghanchi2000@gmail.com>
2025-05-19 21:54:45 +02:00
Alberto Escolar Piedras
6636d65ca5 manifest: Update nRF hw models to latest
Update the HW models module to:
c6296f600a6851bd652f207ab4908d339e1ce705

Including the following:
c6296f6 52/53 CCM: Remove warning on TASK_STOP
cb790ab hw_testcheat_if: Typo fix in comment
38956c4 RADIO: Add cheat interface to disable Tx or Rx

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-19 18:47:02 +01:00
Fabio Baltieri
0a14cc21cc serial: uart_bt: set the workqueue thread name
Set the bt_uart workqueue name so it does not show up as a mystery
thread on the thread list.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-19 18:39:16 +01:00
Fabio Baltieri
d79e9e7d3a serial: uart_bt: select SERIAL_SUPPORT_INTERRUPT
Select SERIAL_SUPPORT_INTERRUPT for uart_bt, this is required to have
the interrupt API available.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-19 18:39:16 +01:00
Damian Krolik
5ce7d05b70 manifest: update hal_nordic revision to pull in #293
Pull in clang compilation error fix.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2025-05-19 18:39:12 +01:00
Mirko Bottarelli
6a791bd478 drivers/gpio: Fix issue in gpio_pca6416
Added the possibility of leaving the gpio-int property empty, in case
the corresponding pin is not connected.

Signed-off-by: Mirko Bottarelli <mirko.bottarelli@gmail.com>
2025-05-19 16:49:07 +01:00
Mirko Bottarelli
28052aa7f0 drivers: gpio: Fix PCA6416 configuration
Fix device initialisation, allowing for empty interrupt_gpios in the
dts, as suggested by the documentation.

Signed-off-by: Mirko Bottarelli <mirko.bottarelli@gmail.com>
2025-05-19 16:49:07 +01:00
Emil Gydesen
69b722566a tests: Bluetooth: Tester: Audio: Cleanup includes
Update the includes so that only what is actually used is included,
and so that everything is used is includes (IWYU).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-19 16:48:53 +01:00
Jakub Wasilewski
dcda8089f0 samples: sensor: add sample for SHT4X
Add a new sample specifically for the SHT4X sensor.

Signed-off-by: Jakub Wasilewski <jwasilewski@internships.antmicro.com>
Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-05-19 16:48:44 +01:00
Robert Lubos
011f2bc458 net: conn_mgr: Fix disconnect with CONN_MGR_IF_NO_AUTO_DOWN unset
Connection manager enforces non-blocking disconnect() behavior, yet in
case CONN_MGR_IF_NO_AUTO_DOWN flag is not set, it'd put the interface
down right after, disrupting the disconnect process.

As putting the interface down can be handled in the corresponding event
handler as well, when the interface is actually disconnected, remove the
conn_mgr_conn_if_auto_admin_down() call from conn_mgr_if_disconnect().
To make this work with persistence flag, introduce a new internal flag
indicating that the interface is in active disconnect.

Finally, since it isn't really necessary that disconnect() API call is
non-blocking, remove that requirement.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-19 16:37:07 +02:00
Mahesh Mahadevan
0abf4f589b drivers: input_gt911: Reinitialize interrupt GPIO on exit from PM
Certain power modes lose state of the GPIO, hence we need to
reconfigure the interrupt GPIO. This is managed using pm_notifiers

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-05-19 16:36:42 +02:00
Alberto Escolar Piedras
5c9c3497ed boards native bsim: Provide control of disconnection on exit
Allow either programatically from the test/code or from the command
line to chose if this executable exiting should terminate the
whole simulation, or if it should only disconnect the device.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-19 16:36:30 +02:00
Alberto Escolar Piedras
2673aa9755 manifest: Update bsim to version v2.6
Main changes since v2.5:
* ext_2G4_phy_v1: Now supports DISCONNECTS during abort re-evaluations
* ext_2G4_phy_v1: Also support bitrates multiple of 250Kbps and 333Kbps

Note: Like before, bsim remains fully backwards compatible

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-19 16:36:30 +02:00
Martin Hoff
34aff5ef7c boards: silabs: add missing tag for uart on siwx917 board
Add missing uart tag for siwx91x boards.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-05-19 16:36:21 +02:00
Martin Hoff
ea95e2d7f0 soc: silabs: siwx91x: add missing kconfig for ns16550 driver variant
The ns16550 UART driver has multiple variant Kconfig options. To
successfully run the uart_basic_api test, the correct variant must be
selected. This commit adds the missing Kconfig option.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-05-19 16:36:21 +02:00
Abderrahmane JARMOUNI
c6c5d315cd samples: lvgl: multi_display: add SDL Window titles
Add custom titles to SDL windows in native sim

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-19 16:36:12 +02:00
Abderrahmane JARMOUNI
6be42eb2d3 drivers: display: sdl: add windows custom naming
Add the possibility to set a custom name for SDL window
in native simulator

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-19 16:36:12 +02:00
Robin Kastberg
05401b3f44 modules: hal_rpi_pico: set -std=gnu11 in a toolchain independent way.
Set `-std=gnu11` in a more toolchain independent way.

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-05-19 16:36:04 +02:00
Sergei Ovchinnikov
1ef29d5218 dts: bindings: npm1300-charger: make vbus-limit-microamp required
Make the vbus-limit-microamp property of npm1300-charger required and
change its range to reflect the one actually supported by the device.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-05-19 16:35:55 +02:00
Camille BAUD
26d170e9b6 tests: display: Fix SSD1327 Test
Adds new property

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-19 16:35:50 +02:00
Camille BAUD
23d1a8fd2d drivers: display: Re-introduce SSD1327
This makes SSD1327 use the new L8 display format.
It also fixes all displays that didnt support the undocumented
monochrome mode.
It also adds i2c and revamps the entire driver.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-19 16:35:50 +02:00
Sergei Ovchinnikov
05c7fadf95 samples: shields: npm2100_ek sample
A sample show-casing the core functionalities of the nPM2100 PMIC using
the nPM2100 EK as a shield.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-05-19 13:42:15 +02:00
Sergei Ovchinnikov
a5fdddf7bb boards: shields: npm2100_ek shield
Add an nPM2100 EK shield

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-05-19 13:42:15 +02:00
Hao Luo
7072669ccf dts: ambiq: update ambiq boards dtsi as uart binding changed
This commit updates dtsi for ambiq boards as the uart binding
has been changed.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-19 13:32:44 +02:00
Hao Luo
92e723db93 dts: uart: create ambiq uart binding file
This commit creates ambiq uart new binding file
and renamed the previous one as ambiq,pl011-uart

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-19 13:32:44 +02:00
Hao Luo
be4d8b22c3 drivers: uart: create ambiq uart driver for apollo510
This commit creates ambiq uart driver for Apollo510 SoC,
not to use the pl011 driver any more.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-19 13:32:44 +02:00
Hao Luo
2990819454 hal: uart: Add ambiq uart hal support
This commit adds support for ambiq hal uart.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-19 13:32:44 +02:00
Bartosz Miller
827962bf60 samples: drivers: flash: Add nrf54h support in nrf_soc_flash sample
nrf54h has got built in MRAM memory with 16B word alignment.

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-05-19 13:32:34 +02:00
Appana Durga Kedareswara rao
1d1f733944 boards: amd: Add board support for RPU on Versal Gen 2 SOC
Add generic board support for the RPU, real-time processing
unit on Versal Gen 2 SoC. It is based on Cortext-R52 processor.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-05-19 13:32:09 +02:00
Appana Durga Kedareswara rao
4f6b48ee6c soc: amd: Add support for AMD Versal Gen 2 RPU
Add support for the RPU, real-time processing unit on Versal Gen 2 SoC.
It is based on Cortext-R52 processor.

The patch contains initial wiring and configuration for generic board
with OCM(1MB) and DDR(2G) memories, cpu, interrupt controller, global
timer and UART.

versal2.dtsi contains common peripherals integrated into Versal Gen 2
SoC, and versal2_r52.dtsi has peripherals which are private to
Cortex-R52 processor.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-05-19 13:32:09 +02:00
Thomas Keller
ca182edb06 boards: st: nucleo_g474re: fix comment in Kconfig.defconfig
Comment is referring to wrong board.

Signed-off-by: Thomas Keller <t.tschaler@gmail.com>
2025-05-19 11:25:20 +02:00
Andrej Butok
9fb4a78439 boards: nxp: make equal partition slots
- creates equal partition slots for NXP boards.
- allows support for all firmware update modes,
  primarily for the new preferred "Swap using offset".

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-05-19 11:25:10 +02:00
Damian Krolik
82b802f9ab net: lib: zperf: fix compilation with UDP/TCP only
Fix regression introduced by #88747 that breaks linking
with zperf server enabled but TCP or UDP disabled.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2025-05-19 11:24:58 +02:00
Fabio Baltieri
87e20308bd drivers: dp: fix build on M0 MCUs
Current code does not build on Cortex-M0, seems like it does not like
subs:

Error: instruction not supported in Thumb16 mode -- `subs r3,#1'

Adding a unified assembler language declaration in the snippet seems to
fix the problem, also add an M0+ board so this is tested in CI.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-19 11:24:49 +02:00
Lucas Tamborrino
5a338ff5bb samples: boards: espressif: ulp: Add interrupt sample
Add an interrupt triggered by HP Core sample

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-05-19 11:24:36 +02:00
Tomasz Moń
243f7c44d3 drivers: udc_dwc2: Disable control IN endpoint on timeout
DWC2 core sets DIEPCTL0 SNAK when SETUP packet is received. The CNAK bit
results in device sending NAK in response to IN token sent to EP0, but
it does not modify the TxFIFO in any way. The stale data in TxFIFO can
then lead to "FIFO space is too low" error. Solve the issue by disabling
and flushing IN endpoint 0 if previous control transfer did not finish.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-05-19 11:24:27 +02:00
Tomasz Bursztyka
b6cfb4533e MAINTAINERS: Removing myself from some areas, focusing on two
PTP was assigned to me by default though I never contributed there and
have no interest to do so.
Leaving virtualization and network areas behind.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-05-19 10:12:19 +02:00
Mirai SHINJO
020a0a2215 dts: arm: st: l4: add support for STM32L431XB SoC
This patch adds support for the STM32L431XB SoC, which is the
128 KB flash / 64 KB SRAM variant of the STM32L4X1 SoC family.

Co-authored-by: Alexander Apostolu <apostolu240@gmail.com>
Signed-off-by: Alexander Apostolu <apostolu240@gmail.com>
Signed-off-by: Mirai SHINJO <oss@mshinjo.com>
2025-05-19 10:12:09 +02:00
Tomasz Bursztyka
e4de5707a1 doc: release-notes-4-2: Add coredump new Kconfig options
A new coredump backend was added, and can be enabled and configured
directly via Kconfig.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-05-19 10:12:03 +02:00
Camille BAUD
7521971de8 dts: bflb: Enable efuse driver on bl60x
This enables the driver by default, it will be needed at init in the future

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-19 10:11:58 +02:00
Camille BAUD
88387b44dc drivers: syscon: Introduce BFLB Efuse driver
This introduces a driver used to access bouffalolab efuses via syscon API

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-19 10:11:58 +02:00
Camille BAUD
22fa13083a west.yml: update hal_bouffalolab revision
This sets revision to the one with vendor headers from final hal version

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-19 10:11:58 +02:00
Connor Weekes
b5934e8dfe dts: bindings: adc: add io-channel-cells property to ti,ads1119
Added io-channel-cells to the binding as is standard for
the ads1x1x binding. Additionally, this prevents an issue where
you cannot compile due to the length of this property being
longer than expected.

Signed-off-by: Connor Weekes <cweek24@gmail.com>
2025-05-17 19:26:13 +02:00
Andrew Davis
f32bfb3116 boards: ti: sk_am64: Fix M4 DRAM memory offset
The memory offset starts the second DRAM memory area as if the resource
table took a whole 1MB, but it only takes 1KB. Shift the region start
address back to the right spot.

Update the docs to make the memory sizes more clear.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-05-17 19:26:03 +02:00
Maureen Helm
25c7fa4e63 boards: shields: adi: Add missing board images
A couple of ADI boards/shields were missing images. The images come from
their respective product pages on analog.com and then converted to webp
format.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-05-17 14:12:07 +02:00
Ederson de Souza
9741c25715 twister: More restrictive regex for log markers
Some simulators - like simics - may end up adding extraneous suffixes to
logged lines. This may cause some regex that match too much fail. This
patch fixes two such cases:

  - regex to find RunID changed to only match valid hexadecimal
    characters;
  - regex to match start of testsuite changed to only match valid word
    characters (0-9A-Za-z_).

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-05-17 14:11:45 +02:00
Benjamin Cabé
a58e65908c dts: bindings: add title property
This adds a proper, concise, title property to a bunch of bindings for
which the first sentence of their description (which used to be a
makeshift title) was really long

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-17 14:11:35 +02:00
Benjamin Cabé
51006fbe05 dts: input: Rework futaba,sbus description and title
A binding documentation shouldn't be referring to "driver", so this
commit reworks the description accordingly, and sets a title now that
binding files can have one.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-17 14:11:35 +02:00
Tahsin Mutlugun
fd3b73068b manifest: Update hal_adi to grab UART driver fixes
Pull in UART driver fix that will allow MAX32 UART driver work without
full libc.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-05-17 14:11:15 +02:00
Olexander Grin
5491bbf71a dts: boards: esp32c3_supermini: Fix active led level
Fix led active level to low according to schematic

Signed-off-by: Olexander Grin <alexander.grin.dev@gmail.com>
2025-05-17 14:10:49 +02:00
Anas Nashif
2aacbcaab5 style: add missing curly braces in if/while/for statements.
Add missing curly braces in if/while/for statements.

This is a style guideline we have that was not enforced in CI. All
issues fixed here were detected by sonarqube SCA.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-17 14:10:33 +02:00
Daniel Mangum
3675ff2c14 tests: lib: p4wq: turn of time slicing
Turns off time slicing as these tests do not expect time slicing and
previously operated without time slicing, but now fallback to the new
default of a time slice size of 20 added in e337b7b. This explicitly sets
the time slice size to 0.

Signed-off-by: Daniel Mangum <georgedanielmangum@gmail.com>
2025-05-17 14:10:13 +02:00
Daniel Mangum
71c4476332 tests: kernel: usage: turn off time slicing in thread runtime stats tests
Turns off time slicing as these tests do not expect time slicing and
previously operated without time slicing, but now fallback to the new
default of a time slice size of 20 added in e337b7b. This explicitly sets
the time slice size to 0.

Signed-off-by: Daniel Mangum <georgedanielmangum@gmail.com>
2025-05-17 14:10:13 +02:00
Wajdi ELMuhtadi
6353ba88b6 drivers: sensor: wsen_itds_2533020201601: add sensor driver
Add wsen_itds_2533020201601 driver with
the corrected name and compatibility with
the hal update as well as added new features.

Signed-off-by: Wajdi ELMuhtadi <wajdi.elmuhtadi@we-online.com>
2025-05-16 22:56:06 +02:00
Peter Mitsis
38243564b8 doc: Add reference to time slice Kconfig options
Updates the scheduling documentation to include references to the
time slicing Kconfig options to make them easier to notice.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-05-16 22:55:56 +02:00
Daniel Mangum
f47330edd8 tests: kernel: set timeslice size to 0 in tests that do not exercise it
Sets CONFIG_TIMESLICE_SIZE=0 for tests that previously expected to run
without timeslicing enabled, and now fail with the default
CONFIG_TIMESLICE_SIZE=20. Note that timeslicing functionality is still
included, but no actual timeslicing is performed.

Signed-off-by: Daniel Mangum <georgedanielmangum@gmail.com>
2025-05-16 22:55:49 +02:00
Daniel Mangum
e337b7b65d kernel: sched: default TIMESLICE_SIZE to 20
Sets the default for CONFIG_TIMESLICE_SIZE to 20 to approximate the
historical clamping behavior that was removed in 405611d.

Signed-off-by: Daniel Mangum <georgedanielmangum@gmail.com>
2025-05-16 22:55:49 +02:00
Rubin Gerritsen
577a004b32 drivers: spi: nrfx: Add explicit dependency to GPIO
This dependency was always there but not explicitly defined.
By adding the explicit dependency it becomes more obvious
what is wrong when SPI is enabled but GPIO disabled.

This was found when building `samples/bluetooth/peripheral`
for `nrf54l15dk/nrf54l15/cpuapp` with `CONFIG_GPIO=n`.

Before we got:
 - A linker error in `spi_nrfx_common.c` failing
   to reference some nrfx_gpiote APIs.
 - A linker error in `spi_nrfx_spim.c` failing to reference
   the GPIO dts entry.

Now we will get a warning of that GPIO is not enabled
With this it becomes more obvious that SPI driver is enabled by
default because of the external flash mounted on the DK.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-05-16 22:55:38 +02:00
Jamie McCrae
a1e66b4952 sysbuild: image_configurations: Add firmware loader dtc overlay file
Adds a devicetree overlay file for the firmware loader image which
sets the code partition to slot 1, which is where the firmware loader
image resides

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-05-16 21:37:01 +02:00
Jamie McCrae
1e73b581c6 sysbuild: Add support for image configuration dtc overlay files
Adds support for using image-specific configuration devicetree
overlay files

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-05-16 21:37:01 +02:00
Scott Worley
356827e4f4 tests: drivers: spi: loopback: Add Microchip MEC174x and MEC175x boards
Add Microchip MEC5 HAL based mec_assy6941 evaluation board to
the Zephyr SPI loopback driver test.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-05-16 21:36:50 +02:00
Scott Worley
53e17c4c22 drivers: spi: microchip: Add SPI driver for MEC5 HAL quad SPI
SPI driver for Microchip MEC5 HAL based QSPI controller. QSPI
hardware supports full duplex, dual, and quad operation. MEC5
QSPI controller also includes three local DMA channels per
direction to off load firmware. The driver API supports full
or half-duplex. Due to QSPI hardware not supporting one wire
half-duplex, this driver supports full-duplex only. QSPI hardware
design requires it to control chip select and current hardware
supports up to two chip selects. Zephyr's SPI DT macros store the
child SPI device's reg properity as the "slave" member of the SPI
configuration structure. The driver uses the "slave" value as the
chip select. Additional timing settings specific to SPI flash devices
are in a new SPI device YAM file: "microchip,mec5-qspi-device.yaml"
which includes the standard "spi-device.yaml". If the new YAML is not
used, the QSPI controller will use default timing values for chip
select and I/O line taps.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-05-16 21:36:50 +02:00
Luis Ubieda
035e651af0 tests: sensor: i2c: Add rm3100 to Build-all testsuite
For build-time validation.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-16 21:36:23 +02:00
Luis Ubieda
a13be2f320 sensor: rm3100: Add streaming mode
Compatible trigger: DRDY.

Tested with Sensor Shell commands.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-16 21:36:23 +02:00
Luis Ubieda
4dfe251986 sensor: rm3100: Add ODR build-time setting through DTS property
Using pre-defined values displayed on datasheet's table 5-4 for
CMM Update Rates.

Please note that datasheet specifies these Update-Rates may have
up to 7% standard deviation, which may be significant for certain
applications.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-16 21:36:23 +02:00
Luis Ubieda
c1f3e2c712 sensor: rm3100: Basic functionality
This patch introduces rm3100 magnetometer sensor, with basic
support (only read-decode).

This driver has bus support for I2C.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-16 21:36:23 +02:00
Yunshao Chiang
8f8b223ff2 drivers: crypto: add it51xxx sha256 driver
Implement a crypto sha256 driver for it51xxx series.

Signed-off-by: Yunshao Chiang <Yunshao.Chiang@ite.com.tw>
2025-05-16 19:07:37 +02:00
Erwan Gouriou
cec116c83f drivers: flash: xspi: Put delay block config under specific bit
On some series, use of Delay Block could be possible on OSPI device but
not on HSPI one (which uses this drivers).
As a quick fix check the presence of XSPI Delay Block by-pass
configuration bit instead of the Delay Block presence.

Note: This fix works because we don't have cases today where this driver
is used for OSPI and HSPI instances with mixed DLYB compatibility.
This may have to be reviewed one day and may require a more complex fix
with instantiable configuration, but this day may never come as well.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-05-16 19:07:23 +02:00
Tiffany Hsieh
9c1ab4f876 modules: mbedtls: fix PSA Kconfig file generation on Windows
When running in a Windows environment, convert the slash direction to
match that used in config.psa and config-psa.h to eliminate the issue.

Signed-off-by: Tiffany Hsieh <thsieh@atmosic.com>
2025-05-16 19:07:10 +02:00
Benjamin Cabé
08206688fd scripts: runners: nios2 runner has been dropped
Remove `nios2` from list of available runners as it's just been dropped
with commit 5fe84d5b69

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-16 19:02:34 +02:00
Aksel Skauge Mellbye
b633265986 doc: migration-guide-4.2: Silabs SoC DTS restructure
Describe changes users need to do in their out of tree board definitions
after the SoC DTS files have been moved into subdirectories.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-16 19:02:25 +02:00
Aksel Skauge Mellbye
a05567b3ab dts: arm: silabs: Refactor xg29 directory
Align xg29 directory with other Series 2 families, introducing
separate .dtsi files per device family inheriting the common
xg29.dtsi file.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-16 19:02:25 +02:00
Aksel Skauge Mellbye
ea383dee9c dts: arm: silabs: Move efr32bg27 to xg27 directory
Introduce subdirectory for xg27 socs.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-16 19:02:25 +02:00
Aksel Skauge Mellbye
96df30829e dts: arm: silabs: Move efr32mg24 to xg24 directory
Introduce subdirectory for xg24 socs.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-16 19:02:25 +02:00
Aksel Skauge Mellbye
8ab2f34d96 dts: arm: silabs: Move efr32zg23 to xg23 directory
Introduce subdirectory for xg23 socs.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-16 19:02:25 +02:00
Aksel Skauge Mellbye
9cea156611 dts: arm: silabs: Move efr32bg22 to xg22 directory
Introduce subdirectory for xg22 socs.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-16 19:02:25 +02:00
Aksel Skauge Mellbye
d3c1f2786a dts: arm: silabs: Move efr32mg21 to xg21 directory
Introduce subdirectory for xg21 socs.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-16 19:02:25 +02:00
Fabrice DJIATSA
5f9f29542a boards: st: stm32u083c_dk: correct arduino pin header
Arduino pn D10 is connected to port A pin 15

according to UM3292 - Rev 2.

This pin is used in tests/drivers/gpio/gpio_basic_api.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-05-16 19:02:17 +02:00
Peter Wang
2fc2c1dd2a boards: frdm_mcxa166, frdm_mcxa276: add spi support
1. enable spi support
2. verified tests/drivers/spi/spi_loopback

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-05-16 19:01:50 +02:00
Peter Wang
8405754a30 boards: frdm_mcxa166, frdm_mcxa276: add i2c support
1. enable i2c support
2. verified tests/drivers/i2c/i2c_target_api

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-05-16 19:01:50 +02:00
Peter Wang
073e04ce32 boards: frdm_mcxa166, frdm_mcxa276: add adc support
1. enable adc support
2. verified samples/drivers/adc/adc_dt and tests/drivers/adc/adc_api

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-05-16 19:01:50 +02:00
Neil Chen
ee598f912e samples: sensor: Add support for temperature sensor on FRDM_MCXA153
Add sample.sensor.thermometer_i3c support for mcxa153

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-16 19:01:31 +02:00
Neil Chen
4a32f352cc boards: nxp: frdm_mcxa153: Support i3c for NXP frdm_mcxa153 board
Support i3c for NXP frdm_mcxa153 board.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-16 19:01:31 +02:00
Neil Chen
960e015aba dts: arm/nxp: Add i3c nodes to NXP MCXA153 dtsi file
Add i3c nodes to NXP MCXA153 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-16 19:01:31 +02:00
Neil Chen
7ed7b3cc57 boards: nxp: frdm_mcxa153: Support lptmr for NXP frdm_mcxa153 board
Support lptmr for NXP frdm_mcxa153 board.
Test using tests/drivers/counter/counter_basic_api.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-16 19:01:21 +02:00
Neil Chen
e66e545e06 dts: arm/nxp: Add lptmr nodes to NXP MCXA153 dtsi file
Add lptmr nodes to NXP MCXA153 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-16 19:01:21 +02:00
Neil Chen
4a0157f106 boards: nxp: frdm_mcxa153: Support ctimer for NXP frdm_mcxa153 board
Support ctimer for NXP frdm_mcxa153 board, correct Core clock
frequency to 96MHz.
Test using tests/drivers/counter/counter_basic_api.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-16 19:01:21 +02:00
Neil Chen
e2ad92583f dts: arm/nxp: Add ctimer nodes to NXP MCXA153 dtsi file
Add ctimer nodes to NXP MCXA153 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-16 19:01:21 +02:00
Alex Rodriguez
e9fd7ecf69 tests: drivers: wdt: basic_reset_none: frdm_rw612: Enable standby mode
Enables system PM and standby mode to
verify that the wdt driver correctly handles
PM3 mode.

Signed-off-by: Alex Rodriguez <alejandro.rodriguezlimon@nxp.com>
2025-05-16 19:01:08 +02:00
Alex Rodriguez
64b8d9e0cf drivers: watchdog: wdt_mcux_wwdt: Add PM support for low power modes
Enables sleep mode (PM3) on RW61x. The driver
re-enables the wdt on wake-up based on the previous
configuration. Note that the wdt counter value always
resets to the max window value on wake-up

Signed-off-by: Alex Rodriguez <alejandro.rodriguezlimon@nxp.com>
2025-05-16 19:01:08 +02:00
Alex Rodriguez
dafdcab0fa dts: arm: nxp: rw6xx: add wwdt to power domain 3
Connect wwdt to power domain 3 to enable low
power management in the driver

Signed-off-by: Alex Rodriguez <alejandro.rodriguezlimon@nxp.com>
2025-05-16 19:01:08 +02:00
Martin Stumpf
7dd6f94e57 drivers: spi: nxp_lpspi: Fix race condition in ISR
There was a race condition where `lpspi_end_xfer` can be called multiple
times per transfer. There was the case where a TX interrupt gets
triggered without the RX interrupt being set, and TX finishes writing
its last byte. Then, `spi_context_rx_len_left() == 0` is true and
`lpspi_end_xfer` happens, but the RX interrupt is still active. Then,
when the RX interrupt happens, `lpspi_end_xfer` will get called again.

To fix that, the architecture was adjusted to only call `lpspi_end_xfer`
once no interrupts are active any more, and the disabling of the
interrupts gets used to signal the end of the TX and RX part.

Minor adjustments were necessary to use the interrupt enable signals for
this purpose; the TX irq handler had its internal order reversed,
otherwise it wasn't guaranteed that the physical transfer is finished
when we disable the interrupt.

Also, the code where the RX interrupt gets disabled had to be moved out
of the RX irq handler, because the RX interrupt also needs to be
disabled if RX is finished but no RX interrupt is currently active.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-05-16 19:01:01 +02:00
Frank Duerr
8079ef51e0 drivers: ptp clock: fixed invalid assertion
Assertion checked whether pointer is NULL.
Assertion should check whether pointer is *not* NULL.
Fixed by changing check in assertion.

Signed-off-by: Frank Duerr <frank.duerr@ipvs.uni-stuttgart.de>
2025-05-16 19:00:50 +02:00
Frank Duerr
3cd795ba59 drivers: ethernet: fixed calling mutex from ISR
The NXP ENET driver used a mutex inside an ISR.
Since mutexes are not allowed in ISR, an assertion had been triggered.
The mutex is not required since a semaphore ensures sequential writing
(in ISR) and subsequent reading (after eth_wait_for_ptp_ts()).
Fixed by removing calls to mutex.

Signed-off-by: Frank Duerr <frank.duerr@ipvs.uni-stuttgart.de>
2025-05-16 19:00:38 +02:00
Vit Stanicek
405ab182a9 drivers: intc_nxp_pint: Decouple from fsl_power.h
Add drivers/interrupt_controller/intc_nxp_pint/power.h abstracting
EnableDeepSleepIRQ and DisableDeepSleepIRQ invocations from
intc_nxp_pint.c. Modify intc_nxp_pint.c to use that file.

fsl_power.c and fsl_power.h can't be built on the
mimxrt685_evk/mimxrt685s/hifi4 target, so it's excluded from it in hal_nxp.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-05-16 19:00:30 +02:00
Hake Huang
0c5f13a599 tests: dma: enable dma test setting for NXP KE1XZ
NXP Ke1xz series need using mux starting from 60

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-05-16 19:00:17 +02:00
Phi Bang Nguyen
7b421398c4 drivers: video: Rename signal variables to avoid compliance violation
Rename signal variables to sig to be compliant with code rule 21.2

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-16 19:00:09 +02:00
Phi Bang Nguyen
9fa1aeea32 drivers: video: Add video_buf_type
M2M devices like ISPs or PxP have two separate buffer queues, i.e.
incoming and outcoming queues. For each API, the driver needs to
distinguish on which queue it needs to take action.

Add video buffer type to support this kind of devices.

- get_caps(), set/get_format(), enqueue()/dequeue(): the buffer type
is embeded in the video_caps, video_format and video_buffer structs

- video_stream_start/stop() : buffer type needs is sent as a parameter

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-16 19:00:09 +02:00
Phi Bang Nguyen
b63fb91622 drivers: video: Drop video_endpoint_id
The video endpoints are already described in the devicetree. The
video_endpoint_id parameter in each video API is not necessary and has
no usage. Drop it.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-16 19:00:09 +02:00
Phi Bang Nguyen
579741e5e5 drivers: video: esp32: Fix flush callback
When stopping, the framework calls driver's stop callback then driver's
flush callback. Hence, driver's flush callback does not need to call
stop callback again.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-16 19:00:09 +02:00
Andrzej Głąbek
6b02c9f6a1 tests: drivers: clock_control: Add initial DVFS polling
Add a setup routine that waits until DVFS finishes its initialization
and during that time tries to constantly make requests that involve
DVFS. This polling ensures that the clock control driver can properly
recover after an unsuccessful request.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-05-16 17:32:35 +02:00
Andrzej Głąbek
c365fbb3f6 drivers: clock_control_nrf2_common: Add resetting of the on-off services
If an on-off service records an error while transitioning to the on
state, it stays in the error state and does not allow new requests
to be made until its state is reset. Add resetting of the services
associated with particular clock controllers so that requests can
be retried after failures.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-05-16 17:32:35 +02:00
Andrzej Głąbek
009201e0f2 tests: driver: nrf_clock_control: Verify that clocks are ready
Ensure that a given clock controller is ready before making requests
to it. Otherwise, if for some reason the clock controller fails to
initialize (for example, when BICR turns out to be not populated with
required values), the test may end up with an enigmatic bus fault.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-05-16 17:32:35 +02:00
Ping Wang
355a5525bc Bluetooth: Audio: fix BIS_Sync_State for BASS server
BASS server need to notify that both BIS and PA are no longer synced by
setting all required fields to 0 after client stops BIS by sending a
BIG control PDU with a BIG TERMINATED indication.

meanwhile BIG_Encryption in the notification should also be reset to be
BT_BAP_BIG_ENC_STATE_NO_ENC when BIS is not synced anymore.

Signed-off-by: Ping Wang <pinw@demant.com>
2025-05-16 17:32:28 +02:00
Mikolaj Klikowicz
8c3e937614 drivers: clock_control: clock_control_max32: Enable IPLL
Make enabling MAX78002 IPLL clock from dts possible

Signed-off-by: Mikolaj Klikowicz <mklikowicz@antmicro.com>
2025-05-16 17:32:09 +02:00
Benjamin Cabé
fd2a80e299 samples: net: cellular_modem: add test for mikroe_lte_iot10_click shield
Add a test for the mikroe_lte_iot10_click shield.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-16 17:31:58 +02:00
Benjamin Cabé
14db737d7b shields: add initial support for MikroE LTE IoT 10 Click
Add new shield featuring Sequans Monarch 2 GM02S modem.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-16 17:31:58 +02:00
Yonas Alizadeh
c186bffab8 drivers: flash: flash_stm32g4x: Fix STM32G4 unaligned read access
Due to source data pointer having no alignment constraint,
extra care needs to be taken when reading source data
as dword

Signed-off-by: Yonas Alizadeh <yonas.alizadeh@alfalaval.com>
2025-05-16 16:12:10 +02:00
Chun-Chieh Li
2a7ffe5f02 boards: numaker_m55m1: add BTN0/BTN1 buttons
Add BTN0/BTN1 buttons on numaker_m55m1 board for e.g. hid-mouse
sample test

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-05-16 16:11:54 +02:00
Chun-Chieh Li
7095608f7c drivers: usb: udc: support numaker m55m1x series soc
This supports nuvoton numaker m55m1x series soc. Besides, it also
has relevant modifications, including:
1. Fix failure to enable HICR48M, which is to clock usbd and phy
2. Support HWINFO for USB device serial number

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-05-16 16:11:54 +02:00
Chris Friedt
c32488f97b cmake: kconfig: auto-generate boolean board revision option
Automatically generate a boolean CONFIG_BOARD_REVISION_FOO=y Kconfig
option based on e.g. CONFIG_BOARD_REVISION="foo".

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-16 16:11:48 +02:00
Lars Segerlund
ffe52da2f0 bluetooth: Controller: Set sdu_max fixing ISO test mode sdu_max
For ISO test mode sdu_max to work it actually has to be set somewhere
and this does that.

Signed-off-by: Lars Segerlund <lrsu@demant.com>
2025-05-16 16:11:41 +02:00
Josuah Demangeon
084f0acb36 drivers: video: controls: add the BASE and CAMERA controls
Add all the base controls present like they are in Linux into Zephyr,
limited to those that can apply in the current system:
- Buttons are left as integer for now.
- Some description is modified to fit the Zephyr situation.
- For the minimum number of buffer, Zephyr uses a different mechanism.
- No audio support through the video subsystem.
- Homogenize the wording

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-16 16:11:32 +02:00
Vinayak Kariappa Chettimada
2fc54ae3bb Bluetooth: Controller: Fix nRF CCM disable on connection event abort
Fix missing nRF CCM disable on connection event abort.

There can be a problem on nRF SoC for example when a S8
"encrypted" reception is aborted, and a 2M "cleartext"
reception starts; slow CCM (that is not stopped as part of
radio disable) will corrupt a fast received "cleartext" when
the same current free rx buffer is reused in the Controller.
This is not a problem when the connection being abort-ee is
on a faster PHY than the abort-er.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-16 12:36:43 +02:00
Lukasz Mrugala
d2ebe9c6de ci: Expand BBox tests with Twister runs
Blackbox tests now shall include smoke tests,
that is Twister calls in the environment.

Additionally, those smoke tests will run
on multiple platforms.

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2025-05-16 12:36:35 +02:00
Francois Ramu
97855afc23 tests: drivers: flash common testing in non SPI-NOR
Set an overlay to build tests/drivers/flash/common/
drivers.flash.common.disable_spi_nor when the SPI NOR exists
but test does not use it

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-16 12:36:26 +02:00
Alex Apostolu
6e34acc4e2 Bluetooth: Host: Use macro for nanoseconds per second
Use the macro NSEC_PER_SEC defined in sys_clock.h for nanoseconds per
second when updating write stats.

Signed-off-by: Alex Apostolu <apostolu240@gmail.com>
2025-05-16 09:38:47 +02:00
Luca Burelli
fe7f71ba16 dtlib: add test for lineno/filename comments
Tweak the existing filename_and_lineno test to also check the generated
comments in the string representation of the devicetree match expected
contents and alignment.

Using tmpdir as the base directory simplifies the comparison by avoiding
directory separator issues.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-05-16 09:38:35 +02:00
Luca Burelli
c1603b3163 gen_edt: use workspace dir as base for relative paths in comments
This commit allows comments to reference files with paths that are relative
to the Zephyr workspace root. This is done by adding a new argument
'--workspace-dir' to the 'gen_edt.py' script, which is passed to the
'EDT' and 'DT' classes and used instead of the current working directory.

The workspace directory is set to WEST_TOPDIR if West is in use,
otherwise it is set to the parent directory of ZEPHYR_BASE so that
Zephyr files have a 'zephyr/' prefix.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-05-16 09:38:35 +02:00
Luca Burelli
a63cb8e74d dtlib: fix double empty line before root node
The root node is the first node in the DTS string representation, and is
currently separated from the headers by two empty lines.

Adjust the spacing so that only one line is printed in all situations. A
small adjustment is added to the test suite to keep the current expected
outputs unchanged.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-05-16 09:38:35 +02:00
Benjamin Cabé
afdb62d1e2 dtlib: add lineno/filename to string representation of a DT
Output lineno/filename as comments in the string representation of a DT
to help with debugging DT issues. Also, remove the added comments when
comparing the string representation of a DT to a reference string in the
DT testsuite.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-05-16 09:38:35 +02:00
Luca Burelli
6b325daa2a dtlib: wrap array properties in string representation
List each element of a property array in a different line to improve
the readability of the generated DTS file.
Update the test suite's expected outputs accordingly.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-05-16 09:38:35 +02:00
Luca Burelli
4b8be385c0 dtlib: fix 'phandle' property's filename and line number
The phandle property is auto-generated when parsing the DTS, so there is
no 'source information'. This commit sets the filename and line number
of the phandle property to be the same as the first reference to the
target node.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-05-16 09:38:35 +02:00
Luca Burelli
90b7c4750a manifest: update zephyr-lang-rust with DTS comment support
Update the manifest for the 'zephyr-lang-rust' module to include
the commit that adds support for comments in the Rust DTS parser.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-05-16 09:38:35 +02:00
Luis Ubieda
6c8ec97384 shields: pmod_acl: Set default ODR and watermark values
So applications working with this shield will continue to work
as before.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-16 09:37:28 +02:00
Luis Ubieda
8e0e99b9dd sensor: adxl345: Formatting improvements on macrobatics
No functional changes, only formatting changes.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-16 09:37:28 +02:00
Luis Ubieda
9a044aaacb sensor: adxl345: Optimize RTIO SQE/CQE pool based on fifo-watermark
Since it's directly related (we can't just burst-read the fifo at
once). This patch includes a comment block explaining this rationale.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-16 09:37:28 +02:00
Luis Ubieda
36917d4809 sensor: adxl345: Allow fifo-watermark configurable through dts
Allow for users to define the fifo-watermark on a per-instance basis
through device-tree properties. This setting is validated at build
time, so missing it when required, or setting an invalid value should
not end up in a run-time errror (as in: it runs but nothing happens).

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-16 09:37:28 +02:00
Luis Ubieda
4243ad20ca sensor: adxl345: rename ADXL345_ODR_12HZ to ADXL345_ODR_12_5HZ
To better reflect the actual ODR setting.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-16 09:37:28 +02:00
Luis Ubieda
f8416de09e sensor: adxl345: fix: Overriding of ODR setting in DTS property
This patch fixes previous overriding of ODR setting through DTS (it
would always be 25-Hz, irrespective of what the DTS property said).

While doing so, create dt-binding enum to improve settings clarity.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-16 09:37:28 +02:00
Luis Ubieda
5e1a2fcf31 sensor: adxl345: Prevent clearing SQE flags set while prepping SQEs
SQE flags are adjusted when preparing write/read ops, therefore an OR
operation is required.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-16 09:37:28 +02:00
Luis Ubieda
ce2d16be01 sensor: adxl345: Fix conditional instantiation of RTIO ctx and IODEV
With actual parameter to determine whether the driver requires it:
Streaming mode enabled.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-16 09:37:28 +02:00
Rodrigo Peixoto
dd3c66ceed doc: releases: Add runtime changes to release notes
Add runtime observers static allocation feature to release notes.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-05-16 09:37:20 +02:00
Rodrigo Peixoto
6cd508f111 doc: zbus: Runtime observers pool
Add documentation of the runtime observers pool.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-05-16 09:37:20 +02:00
Rodrigo Peixoto
67d24b9e42 samples: zbus: Adjust runtime observers sample
Reverse the changes the affected API and add adjust the sample to the new
dynamic and static variations.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-05-16 09:37:20 +02:00
Rodrigo Peixoto
6d0760aa98 tests: zbus: Add separate tests for ALLOC NONE
Add tests for ALLOC_NONE configuration.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-05-16 09:37:20 +02:00
Rodrigo Peixoto
f6f2b527bb tests: zbus: Adjust runtime observers tests
Reverse the changes the affected API and add test to the new dynamic and
static variations.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-05-16 09:37:20 +02:00
Rodrigo Peixoto
6ae9a981d0 zbus: Improve consistency with runtime observers
A previous PR merged (to remove runtime observers' dependency with heap)
added inconsistencies and compatibility breaks to the zbus. This commit
improves that by removing the inconsistencies and still attending to the
features requested by the community.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-05-16 09:37:20 +02:00
Anas Nashif
e48c90700d doc: remove more occurances of Nios II
Remove all occurances of Nios II from docs and code.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-15 20:01:05 -04:00
Anas Nashif
11c61c618d doc: add a note about removing nios2
Add a not about removal in the release notes.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-15 20:01:05 -04:00
Anas Nashif
5fe84d5b69 arch: nios2: remove arch
Remove architecture and dependencies.
Remove altera HAL supporting nios2

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-15 20:01:05 -04:00
Anas Nashif
7e47227d87 boards: max10/nios2: remove remaining boards/socs
Remove remaining nios2 based boards and soc files.

Part of #89280

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-15 20:01:05 -04:00
Anas Nashif
d881fb334b boards: qemu_nios2: drop board definition
Remove qemu_nios2, more removals will follow.

Part of #89280

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-15 20:01:05 -04:00
Adrian Bonislawski
9c2983926a dts: intel_adsp_ace30: merge and cleanup ace30 dtsi files
The new ace30 files structure is organized as follows:

intel_adsp_ace30.dtsi - main file for all variants
intel_adsp_ace30_ptl.dtsi - additional file for PTL variant
intel_adsp_ace30_wcl.dtsi - additional file for WCL variant

The main ace30.dtsi file contains most of the fields,
with only the differences specified in the ace30_ptl.dtsi
and ace30_wcl.dtsi files.

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-05-15 22:14:44 +02:00
Adrian Bonislawski
7918839ddd intel_adsp: ace30: Bring up ACE 3.0 (WCL)
This commit adds definition of ACE 3.0 Wildcat Lake board

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-05-15 22:14:44 +02:00
Felix Behnke
a045eaebad fix: twister: quit-on-failure
use public queue methods to clear queue on failure

-s Felix Behnke felixbeiderarbeit@gmail.com

Signed-off-by: Felix Behnke <felixbeiderarbeit@gmail.com>
2025-05-15 22:14:27 +02:00
Andre Morishita
013f6f4039 boards: variscite: imx8mp_var_som: Update index.rst
Update Cortex-M7 DDR address in memory mapping table to 0x7B000000.

Signed-off-by: Andre Morishita <andre.m@variscite.com>
2025-05-15 22:14:16 +02:00
Andre Morishita
9c9e242f57 boards: variscite: Add Variscite DART-MX8M-PLUS board
Add Variscite DART-MX8M-PLUS board support. This SoM is based on NXP's
i.MX8M Plus SoC. It includes Cortex-A53 and Cortex-M7 support.

Signed-off-by: Andre Morishita <andre.m@variscite.com>
2025-05-15 22:14:16 +02:00
Piotr Kosycarz
67eb03c52c tests: drivers: uart: uart_async_api: test short buffers
Extend testing with short buffers.
Try different lengths of transmitted data.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-05-15 22:14:08 +02:00
Manuel Aebischer
da6f39172f rp2350: Only add IMAGE_DEF for apps at start of flash.
The image_def header shall not be added to apps that are booted by a
bootloader, e.g. mcuboot. Added proper handling for UF2 by hanan619.

Signed-off-by: Manuel Aebischer <manuel.aebischer@belden.com>
2025-05-15 22:14:01 +02:00
Benjamin Cabé
f14ea32ebc settings: replace [[maybe_unused]] by __maybe_unused
[[maybe_unused]] is a C23 construct so fallback to Zephyr's
__maybe_unused

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-15 22:13:49 +02:00
Pete Johanson
fb7f0ac39c boards: adi: Add both HyperRAM banks to APARD32690
Add the correct HypeBus setup for both banks of HypeRAM found on the
APARD32690 board.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-05-15 19:32:45 +02:00
Ali Hozhabri
896c1e3d55 boards: st: Add arduino_serial node label for some Nucleo-H7 boards
Add arduino_serial node label and assign appropriate UART pins.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-05-15 19:32:29 +02:00
Ali Hozhabri
cf1ebf14f2 boards: st: Fix Arduino UART pins for some Nucleo-H7 boards
Fix the issue related to assigning wrong UART pins to arduino_serial

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-05-15 19:32:29 +02:00
Jason Yu
c488c652cd modules: hal_nxp: Unified to use SDK NG driver
Some NXP boards are using legacy SDK driver, such as S32K, K64, MIMX8Q,
and so on. The legacy SDK driver will not be updated, migrate to use
SDK NG driver.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-05-15 19:32:19 +02:00
Carles Cufi
9f7b786a35 scripts: compliance: Avoid exception when commit message body is empty
Avoid the following exception in the Identity test when the commit body
is empty:

Traceback (most recent call last):
  File "zephyr/scripts/ci/check_compliance.py", line 2053, in main
    n_fails = _main(args)
              ^^^^^^^^^^^
  File "zephyr/scripts/ci/check_compliance.py", line 1988, in _main
    test.run()
  File "zephyr/scripts/ci/check_compliance.py", line 1459, in run
    auth_name, auth_email, body = git(
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
ValueError: not enough values to unpack (expected 3, got 2)

This is triggered because ``%b`` represents the body of the commit
message, which can be empty if there's a single line in it, because the
first line is considered the title.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-05-15 19:31:47 +02:00
Aymeric Aillet
ebf79c1dac boards: renesas: Rework rcar_salvator_xs doc
Rework renesas rcar_salvator_xs doc to meet what has
been done for the documentation of other rcar boards.
Also take advantage of these new boards documentation
features:
- zephyr:board
- zephyr:board-supported-hw
- zephyr:board-supported-runners

Signed-off-by: Aymeric Aillet <aymeric.aillet@iot.bzh>
2025-05-15 19:31:34 +02:00
Aymeric Aillet
3bc3627396 boards: renesas: Edit rcar_salvator_xs full_name
Edit the rcar_salvator_xs board full_name
from specific A57 name to generic one
to meet names used by other rcar boards
and unify this boards range documentation.

Signed-off-by: Aymeric Aillet <aymeric.aillet@iot.bzh>
2025-05-15 19:31:34 +02:00
Aymeric Aillet
6d62b90000 boards: renesas: Rework rcar_salvator_x doc
Rework renesas rcar_salvator_x doc to meet what has
been done for the documentation of other rcar boards.
Also take advantage of these new boards documentation
features:
- zephyr:board
- zephyr:board-supported-hw
- zephyr:board-supported-runners

Signed-off-by: Aymeric Aillet <aymeric.aillet@iot.bzh>
2025-05-15 19:31:34 +02:00
Aymeric Aillet
ed5750c652 boards: renesas: Edit rcar_salvator_x full_name
Edit the rcar_salvator_x board full_name
to meet names used by other rcar board
and unify this board range documentation.

Signed-off-by: Aymeric Aillet <aymeric.aillet@iot.bzh>
2025-05-15 19:31:34 +02:00
Aymeric Aillet
54f574385a boards: renesas: Create spider_s4 all-in-one doc
Merge both dedicated r52 and a55 spider_s4 boards doc
into an all-in-one documentation and take advantage
of these new boards documentation features:
- zephyr:board
- zephyr:board-supported-hw
- zephyr:board-supported-runners

Signed-off-by: Aymeric Aillet <aymeric.aillet@iot.bzh>
2025-05-15 19:31:34 +02:00
Aymeric Aillet
5935998fec boards: renesas: Edit rcar_spider_s4 full_name
Edit the rcar_spider_s4 board full_name
from specific A55 name to generic one
as it is used as main name for the whole board.

Signed-off-by: Aymeric Aillet <aymeric.aillet@iot.bzh>
2025-05-15 19:31:34 +02:00
Aymeric Aillet
1c072fdcd9 boards: renesas: Create h3ulcb all-in-one doc
Merge both dedicated r7 and a57 h3ulcb boards doc
into an all-in-one documentation and take advantage
of these new boards documentation features:
- zephyr:board
- zephyr:board-supported-hw
- zephyr:board-supported-runners

Signed-off-by: Aymeric Aillet <aymeric.aillet@iot.bzh>
2025-05-15 19:31:34 +02:00
Aymeric Aillet
e75dc41eed boards: renesas: Edit rcar_h3ulcb full_name
Edit the rcar_h3ulcb board full_name
from specific A57 name to generic one
as it is used as main name for the whole board.

Signed-off-by: Aymeric Aillet <aymeric.aillet@iot.bzh>
2025-05-15 19:31:34 +02:00
Ayush Singh
7275948a7c boards: beagle: beagleplay_cc1352p7: Enable watchdog timer
Enable watchdog timer in the base tree. This is required for
MicroPython.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-05-15 19:31:24 +02:00
Martin Hoff
cfb0a80df4 dts: arm: silabs: change siwg917 board ram start address
The first 1 KB is reserved for the NWP (Network Coprocessor). This
change also resolves the null pointer error issue, as a .data or a
_ramfunc might get the address 0x0.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-05-15 17:54:02 +02:00
Ole Sæther
291c9f7732 samples: sensor: ms5837: Fix wording in README
The nRF52840 Preview development kit is no longer available and the
text in the README.rst is changed to be "nRF52840 Development kit" and
the link to the documentation is changed to point to the production
version.

Signed-off-by: Ole Sæther <ole.saether@nordicsemi.no>
2025-05-15 17:53:52 +02:00
Armando Visconti
6a1e485055 boards: stm32: Add spi1 to nucleo_h503rb
Added spi1 configuration to Nucleo H503RB.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-05-15 17:53:38 +02:00
Sean Kyer
3d55a9d410 drivers: counter: Place max32 API into iterable section
Add warpper DEVICE_API macro to counter_max32_wut instance.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-05-15 17:53:31 +02:00
Sean Kyer
ae681c48c7 drivers: counter: counter_max32_wut: Rename irq_config callback
Renamed irq_config callback function to follow
standard of other drivers.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-05-15 17:53:31 +02:00
Sean Kyer
b476fa78d2 drivers: counter: counter_max32_wut: Fixed PM resume routine
Seperated SW and HW initialization code so timer is not
wiped upon a PM resume event.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-05-15 17:53:31 +02:00
Sean Kyer
ee883a9f55 drivers: counter: counter_max32_wut: Add backup support
Added backup power mode support to max32 wut.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-05-15 17:53:31 +02:00
Tahsin Mutlugun
ab43ceb1eb drivers: counter: Add MAX32 Wake-Up Timer driver
MAX32 Wake-Up Timer is a 32-bit timer that can wakeup the device from
low-power modes.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-05-15 17:53:31 +02:00
Riadh Ghaddab
457ade48b4 settings: zms: code style clean up
Clean some parts of the code and refactor it to avoid multiple nested
conditions.

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Riadh Ghaddab
7f716f1522 doc: settings: new API functions
Add references to the new API functions that were added
"csi_load_one" and "csi_get_val_len"

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Riadh Ghaddab
7ae14ebf58 settings: zms: use the safe function strnlen instead of strlen
if the provided name in argument is not null this could lead to un
undefined behavior.
Use strnlen to make this safe

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Riadh Ghaddab
cad2f1c103 settings: add new API function settings_get_val_len()
Add a function to get the value's length of a Key. If it doesn't exist
returns 0.
Add ZMS implementation for csi_get_val_len() and a default implementation
for the other storage systems.
Add some functional tests to verify it.

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Riadh Ghaddab
6279943831 settings: zms: recover linked list if broken
When the linked list is broken, recover it instead of reinitializing it.

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Riadh Ghaddab
5a978f4ab4 settings: zms: add more robustness to the save function
When a power off happens after writing the settings name and before
writing the linked list node we cannot write the settings name again in
the future.
Fix this by writing the linked list node before writing the name.
When loading all settings, we already delete linked list node that do
not have any name or value written.
Adds as well a recover path if a power down happens in the middle of
unlinking an LL node after a delete.

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Riadh Ghaddab
dffdec18c2 tests: settings: add functional test for ZMS
Add the functional test for the new backend of ZMS

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Riadh Ghaddab
a903b4b0d1 tests: settings: add a functional test for settings_load_one
Add a test for the new API settings_load_one that loads only one path
from the persistent storage.

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Riadh Ghaddab
831da04247 settings: add an API function to load only one settings entry
Add a a function settings_load_one that allows to load only one settings
entry instead of a complete subtree.
Add as well its implementation for ZMS backend.
This will allow a faster return if the Settings entry doesn't exist in
the persistent storage.

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Riadh Ghaddab
bf20b78543 settings: zms: add cache for linked list hash
Increase the load performance by adding an optional cache for the linked
list hashes.
This is used only when the settings_load is called with NULL parameter
and we need to load all Settings that exist in the persistent storage.
Cache is enabled using SETTINGS_ZMS_LL_CACHE and the size of the cache
is set using SETTINGS_ZMS_LL_CACHE_SIZE.
Each cache entry will add 8 bytes of RAM usage.

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Riadh Ghaddab
ae461510a7 settings: zms: load only subtree in the argument
If the subtree argument is not NULL in the settings_load function, load
only the setting entry that corresponds to that subtree.
If the subtree argument is NULL or it is not found in the storage, load
all the existing entries in the storage.

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Riadh Ghaddab
5c38c58f0c zms: optimize cache for settings subsystem
Settings subsystem is storing the name ID and the linked list node ID
with only one bit difference at BIT(0).
Settings subsystem is also storing the name ID and the data ID in two
different ZMS entries at an exact offset of ZMS_DATA_ID_OFFSET.
Using the regular lookup function could result in many cache misses.

Therefore, to assure the least number of collisions in the lookup cache,
the BIT(0) of the hash indicates whether the given ZMS ID represents a
linked list entry or not, the BIT(1) indicates whether the ZMS ID is a
name or data and the remaining bits of the hash are set to a truncated
part of the original hash generated by Settings.

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Riadh Ghaddab
42b9b5a9d7 zms: remove non needed lookup cache before writing
When the CONFIG_ZMS_NO_DOUBLE_WRITE is not enabled there is no need to
search in the cache for matching ID

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Riadh Ghaddab
c0a75da084 settings: zms: add option to disable updating linked list
When deleting a settings entry the linked list is updated by removing
the deleted node. This operation is time consuming and add some delays.
For applications that use almost the same set of Setting entries, add an
option to make this operation faster at a cost of having some empty
nodes in the linked list.
These empty nodes can be used later when the deleted entry is written
again.
Each empty node occupies 16B of storage.

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-05-15 17:53:26 +02:00
Shrek Wang
6ee55e4211 net: tcp: Remove NULL-pkt support for tcp_in()
The NULL-pkt parameter for tcp_in() was designed for generating
a SYN packet to start the 1st TCP handshake. It is only used
in net_tcp_connect() and tp_input().
To simplify the tcp_in() code logic and make it better under-
standable, a tcp_start_handshake() is added for net_tcp_connect()
and tp_input() to use. Thus, the tcp_in() only handles the in-
coming TCP packets.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-05-15 16:17:18 +02:00
Benjamin Cabé
336be1d4fb dts: vendor-prefixes: remove duplicate entry for ovti
Removed the duplicate 'ovti' entry and updated the full name to
company's current official name.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-15 16:17:11 +02:00
Vinayak Kariappa Chettimada
bebf59f9a0 Bluetooth: Controller: Fix MIC failure when 2 CISes in Peripheral
Fix MIC failure when 2 or more CISes in Peripheral is active
and any CIS before the last CIS does not have reception that
lead to the event count and payload count being incorrect.
Add the missing flush implementation when switching between
CISes in the CIG event.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-15 16:16:59 +02:00
Muzaffar Ahmed
a73f20214a drivers: wifi: siwx91x: Fix boot_config
Enable and rearrange some features in the boot config.

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-05-15 16:16:54 +02:00
Muzaffar Ahmed
2a1b754779 drivers: wifi: siwx91x: Enable roaming by default
Set the default value for WIFI_SILABS_SIWX91X_ENABLE_ROAMING to y in
Kconfig.siwx91x

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-05-15 16:16:54 +02:00
Muzaffar Ahmed
d6e106b5f0 drivers: wifi: siwx91x: Introduce flag for LIMIT_PACKET_BUF_PER_STA
Introduced WIFI_SILABS_SIWX91X_LIMIT_PACKET_BUF_PER_STA.
This flag limits packet queues in AP mode.

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-05-15 16:16:54 +02:00
Tomas Barak
699fc6dbe8 drivers: i2s: mcux_sai: add MCLK direction control in the initialization
Add support for configuring the master clock (MCLK) direction in the
I2S MCUX SAI driver. This allows controlling whether the MCLK pin acts
as an input or output based on device tree configuration, improving
flexibility when interfacing with external audio codecs.

The change leverages the mclk_output property from device tree to
properly set the direction of the MCLK pin during initialization.

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-05-15 16:16:28 +02:00
Tomas Barak
0b7527cbb8 samples: drivers: i2s: Support mimxrt1170_evkb platform in i2s output
- mimxrt1170_evkb needs CONFIG_DMA_TCD_QUEUE_SIZE=4 which is required
  by the I2S SAI driver
- add test harness for i2s_output

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-05-15 16:16:28 +02:00
Tomas Barak
79f31384c5 samples: drivers: i2s: Format i2s_codec sample main.c
- format code according to the coding rules

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-05-15 16:16:28 +02:00
Tomas Barak
3b74862032 samples: drivers: i2s: Support mimxrt1170 evkb and wm8962 in i2s_codec
- not using DMIC on this board, just play sine wave
- enable sai1 mclk-ouptut for codec init

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-05-15 16:16:28 +02:00
Tomas Barak
d0042d60d5 samples: drivers: i2s: Support sine wave playback in i2s_codec sample
- when not using DMIC, play a 16kHz stereo sine wave using codec

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-05-15 16:16:28 +02:00
Tomas Barak
31fff0801a dts: arm: nxp: Change audio-PLL clock settings on rt11xx
- change SAI clock to 24,576 MHz
  to be compatible with 48kHz sample rate and its derivatives

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-05-15 16:16:28 +02:00
Tomas Barak
7a3ebc9d19 boards: nxp: mimxrt1170_evk_cm7_B: Add wm8962 codec support
- update mimxrt1170 evkb overlay
- add wm8962 codec on lpi2c5
- add aliases for i2s samples

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-05-15 16:16:28 +02:00
Tomas Barak
9dd494f966 drivers: audio: wm8962: Add wm8962 codec support
- create driver for codec wm8962
- add Kconfig, Cmakelist references
- create dts binding

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-05-15 16:16:28 +02:00
Robert Lubos
4512cbf509 tests: net: sockets: tls_configurations: Use fixture for openssl
Currently, creating and killing openssl process was part of the test. In
result, if the test case failed for whatever reason, the openssl process
would remain open, causing disruptions in consecutive test executions.

Fix that by defining openssl server instance as a pytest fixture. That
way, openssl process will be terminated regardless of the test
result.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-15 14:10:05 +02:00
Jamie McCrae
7619592bdd mgmt: mcumgr: grp: img_mgmt: Fix wrong alignment
Fixes a line that was wrongly aligned

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-05-15 14:09:55 +02:00
Jamie McCrae
e249596faf mgmt: mcumgr: grp: img_mgmt: Add support for firmware loader mode
Adds support for using img mgmt in firmware loader mode, to allow
for loading an update image to a device

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-05-15 14:09:55 +02:00
Tomasz Leman
750821547a pm: Return false if pm_state_force fails to set state
Ensure `pm_state_force` returns `false` when it fails to retrieve or set
the desired power state. This change improves error handling and ensures
the function's behavior aligns with its intended purpose.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-05-15 14:09:46 +02:00
Chris Friedt
ee874b346d tests: posix: xsi_realtime: add integration platforms to testsuite
Use qemu_x86, qemu_cortex_a53, and qemu_riscv64 as integration
test platforms for this testsuite, since both qemu_x86 and
qemu_cortex_a53 both have an MMU available, and qemu_riscv64
can execute quickly that mmu-less systems can also use a subset
of the option group (minus `mmap()`).

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-15 14:09:33 +02:00
Chris Friedt
ab4616856e tests: posix: xsi_realtime: bump min_ram to 96k
The xsi_realtime testsuite now includes tests for fsync() and
fdatasync() which require a ram-based fat filesystem.

Technically speaking, it would probably not be 100% necessary
to use a ramdisk to test these functions, but then the test
would be limited to running on platforms with some file-system
based storage.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-15 14:09:33 +02:00
Jérôme Pouiller
182e69095b tests: drivers: pwm: Fix build
Commit a1f48216bc ("soc: silabs: siwx91x: Rename pins") broke the test
for pwm_api.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-05-15 14:09:23 +02:00
Martin Hoff
744c70bef8 tests: drivers: rtc: add siwg917_rb4338a board overlay and add rtc tag
Add rtc tag to the siwg917_rb4338a board to activate testing on the
board.
Also add an overlay for the board in order to run the test correctly.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-05-15 14:09:23 +02:00
Martin Hoff
d7deac712e dts: arm: silabs: add rtc node for siwg917
Add rtc node that was present on siwx91x baords.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-05-15 14:09:23 +02:00
Martin Hoff
742261ddaa drivers: rtc: add silabs siwx91x rtc driver
Add the support of silabs siwx91x basic rtc driver.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-05-15 14:09:23 +02:00
Iuliana Prodan
53d21f6d3d samples: add support for i.MX8ULP DSP in openamp_rsc_table
Add the dts and config overlay for imx8ulp_evk//adsp
to have the openamp_rsc_table sample working on
HiFi4 DSP from i.MX8ULP.

Since openamp_rsc_table sample uses IPM API and i.MX8ULP
has a mbox driver for messaging unit, we need a mailbox node.
This will load the ipm_mbox driver that exposes the IPM
interface while using a MBOX driver in the back-end.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-05-15 14:09:10 +02:00
Muzaffar Ahmed
951d60dcbc drivers: wifi: siwx91x: Add support for TWT
- Implemented `siwx91x_set_twt_setup` and `siwx91x_set_twt_teardown` for
  handling TWT setup and teardown requests.
- Added validation for TWT parameters, including negotiation type,
  device state, and operation type.
- Integrated TWT functionality into the `wifi_mgmt_ops` structure for
  seamless management via the Zephyr Wi-Fi API.

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-05-15 14:08:37 +02:00
Jeppe Odgaard
8b934dc1fa drivers: eeprom: tmp11x: remove redundant build assert
Initialization priority is already check by `check_init_priorities.py`

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-05-15 11:18:41 +02:00
Jordan Yates
81c4e80420 wifi: nrf_wifi: don't block workqueue in RPU recovery
Don't block the system workqueue for 2 seconds (default value) when
attempting to perform RPU recovery. The system workqueue is a shared
resource which should not be blocked for significant periods of time.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-15 11:18:37 +02:00
Benjamin Cabé
ef23562a19 doc: enhance accessibility guidelines in documentation
Add accessibility guidelines to the documentation guidelines

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-15 11:18:31 +02:00
Benjamin Cabé
67032314e5 doc: css: accessibility improvements
Minor tweaks to increase contrast as per WCAG AA guidelines.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-15 11:18:31 +02:00
Jhan BoChao
7450a5249d driver: flash: add flash driver for rts5912
add flash driver for rts5912.

Signed-off-by: Jhan BoChao <jhan_bo_chao@realtek.com>
2025-05-15 11:18:22 +02:00
Chris Friedt
393446108e samples: net: lwm2m: depend on xsi single process for gettimeofday()
https://github.com/zephyrproject-rtos/zephyr/actions/runs/\
15014534061/job/42189411225

We were seeing a linker error of the form

```
picolibc/x86_64-zephyr-elf/lib/32/libc.a(libc_time_time.c.o): \
  in function `time':
time.c:(.text.time+0x11): undefined reference to `gettimeofday'
```

Update the dependency from CONFIG_POSIX_TIMERS to
CONFIG_XSI_SINGLE_PROCESS for gettimeofday().

Note: this is really only a workaround. The proper solution would
be to have libc functions not depend on POSIX functions.

Specifically, here

https://github.com/zephyrproject-rtos/picolibc/blob/\
51a8b32857e75345c37652a80b5cda98b28d69e5/newlib/libc/time/\
time.c#L54

and here

https://github.com/zephyrproject-rtos/zephyr/blob/\
3a4e12899c2ae5962a64055f4739f774fb7262e5/lib/libc/common/\
source/time/time.c#L17

Also mentioned in #89068

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-15 09:04:08 +02:00
Anisetti Avinash Krishna
9b2e0a4b5b tests: drivers: rtc: rtc_api: boards: Enable ALARM and UPDATE testing
Enabled CONFIG_ALARM and CONFIG_UPDATE to enable these tests on intel
platforms.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-05-15 09:00:48 +02:00
Jérôme Pouiller
cfbab0eb4a boards: silabs: siwx91x: Add support for QSPI controller
Thanks to the bootloader, the memory controller is preconfigured when
Zephyr start on RB44342A.

However, this is the opportunity to show how to configure the PSRAM
controller on custom designs.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-05-15 09:00:39 +02:00
Jérôme Pouiller
1d4a0d78e3 drivers: memc: Add support for siwx91x QSPI controller
Silabs siwx91x includes a memory controller for (Quad-)SPI PSRAM. It
allows the application to use the PSRAM as if it was any other RAM.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-05-15 09:00:39 +02:00
Jérôme Pouiller
91e3f78837 drivers: memc: Sort inclusions
These are only cosmetics changes to prepare integration of the further
patches.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-05-15 09:00:39 +02:00
Jérôme Pouiller
60922a056c boards: silabs: siwx91x: Add support for PSRAM
Radio Board 4342A has 8MB of PSRAM connected to the Quad-SPI memory
controller.

The memory controller of the 4342A is preconfigured by the bootloader.
So, the PSRAM work out of the box without any manual configuration.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-05-15 09:00:39 +02:00
Jérôme Pouiller
12afcc880c boards: silabs: Add support for rb4342a
Radio Board 4342A is really similar to the 4338A. There are a few
difference on the pinmux, but most of the peripherals and the SoC are
the same.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-05-15 09:00:39 +02:00
Jérôme Pouiller
a1f48216bc soc: silabs: siwx91x: Rename pins
The reference manual and the schematics of the reference designs
numbers the pins from 0 to 57. So let's also apply this scheme to the
pinctrl.

Note while PIN are numbered between 0 and 64, the GPIOs are represented
with 4 block of 16 GPIOs. This is the way the GPIOs are documented in
the reference manual, so we don't change that (In addition,
gpio_port_pins_t is a uint32_t, so it won't be possible to represent 64
GPIOs in one gpio_port_pins_t anyway).

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-05-15 09:00:39 +02:00
Quang Le
2b2c5fc1c2 samples: drivers: spi: Add support for RZ/G3S-SMARC
Enable SPI driver samples for RZ/G3S-SMARC

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-05-15 09:00:31 +02:00
Quang Le
66eb8a8c1d tests: drivers: spi: Add support for RZ/G3S-SMARC
Enable SPI driver tests for RZ/G3S-SMARC

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-05-15 09:00:31 +02:00
Quang Le
81bd1f5ea6 boards: renesas: rzg3s_smarc: Add SPI support
Add SPI support for board RZ/G3S-SMARC

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-05-15 09:00:31 +02:00
Quang Le
580996deee dts: renesas: Add SPI support for RZ/G3S
Add SPI nodes to Renesas RZ/G3S devicetree

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-05-15 09:00:31 +02:00
Quang Le
4f63592f56 drivers: spi: Initial support for RZ/G3S
Add SPI driver support for Renesas RZ/G3S

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-05-15 09:00:31 +02:00
Tom Burdick
c0a423426f rtio: API version 0.2.0, unstable
We're well past the experimental stage, but there are still some things
that may change. Bumping the API version to 0.2.0 signals this.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-05-14 23:35:15 +02:00
Stoyan Bogdanov
f1b4c12237 drivers: hwinfo: cc23x0: Add support for cc23x0 in hwinfo
Add support for get_reset_cause and get_supported_reset_cause.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-05-14 23:35:07 +02:00
Fabio Baltieri
6d8eb270fc samples: usb: add a cdc_acm_bridge sample
Add a sample for the UART bridge driver using a USB CDC-ACM UART and a
normal one. Demonstrates how to do settings propagation (bitrate
changes) and multiple instances.

The sample needs to know what specific UART are available on each board,
so unfortunately any additional board needs its own overlay.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-14 20:11:00 +01:00
Fabio Baltieri
3cb8f745a6 serial: add an uart-bridge driver
Add a reusable uart-bridge driver that echoes data between two serial
devices. It's mainly meant to be used with one of the devices being an
USB CDC-ACM, the data is buffered, there's a pause feature to stop the
USB endpoint when the hardware UART is filling up to avoid overrun and
there's a helper function used to propagate the USB uart configuration
to the hardware one.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-14 20:11:00 +01:00
Benjamin Cabé
6e9cfcdcd5 boards: pan1783: add RST pin on mikrobus connector
The RST pin of the Mikrobus connector is P1.06

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-14 19:37:08 +02:00
Chris Friedt
1fc7ccbf96 doc: west: add documentation for west patch
Add documentation for the `west patch` command.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-14 19:36:58 +02:00
Henrik Brix Andersen
b240f11592 tests: drivers: virtualization: qemu_kvm_arm64.overlay: fix SPDX license
"UNLICENSED" is not a valid SPDX License Identifier. Remove it from the
list and just keep "Apache-2.0".

Fixes: #89413

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-05-14 19:36:38 +02:00
Harris Tomy
e31a6be0b0 soc: st: add stm32u535 support
Adds the u535 soc, similar to the u545 except without the AES HW
accelerator

signed-off-by: Harris Tomy <harristomy@gmail.com>
2025-05-14 19:36:26 +02:00
Lyle Zhu
0b0cfd5ec7 Bluetooth: Classic: SSP: Correct pairing method
In current implementation, if the MITM flag of both sides is disabled,
the pairing method is incorrect.

Such as, the IOCAP of both sides is `display_yesorno`, the pairing
method is `PASSKEY_CONFIRM`. But actually, it should be `JUST_WORKS`
in this case.

Fix the issue by setting the pairing method to `JUST_WORKS` if the
MITM flag of both sides is false.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-05-14 19:36:17 +02:00
Jérôme Pouiller
31646fd06e modules: hal_silabs: Update WiseConnect SDK
Import the new version of the WiseConnect SDK.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-05-14 19:36:07 +02:00
Emil Gydesen
6887b58d4e Bluetooth: ISO: Remove BT_ISO_TX_FRAG_COUNT
The Kconfig option has not been in use for anything for
a long time, and can safely be removed.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-14 16:28:42 +02:00
Aksel Skauge Mellbye
6a7cbff9b2 soc: silabs: siwx91x: Initialize NWP sufficiently early
The NWP provides Bluetooth, Wi-Fi and crypto services, and must
be initialized before any users of these. Mbed TLS is initialized
at priority level 40 (kernel default priority), ensure that the
NWP is initialized before that.

Make the priority configurable to allow users to tweak the init
sequence.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-14 16:27:27 +02:00
Fabio Baltieri
39e56e9a71 led: drop a bunch of now redundant brightness validations
This check is now part of the API, individual drivers don't need to do
it.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-14 16:27:18 +02:00
Fabio Baltieri
6f47466899 led: drop a bunch of on/off wrappers
These are now handled at API level, drop them from the drivers.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-14 16:27:18 +02:00
Fabio Baltieri
2f0d14176e led: fallback from set_brightness to on/off and vice versa automatically
Change the on/off/set_brightness API to automatically use whatever
function is available, this allows dimmable drivers to not implement the
on/off wrapper and vice versa.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-14 16:27:18 +02:00
Fabio Baltieri
62c1fb2097 led: drop min/max brightness from struct led_data
This is always 0 to 100, hardcode the range.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-14 16:27:18 +02:00
Fabio Baltieri
69e739359f led: check for valid brightness range at API level
The API specifies that brightness is 0 to 100, no point checking it in
the individual drivers.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-14 16:27:18 +02:00
Fabio Baltieri
551c1363dd led: add and use a LED_BRIGTHNESS_MAX definition
The led_set_brightness API says that brightness is defined as
percentage, add a macro from the max and use it everywhere.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-14 16:27:18 +02:00
Bjarki Arge Andreasen
9dfeaf2054 soc: nordic: nrf54h: gpd: select PINCTRL
Select PINCTRL if SOC_NRF54H20_GPD is selected as it is dependent
on it.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-14 16:27:10 +02:00
Derek Snell
2ad7c8c9cc doc: tests: drivers: i2s_speed: MIMXRT1060-EVK jumpers
Add correct jumper for EVKB board revision.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-05-14 16:27:05 +02:00
Bjarki Arge Andreasen
726fd18e88 tests: drivers: spi: spi_loopback: nrf54h20 cpuapp: add cs gpio
Add CS GPIO to nrf54h20dk/nrf54h20/cpuapp which is connected to
PORT which is in the "fast domain". The fast domain needs to be
resumed from thread context given it requires IPC communication.

This thus ensures that GPIO can be used with and without
PM_DEVICE_RUNTIME enabled.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-14 15:19:22 +02:00
Bjarki Arge Andreasen
937a44a74e drivers: spi: nrfx_spim: prevent self suspend until spi_release()
In case the SPI transaction has SPI_HOLD_ON_CS set, we need to keep
SPI resumed until spi_release() is called. This is required as we
now need to keep the CS GPIO port resumed until transaction is
complete.

Suspending CS GPIO is not allowed from ISR in some cases (H20 fast
GPIO instance) so we have to defer CS GPIO suspend to some thread
context (put_async or spi_release()).

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-14 15:19:22 +02:00
Bjarki Arge Andreasen
acbed8a8bf drivers: spi: nrfx_spim: impl spi_context_cs_get_all/put_all
Implement calling spi_context_cs_get_all() and
spi_context_cs_put_all() in line with pm resume/suspend.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-14 15:19:22 +02:00
Bjarki Arge Andreasen
1cda0eeba0 tests: drivers: spi: spi_loopback: impl pm_device_runtime support
Implement pm_device_runtime support to spi_loopback test suite.

Specifically:
- call pm_device_runtime_get() on SPI bus before using SPI bus
- call pm_device_runtime_put() once SPI bus is no longer needed.
  This is after transceive has been performed, or after calling
  spi_release_dt() after a transceive has been performed.

This addition has no affect if PM_DEVICE_RUNTIME is not enabled
on a board/test case basis.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-14 15:19:22 +02:00
Bjarki Arge Andreasen
cbd9535551 drivers: spi: context: Add helper for CS GPIO PM
Introduce spi_context_cs_get() and spi_context_cs_put() which shall
be used from drivers to get/put the GPIO port the CS GPIO belongs to
before and after a transaction, in line with the SPI drivers pm
action hook being called.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-14 15:19:22 +02:00
Bjarki Arge Andreasen
c4d475c1f2 drivers: gpio: nrfx: impl pm device runtime
Implement PM_DEVICE_RUNTIME for gpio_nrfx.c

PM is required to request/release the GPD domain if such exists
for a given GPIO instance. Without this, every single API call
will result in a requesting the GPD domain, which makes it slow
and unusable from ISRs, given GPD requires IPC. Now, user can
simply get the GPIO before using it, and put it once done,
calling the APIs from ISR while resumed.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-14 15:19:22 +02:00
Kai Vehmanen
d411288bda dma: intel_adsp_hda: re-enable interrupts upon resume
Commit fa4a9db7a3 ("dma: intel_adsp_hda: Fix invalid init sequence and
register use") moved intel_adsp_hda_channels_init() out from resume
path. This causes a regression to CONFIG_DMA_INTEL_ADSP_HDA_TIMING_L1_EXIT
as without irq_config() call the interrupt configuration may be partial.

Address this by calling irq_config() unconditionally on resume path.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2025-05-14 15:19:06 +02:00
Benjamin Cabé
a3f658454a posix: clock: fix maybe-uninitialized warning in z_clock_gettime
Compiler gets confused and thinks base may be used uninitialized. This
shouldn't be possible, but to make the warning go away, initialize it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-14 15:18:57 +02:00
Bas van Loon
0b9fce4612 drivers: serial: uart_mcux_lpuart: Restore lpuart CTRL register.
When RTS/CTS is toggled it disables the receiver and transmitter
bits to be able to change the flow control bits in the MODIR register.

After it has done so, it should restore the original value of the
CTRL register to re-enable the transmitter and/or receiver if they
were enabled before calling the mcux_lpuart_line_ctrl_set_rts()
function.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-05-14 15:18:46 +02:00
Anas Nashif
1938403854 debug: define thread_info offset for RX
Handling for RX architecture.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-14 14:16:03 +02:00
Aleksander Wasaznik
0e138cb777 Bluetooth: Host: K_NO_WAIT in bt_att_req_alloc() in SYS WQ
This commit prevents ATT request APIs from blocking waiting on the
req_slab pool on the system work queue. The API will instead return
-ENOMEM.

This aligns with commit 05b16b971b, which
establishes that the GATT request APIs are non-blocking on the system
work queue. That commit makes GATT request APIs fail with -ENOMEM when
they fail to allocate a buffer for the ATT PDU on the system work queue.

There is no reason to make this distinction between the two resources,
and this makes the API more consistent.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2025-05-14 14:15:58 +02:00
Nithin Ramesh Myliattil
70a97a8222 Bluetooth: BAP: Add control point cbs to BASS
For the control point operations, add/modify/
remove source, callbacks are added so that Application
can decide whether to accept/reject the control point
operations.

Signed-off-by: Nithin Ramesh Myliattil <niym@demant.com>
2025-05-14 14:15:51 +02:00
Jordan Yates
0f1d7d3b59 net: dns: dispatcher: fix OOB array access
Validate that the file descriptor is not a negative number before
writing to the `dispatch_table` `ctx` field. Setting file descriptors
to `-1` is the standard "not in use" value, and in fact the entire array
of `fds` is set to this value in `dns_resolve_init_locked`. This
resolves memory corruption of whichever variable is unfortunate to exist
just before `dispatch_table` in memory.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-14 14:11:11 +02:00
Qingsong Gou
2e484fc6e5 rtc: fix gpio_pin_configure_dt error
GPIO_PULLUP is not in other driver gpio int API, so keep the same

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-05-14 14:11:00 +02:00
Robert Lubos
e1d77710b7 net: mqtt-sn: Correct the allowed Keep Alive value range
Keep Alive timeout is represented by 2-byte unsigned integer, however
the corresponding Kconfig option was limited to UINT8_MAX only.
Also, similarly to regular MQTT, allow to disable the Keep Alive
functionality by specifying the Keep Alive value to 0.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-14 14:10:34 +02:00
Markus Lassila
5b6a865464 modem_cellular: Add dormant state to support network loss
Previously, it was expected that the modem would immediately
disconnect and close the PPP link, when the network was lost
(+CEREG: 4 is received). Failure to do so, would result in
modem attempting to chat with dlci2 channel, where as cellular
modem driver would drop to dlci1. This would show as dial
script timing out, which would freeze cellular modem driver.

Adding dormant state enables graceful disconnection of PPP-link
when the network is lost. This allows the modems which do
not automatically close with network link loss to close
based on PPP link closure.

Signed-off-by: Markus Lassila <markus.lassila@nordicsemi.no>
2025-05-14 14:10:21 +02:00
Markus Lassila
93c3975fe6 net: l2: ppp: Terminate connection with dormant
When PPP net_if is changed to dormant, the PPP connection
is terminated asynchronously. This is used so that the driver
can terminate the PPP connection gracefully.

Note: net_if_down() is not used as it would require synchronous
operation which would block the system workqueue thus causing
deadlock.

Signed-off-by: Markus Lassila <markus.lassila@nordicsemi.no>
2025-05-14 14:10:21 +02:00
Sylvio Alves
0090ca6d50 west.yml: update hal_espressif
- Fix ESP32-C2 rom puts call, which crashes when
using printf without arguments.

- Fix espressif monitor error when CTRL+C
is pressed to exit terminal.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-05-14 14:10:07 +02:00
Emil Gydesen
615409b349 tests: Bluetooth: Audio: Remove dependency on host mocks
Removes the dependency on the host mocks for LE Audio tests.
This is done by copying the missing mocks for assert into
the audio mocks, and then always including ztest.h.

The inclusion of ztest.h is due to the fact that
arch/cpu.h does not have an appropriate header file for
ztest, and some header files depend on ARCH_STACK_PTR_ALIGN
which is usually defined by those headers in cpu.h. However
ztest.h does define this value as well, and thus needs
to be included always.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-14 14:10:02 +02:00
Daniel Schultz
55e8966999 doc: releases: Add ElemRV to Release Notes
Add a note about initial support for ElemRV-N.

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-05-14 14:09:41 +02:00
Daniel Schultz
59008a8f96 boards: aesc: Add ElemRV-N
ElemRV-N is an end-to-end open-source microcontroller. This patch
adds basic support for the platform with any interfaces. They will
be added later since drivers are missing completly.

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-05-14 14:09:41 +02:00
Daniel Schultz
2120b82ec9 dts: riscv: Add aesc
ElemRV-N is based on the nitrogen SoC platform. Add the
base nitrogen device-tree and one for elemrv-n. The elemrv-n
device-tree will contain all IP cores later.

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-05-14 14:09:41 +02:00
Daniel Schultz
86b31465f4 drivers: serial: Add aesc UART driver
Add minimal support for the aesc silicon UART IP core.

This core includes an internal clock divider and supports flexible
frame configurations, allowing for variable data length, parity, and
stop bit settings.

The current driver version does not support interrupts.

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-05-14 14:09:41 +02:00
Daniel Schultz
3112f856d2 soc: Add aesc
Currently, the only available platform is Nitrogen, featuring a
VexRiscv CPU that boots from external SPI flash and runs code from
external HyperRAM.

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-05-14 14:09:41 +02:00
Daniel Schultz
14b83d130d MAINTAINERS: Add Aesc Platform
aesc silicon is a startup focused on developing open-source
silicon solutions.

Add a new platform to the MAINTAINERS file to ensure changes
get reviewed.

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-05-14 14:09:41 +02:00
Daniel Schultz
24322dd555 dts: bindings: Add aesc
aesc silicon is a startup focused on developing open-source
silicon solutions.

Link: https://github.com/aesc-silicon/ElemRV

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-05-14 14:09:41 +02:00
Sudan Landge
8c02ffc6dd arch: arm: enable pxn support at arch level
Move PXN support selection to arch so that it is enabled
for all Armv8.1-m socs.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-05-14 14:09:31 +02:00
cyliang tw
3a4e12899c tests: drivers: pwm: pwm_loopback: support numaker_m55m1
Add support for Nuvoton numaker board numaker_m55m1.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-05-14 11:04:17 +01:00
cyliang tw
a5f8645038 drivers: pwm: support for numaker m55m1x
Modify Nuvoton numaker pwm driver for m55m1x series.
Add pwm nodes in m55m1x.dtsi

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-05-14 11:04:17 +01:00
Jeppe Odgaard
46a3bbb35a drivers: sensor: ti: tmp11x: fix get ambient offset
The sensor value was accidentally set a second time.

Refactor `tmp11x_attr_get` to fix the issue and align more with
`tmp11x_attr_set`.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-05-14 11:04:08 +01:00
Marcin Szymczyk
a068709171 drivers: spi: nrfx_spim: use clock phandle for HSFLL nodes
Instead of explicitly defining the SPIM instances that need it.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2025-05-14 11:03:51 +01:00
Alain Volmat
cc837284fd dts: arm: st: add MCOs and PLL2 to PLL4 in stm32mp13.dtsi
The stm32mp13 has 2 MCOs and 4 PLLs available.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-14 11:03:41 +01:00
Alain Volmat
88d8003109 clock_control: stm32: add handling of clocks for the stm32mp13
Add enabled_clock, on / off and configure support for the clocks of
the stm32mp13. Describes the peripheral clock source selection.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-14 11:03:41 +01:00
Alain Volmat
983d891829 drivers: clock: stm32mp13: rename frac-v binding into fracn
Rename the frac-v PLL binding into fracn in order to make it
consistent with other STM32 PLL bindings.
This commit also correct the range which should be 0 - 8191.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-14 11:03:41 +01:00
Alain Volmat
d95b7c4e64 dts: bindings: stm32: add div-q and div-r on stm32mp13 plls
Depending on the PLL, all DIV-P / DIV-Q and DIV-R are available
on STM32MP13 PLLs.
Adjust valid range in order to be able to set for all 4 PLLs.
Clarify DT properties description.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-14 11:03:41 +01:00
Alain Volmat
933446ff4a drivers: clock: stm32-mco: support MCO with enable bit
On STM32MP13, a dedicated MCO enable bit within the MCO clock control
register must be set in order to activate the MCO.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-14 11:03:41 +01:00
Furkan Akkiz
13a36718fa tests: drivers: Enable new test for MAX32650 boards
This commit enables following tests for MAX32650EVKIT and MAX32650FTHR:
- counter/counter_basic_api
- dma/chan_blen_transfer
- dma/loop_transfer
- i2c/i2c_target_api (only for MAX32650EVKIT)
- spi/spi_loopback

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
Signed-off-by: Burak Babaoglu <burak.babaoglu@analog.com>
2025-05-14 11:03:22 +01:00
Furkan Akkiz
02d91a647e boards: adi: Enable new nodes of MAX32650 boards
This commit enables dma, i2c, spi, wdt and rtc_counter nodes for
MAX32650EVKIT and MAX32650FTHR boards.

Initial parts of the SRAM is used during the boot process, this causes
problems for some tests (e.g. tests/drivers/watchdog/wdt_basic_api).
To avoid these problems, this commit changes choosen SRAM to SRAM4.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
Signed-off-by: Burak Babaoglu <burak.babaoglu@analog.com>
2025-05-14 11:03:22 +01:00
Furkan Akkiz
40a60a6ac2 dts: arm: adi: max32650: Add more peripheral nodes
This commit adds following updates to MAX32650 SoC:
- Divide SRAM to sections according to UG.
- Add DMA and SPI nodes
- Add WDT nodes without adding clock property
- Include dma binding to SoC dts file.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
Signed-off-by: Burak Babaoglu <burak.babaoglu@analog.com>
2025-05-14 11:03:22 +01:00
Burak Babaoglu
9de258c50f drivers: i2c: Update driver to enable I2C for MAX32650 SoC
This commit adds new wrapper functions into driver to handle
differences of MAX32650 SoC.

Signed-off-by: Burak Babaoglu <burak.babaoglu@analog.com>
2025-05-14 11:03:22 +01:00
Furkan Akkiz
ccc26a53bb drivers: watchdog: Update driver to enable WDT for MAX32650 SoC
This commit changes clock property of watchdog to optional and updates
driver according to this change.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-05-14 11:03:22 +01:00
Furkan Akkiz
46ab3b4ff3 drivers: spi: Update driver to enable SPI for MAX32650
This commits changes a macro name to enable SPI support for MAX32650
SoC.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-05-14 11:03:22 +01:00
Furkan Akkiz
d19e318a71 drivers: spi: clang-format changes for MAX32 SPI driver
This commit applies clang-format changes for MAX32 SPI driver.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-05-14 11:03:22 +01:00
Furkan Akkiz
fb8a8e592c manifest: Update hal_adi revision
This commit updates 'hal_adi' module's revision to get MAX32650
developments.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-05-14 11:03:22 +01:00
Fabio Baltieri
8355418558 MAINTAINERS: add modulino files to the Arduino area
Add modulino drivers path to the Arduino area.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-14 11:03:10 +01:00
Fabio Baltieri
560a6b7de9 shields: add two shield definitions for modulino boards
Add two shield definitions for the the modulino buttons and smartleds
modules.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-14 11:03:10 +01:00
Fabio Baltieri
1d1dc09ca3 leds: add arduino,modulino-smartleds
Add an led_strip driver for the modulino smartleds module. This is a
pluggable I2C board with 8 addressable RGB LEDs

The I2C protocol is implemented on an microcontroller on the modulino
board itself, the firmware for that is open source and can be updated
using an Arduino sketch:

Link: https://github.com/arduino/node_modulino_firmware
Link: https://github.com/arduino-libraries/Modulino
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-14 11:03:10 +01:00
Fabio Baltieri
8060a59f3a leds: add arduino,modulino-buttons-leds
Add an LED driver for the modulino buttons module, this has three LEDs
that are controllable independently of the buttons.

Link: https://github.com/arduino/node_modulino_firmware
Link: https://github.com/arduino-libraries/Modulino
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-14 11:03:10 +01:00
Fabio Baltieri
82509f7295 input: add arduino,modulino-buttons
Add an input driver for the modulino buttons module. This is a pluggable
I2C board implementing three buttons and three LEDs, the I2C protocol is
implemented on a microcontroller on the modulino board itself, the
firmware for that is open source and can be updated using an Arduino
sketch:

Link: https://github.com/arduino/node_modulino_firmware
Link: https://github.com/arduino-libraries/Modulino
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-14 11:03:10 +01:00
Pavel Vasilyev
971c2c9426 Revert "Bluetooth: host: extract sending of host num complete"
This reverts commit 32212bfb63.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-05-14 11:03:02 +01:00
Pavel Vasilyev
da9acbcf11 Revert "Bluetooth: host: Send host num completes as early as possible"
This reverts commit 147ee3daaf.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-05-14 11:03:02 +01:00
Camille BAUD
f2f036fd0d boards: wch: Introduce Weact CH32V203 bluepill
Introduces WeActStudio Blue Pill Plus CH32V203

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-14 11:02:52 +01:00
Camille BAUD
dd51655b25 drivers: add CH32V203 to wch systick
Adds CH32V203 to the systick timer driver

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-14 11:02:52 +01:00
Camille BAUD
e4783692e4 modules: hal_wch: add CH32V203 support
Adds CH32V203 support

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-14 11:02:52 +01:00
Camille BAUD
2013d6e129 dts: wch: Introduce CH32V203
Introduce CH32V203 SoC

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-14 11:02:52 +01:00
Camille BAUD
72dadd3242 soc: wch: Introduce Qingke V4B
Introduces the Soc for ch32v203

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-14 11:02:52 +01:00
Ayush Singh
88b108d201 drivers: gpio: davinci: Allow empty pinctrl
Ignore error if default pinctrl missing. Some devices allow specifying
pinctrl in them, which is better to do , specially for static (on-board)
devices to keep overlays simpler.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-05-14 09:11:52 +02:00
TOKITA Hiroshi
431f202732 drivers: entropy: add iproc_rng200 (rpi_5) random generator driver
Add driver for iproc_rng200 entropy generator.
This device is used by rpi_5.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-05-14 09:11:42 +02:00
TOKITA Hiroshi
10f614db9a drivers: entropy: Add sort directives
Add sort directives to CMakeLists.txt and Kconfig

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-05-14 09:11:42 +02:00
Sudan Landge
f726cb5123 modules: CMSIS_6: Switch to CMSIS_6 for Cortex-M
What is the change?
Switch to module CMSIS_6 for Cortex-M while continuing to use
cmsis module (version 5.9.0) for Cortex-A/R.

Why do we need this change?

The current cmsis module consists of:
- Cortex-M support from upstream cmsis 5.9.0
- Cortex-A/R support which was not upstreamed to CMSIS

Upstream cmsis 5.9 was deprecated so we should be using CMSIS_6 however,
it seems due to lack of Cortex-A/R support in upstream and other reasons,
this was pushed back.

While upstreaming Cortex-A/R support to CMSIS_6 could take its time,
this shouldn't stop Cortex-M to start using CMSIS_6.

Also, if we do not use CMSIS_6 for Cortex-M then using the
newer GCC 14.2 toolchain will return below compiler error:
```
zephyrproject/modules/hal/cmsis/CMSIS/Core/Include/core_cm85.h:4406:10:
fatal error: pac_armv81.h: No such file or directory
 4406 | #include "pac_armv81.h"
```
Using CMSIS_6 for Cortex-M will fix this.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-05-14 09:11:32 +02:00
Sudan Landge
c4235fa489 modules: CMSIS_6: fix path and use it for TF-M
What is the change?
Fix the path for module CMSIS_6 and use CMSIS_6 module for TF-M.

Why do we need this change?

After Zephyr updated TF-M to v2.1.0,
bb037d4469842c96f5872b271490aceb0734d965 added a local copy of CMSIS_6
to stop Zephyr's TF-M from downloading the CMSIS_6 from upstream.
The correct way would be to have CMSIS_6 as a module in Zephyr (which
we have now) and pass the path of this module to TF-M.
A fork of the upstream CMSIS_6 was added to Zephyr however,
the path in west.yml makes it a lib and not a module.
Fixing the path generates the ZEPHYR_CMSIS_6_MODULE_DIR symbol which
can now be used to pass to TF-M and the copy in TF-M would no longer be
required.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-05-14 09:11:32 +02:00
Hao Luo
4bc2de23a9 drivers: flash: Add support for Apollo510 flash controller
This commit adds support for Apollo510 SoC in ambiq flash driver

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-14 09:11:17 +02:00
Hao Luo
95153de15b drivers: hwinfo: Add support for Apollo510 hwinfo
This commit adds support for Apollo510 SoC in ambiq hwinfo driver

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-14 09:11:17 +02:00
Hao Luo
ba52a93ac9 drivers: adc: Add support for Apollo510 ADC
This commit adds support for Apollo510 SoC in ambiq adc driver

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-14 09:11:17 +02:00
Chris Friedt
3c7e43f4e2 tests: posix: add posix_clock_selection testsuite
Add a testsuite for the POSIX_CLOCK_SELECTION Option Group which
consists of clock_nanosleep(), pthread_condattr_getclock(), and
pthread_condattr_setclock().

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-13 22:23:21 -04:00
Chris Friedt
ae4a1dbf2c posix: implement the POSIX_CLOCK_SELECTION Option Group
Implement the POSIX_CLOCK_SELECTION Option Group.

This was mostly already done, but compiled / linked in the wrong places.

E.g. pthread_condattr_getclock() and pthread_condattr_setclock() were
in pthread.c and part of POSIX_THREADS_BASE. clock_nanosleep() was in
clock.c and part of POSIX_TIMERS.

This change builds them as part of clock_selection.c with
CONFIG_POSIX_CLOCK_SELECTION.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-13 22:23:21 -04:00
Chris Friedt
4c9fb2e274 doc: posix: add doc for XSI_SINGLE_PROCESS Option Group
Mark the XSI_SINGLE_PROCESS Option Group as supported.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-13 22:23:21 -04:00
Chris Friedt
8673d7408b tests: posix: add test for the xsi_single_process option group
Add tests for the XSI_SINGLE_PROCESS Option Group.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-13 22:23:21 -04:00
Chris Friedt
cfae041834 posix: implement the XSI_SINGLE_PROCESS Option Group
gettimeofday() was already implemented, but incorrectly lumped into
POSIX_TIMERS.

putenv() is really just a wrapper around setenv().

The only one left to implement was gethostid() which was relatively
trivial.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-13 22:23:21 -04:00
Chris Friedt
0b869efe6a posix: clock: move most implementations to clock_common.c
Move most implementations to clock_common.c in preparation for
moving gettimeofday() and clock_nanosleep() to different compilation
units.

We also take this as an opportunity to switch from using k_spinlock
to sys_sem.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-13 22:23:21 -04:00
Chris Friedt
73ee23e3ad posix: clock: create z_clock_gettime().. convenience functions.
To facilitate moving gettimeofday() and clock_nanosleep() to separate
compilation units, make z_clock_nanosleep(), z_clock_gettime(),
and z_clock_settime() convenience functions.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-13 22:23:21 -04:00
Chris Friedt
5c46fcb1e9 posix: env: move most implementations to env-common.c
Move most implementations to env-common.c in preparation for adding
putenv.c .

We also take this as an opportunity to switch from using k_spinlock
to sys_sem.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-13 22:23:21 -04:00
Chris Friedt
4137c489d8 posix: env: create z_getenv()..z_setenv() convenience functions
To facilitate adding putenv in a separate compilation unit,
make z_getenv(), z_getenv_r(), z_setenv(), and z_unsetenv()
convenience functions.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-13 22:23:21 -04:00
Jamie McCrae
ebfc7db380 west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  990b1fcb367e27056b282f183e819964fdbfe907

  - f76fba70 boot: bootutil: swap_scratch: Fix issue with bricking
    device
  - 7253f01c boot: bootutil: Refactor erase functionality to fix
    watchdog feeding
  - a98bff9f boot: zephyr: kconfig: Fix issues and re-order
  - 1b2d261d boot: zephyr: flash_map: Fix unused argument
  - 413eb384 boot: zephyr: flash_map: Fix missing include
  - 15b36f91 boot: zephyr: kconfig: enable dependencies of Mbed TLS
    Kconfig option
  - f6e8e88a boot: bootutil: Move erase function location
  - 5ef87c79 boot: zephyr: kconfig: Fix BOOT_SWAP_USING_MOVE
    description
  - bc18d7da boot: boot_serial: Fix issue with CBOR and setting
    image state

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-05-13 22:22:43 -04:00
Tomi Fontanilles
35f7eda545 modules: mbedtls: make key exchange Kconfigs depend on, not select
Turn the MBEDTLS_RSA_FULL selects into depends on.
This is how the other MBEDTLS_KEY_EXCHANGE_* Kconfig options are defined.

This is done to avoid circular dependencies.

At the same time update uses of the affected MBEDTLS_KEY_EXCHANGE_*
Kconfig options to enable/disable the dependencies which used to be
automatically handled.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-05-13 22:22:43 -04:00
Bansidhar Mangalwedhekar
bf2efc762f nrf7002ek: dts: Add pull down to SPI MISO GPIO pin
Add a pull down to SPI MISO GPIO pin on nRF5340DK to ensure the i/o pin
on the nrf7002 device is not floating when SPI is inactive.

Signed-off-by: Bansidhar Mangalwedhekar <bansidhar.mangalwedhekar@nordicsemi.no>
2025-05-13 22:22:23 -04:00
Bansidhar Mangalwedhekar
6416646674 nrf7002dk: dts: Add pull up/down to QSPI GPIO pins
Add appropriate pull up/down to QSPI GPIO pins to ensure no qspi i/o pins
on the nrf7002 DK are floating when QSPI is not in use.

Signed-off-by: Bansidhar Mangalwedhekar <bansidhar.mangalwedhekar@nordicsemi.no>
2025-05-13 22:22:23 -04:00
Alain Volmat
34622c05ab doc: releases: add note regarding dcmi binding update
Add note regarding the move of the video/dcmi driver
to the usage of endpoint based video-interfaces
bindings.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-13 22:22:09 -04:00
Alain Volmat
12b8fb21cd tests: drivers: build_all: video: add testcase of stm32 dcmi
Add a testcase for building the stm32 dcmi driver on all
currently supported platforms / shields.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-13 22:22:09 -04:00
Alain Volmat
c1e7bdaa75 video: stm32-dcmi: implement frame interval handling
Implement the video API frame interval handling in order
to control the framerate of capture.

This allow to remove the capture-rate DT property as well.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-13 22:22:09 -04:00
Alain Volmat
df93e20414 video: stm32-dcmi: correct get/set fmt handling
This commit mainly correct the get/set format handling and how
DCMI format is stored within the driver.  struct video_format
within the data structure is used to store the format.
Reworked way to handle get format to avoid calling the sensor
set_fmt whenever performing the get_fmt.
Slightly adjusted code to as much as possible reuse return
values provided by functions.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-13 22:22:09 -04:00
Alain Volmat
a72cfba503 dts: bindings: video: dcmi: remove the dma in board dts example
With the addition of the dma property within the soc dtsi, it is
no more necessary to add it within the board dts.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-13 22:22:09 -04:00
Alain Volmat
99e12cbf4a dts: st: h7: move dma property of dcmi in stm32h7.dtsi
Usage of dma is mandatory for the dcmi and this property is
tightly coupled with the soc itself since the configuration of
the dma depends on the source/destination, and the request line
is also fixed for an ip.
Instead of having to always have the dma property part of the
board or shield dts/overlay, add the dma property into the
dcmi node of the stm32h7.dtsi.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-13 22:22:09 -04:00
Alain Volmat
0c18dc3154 boards: arduino_nicla_vision: use endpoint based properties
Update overlay following usage of video-interfaces based
endpoint properties by the dcmi driver.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-13 22:22:09 -04:00
Alain Volmat
bee30203a4 shields: st_b_cams_omv_mb1683: use endpoint based properties
Update overlay following usage of video-interfaces based
endpoint properties by the dcmi driver.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-13 22:22:09 -04:00
Alain Volmat
49aa55eda0 shields: weact_ov2640_cam_module: use endpoint based properties
Update overlay following usage of video-interfaces based
endpoint properties by the dcmi driver.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-13 22:22:09 -04:00
Alain Volmat
c0dae0c9ac video: stm32: dcmi: perform config based on endpoint properties
Perform sensor interface properties parsing based on values
retrieved via the endpoint rather than the root of the node.
Use DT_PROP_OR to ensure proper configuration of optional
settings.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-13 22:22:09 -04:00
Alain Volmat
d11bb65b14 dts: bindings: stm32-dcmi: use endpoint based properties
Update the bindings of the stm32-dcmi driver rely on
properties described within the endpoints and already
detailed within the video-interfaces.yaml.

With that, several properties located at the node root
are now moved into the port / endpoint:

  sensor -> endpoint: remote-endpoint-label
  vsync-active -> endpoint: vsync-active
  hsync-active -> endpoint: hsync-active
  pixelclk-active -> endpoint: pclk-sample
  bus-width -> endpoint: bus-width

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-13 22:22:09 -04:00
Abderrahmane JARMOUNI
abdb1ef3bc modules: lvgl: input: fix indev binding to display
When no 'display' property is present in LVGL input dev node in DT,
we should default to LVGL Default Display to preserve the old behavior
and not break LV Input on setups with only one display.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-13 22:21:50 -04:00
Sai Santhosh Malae
5572e49bc9 drivers: dma: siwx91x: DMA reload bug fix
Current DMA driver reload function only works for 8-bit
data. This is due to incorrect interpretation of size
argument. Added changes to support other xfer sizes.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-05-13 22:21:30 -04:00
Alex Hogen
eee464dae7 boards: efm32gg_sltb009a: uart: Fix USART0 loc 1
Silabs Thunderboard EFM32GG12 (OPN: SLTB009A) connects USART0
location 1 to the VCOM pins of the on-board debugger.

US0_TX loc 1 is pin PE7
US0_RX loc 1 is pin PE6

Signed-off-by: Alex Hogen <alex@edt.com>
2025-05-13 22:21:08 -04:00
Alexandre Bailon
db496c7a76 drivers: ieee802154: cc13xx_cc26xx: Don't filter beacon for OpenThread
OpenThread network discovery was not working.
The radio driver is filtering the beacon packets whereas
this is required for OpenThread.
Allow receiving beacon packets.

Signed-off-by: Alexandre Bailon <abailon@baylibre.com>
2025-05-13 22:20:55 -04:00
Yau-ming Leung
b8f94cade5 drivers: icm42688: move misleading debug message
When SENSOR_TRIG_FIFO_WATERMARK or SENSOR_TRIG_FIFO_FULL is not configured,
an unsupported trigger debug message will be printed. Moved such that
a no trigger configured debug message will be printed only if both triggers
are not configured.

Signed-off-by: Yau-ming Leung <ymleung314@gmail.com>
2025-05-13 22:20:42 -04:00
Gregor Copoix
3da78086ae driver: wifi: esp32: fix send data for AP_STA mode
Fixes the check for connected interface if CONFIG_ESP32_WIFI_AP_STA_MODE=y
(different data objects for STA (esp32_data) and AP (esp32_ap_sta_data)).
As the correct data object is linked to device object, we can check for
ESP32_STA_CONNECTED or ESP32_AP_CONNECTED in dev->data.
This fixes AP mode in samples/net/wifi/apsta_mode if STA WIFI_SSID/WIFI_PSK
are invalid and no STA connection can be established before
(samples/net/wifi/apsta_mode/src/main.c#L28-L29) for all ESP32 derivates.

Fixes false check from 183b74c558

Signed-off-by: Gregor Copoix <gregor.copoix@ithinx.io>
2025-05-13 22:20:29 -04:00
Chris Friedt
8409e425b3 drivers: gpio: pca series: dereference pointer in assignment
Properly dereference the value pointer in assignment.

```
In function 'gpio_pca_series_port_read_standard':
warning: assignment to 'gpio_port_value_t *' {aka 'unsigned int *'} \
  from 'uint32_t' {aka 'unsigned int'} makes pointer from integer   \
  without a cast [-Wint-conversion]
 1071 |                 value = sys_le32_to_cpu(input_data);
      |                       ^
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-13 22:20:10 -04:00
Ayush Singh
3124c7ad24 drivers: gpio: davinci: Fix for RAM MMIO
Move the direction reset to config init function. This ensures that regs
is read after the DEVICE_MMIO_NAMED_MAP is called, which is where the
init for RAM MMIO takes place

Tested on PocketBeagle 2 A53s.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-05-13 22:19:51 -04:00
David van Rijn
b1b586cac6 net: fix constness in http_request
Since we are taking a double pointer to an array owned by the user, we
should also make all but the top-level of indirection const, since we
are not planning on modifying it.

Signed-off-by: David van Rijn <david@refractor.dev>
2025-05-13 22:19:28 -04:00
Martin Hoff
a05506a256 soc: silabs: add missing kconfig resource for siwx91x
Fixes the missing Kconfig resource for the siwx91x SoC. This ensures
that soc_early_init_hook function is correctly called for the siwg917
SoC during initialization.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-05-13 22:19:16 -04:00
Duy Nguyen
e45fb09499 MAINTAINERS: Add maintainer information for RX arch
Add Duy Nguyen (duynguyenxa) as maintainer for RX architecture

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-13 22:18:54 -04:00
Robin Kastberg
fbdf4b9c64 MAINTAINERS: Add collaborators to IAR toolchain area
Add @bjorniuppsala and @LoveKarlsson as collaborators for the
IAR toolchain area.

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-05-13 18:38:28 +01:00
Guennadi Liakhovetski
0a919055e6 xtensa: gdbstub: fix stack calculation
Fix a logic error when calculating stack frame sizes.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-05-13 18:38:12 +01:00
Guennadi Liakhovetski
5769c4d565 xtensa: gdbstub: fix compilation
Building gdbstub for xtensa is failing currently with multiple
failures like

arch/xtensa/core/gdbstub.c:432:24: error: invalid operands to \
binary - (have 'int *' and 'const struct arch_esf *')
  432 |         if ((int *)bsa - stack > 4) {

Fix them by using appropriate pointer types.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-05-13 18:38:12 +01:00
Titouan Christophe
92a32a903d boards: st: stm32h7s78_dk: add support for on-board XSPI PSRAM
Configure pinctrl for the xspi1 bus, and add definition for the PSRAM chip
on the board.

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-05-13 18:38:05 +01:00
Titouan Christophe
8ed65114f2 dts: arm: st: h7rs: add xspi controllers
Add devicetree nodes for the two xspi controllers on the stm32h7rs series

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-05-13 18:38:05 +01:00
Titouan Christophe
d23b1bd4e0 memc: stm32_xspi_psram: allow usage on controllers without prefetch options
On some STM32 lines, like the h7rs, there aren't XSPI prefetch options.
To support them in the PSRAM driver, conditionally exclude them from
compilation when the options are not available

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-05-13 18:38:05 +01:00
Fabio Baltieri
bd3aff20eb drivers: dp: add STM32 support
Add support for direct control of STM32 gpios to the DP driver.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-13 18:37:55 +01:00
Fabio Baltieri
25bd4abfc4 drivers: dp: move the nrf code to its own file
Move the nrf specific functions to a separate file so that every soc has
a dedicated header.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-13 18:37:55 +01:00
Sai Santhosh Malae
0bce31b99a drivers: counter: siwx91x: gecko-stimer description
Add detailed description for silabs,gecko-stimer.yaml
binding.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-05-13 17:46:46 +02:00
Sai Santhosh Malae
a1913f9d9f drivers: counter: siwx91x: Enable siwx91x Counter driver
Enable sleeptimer counter driver for siwx91x device

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-05-13 17:46:46 +02:00
Mathieu Choplain
77378a8c75 arch: arm: pm_s2ram: fix compatibility with ARMv6-M again
The original 'arch_pm_s2ram_resume' implementation saved lr on the stack
using 'push {lr}' and restored it using 'pop {lr}'. However, the Thumb-1
'pop' does not support lr as a target register, so this code would not
compile for ARMv6-M or ARMv8-M Baseline. r0 was added to these push/pop
later in 2590c48d40.

In 474d4c3249, arch_pm_s2ram* functions were
modified to no longer use the stack, which incidentally "fixed" this issue.
b4fb5d38eb reverted this commit and brought
back 'pop {r0, lr}' as-is, without taking compatibility into account.

Modify the sequence to use "pop {r0, pc}" which is supported on all
ARM M-profile implementations (v6/v7/v8 Baseline/v8 Mainline), and
add comments to (hopefully) prevent this issue from re-appearing.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-05-13 17:46:40 +02:00
Robert Hancock
0e248419b7 arch: arm: cortex_a_r: Fix memory corruption when disabling dcache
On the Xilinx MPSoC (Cortex-R5) platform, erratic operation was often
seen when an operation which disabled the dcache, such as sys_reboot,
was performed. Usually this manifested as an undefined instruction trap
due to the CPU jumping to an invalid memory address.

It appears the problem was due to dirty cache lines being present at the
time the cache is disabled. Once the cache is disabled, the CPU will
ignore the cache contents and read the possibly out-of-date data in main
memory. Likewise, since the cache was being cleaned after it was already
disabled, if the CPU had already written through changes to some memory
locations, cleaning the cache at that point would potentially overwrite
those changes with older data.

The fact that the arch_dcache_flush_and_invd_all function was being
called to do the cleaning and invalidation also contributed to this
problem, because it is a non-inline function which means the compiler
will generate memory writes to the stack when the function is called and
returns. Corruption of the stack can result in the CPU ending up jumping
to garbage addresses when trying to return from functions.

To avoid this problem, the cache is now cleaned and invalidated prior to
the dcache being disabled. This is done by directly calling the
L1C_CleanInvalidateDCacheAll function, which, as it is declared as force
inline, should help ensure there are no memory accesses, which would
populate new cache lines, between the cache cleaning and disabling the
cache.

Ideally, for maximum safety, the cache cleaning and cache disabling
should be done in assembler code, to guarantee that there are no memory
accesses generated by the compiler during these operations. However, the
present change does appear to solve this issue.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-05-13 17:46:28 +02:00
Samuel Quiniou
d0aa263c1d boards: stm32h573i_dk: add display support
Add display support for the st7789v LCD controller.
Automatically enable the LCD backlight at boot
to use the display sample as is,
because the LCD backlight is normally off.

Signed-off-by: Samuel Quiniou <samuel.quiniou@rtone.fr>
2025-05-13 17:46:11 +02:00
Mirai SHINJO
e4650bc349 scripts: ci: check_compliance: fix identity check for multiple DCOs
The current implementation of the identity check fails if multiple DCO
signoff lines are present and the first instance of the signoff line
does not belong to the author of the commit. This patch proposes a solution
that allows patches with multiple DCO signoff lines to pass the identity
check, regardless of the order of the signoff lines.

Signed-off-by: Mirai SHINJO <oss@mshinjo.com>
2025-05-13 17:46:01 +02:00
Sreeram Tatapudi
f61efef6b0 drivers: bluetooth: Add BLE low power mode for cyw920829m2evk_02
Add BLE low power mode for cyw920829m2evk_02

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-05-13 17:45:47 +02:00
Sreeram Tatapudi
2ef8ff4e04 drivers: clock_control: infineon_cat1: Support for LF clocks
Add support to configure LF clocks: clk_pilo, clk_wco, clk_ilo, clk_lf

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-05-13 17:45:47 +02:00
Michał Stasiak
a397a7e939 tests: boards: nrf: comp: Move AIN index to Kconfig
Moved index of analog input used in test from source
code to Kconfig option to simplify adding new targets.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-05-13 17:45:18 +02:00
Michał Stasiak
03a9df38e9 drivers: comparator: comparator_nrf: Add analog pins for nRF54L20
Added set of analog pins for nRF54L20 COMP and LPCOMP.
Moved the array of analong pins for both comparator
variants to avoid code duplication.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-05-13 17:45:18 +02:00
Michał Stasiak
8b998060f2 drivers: adc: adc_nrf_saadc: Add analog pins for nRF54L20
Added set of analog pins for nRF54L20 SAADC.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-05-13 17:45:18 +02:00
Carles Cufi
6659d2d711 scripts: runners: nrfutil: Check return code after Popen
The code invoking nrfutil was not checking the return code of the
subprocess, which meant that if the underlying tool was exiting with a
failure error code it remained undetected.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-05-13 17:45:09 +02:00
Arkadiusz Balys
bfc5094dcd openthread: Fix kconfigs according to the Kconfig Style Guidelines
Removed redundant new lines, and added new lines if needed.

Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
2025-05-13 17:44:59 +02:00
Robert Hancock
54eeb7bee8 arch: arm: arm_mpu_v7m: Fix unsupported Cortex-R access permission mode
This file previously defined an MPU access permission mode of 0x7 which
corresponded to privileged read-only, unprivileged read-only, similar to
mode 0x6. However, it appears that at least Cortex-R5 does not support
this mode, defining 0x7 as UNP (Unpredictable) or a value which should
not be used.

This value was in turn referenced by the REGION_FLASH_ATTR macro, which
caused the offending value to be used when a memory region was declared
as DT_MEM_ARM(ATTR_MPU_FLASH) in the device tree, causing such regions
to not work properly on Cortex-R5.

Since 0x6 is supported by both Cortex-M and Cortex-R and does the same
thing, there is no reason to use 0x7. Remove the RO_Msk definition which
referenced it, and change REGION_FLASH_ATTR to use P_RO_U_RO_Msk instead.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-05-13 17:44:40 +02:00
David Schneider
d85ed3212c cmake: fix syscall dependencies
Replace _parse_syscalls_target_ custom target with explicit
dependency management for syscall depending file generation.

Signed-off-by: David Schneider <schneidav81@gmail.com>
2025-05-13 16:23:54 +02:00
Robert Lubos
be46c94e3e net: l2: openthread: Fix error logs on adding already present address
Error checking of otIp6AddUnicastAddress() and
otIp6SubscribeMulticastAddress() was added recently, however it wasn't
taken into account that those APIs return an error on attempt to
register an IPv6 address that is already present on the OT interface.
Therefore, add more specific error checks, to return silently in case
address was already present.

As those two APIs are not very consistent, and otIp6AddUnicastAddress()
returns OT_ERROR_INVALID_ARGS in such cases, add an extra check if the
address is already present before attempting to register the address.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-13 16:23:37 +02:00
Hao Luo
d89c61bd64 drivers: iom: define ambiq spi/i2c dma mode as a binding property
Changed to define ambiq spi/i2c dma mode as a binding property
instead of kconfig macros, making it more flexible for different
spi/i2c instances.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-13 16:23:26 +02:00
Christian Rask
bd14664e85 test: driver: display: add test case for x_nucleo_gfx01m2
Add test case for x_nucleo_gfx01m2 shield with nucleo_g071rb board.

Signed-off-by: Christian Rask <christianrask2@gmail.com>
2025-05-13 16:22:52 +02:00
Christian Rask
b8ce134733 boards: shields: x_nucleo_gfx01m2: add x_nucleo_gfx01m2 board support
The x_nucleo_gfx01m2 is an evaluation shield sold by
STMicroelectronics. It features a MIPI DBI SPI serial TFT LCD display
and a SPI NOR Flash for graphical assets storage. A button joystick
can be used to control the GUI.

Signed-off-by: Christian Rask <christianrask2@gmail.com>
2025-05-13 16:22:52 +02:00
Timothy Keys
cc9279e3ce Bluetooth: Controller: Only select BT_TICKER_LAZY_GET for ZLL
BT_TICKER_LAZY_GET is a ZLL only kconfig and should not be selected for
other controllers.

Signed-off-by: Timothy Keys <timothy.keys@nordicsemi.no>
2025-05-13 16:22:43 +02:00
Andrej Butok
2a207879d1 boards: Remove nxp board-vendor from non-NXP boards
- Delete nxp board-vendor references from non-NXP board .yaml files.
- board.yml files already contain the correct board-vendor names.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-05-13 12:12:51 +02:00
Dave Joseph
62941d7856 boards: ti: A53 west build target for AM62 SK EVM
Added west build target for the AM62 SK EVM for the A53 cores.
Signed-off-by: Dave Joseph <d-joseph@ti.com>
2025-05-13 12:12:36 +02:00
Alberto Escolar Piedras
5c959c6136 drivers/counter/counter_native_sim: Merge if statements
To reduce the perceived code complexity

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-13 12:09:30 +02:00
Alberto Escolar Piedras
e521d5c838 drivers/serial/uart_native_tty: do not discard const qualifier
So it is clearer the data is not modified

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-13 12:09:30 +02:00
Alberto Escolar Piedras
98b05b3062 drivers/timer/native_sim: Use upper case long suffix
For better readability

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-13 12:09:30 +02:00
Alberto Escolar Piedras
b3c5b3a7dc boards/native/nrf_bsim: Declare as pointer to constant data
To be clearer to the compiler and users.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-13 12:09:30 +02:00
Alberto Escolar Piedras
1286f15543 boards native: Move int declaration into loop
To reduce its scope and please static analyzers

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-13 12:09:30 +02:00
Alberto Escolar Piedras
e32b98c3a1 soc posix: Be explicit about wanting the function address
To be more readable

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-13 12:09:30 +02:00
Alberto Escolar Piedras
602bb0dbc6 arch/posix: Add comment on empty function
So it is clearer this kernel required API does not need to do anything.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-13 12:09:30 +02:00
Andrew Davis
b73ff5a517 boards: beagley_ai_j722s_mcu_r5f0_0: Add IPC support
Add IPC memory and mailbox chosen properties. The mailbox channels
used are as expected by Linux.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-05-13 12:09:16 +02:00
Andrew Davis
b3e29bdd16 boards: beagley_ai_j722s_main_r5f0_0: Add IPC support
Add IPC memory and mailbox chosen properties. The mailbox channels
used are as expected by Linux.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-05-13 12:09:16 +02:00
Andrew Davis
27f4cbd55f boards: beaglebone_ai64: Add IPC support
Add IPC memory and mailbox chosen properties. The mailbox channels
used are as expected by Linux.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-05-13 12:09:16 +02:00
Robert Hancock
3a2639a9de drivers: flash: spi_nor: Add fast read support
Most SPI NOR flash devices support a "fast read" command which uses
dummy bits between the address and the start of the data transfer. In
many cases, the maximum SPI clock speed of the device is lower for the
regular read command due to the limited time between the address and
data phases, so using the fast read command will remove this restriction
and allow for faster transfers.

Add a device tree flag to indicate that fast reads should be used for
the device.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-05-13 12:09:06 +02:00
Robert Hancock
ecacf3d5e3 drivers: flash: spi_nor: Added flag status register support
Some Micron (and possibly other) SPI NOR devices implement a flag status
register which provides more information on the success/failure of erase
and program operations. In addition to better error checking, some of
these devices actually don't function properly if the flag status
register is not read after a program operation (subsequent reads will
only return 0xFF bytes).

Add a device tree parameter to indicate that the flag status register is
supported. When specified, the flag status register will be used for
ready/error checks rather than the standard status register.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-05-13 12:09:06 +02:00
Robert Hancock
1fdb43cf27 drivers: flash: spi_nor: optimize SPI buffer usage
This driver was providing SPI buffers for both TX and RX on the data
payload portion of read transfers, even though the TX buffer is not
meaningful in these cases. As well as being less efficient, this also
caused likely uninitialized data to be transferred to the device, which
is possibly problematic.

Update to not include the TX buffer for the read data payload SPI
transfer, so that the SPI driver can generate dummy TX data internally.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-05-13 12:09:06 +02:00
Francois Ramu
4278e98210 drivers: flash: stm32 octospi supports the 4Bytes address mode
Add the 4Bytes program mode to the stm32_ospi driver
to enter 4-Byte Address Mode (SPI_NOR_CMD_4BA) when flash is supporting it.
This is given by the JESD216 SFDP table.
Based on the stm32 qspi driver.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-13 12:08:51 +02:00
Michał Stasiak
63f2fe9dd4 soc: nordic: nrf54l: Clean up internal capacitance calculations.
Code responsible for internal capacitor values containted
leftover workarounds in the calculations after PS update.
Removed redundant conversions and cleaned up both code
and comments to align both LFXO and HFXO calculation.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-05-13 10:06:01 +02:00
Alex Fabre
e163b2ca0e arm: exception: fix comparison of int of different signs
Clang 20.1.0 -Wsign-compare warning on int being compared with uint32_t.

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-05-13 10:05:52 +02:00
Alex Fabre
da2ecd3eb8 utils: bitarray: fix comparison of int of different signs
Clang 20.1.0 -Wsign-compare warning on int being compared with size_t
(unsigned int).

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-05-13 10:05:52 +02:00
Alex Fabre
c8a37d009a kernel: priority_q: fix comparison of int of different signs
Clang 20.1.0 -Wsign-compare warning on int being compared with size_t
(unsigned int).

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-05-13 10:05:52 +02:00
Maochen Wang
9dd9661836 samples: net: wifi: update the RSA3K certificates
The original Wi-Fi certificates are from WFA. Now replace them with
certificates that generated by myself. These certificates use
sha384WithRSAEncryption signature algorithm, and use 3072 bit RSA
public-key.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-05-13 10:05:24 +02:00
Abderrahmane JARMOUNI
306983d817 MAINTAINERS: Add myself as collaborator for Display
Add myself as collaborator for Display drivers

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-13 10:05:08 +02:00
Vit Stanicek
d53181fffd boards: mimxrt685_evk/mimxrt685s/cm33: Enable MU
Enable the MU peripheral for the CM33 domain of the mimxrt685_evk.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-05-13 10:05:04 +02:00
Jeremy Dick
b5c0984eb1 drivers: flash: flash_hp_ra: perform blank check before reading
The value read from unwritten areas of Renesas RAxxx SoCs data
flash is undefined. To prevent reading unwritten areas a
blank check command is performed first. If the area is blank, we
return dummy data so it behaves the same as other flash devices.

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-05-13 07:24:39 +01:00
Jeremy Dick
48680298c1 dts: arm: renesas: Add erase-value-undefined property for Renesas RA flash
Add an erased-undefined property for Renesas RA series MCUS
data flash that will read back undefined values when erased

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-05-13 07:24:39 +01:00
Sercan Erat
168395f195 boards: rakwireless: rak3172: Fix clock settings
Enabling HSE and LSE clock settings.

Signed-off-by: Sercan Erat <sercanerat@gmail.com>
2025-05-13 07:24:23 +01:00
Sercan Erat
01a92d0a42 boards: rakwireless: rak3172: Fix RF controller pins
Fixing wrongly defined tx-enable and rx-enable pins.

Signed-off-by: Sercan Erat <sercanerat@gmail.com>
2025-05-13 07:24:23 +01:00
Abderrahmane JARMOUNI
7a9fb5463c samples: lvgl: multi_display: doc fix
Trivial doc fix concerning which demos are run by default.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-13 03:20:50 +02:00
Dipak Shetty
4c38b16f03 drivers: stepper: adi_tmc: tmc5xxxx: fixed standstill detection
The standstill detection logic now stands corrected. Moving would
be indicated when the standstill bit is not zero.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-05-13 03:20:39 +02:00
Florijan Plohl
f72f1ebf6a boards: mimxrt1170_evk: Enable DAC
Enable DAC on MIMXRT1170-EVK for both Cortex M7 and M4.

Signed-off-by: Florijan Plohl <florijan.plohl@norik.com>
2025-05-13 03:20:29 +02:00
Florijan Plohl
f4d2757cef dts: arm: nxp: add DAC support for RT11xx
Add DAC support for RT11xx SOCs.

Signed-off-by: Florijan Plohl <florijan.plohl@norik.com>
2025-05-13 03:20:29 +02:00
Florijan Plohl
7692e3db3f drivers: dac: add driver for the NXP DAC12
Add driver shim for the NXP Digital-to-Analog (DAC12) module.

Signed-off-by: Florijan Plohl <florijan.plohl@norik.com>
2025-05-13 03:20:29 +02:00
Florijan Plohl
a7ad18db46 modules: hal_nxp: Include DAC12 HAL driver
Include DAC12 HAL driver in case CONFIG_DAC_MCUX_DAC12 is enabled.

Signed-off-by: Florijan Plohl <florijan.plohl@norik.com>
2025-05-13 03:20:29 +02:00
Mateusz Junkier
04b49fadab twister: harness_config extended by test retries in testcase.yaml
Extend Twister to allow defining repeat counts
for specific scenarios by harness_config.

Signed-off-by: Mateusz Junkier <mateusz.junkier@intel.com>
2025-05-13 03:20:10 +02:00
Keith Packard
958ef2288e tests/llext: Compute linker script option rather than using -Wl,-T
Use the same logic as the top-level Zephyr CMakeLists.txt does to
find the linker script option by using the first one of these
which is set:

 1. Global TOPT property
 2. Compiler's linker_script property
 3. -Wl,-T

This avoids toolchains which insert a default linker script
when none is provided on the command line using the -T option.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-05-12 21:09:44 +02:00
Camille BAUD
bcfe94ce87 tests: build_all: Add ssd1351 build test
Adds ssd1351 build test

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-12 21:09:36 +02:00
Camille BAUD
90f57f8b7d drivers: display: Introduce SSD1351
This introduces ssd1351 128x128 RGB PMOLED controller

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-12 21:09:36 +02:00
Srishtik Bhandarkar
09ab462e10 drivers: sensor: pzem004t: add pzem004t AC parameter sensor driver
Adds driver for Peacefair pzem004t multifunction AC parameter sensor.

Signed-off-by: Srishtik Bhandarkar <srishtik.bhandarkar2000@gmail.com>
2025-05-12 21:09:27 +02:00
Konrad Sikora
8959d2857d drivers: sensor: Fixed issues in DHT20 measurement
Refactor DHT20 sensor init and measurement handling.
Added 100ms power-on wait to comply with datasheet.
Simplified measurement frame handling.
Initialize status register only once after power-on.

Signed-off-by: Konrad Sikora <kontakt@konradsikora.pl>
2025-05-12 21:09:22 +02:00
Josuah Demangeon
e1f4181c29 drivers: video: common: turn ASSERT(false) into CODE_UNREACHABLE
The assert message was not very helpful, CODE_UNREACHABLE is more
readable and requires fewer effort while proofreading.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-12 19:20:45 +02:00
Josuah Demangeon
ee21d397d2 drivers: video: common: optimizations for video_closest_frmival()
In video_closest_frmival(), immediately stop searching when an exact
match is found, as a small performance optimization. Variables
that could be computed only once were moved further outside.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-12 19:20:45 +02:00
Josuah Demangeon
84f0eec62e drivers: video: common: fix video_closest_frmival() fie.index
Fix bug introduced in 46a262ffe6 where the
fie.index field was expected to be incremented by the driver, while it
is the responsibility of the caller to increment it.

Fixes #89663

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-12 19:20:45 +02:00
Alberto Escolar Piedras
3e0eb8a7d1 native_simulator: Get latest from upstream
Align with native_simulator's upstream main
19293fafc9959b03ece651e5e2afb768cfa891cf

Which includes:
19293fa misc trivial changes to please static analyzers
2a41263 nsi_tracing: Annotate functions as noreturn
f0307c1 nct: Simplify and improve switching performance
9f0c825 nce: Optimize/improve performance
63ce7e2 nsi_utils: Add macro to define static inline functions
6035bd8 nsi_errno: Minor optimization with no functional impact

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-12 19:20:37 +02:00
Pieter De Gendt
22cac4fdf6 boards: nxp: mimxrt1040_evk: Convert to Bluetooth M.2 shield
Use the shield nxp_m2_wifi_bt instead of defining on board nodes.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-12 19:19:53 +02:00
Derek Snell
f1c9799668 tests: drivers: counter_basic_api: add testcase for NXP FRDM-RW612
New test case enables low-power standby mode, but disables testing
the lpc_rtc_highres driver, since it is used to wake the device from
standby mode.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-05-12 19:19:40 +02:00
Tsi-Chung Liew
e483b229de Counter_nxp_mrt: Adds PM low-power recovery support
Enables Sleep mode (PM3) in RW61x for MRT.

Signed-off-by: Tsi-Chung Liew <Tsi-Chung.Liew@nxp.com>
2025-05-12 19:19:40 +02:00
Tsi-Chung Liew
8ac0a675ee Counter_mcux_ctimer: Adds PM low-power recovery support
Enables Sleep mode (PM3) in RW61x for Ctimer.

Signed-off-by: Tsi-Chung Liew <Tsi-Chung.Liew@nxp.com>
2025-05-12 19:19:40 +02:00
Damian Krolik
222e0fcd06 debug: coredump: support dumping stack top only
Add Kconfig option to dump only a portion of stack from the
current stack pointer to the stack end. This is enough to
let gdb reconstruct the stack trace and can significantly
reduce the dump size. This is crucial if the core dump needs
to be sent over radio.

Additionally, add another option to set the limit for the
dumped stack portion.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2025-05-12 19:19:25 +02:00
Camille BAUD
40c75b7d8c tests: drivers: add ssd1331 to build_all
Add the build test

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-12 19:19:15 +02:00
Camille BAUD
4b3fc3159d drivers: display: Introduce SSD1331
Introduces driver for SSD1331 RGB OLED controller

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-12 19:19:15 +02:00
Robin Kastberg
5a92e46c92 iar: toolchain: Implement IAR static init routine
This will implement a way of doing static initialization
the "IAR" way. This is done by calling __iar_data_init3
which handles all static initialization that is mentioned
in the linker file "initialize by copy".

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-05-12 19:18:56 +02:00
Seppo Takalo
252f8fefe0 net: lwm2m: Fix blockwise Ack NUM calculation
After the PR #85000 the calculation of NUM field of
Block 1 option on CoAP Ack packet started to advance
to next packet block.

We should not update the ctx->current field because it is
used for calculating the NUM field in response packet.
It should point to beginning of the payload,
so the response is correct.

Leshan server don't seem to care about this, but Coiote does.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-05-12 16:47:58 +02:00
Jiafei Pan
1a7642b291 boards: imx93_evk: enable SDHC on the board
Added pinctrl and dts nodes for uSDHC1 and uSDHC2, they are disabled
by default, and provided overlay files to enable them if needed.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Lei Xu <lei.xu@nxp.com>
2025-05-12 16:47:49 +02:00
Jiafei Pan
6e72749c64 soc: imx93: a55: add empty soc.h
Some drivers need header file soc.h, according to Zephyr SoC Porting Guide
soc.h must be provided for each SoC, so created an empty one.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-05-12 16:47:49 +02:00
Jiafei Pan
be35a1f3f3 dts: arm64: imx93: add USDHC device nodes
Add device nodes for SDHC.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-05-12 16:47:49 +02:00
Jiafei Pan
51e0fcf80c drivers: sdhc: imx_usdhc: enable MMIO mapping
Enable MMIO mapping in the driver.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-05-12 16:47:49 +02:00
Jiafei Pan
819125f726 drivers: sdhc: imx_usdhc: run clang-format on the driver
Format the driver by using clang-format.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-05-12 16:47:49 +02:00
Fin Maaß
003aa520d0 drivers: ethernet: litex: add length to log
log the length, if obtaining a rx buffer fails.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-12 16:47:41 +02:00
Camille BAUD
bab50a55de dts: wch: Enable using whole flash with CH32V208
Enables using the whole flash on CH32V208
This also involves limiting frequency of the CPU to 120Mhz
from 144Mhz to meet recommendations.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-12 16:47:33 +02:00
Pavel Vasilyev
14b4e30cdf bluetooth: host: Deprecated BT_CONN_TX_MAX
After https://github.com/zephyrproject-rtos/zephyr/pull/72090,
`conn_tx_alloc` no longer blocks, and each buffer always has a
corresponding `bt_conn_tx` object. This eliminates the need to configure
the number of `bt_conn_tx` objects via `CONFIG_BT_CONN_TX_MAX`, since
every buffer now carries its own context even when no callback is used.

This commit deprecates `CONFIG_BT_CONN_TX_MAX` as it is no longer
necessary. Instead, `CONFIG_BT_BUF_ACL_TX_COUNT` is used to allocate
`bt_conn_tx` objects for outgoing ACL data. ZLL already uses
`CONFIG_BT_BUF_ACL_TX_COUNT` to configure the number of outgoing ACL
packets. With this change, modifying the packet count will automatically
adjust the number of corresponding contexts, preventing both context
starvatoin and underutilization.

This approach also aligns with ISO, where the number of `bt_conn_tx`
objects for outgoing ISOdata matches `CONFIG_BT_ISO_TX_BUF_COUNT`.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-05-12 14:54:26 +02:00
Pavel Vasilyev
ddeeecd0b4 bluetooth: host: Add a check for num of bt_conn_tx and ACL/ISO bufs
After https://github.com/zephyrproject-rtos/zephyr/pull/72090, each
packet to be sent (wether ACL or ISO data) has a corresponding
`bt_conn_tx` object, regardless of whether a callback is used.

This means that number of packets Host can send to Controller is limited
by the smaller of two values: ACL/ISO packets Controller can receive,
and the number of `bt_conn_tx` objects allocated by Host.

A mismatch between these numbers may lead to inefficient resource usage
on either Host or Controller side. If Host allocates fewer `bt_conn_tx`
objects than the number of buffers available on Controller for a given
data type, some Controller buffers may go unused. Conversely, if Host
allocates more `bt_conn_tx` objects than Controller can consume, the
excess objects remain unused.

This commit adds a check and issues a warning if the number of
`bt_conn_tx` objects is not aligned with the number of ACL/ISO buffers
reported by Controller via the LE Read Buffer Size v1 or v2 command.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-05-12 14:54:26 +02:00
Yangbo Lu
1ee51232de net: ptp: fix infinite loop in pkt frag
There was wrong implementation in pkt frag removing and inserting.
This was causing infinite loop in either net_buf_frag_last or
net_pkt_get_len. This happened only when the pkt frag removing
and inserting was executed too fast after sending pkt before
ethernet_send calling net_pkt_get_len.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-12 14:54:06 +02:00
Nikodem Kastelik
566b3c0002 soc: nordic: nrf54l: remove workaround for nRF54L anomaly 31
MDK 8.69.1 included in nrfx 3.10 already applies the workaround,
so there is no need to do it again.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-05-12 14:53:51 +02:00
Michael Arnold
a6ab43aa88 boards: sipeed: longan_nano: Add J-Link runner support
Adds the J-Link runner support for the longan_nano board.

Signed-off-by: Michael Arnold <marnold@baumer.com>
2025-05-12 13:34:27 +02:00
Titouan Christophe
7e26a7130e drivers: flash: stm32: fix FLASH_ constants renamed in hal_stm32
In hal_stm32 commit "update stm32h7rs to cube version V1.2.0"
e5eba65b76
the constants FLASH_OPTKEY1/2 for the STM32H7RS have been renamed to
FLASH_OPT_KEY1/2. For backward compatibility, 2 defines have been added
to Legacy/stm32_hal_legacy.h, so that FLASH_OPTKEYx is an alias for
FLASH_OPT_KEYx.

However, in Zephyr's STM32 flash driver, the alias is defined the other
way around since 5dc537389a, which leads to
Twister build failures, for example
https://github.com/zephyrproject-rtos/zephyr/actions/runs/14927867714/job/41936931524#step:12:1335

To fix the build issue, we can simply remove that alias in Zephyr, since
it is no longer needed.

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-05-12 13:31:23 +02:00
Leon Mariotto
f411f48d37 drivers/auxdisplay: format jhd1313 driver.
Format jhd1313 driver to comply with CI rules.

Signed-off-by: Leon Mariotto <leon2mariotto@gmail.com>
2025-05-12 13:31:13 +02:00
Leon Mariotto
2d98a7225c drivers/auxdisplay: add support for dfrobot LCD1602 I2C module
Move backlight i2c controller address into DTS configuration
to be able to use jhd1313 driver for dfrobot's LCD1602.

Signed-off-by: Leon Mariotto <leon2mariotto@gmail.com>
2025-05-12 13:31:13 +02:00
Robert Lubos
7e093351d8 tests: net: coap_server: Adjust test filters
Add netif dependency for the test suite, as in other networking tests
and adjust minimal RAM and FLASH values.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-12 13:30:57 +02:00
Alvis Sun
d0e488e071 drivers: pinctrl: npcx: add pinctrl driver support for npck3
As title.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-05-12 13:30:46 +02:00
Karun Kumar Eagalapati
e1f258d8e2 manifest: Update nrf_wifi for disabling dynamic ED
Update nrf_wifi for disabling dynamic ED.

Signed-off-by: Karun Kumar Eagalapati <karun.kumar@nordicsemi.no>
2025-05-12 09:48:41 +02:00
Yongxu Wang
bc1fd03153 boards: nxp: imx95_evk_mimx9596_m7: enables LPTMR2 interface
Enabled LPTMR2 interface for imx95_evk_mimx9596_m7
Tested with sample counter_basic_api

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-05-12 09:48:17 +02:00
Yongxu Wang
40dd41af40 dts: arm:nxp_imx95_m7: add lptmr2 node
Added lptmr2 nodes for nxp_imx95_m7

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-05-12 09:48:17 +02:00
Martin Stumpf
2c1cef9659 display_sdl: Fix incorrect blend mode during display_read
The blend mode was set in a way that multiplied pixels with the alpha
value during read, which caused tests to fail.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-05-12 09:48:07 +02:00
Alberto Escolar Piedras
f01a96c2f3 drivers/ethernet/eth_native_tap: Avoid reusing tag name
Don't use the same name for the structure instance and type.
As that is a violation of MISRA-C 2012 rule 5.7.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-12 09:47:59 +02:00
Alberto Escolar Piedras
fe70e480f4 drivers/counter native_sim: Avoid reusing tag name
Don't use the same name for the structure instance and type.
As that is a violation of MISRA-C 2012 rule 5.7.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-12 09:47:59 +02:00
Alberto Escolar Piedras
919de4ec5f drivers/entropy native_sim: Add copyright line
Add a copyright line to comply with the coding guidelines.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-05-12 09:47:59 +02:00
Felix Moessbauer
c35bb0de80 boards: lilygo: ttgo_tbeam: initialize GNSS after regulator
As the initialization order is not yet defined by the device tree, we
manually need to reflect the order via the init priorities. As the GNSS
is connected to a UART that is powered by a regulator, the regulator
needs to be initialized first. By setting the prio to 87, we initialize
GNSS right after the regulator (instead of before as done without this
patch).

Signed-off-by: Felix Moessbauer <felix.moessbauer@gmail.com>
2025-05-10 13:02:29 +02:00
Fin Maaß
ff5e031c20 net: conn_mgr: set to unstable
Set connection manager to unstable. It is now used
by multiple parts in zephyr and numerous samples.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-10 13:02:21 +02:00
Fin Maaß
bad506eb7a net: config: init: sntp: use connection manager
Add option to use the connection manager to
schedule a (re-) sync on connection and diabeling the
work, when there is no connection.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-10 13:02:21 +02:00
Fin Maaß
265eb71eef logging: backend: net: use connection mgr
Use connection manager to deactivate and activate
net log backend.
This removes the warnings about dropped packages
completly.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-10 13:02:21 +02:00
Fin Maaß
e7047059b1 logging: backend: net: avoid early enabling
Avoid early enabling of the syslog backend in
the the dhcpv4 options parser.

When CONFIG_NET_IPV4_ACD is enabled, the assigned ip address has
not been checked, when the other dhcpv4 options are parsed, this would
lead to the syslog backend being enabled before the src ip address
is valid, so we get lots of warnings about dropd packets, this fixes
it at least on start. We will still get the warnings, when the iface
goes down and then up later.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-10 13:02:21 +02:00
Fin Maaß
8ce499665b logging: backend: net: avoid automatic enabling
Avoid automatic enabling of the syslog backend by
the logging subsystem.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-10 13:02:21 +02:00
Lars Thiemann
03c557b004 drivers: gpio: pca-series: Cast pointer to void * in logging statements
This silences warnings created at runtime, as the %p format specifier
expects a void pointer.

Signed-off-by: Lars Thiemann <thiemann@cognid.de>
2025-05-10 13:02:12 +02:00
Lars Thiemann
13fe09c5b9 drivers: gpio: pca-series: Reset device before register access
Reset the port expander before accessing any register
or updating the cache.

Signed-off-by: Lars Thiemann <thiemann@cognid.de>
2025-05-10 13:02:12 +02:00
Liang Jiaxiang
b2c6d960cb sensor: bmi08x: Fix variable name in bmi08x_acc_trigger_mode_init
Fix undeclared variable error by changing 'config' to 'cfg' in the
data_sync condition check, matching the variable name declared at the
beginning of the function.

Signed-off-by: Liang Jiaxiang <moonbite233@gmail.com>
2025-05-09 21:09:04 +02:00
Anas Nashif
edc9142f50 tests: add handling for rx arch
empty define for this architecture use for testing.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-09 21:08:57 +02:00
Erwan Gouriou
5103c0c07d MAINTAINERS.yml: Add etienne-lms as STM32 collaborators
We need etienne-lms reviews to count.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-05-09 21:08:48 +02:00
Anisetti Avinash Krishna
358df9970c boards: acrn: acrn: Update HID of PCIe for ADL board
Updated HID of PCIe for ACRN ADL board in dts file

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-05-09 21:08:36 +02:00
Anisetti Avinash Krishna
7ccf5e9b91 boards: acrn: acrn: Enable ACPI for acrn_adl_crb
Enable ACPI support for acrn_adl_crb and setting
CONFIG_MP_MAX_NUM_CPUS to 1 as SMP is disabled.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-05-09 21:08:36 +02:00
Anisetti Avinash Krishna
5fa9e76469 arch: x86: core: intel64: Exclude apic_id comparison for ACRN
This ASSERT fails because the comparison is made between the physical
APIC ID and the virtual CPU's LAPIC ID. If CPU-1 is assigned to ACRN,
it considers that CPU as its CPU-0.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-05-09 21:08:36 +02:00
Chen Xingyu
dc4e259dde samples: drivers: Add auxdisplay_digits sample
This commit introduces a new sample for the Auxiliary display driver.

The sample demonstrates counting from 0 to 1000, with an interval of 100ms
between each increment.

This sample primarily serves to demonstrate the capabilities of segment
displays.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-05-09 21:08:32 +02:00
Chen Xingyu
5be38c6996 drivers: auxdisplay: Add driver for common 7-segment display
This commit introduces a new driver for a common GPIO-driven 7-segment
display. supporting both common anode and common cathode configurations.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-05-09 21:08:32 +02:00
Henrik Brix Andersen
81ee157876 drivers: can: common: mark unused function argument as such
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-05-09 18:00:27 +02:00
Henrik Brix Andersen
b04d6f876c drivers: can: common: declare prescaler variable inside loop
Declare the prescaler variable inside the loop where it is used.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-05-09 18:00:27 +02:00
Henrik Brix Andersen
d5f07eb8c9 drivers: can: common: terminate if ... else if ... constructs with else
Terminate "if ... else if ..." constructs with an empty "else" clause to
indicate that consideration has been given regarding the behaviour when all
other conditions evaluate to false.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-05-09 18:00:27 +02:00
Henrik Brix Andersen
404d92d516 drivers: can: common: define each identifier in a dedicated statement
Define each identifier in a dedicated statement.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-05-09 18:00:27 +02:00
Robert Lubos
eadf1a1a2d samples: net: mqtt_sn_publisher: Drop POSIX requirement
The library no longer requires POSIX, therefore remove it from the
sample as well.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-09 18:00:14 +02:00
Robert Lubos
53f01fa37c net: ip: mld: Ensure MLD APIs work with offloaded interfaces
MLD APIs are commonly used across the codebase to configure IPv6
multicast addresses on network interfaces. Sending MLD reports however
works only for native interfaces as it uses low-level APIs. Therefore,
in order to make the APIs at least semi-functional for offloaded
interfaces as well (i.e. allow to configure multicast address on
the interface), return early in case interface is offloaded.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-09 18:00:14 +02:00
Robert Lubos
e0a1e910ac net: ip: igmp: Ensure IGMP APIs work with offloaded interfaces
IGMP APIs are commonly used across the codebase to configure IPv4
multicast addresses on network interfaces. Sending IGMP reports however
works only for native interfaces as it uses low-level APIs. Therefore,
in order to make the APIs at least semi-functional for offloaded
interfaces as well (i.e. allow to configure multicast address on
the interface), return early in case interface is offloaded.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-09 18:00:14 +02:00
Robert Lubos
4d01228193 net: mqtt_sn: Use zsock_inet_ntop instead of inet_ntop
Use zsock_inet_ntop() instead of inet_ntop() to avoid dependency to the
POSIX subsystem in the library.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-09 18:00:14 +02:00
Robert Lubos
d745689fe7 net: mqtt_sn: Verify result of transport initialization
The result of the transport init() function should be propagated to the
application, otherwise the initialization could fail silently.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-09 18:00:14 +02:00
Robert Lubos
a04e9fd0de net: mqtt_sn: Make sure multicast functionalities are enabled
UDP transport for the MQTT SN libraries depends on IGMP/MLD APIs
unconditionally (via respective setsockopt calls) and without them being
enabled transport initialization would fail. Therefore, ensure
respective multicast libraries are always enabled if MQTT SN UDP
transport is used.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-09 18:00:14 +02:00
Shrek Wang
e59fb26db8 net: tcp: Remove the 'goto next_state' in tcp_in()
Each incoming TCP packet has been completely handled in current
state. No need to do further process by 'goto next_state'.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-05-09 18:00:00 +02:00
Adam Berlinger
c1a173a884 driver: uart: stm32: Add workaround for DMAT errata in low-power modes
This change adds additional workaround for following errata:
"USART does not generate DMA requests after setting/clearing DMAT bit"
Instead of keepint DMAT bit set, it sends first byte by polling
in firmware. This prevents additional power consumption in STOP mode,
caused by keeping DMAT bit set.

Signed-off-by: Adam Berlinger <adam.berlinger@st.com>
2025-05-09 17:59:49 +02:00
Adam BERLINGER
ccf07d45b5 driver: uart: stm32: Clear buffer length only in UART TC event
The buffer_length != 0 is used to check if there is transfer ongoing
inside the uart_stm32_async_tx function. uart_stm32_dma_tx_cb clears
it to 0 when TX DMA is finished, but before the USART send all
the data from shift register.
buffer_length is also cleared in callback async_evt_tx_done,
which is called when USART finished sending all the bytes.
If the uart_stm32_async_tx would be called after
uart_stm32_async_tx, but before async_evt_tx_done there
could be race condition on buffer_length.

Signed-off-by: Adam BERLINGER <adam.berlinger@st.com>
2025-05-09 17:59:49 +02:00
Hieu Nguyen
56446ffbe8 boards: renesas: rzg3s_smarc: Add CAN support
Add CAN support for board RZ/G3S-SMARC

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-05-09 17:59:38 +02:00
Hieu Nguyen
da7f461116 dts: renesas: Add CAN support for RZ/G3S
Add CAN nodes to Renesas RZ/G3S devicetree

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-05-09 17:59:38 +02:00
Hieu Nguyen
a82a5187dd drivers: can: Initial support for RZ/G3S
Add CAN driver support for Renesas RZ/G3S

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-05-09 17:59:38 +02:00
Sandro Scherer
b2213920f2 doc: coap_server: fix msg size
The sizeof operator applied to a pointer to
char does not return the number of characters.
This leads to the message being cut off.
Instead we should use strlen.

Signed-off-by: Sandro Scherer <sand.scherer@gmail.com>
2025-05-09 15:43:12 +02:00
Bjarki Arge Andreasen
89ba317a55 Revert "boards: nordic: nrf54h20: disable sec ipc"
This reverts commit 5386a64cb5.

Issue is no longer relevant. Simplify use of board by restoring
enabling secure ipc by default.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-09 15:43:05 +02:00
Chen Xingyu
d4e302cc97 boards: waveshare: esp32s3_matrix: Bring up board for ESP32-S3-Matrix
ESP32-S3-Matrix is a tiny board from Waveshare, shipped with an
ESP32-S3FH4R2, a QMI8658C IMU and an 8x8 WS2812 RGB matrix.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-05-09 15:42:50 +02:00
Chen Xingyu
95996c7bbe drivers: display: Select LED_STRIP when LED_STRIP_MATRIX is enabled
The LED_STRIP driver is not enabled by default on all boards. As a result,
building the LED_STRIP_MATRIX display driver fails if LED_STRIP is not
manually enabled.

To address this, this commit changes the dependency from `depends on` to
`select`, ensuring that the required driver is automatically enabled and
build failures are avoided.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-05-09 15:42:50 +02:00
Adrian Gielniewski
a6bfd920f7 modules: openthread: fix unused function error
Compile `log_translate` function only if `CONFIG_LOG` is defined.

Signed-off-by: Adrian Gielniewski <adrian.gielniewski@nordicsemi.no>
2025-05-09 15:41:13 +02:00
Sudan Landge
37a0e8c82b cmake: arm: fix ARMFVP_FLAGS for ns variant
Support to run non secure variants with ARMFVP was enabled with
a7122cf5 and fa45bebc
however, the pattern search doesn't work as expected.
This commit fixes that.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-05-09 15:41:07 +02:00
Hakan Jansson
2601ee9b5e manifest: update hal_infineon
Update CYW20829 Bluetooth FW blobs to latest release (1.0.3.10058)

Signed-off-by: Hakan Jansson <hakan.jansson@infineon.com>
2025-05-09 15:41:00 +02:00
Krzysztof Chruściński
7a162846c4 samples: drivers: adc: adc_sequence: Fix nrf54h20dk configuration
AIN9 source needs special handling (all from AIN8-AIN14). Conversion
result needs to be scaled up by 3.6 additionally to gain and reference
voltage. In order to achieve correct value in the sample vref-mv is
used as reference voltage instead of predefined internal reference
source.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-09 15:40:53 +02:00
Krzysztof Chruściński
2174e1690a samples: drivers: adc: adc_sequence: Do not overwrite vref_mv
Sample is reading vref-mv property to get reference voltage and then if
reference source is set to ADC_REF_INTERNAL this value is overwritten.
If vref-mv property is provided then it should not be overwritten.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-09 15:40:53 +02:00
Krzysztof Chruściński
2f7d799c99 drivers: adc: nrfx_saadc: Add validation of channel configuration
On nrf54h20 there are additional analog pins (AIN8+). When differential
mode is used they must not be mixed with AIN0-AIN7. Add build time
validation which detects if configuration is invalid.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-09 15:40:53 +02:00
Emil Gydesen
eeb1d92df4 tests: Bluetooth: Tester: Set controller ACL buffer size
Change the ACL buffer sizes to be a higher value than the
default, as that caused some issues with the CIS established
event.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-09 14:02:10 +02:00
Carles Cufi
32047d3938 soc: nordic: nrf54h: Remove external square wave
This option is no longer present in the Datasheet, remove it from the
BICR JSON file.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-05-09 14:01:58 +02:00
Anas Nashif
f8647dc94a sca: add coverity as a SCA variant
Add coverity integration as a SCA variant. This is targetting the
service provided by blackduck to open-source projects available on
scan.coverity.com.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-05-09 14:01:50 +02:00
Arkadiusz Cholewinski
8be92f86cc Harness: Power harness documentation
Add documentation for power harness.

Signed-off-by: Arkadiusz Cholewinski <arkadiuszx.cholewinski@intel.com>
2025-05-09 14:01:43 +02:00
Chun-Chieh Li
75e7d0eeae drivers: can: support nuvoton m55m1x series
This supports Nuvoton m55m1x series can-fd controller.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-05-09 14:01:32 +02:00
Chun-Chieh Li
d1e8590b6b drivers: can: numaker: fix m2l31x core clock
This fixes canfd core clock for m2l31x soc.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-05-09 14:01:32 +02:00
Fin Maaß
a7ee49667d mgmt: hawkbit: add event for confirmed current image during init
add event for confirmed current image during initialization

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-09 14:01:08 +02:00
Bjarki Arge Andreasen
0826996337 drivers: gpio: gpio_nrfx: store init output val for get_config
The nRF GPIO hardware does not store the initial output value
set resulting from gpio_pin_configure() and thus, when
gpio_get_config() is used, the initial value is not returned.

This commit just reads the output value and sets the INIT
value to match in gpio_get_config().

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-09 12:55:45 +02:00
Titouan Christophe
25b326bc1f flash: stm32h7x: fix implicit declaration for LL_GetFlashSize
Since https://github.com/zephyrproject-rtos/zephyr/pull/83114 was merged,
I get twister errors unrelated to my pull requests for the STM32H7S78-DK
(for example https://github.com/zephyrproject-rtos/zephyr/actions/runs/14900504138/job/41851537049#step:12:1369)

This is because the function LL_GetFlashSize() was removed from hal_stm32
on the STM32H7RS series in
e5eba65b76

I am unsure if the removal from hal_stm32 is intentional. If yes, then this
commit should be merged into Zephyr to fix compilation for that target.
Otherwise, hal_stm32 must be patched, Zephyr's west manifest updated, and
this commit can be discarded.

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-05-09 12:52:12 +02:00
Audun Korneliussen
6da50c3384 MAINTAINERS.yml: Update collaborators for mfd drivers
Add nordic-auko and seov-nordic as collaborators for
Drivers: MFD in MAINTAINERS.yml file.

Signed-off-by: Audun Korneliussen <audun.korneliussen@nordicsemi.no>
2025-05-09 12:51:59 +02:00
Audun Korneliussen
cc5ad7dcdc MAINTAINERS.yml: Update maintainers for regulator drivers
Remove gmarull, and add nordic-auko and seov-nordic as maintainers
for Drivers: Regulators in MAINTAINERS.yml file.

Signed-off-by: Audun Korneliussen <audun.korneliussen@nordicsemi.no>
2025-05-09 12:51:59 +02:00
Ruibin Chang
b889ea5394 dts/bindings/pwm/it8xxx2: remove redundant property pwm-output-frequency
it8xxx2 pwm driver does not handle "pwm-output-frequency" property,
so setting the property in borad.dts is useless.

About PWM output frequency, it can be set by pwm-cells "period",
"pwm-output-frequency" is really redundant.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-05-09 12:51:49 +02:00
Swift Tian
443b7012d7 soc: ambiq: fix potential issues
1. fix compile issue when CONFIG_DCACHE=n
2. check null in buf_in_nocache

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-05-09 12:51:42 +02:00
Björn Bergman
465f6ba73e userspace: weak defintions for generated k-object lookup functions
Instead of obscure linker-file hacks providing dummy definitions before
we have the proper generated k-object lookup functions, provide weak
definitions  that will be taken out by the real generated implementations
when they are available.

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-05-09 12:51:30 +02:00
Neil Chen
aa1f9e2d34 tests: drivers: spi: add spi test support for frdm_mcxa153 board
add spi test support for frdm_mcxa153 board.
reduce isr stack size to avoid ram overflow.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-09 12:51:20 +02:00
Neil Chen
62fcd0cc42 boards: nxp: frdm_mcxa153: Support lpspi for NXP frdm_mcxa153 board
Support lpspi for NXP frdm_mcxa153 board.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-09 12:51:20 +02:00
Neil Chen
46f2bcde28 dts: arm/nxp: Add lpspi nodes to NXP MCXA153 dtsi file
Add lpspi nodes to NXP MCXA153 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-09 12:51:20 +02:00
Neil Chen
a944cc3155 samples: drivers: i2c: add target_eeprom support for frdm_mcxa153 board
add i2c target_eeprom support for frdm_mcxa153 board

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-09 12:51:20 +02:00
Neil Chen
65d794a9d7 boards: nxp: frdm_mcxa153: Support lpi2c for NXP frdm_mcxa153 board
Support lpi2c for NXP frdm_mcxa153 board.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-09 12:51:20 +02:00
Neil Chen
4554bd0e7f dts: arm/nxp: Add lpi2c nodes to NXP MCXA153 dtsi file
Add lpi2c nodes to NXP MCXA153 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-09 12:51:20 +02:00
Neil Chen
9a58c44544 drivers: syscon: support mcxa153 lpi2c clock
MCXA153 only have one I2C, support its clock in syscon driver.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-05-09 12:51:20 +02:00
Nhut Nguyen
bc429da9fb drivers: gpio: rz: Mass renaming
Mass renaming is carried out to unify some prefixes and shorten some
macros, making the code easier to maintain and support new devices.

- Rename `int_dev` to `gpio_int_dev` for gpio interrupt
- Rename `eirq` to `ext_irq` for external interrupt
- Rename `gpio_rz_hw_config` to `gpio_rz_flags`
- Rename `p_pm` to `gpio_flags`
- Rename `pre_flags` to `rz_flags`
- Remove `_IOPORT` and `_PIN_CONFIGURE` in some macros
- Rename `GPIO_RZ_PIN_CONFIGURE_GET_FILTER`,
  `GPIO_RZ_PIN_CONFIGURE_GET`, `GPIO_RZ_PIN_SPECIAL_FLAG_GET` to
  `GPIO_RZ_FLAG_GET_FILTER`, `GPIO_RZ_FLAG_GET_CONFIG`,
  `GPIO_RZ_FLAG_GET_SPECIFIC` respectively

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-05-09 12:51:11 +02:00
Alain Volmat
f7a2b4e913 doc: release-notes-4-2: 8 bit bayer format renaming explanation
All 4 variants of 8 bit raw bayer video format renaming explained.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-09 10:42:37 +02:00
Alain Volmat
2d46727f52 drivers: video: rename 8 bit bayer format in Sxxxx
In order to be consistant with other formats bayer formats
recently introduced, rename all 4 8 bit bayer formats with a
S prefix (SBGGR / SRGGB / SGBRG / SGRBG).

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-09 10:42:37 +02:00
Vinayak Kariappa Chettimada
315ae48ceb Bluetooth: Controller: Use LOW_LAT_ULL implementation for ISO support
Use BT_CTLR_LOW_LAT_ULL implementation for enqueing ISO Rx.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-09 10:42:28 +02:00
Vinayak Kariappa Chettimada
3c661a1765 Bluetooth: Controller: Fix LOW_LAT_ULL implementation for ISO support
Fix BT_CTLR_LOW_LAT_ULL implementation for enqueing ISO Rx.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-09 10:42:28 +02:00
Vytautas Virvičius
9a409d6b00 net: l2: ppp: Explicitly negotiate ACCM
Many cellular modems attempt to negotiate an ACCM value of 0x00000000.
While the PPP driver rejects this by default, it does not propose an
alternative. As a result, some modems default to using 0x00000000 after
LCP negotiation. Because the PPP driver expects all control characters
to be escaped, this causes issues during decoding. This change
negotiates an ACCM value of 0xffffffff to ensure compatibility with such
modems.

Signed-off-by: Vytautas Virvičius <vytautas@virvicius.dev>
2025-05-09 08:23:16 +02:00
Daniel Leung
b6be487394 xtensa: update HAL path for custom compilations
Xtensa arch layer has some custom compilation commands to
generate the interrupt dispatchers and the core-isa* files.
However, the include path to find core-isa.h does not work
for Espressif ESP32. So update the mechanism to use correct
path pointing to Espressif HAL when targeting ESP32 family
SoCs.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-05-09 08:23:09 +02:00
Miguel Gazquez
f8450e4bed pinctrl: Add missing newline in .dtsi
Add a missing newline between two groups in the pin control .dtsi
file for the ch32v003evt and the linkw board to comply with style
rules.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-05-09 08:23:02 +02:00
Jianxiong Gu
31d65aac5d drivers: pinctrl: wch_20x_30x_afio: fix afio remap
- Enable AFIO clock prior to remap configuration
- Consolidate remap logic in a single conditional block
- Correct USART1 remap detection by checking pcfr_id
- Apply changes to pinctrl_wch_afio.c

Signed-off-by: Jianxiong Gu <jianxiong.gu@outlook.com>
2025-05-09 08:22:40 +02:00
Benjamin Cabé
ed4222e238 doc: releases: Intermediate update for new 4.2 boards/samples/drivers
New boards, drivers, samples since Apr. 10, 2025.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-09 01:41:43 +02:00
Carles Cufi
c5033a2a53 manifest: Update hal_nordic revision to pull in #292
Pull in https://github.com/zephyrproject-rtos/hal_nordic/pull/292.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-05-09 01:41:13 +02:00
Declan Snyder
ddce1e1c67 soc: nxp: rw: Policy constraints when PM2 enabled
When PM2 is enabled, it will disable many of the devices, so need to
enable PM policy constraints for this mode also so that device drivers
can work.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-09 01:41:05 +02:00
Robert Hancock
35b843b52e drivers: serial: serial_test: Support irq_update call
This driver doesn't need to do anything in its irq_update
implementation, but add a dummy one so that calls to uart_irq_update
don't fail with -ENOSYS.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-05-09 01:40:57 +02:00
Robert Hancock
c3f9e6d1ba drivers: serial: serial_test: support IRQ callback user data
This driver previously caused an assertion error if non-NULL user_data
was passed to uart_irq_callback_set. Add support for this by storing the
user data and passing it back to the IRQ callback function.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-05-09 01:40:57 +02:00
Josuah Demangeon
c2b408df9b samples: drivers: video: capture: fix Arduino Nicla Vision
Since #84446 it became necessary to enqueue a first video buffer before
performing the transfers. Apply this config change to the sample.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-09 01:40:47 +02:00
Martin Stumpf
acfd958f4b drivers: fpga: ice40: Fix log level
All FPGA driver implementations should respect `CONFIG_FPGA_LOG_LEVEL`.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-05-09 01:40:35 +02:00
Michael Hope
3fe4bcb67b boards: wch: add the ch32v006evt
The WCH CH32V006EVT is an evaluation board for the RISC-V based
CH32V006K8U6 SOC.

The board is equipped with a power LED, reset button, USB port for
power, and two user LEDs.

Add the board definition, documentation, and sample overlay.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-05-09 01:40:22 +02:00
Michael Hope
e039b8d59c drivers: clock_control: set the flash wait state to match the RM
The flash latency needs to be configured before switching to the high
speed clock. Set the latency based on the CH32V003 and CH32V00x
reference manual.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-05-09 01:40:22 +02:00
Michael Hope
3dbf080698 hal: wch: widen the checks to include the CH32V family
Expand the current systick compatibility to include the CH32V00x
series. Change the HAL compatibility to include all of the CH32V
family.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-05-09 01:40:22 +02:00
Michael Hope
64067e5d6a soc: wch: add the CH32V00x series
Compared to the CH32V003, the CH32V00x series is an evolution that
uses a different microarchitecture (V2C instead of V2A) and different
pinctrl mappings.

Fork the current qingke_v2a and use the new proposed naming convention.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-05-09 01:40:22 +02:00
Michael Hope
d68c18471e dts: wch: add the Devicetree for the CH32V006
The CH32V006 is part of the CH32V00x series of 32 bit RISC-V
microcontrollers. This series is an evolution of the CH32V003 which
was used as a basis for this Devicetree definition.

Compared to the CH32V003, thie CH32V006 has an extra GPIO port (PB),
an extra UART (UART2), 8 KiB of RAM, 62 KiB of flash, and uses the
QingKe V2C core.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-05-09 01:40:22 +02:00
Michael Hope
f4b1544bec drivers: pinctrl: add a driver for the CH32V00x series
The CH32V006 and others in the CH32V00x series are an evolution of the
CH32V003 and use different remap offsets for the various peripherals.

In the same way as the CH32V20x, fork the CH32V003 driver and add
CH32V00x support.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-05-09 01:40:22 +02:00
Michael Hope
3468830744 arch: riscv: add support for the zmmul integer multiply extension
The QingKe V2C has an integer multiplier but no divide. Add support
for the corresponding Zmmul extension and, as the extension was added
in GCC 13.0, add a test for the compiler version.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-05-09 01:40:22 +02:00
Anisetti Avinash Krishna
c65f1f50ed boards: intel: rpl: Added revisions for RPL-s board
Added 2 different revisions of RPL-s board with 2 PCH
options 600 series and 700 series.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-05-09 01:40:09 +02:00
Anisetti Avinash Krishna
528d47ddd2 dts: x86: intel: Corrected dev-id of SMBUS
Corrected dev-id of SMBUS accourding to the 600
series(ADL-s PCH).

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-05-09 01:40:09 +02:00
Emilio Benavente
417b9027a4 tests: drivers: watchdog: Enable reset none testing for ewm
Enabled the wdt_basic_reset_none to test boards using the EWM.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-05-09 01:39:56 +02:00
Emilio Benavente
6913527a74 dts: arm: nxp: mcxw71_common: Added EWM Support
Added EWM Support for MCXW71 and MCXW72

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-05-09 01:39:56 +02:00
Emilio Benavente
5fd6715917 drivers: watchdog: Added Driver for the EWM
Added a driver for the External Watchdog Driver

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-05-09 01:39:56 +02:00
Joel Guittet
54b826336b drivers: counter: counter_reset api support to stm32 timer
Add support to reset counter value.

Signed-off-by: Joel Guittet <joelguittet@gmail.com>
2025-05-08 19:53:12 +02:00
Dhruv Menon
b25591b7bc dts: ti: adjust GPIO base addresses for the updated driver
This commits follows the prior commit to update all the base
register which uses the Davinci driver as thier GPIO driver

Signed-off-by: Dhruv Menon <dhruvmenon1104@gmail.com>
2025-05-08 19:50:31 +02:00
Dhruv Menon
6b363634d8 drivers: gpio: update GPIO register addresses for TI davinci
This commit adds a padding of 0x10 bytes at the beginning of the
`gpio_davinci_regs` structure to correctly align the register
definitions with the actual register layout.

Previously, the DTS had to manually offset the base address by
0x10, introducing a special case in Zephyr's Davinci GPIO driver.
This change eliminates the need for that workaround
Adding the paddingi also help to maintain a similarly with also
to the linux counterpart.

Signed-off-by: Dhruv Menon <dhruvmenon1104@gmail.com>
2025-05-08 19:50:31 +02:00
Luca Burelli
dbf00bfca8 yaml: save intermediate files in the build directory
Make sure to provide full paths when saving the intermediate files in
the YAML export, to prevent them from being saved in the source tree.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-05-08 19:46:18 +02:00
Fabio Baltieri
ea16d0e25d Revert "ci: workflows: check for manifest dnm in the manifest workflow"
This reverts commit 370e0882cb, the
condition is evaluated at workout creation time so this does not work at
all, plus some conditions don't have a label removal logic so pairing
this with the manifest run does not work anyway.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-05-08 19:46:03 +02:00
Johan Hedberg
af77efb77e Bluetooth: Host: Remove unnecessary ifdef from cs.c
The building of cs.c based on the respective Kconfig option is already
taken care of CMakeLists.txt, so it's redundant to try to protect the code
through ifdefs in the c-file as well.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-05-08 15:56:35 +02:00
Seppo Takalo
673853ae5a drivers: eth: native_tap: Init MAC properly
Set static or random MAC before calling net_linkaddr_set().

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-05-08 15:56:27 +02:00
Erwan Gouriou
2593d9409e MAINTAINERS: Add avolmat-st as collaborator in Drivers: Video
Adding Alain Volmat (avolmat-st) as collaborator in Drivers: Video

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-05-08 15:56:19 +02:00
Arkadiusz Balys
a669ba5623 doc: releases: Add release note entry for OpenThread update
Add an entry to the release note to inform about the new
CONFIG_OPENTHREAD_SYS_INIT Kconfig option.

Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
2025-05-08 15:56:11 +02:00
Arkadiusz Balys
ca40f410ac openthread: Change log level to PLATFORM in OpenThread platform
Stop using L2 log level in OpenThread platform files.

Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
2025-05-08 15:56:11 +02:00
Arkadiusz Balys
9a5f4b97bd openthread: Add possibility to initialize OpenThread in POST_KERNEL
The new CONFIG_OPENTHREAD_SYS_INIT Kconfig option allows OpenThread
to be automatically initialised during the Zephyr POST_KERNEL
initialisation stage.

If Zephyr's L2 layer OpenThread implementation is enabled, the
IEEE802.15.4 shim layer initialises OpenThread in the POST_KERNEL
phase. However, since Openthread may work without Zephyr's L2
layer, in this case, no object can initialise it automatically.
This new Kconfig option may help start OpenThread automatically
if the L2 Layer is disabled.

Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
2025-05-08 15:56:11 +02:00
Vignesh Pandian
d750daa2bb west: fix for west flash --context with sysbuild.
Fix west flash --context fails for Sysbuild projects issue.

Signed-off-by: Vignesh Pandian <vignesh@aerlync.com>
2025-05-08 15:56:02 +02:00
Robert Lubos
1c46508c54 tests: net: dhcpv4: client: Verify Request xid
According to RFC 2131 Request message Exchange ID should be the same as
the one received in the Offer message from the server. Modify test to
verify that.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-08 15:55:55 +02:00
Robert Lubos
eabeb84350 tests: net: dhcpv4: client: Verify that Pad option is handled
Add Pad option to the DHCP packets generated by the fake server, to
verify the client processes them correctly.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-08 15:55:55 +02:00
Robert Lubos
45a1cf7fcc net: dhcpv4: client: Do not generate new xid for Request message
According to RFC 2131, DHCP clients should use the same xid as
received in the Offer message when sending DHCP Requests. Therefore,
when generating DHCP Request message, the xid value should not be
incremented.

One vague topic is whether the xid value should be updated when
sending Requests from Renewing or Rebinding states, however RFC makes no
exception for those states, and other implementations (dhclient, lwip)
seem to reuse the same xid in such cases, so comply with this behavior.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-08 15:55:55 +02:00
Robert Lubos
9d54465559 net: dhcpv4: client: Handle Pad option
Pad option (option code 0) can be present in between other options for
alignment. The option has a fixed 1-byte length (i. e. no length field),
therefore it did not fall under the common processing code for
unrecognized options (which include the length field at the second
byte). Therefore, not processing this option explicitly could disturb
other options processing, as the parser would wrongly interpret the next
option code as the length field. This commit adds Pad option handling to
fix the issue.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-08 15:55:55 +02:00
Robert Lubos
f4408c088c net: dhcpv4: client: Prevent asserting on malformed message
In case the received DHCP message is malformed and contains invalid
message type, the code responsible for matching message type with a
string would assert. This shouldn't be the case that external conditions
(like receiving malformed packet) trigger asserts in the system.
Therefore modify that code, to return "invalid" string in such case
instead.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-08 15:55:55 +02:00
Fin Maaß
c4ff1dbc25 mgmt: hawkbit: Fix cancelAction string handling
Fix off-by-one error in cancelAction string handling.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-08 15:55:48 +02:00
Torsten Rasmussen
c79c4ef9a8 linker: move last section id constant to c-code
Move creation of last section id from ld linker script LONG() usage to
C code with last section attribute.

The use of `LONG()` works correctly with ld but lld emits a warning
because .last_section section is not allocated as there are no matching
input sections and discards the `LONG()` call, meaning the last section
identifier will not be present in the flash.
> ld.lld: warning: ignoring memory region assignment for
>                             non-allocatable section '.last_section'

Placing the last section id in `.last_section` in C code makes lld
allocate the memory for the id and thereby create the output section
with the correct output.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-05-08 15:55:40 +02:00
Torsten Rasmussen
8f2560cf3e linker: discard eh_frame when C++ exceptions are disabled
Discard the eh_frame section when C++ exceptions are disabled.

In principle the eh_frame may be used for other purposes such as
backtracing when linking C programs, then Zephyr compiles each source
file with '-fno-asynchronous-unwind-tables', thus keeping the eh_frame
in the elf output just takes up space.

When using gcc/ld, then the eh_frame is generally generally discarded
per default, however for clang/lld it will be included but give a
warning that the section is auto-placed.

Some platforms already discards the eh_frame, so unify this for all
targets.

As eh_frame is now discarded in linker scripts then post processing step
of removing the section during hex or bin conversion can also be
removed.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-05-08 15:55:40 +02:00
Robert Lubos
493be790ac net: http: client: Fix the body callback processing
Response "data_len" field needs to be set with the size of the
received data before calling the parser as it's used inside the on_body
callback, this commit fixes it.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-08 14:01:07 +02:00
Johan Hedberg
306faea69a Bluetooth: samples: Fix minimal configuration stack sizes
With recent changes to the host stack and crypto subsystem, the actual
usage of the system and long workqueues has changed.

Here's the measured usage when doing LE SC pairing on a Cortex M0 target:

BT LW WQ            : STACK: unused 360 usage 1040 / 1400 (74 %); CPU: 4 %
sysworkq            : STACK: unused 0 usage 1024 / 1024 (100 %); CPU: 0 %

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-05-08 14:01:00 +02:00
Johan Hedberg
9ecca87281 Bluetooth: Host make the long workqueue stack size configurable
Add a prompt to the long workqueue stack size, so that it can be easily
fine-tuned by the application. The exact usage will depend on many factors,
such as the chosen crypto backend and target architecture, so it's not
possible to have "one size fits all" solutions based on the default values.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-05-08 14:01:00 +02:00
Hao Luo
22ffba549d drivers: ambiq: Add spi/i2c support for apollo510
This commit adds spi and i2c support for apollo510

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-08 14:00:52 +02:00
Swift Tian
389103dfec drivers: ambiq: rework ambiq spi and i2c drivers cache handling
1. rework IOM cmdq buffer instantiation
2. rework spi and i2c cache handling as it is incorrect.
3. buffers need to be aligned with DCACHE on

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-05-08 14:00:52 +02:00
Martin Jäger
81cd7cacc4 drivers: input: input_adc_keys: add debouncing to avoid false events
The previous implementation already reported a key-press event after
reading an ADC value close to the threshold for the first time.

This may lead to false events if the ADC takes a reading just during
the transition from one button state to another (especially if a
somewhat large capacitor is used to avoid noise).

A key-press state must be same for at least two samples in order to
avoid such issues, which is what this commit implements.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-05-08 12:25:48 +02:00
Yangbo Lu
07e1de381a net: ptp: adjust only frequency for continuous synchronization
Current clock synchronization was always stepping clock. This was
causing large offset, and discontiguous ptp hardware clock time.
For TSN hardware, discontiguous ptp hardware clock time was not
able to be used for other TSN protocols.

This patch is to convert to frequency adjustment with a basic
PI control algorithm.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-08 12:25:30 +02:00
Yangbo Lu
e9efff6e33 net: ptp: calculate link delay with right timestamps
At the starting of ptp syncrhonization, there may be not Sync frame
TX/RX timestamps in first time link delay calculation.
So, need a check for that in case of wrong link delay calculated.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-08 12:25:30 +02:00
Jeremy Dick
a167c2d895 drivers: input: cap12xx Add properties for sensitivity and guard signal
The Microchip CAP12xx series has a configurable sensitivity and
can drive an optional guard signal to reduce noise sensitivity.

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-05-08 12:25:18 +02:00
Daniel DeGrasse
6ec7908239 scripts: west_commands: runners: do not print newline in telnet decode
Remove the newline printed after decoding a block of telnet data from
the server in the "pure python" implementation used when netcat is not
available. This newline print is incorrect as it is not in the RTT
output being produced from the device, and can impact programs like
twister which expect specific strings in the output and cannot handle
these strings being split across two lines

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-05-08 12:25:07 +02:00
Amneesh Singh
c4dcb17637 soc: ti: k3: am6x: do not override KERNEL_ENTRY
The SOC defconfig overrides CONFIG_KERNEL_ENTRY from the default of
__start to _vector_table. This is undesirable for cores such as M4 where
the _vector_table symbol has just raw addresses and no instructions. The
change was done to make sure Zephyr images can be loaded via remoteproc in
which case the entrypoint needs to be 64 byte aligned. To fix this, use
_vector_table as the ELF entrypoint only for R5 cores.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-05-08 12:24:56 +02:00
Andrew Davis
e1d7641d36 dts: arm: ti: j722s_mcu_r5: Add mailbox node
Add TI OMAP interprocessor mailbox node for J722s MCU R5,
the user ID assignment is as per the corresponding mailbox
interrupt assignment for the core.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-05-08 12:24:40 +02:00
Andrew Davis
675a207d00 dts: arm: ti: j722s_main_r5: Add mailbox node
Add TI OMAP interprocessor mailbox node for J722s MAIN R5,
the user ID assignment is as per the corresponding mailbox
interrupt assignment for the core.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-05-08 12:24:40 +02:00
Andrew Davis
a26e8ed6ae dts: arm: ti: j721e_main_r5: Add mailbox node
Add TI OMAP interprocessor mailbox node for J721e MAIN R5,
the user ID assignment is as per the corresponding mailbox
interrupt assignment for the core.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-05-08 12:24:40 +02:00
Michał Stasiak
16b9f60432 drivers: audio: dmic_nrfx: add support for audio clocks on nRF54
Added support for audio clock for nRF54L20 and AudioPLL
for nRF54H20 in DMIC PDM driver.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-05-08 12:24:31 +02:00
Michał Stasiak
894cbed016 dts: common: nordic: nRF54L20: add audio clock node
Added added node for audio clock on nRF54L20 with
fixed frequency of 24 MHz.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-05-08 12:24:31 +02:00
Abderrahmane JARMOUNI
6a6a0a9ce0 samples: modules: lvgl: add multi-display sample
Add LVGL multi-display sample

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-08 12:24:21 +02:00
Abderrahmane JARMOUNI
4a75a930b9 modules: lvgl: add multi-display input support
Add support for binding LV input devs to multiple displays

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-08 12:24:21 +02:00
Abderrahmane JARMOUNI
0be94452a9 modules: lvgl: add multi-display support in Zephyr
Add multi-display support in Zephyr ontop of LVGL which already supports
it.

This change allows for creating buffers and structures for each display
statically and automatically from deviceTree info, and call LV init
routines for each display

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-08 12:24:21 +02:00
Abderrahmane JARMOUNI
cf30cfa59b devicetree: macros: add display specific macros
Add macros to get display controllers phandles and count from
"zephyr,displays" compatible node

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-08 12:24:21 +02:00
Abderrahmane JARMOUNI
55fc51f359 dts: bindings: add "zephyr,displays" compatible
Add "zephyr,displays" compatible for passing available display
controllers nodes to graphical libraries that have multi-display support
like LVGL

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-08 12:24:21 +02:00
Hao Luo
04aaa18f1d drivers: counter: add counter support for apollo510
This commit adds support for apollo510 counter

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-08 08:55:06 +02:00
Hao Luo
c2ef2c551e drivers: rtc: add rtc support for apollo510
This commit adds support for apollo510 rtc

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-08 08:55:06 +02:00
Stanley Huang
e589fd6e24 boards: raytac: Add support for raytac_an54l15q_db
Add support for Raytac's new AN54L15Q-DB demo board.

Signed-off-by: Stanley Huang <stanley@raytac.com>
2025-05-08 08:54:58 +02:00
Emil Gydesen
425f3f4b0a Bluetooth: Audio: Rename ctx type prohibited to none
The context type PROHIBITED has been removed from
the Bluetooth assigned numbers document. It is, however,
still used in some profiles to indicate either "No context
type supported" or "None available", and thus a rename
to "NONE" makes sense.

It is still treating similar to prohibited in some cases,
as it is not a valid context type in all cases.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-08 01:58:01 +02:00
Conny Marco Menebröcker
fa53d93107 soc: add stm32l100xb
This patch adds support for the stm32l100 SoC. Tested on private board.

Signed-off-by: Conny Marco Menebröcker <c-m-m@gmx.de>
2025-05-08 01:57:52 +02:00
Alain Volmat
1b3c4b7f42 manifest: update hal_stm32 following dcmi/dcmipp updates
Update hal_stm32 revision to integrate dcmi/dcmipp pinctrls
updates.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-08 01:57:43 +02:00
Maochen Wang
8c66d5b22c boards: nxp: RW612: support override TX power limit file
Add here as an example that support setting customized TX power limit
file to override the default one.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-05-07 23:04:16 +02:00
Kyle Micallef Bonnici
003fb88afd scripts: footprint: fix node size computation
fix issue with (no paths) != sum(<no paths>)

In some cases it was observed that item were being
added to the node_no_paths and these only had a
path of ':' hence no node was ever added.

This resulted in the size of (no paths) to not be
equal to the sum of it's children.

I am not sure if this size should be a child named
of no paths or if  this should be part of the
node_hidden_syms. I assumed it should be part
of node_hidden_syms

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-05-07 23:03:29 +02:00
dependabot[bot]
f59a054ad7 ci: github: bump the actions-deps group across 1 directory with 8 updates
Bumps the actions-deps group with 8 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [actions/setup-python](https://github.com/actions/setup-python) | `5.4.0` | `5.6.0` |
| [EnricoMi/publish-unit-test-result-action](https://github.com/enricomi/publish-unit-test-result-action) | `2.18.0` | `2.19.0` |
| [tj-actions/changed-files](https://github.com/tj-actions/changed-files) | `46.0.3` | `46.0.5` |
| [actions/download-artifact](https://github.com/actions/download-artifact) | `4.2.1` | `4.3.0` |
| [codecov/codecov-action](https://github.com/codecov/codecov-action) | `5.4.0` | `5.4.2` |
| [github/codeql-action](https://github.com/github/codeql-action) | `3.28.13` | `3.28.17` |
| [carpentries/actions](https://github.com/carpentries/actions) | `0.14.0` | `0.15.0` |
| [zgosalvez/github-actions-ensure-sha-pinned-actions](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions) | `3.0.23` | `3.0.24` |



Updates `actions/setup-python` from 5.4.0 to 5.6.0
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v5.4.0...a26af69be951a213d495a4c3e4e4022e16d87065)

Updates `EnricoMi/publish-unit-test-result-action` from 2.18.0 to 2.19.0
- [Release notes](https://github.com/enricomi/publish-unit-test-result-action/releases)
- [Commits](170bf24d20...afb2984f4d)

Updates `tj-actions/changed-files` from 46.0.3 to 46.0.5
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](823fcebdb3...ed68ef82c0)

Updates `actions/download-artifact` from 4.2.1 to 4.3.0
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](95815c38cf...d3f86a106a)

Updates `codecov/codecov-action` from 5.4.0 to 5.4.2
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](0565863a31...ad3126e916)

Updates `github/codeql-action` from 3.28.13 to 3.28.17
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](1b549b9259...60168efe1c)

Updates `carpentries/actions` from 0.14.0 to 0.15.0
- [Release notes](https://github.com/carpentries/actions/releases)
- [Commits](e27aa6c531...2e20fd5ee5)

Updates `zgosalvez/github-actions-ensure-sha-pinned-actions` from 3.0.23 to 3.0.24
- [Release notes](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions/releases)
- [Commits](4830be28ce...2d6823da40)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: 5.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
- dependency-name: EnricoMi/publish-unit-test-result-action
  dependency-version: 2.19.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
- dependency-name: tj-actions/changed-files
  dependency-version: 46.0.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: actions/download-artifact
  dependency-version: 4.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
- dependency-name: codecov/codecov-action
  dependency-version: 5.4.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: github/codeql-action
  dependency-version: 3.28.17
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: carpentries/actions
  dependency-version: 0.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
- dependency-name: zgosalvez/github-actions-ensure-sha-pinned-actions
  dependency-version: 3.0.24
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-07 21:21:05 +02:00
Yuval Peress
5b19a9b94d twister: Better manage gcov sym link
In twister coverage runs we create the gcov sym link to llvm-cov
executable. This code runs multiple times which causes errors with the
current implementation since creating the symlink will fail; then
copying will also fail because we're using the symlink (self copy the
file).

Add a helper function to `try_making_symlink` which will handle the
following cases:
1. If the symlink already exists and is correct, do nothing.
2. If the symlink exists but points to the wrong file, replace it.
3. If the symlink doesn't exist create it.
4. If creating a symlink fails, just copy the file.

Signed-off-by: Yuval Peress <peress@google.com>
2025-05-07 21:20:45 +02:00
Aksel Skauge Mellbye
3cf4e2f933 doc: Add vendor filter for hw feature generation
The hw feature generation takes a long time. The HW_FEATURES_TURBO_MODE
option completely disables hw feature generation. Add a new option
HW_FEATURES_VENDOR_FILTER to be able to selectively enable hw feature
generation only for a given list of vendors. This option is useful
when working on board documentation pages.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-07 21:20:42 +02:00
Pisit Sawangvonganan
77bb19c2a9 drivers: sensor: shell_battery: use shell_print where applicable
To improve code clarity, use `shell_print` in place of `shell_fprintf`
with `SHELL_NORMAL` where appropriate.
For partial-line outputs, use `shell_fprintf_normal` to preserve output
formatting.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-05-07 17:45:39 +02:00
Pisit Sawangvonganan
f74d2a79de drivers: sensor: shell: make channel and attribute name tables as const
Make `sensor_channel_name` and `sensor_attribute_name arrays` to use
`const char *const`. This ensures full immutability of the tables,
placing them entirely in the `.rodata` section and reducing usage
of the `.data` segment.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-05-07 17:45:39 +02:00
Pisit Sawangvonganan
6014ff392a drivers: sensor: shell: align struct shell * name to sh
Aligned the `struct shell *` argument name from `shell_ptr` to `sh`
for consistency with other drivers' usage of `sh`, and to match
the `shell_cmd_handler` argument name.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-05-07 17:45:39 +02:00
Pisit Sawangvonganan
e02e532272 drivers: sensor: shell_stream: align struct shell * name to sh
Aligned the `struct shell *` argument name from `shell_ptr` to `sh`
for consistency with other drivers' usage of `sh`, and to match
the `shell_cmd_handler` argument name.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-05-07 17:45:39 +02:00
Daniel Leung
66955c8a2d toolchain: xt-clang: skip printf format checks
For some reasons, xt-clang does not like "%hhd" or "%hd"
(for example) being fed int data (same goes for unsigned ones)
and will always complain about mismatched types. GCC and newer
LLVM/Clang do not complain. This could be due to xt-clang
being based on older LLVM/Clang. So skip the check.

Fixes: #89008

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-05-07 17:45:33 +02:00
Aksel Skauge Mellbye
21022462be doc: Regenerate board doc if supported hardware data changes
Declare the dts and binding files used for the supported hardware
directive as dependencies of doc pages that use them.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-07 17:45:27 +02:00
Josuah Demangeon
c674723e32 boards: shields: dvp_fpc24_mt9m114: search shield in lowercase
The script zephyr/scripts/kconfig/kconfigfunctions.py used by
Kconfig's "shields_list_contains" searches shield names in lower-case,
like they are passed through the SHIELD in CMake, --shield argument
in west. Make the mt9m114 shield upper-case. This has no effect currently
as this Kconfig entry is not used anywhere in Zephyr.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-07 15:13:42 +01:00
Josuah Demangeon
d4c39f8ebc samples: drivers: video: capture: add FRDM-MCXN947
Add FRDM-MCXN947 to the video capture sample documentation and twister
YAML configuration, using the DVP OV7670 camera module newly introduced.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-07 15:13:42 +01:00
Josuah Demangeon
e6517d0c7b boards: nxp: frdm_mcxn947: migrate ov7670 to a shield
The OV7670 was defined as part of the FRDM-MCXN947 board attached to the
SmartDMA and I2C peripheral. Migrate the devicetree to a reusable shield
that can be swapped with other image sensors.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-07 15:13:42 +01:00
Josuah Demangeon
23ed4d2057 dts: bindings: gpio: add arducam 20-pin camera connector
Add the 20-pin camera connector used by at least Arducam, Waveshare,
Olimex, Arduino, NXP, ST, Adafruit that connects image sensor module
boards and devkits.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-05-07 15:13:42 +01:00
Tom Chang
98678cabd4 drivers: clock: npcx: correct the setting for module power-down
The PWDWN_CTLx have been adjusted to support for NPCK chips. This
commit updates powe-down control initialization for NPCXN and NPCKN chips.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-05-07 15:13:29 +01:00
Tomasz Leman
dbf1d54ddd dts: update power-states node for ACE 3.0
This patch modifies the DTS files for Intel ADSP ACE 3.0 platforms,
ensuring the power-states node is a child of the cpus node. This change
aligns with Linux conventions and mirrors the adjustments made in commit
e4c43e4cc9 for other platforms.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-05-07 15:11:02 +02:00
Vinayak Kariappa Chettimada
fc14570585 Bluetooth: Controller: Fix Central CIS offset for dissimilar intervals
Fix Central CIS offset calculation for dissimilar ACL and
ISO intervals in use.

Mayfly execution of `mfy_cig_offset_get()` could be after
"LLL Prepare" or before depending on whether a previous radio
event is being preempted or not, respectively; the
`conn->lll.event_counter` may not be pre-incremented.
This race condition is fixed by the fact that we use a
constant instant delta value now.

Dissimilar ACL and ISO intervals may lead to ACL overlapping
or be too close to ISO event, causing preemption; under this
case ACLs "LLL Prepare" would run after `mfy_cig_offset_get`
causing incorrect calculation of CIS offset without the fix.

Remove redundant `instant` member in `ll_conn_iso_stream`
structure as a constant CIS Create instant delta is now
used.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-07 15:10:17 +02:00
Armin Brauns
153be1b142 cmake: use external gen_kobject_list binary if available
e.g. https://github.com/arbrauns/gen_kobject_list

Signed-off-by: Armin Brauns <armin.brauns@embedded-solutions.at>
2025-05-07 15:10:05 +02:00
Armin Brauns
d6efbc8af4 cmake: clean up gen_kobject_list.py invocations
cmake/kobj.cmake now provides nice wrappers around the script itself and
common uses.

Signed-off-by: Armin Brauns <armin.brauns@embedded-solutions.at>
2025-05-07 15:10:05 +02:00
James Roy
758e169039 style: Inconsistent macro names changed
Fix incorrect header file pre-macro names in
'include/zephyr/dt-bindings'.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-05-07 15:09:56 +02:00
Jamie McCrae
a7a3f06f0a mgmt: mcumgr: grp: os_mgmt: Fix Kconfig alignment
Fixes some elements that were indented twice

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-05-07 13:39:20 +02:00
Jamie McCrae
f39091376f mgmt: mcumgr: grp: os_mgmt: Support reboot without multithreading
Adds support for the OS mgmt reboot command when multithreading
is disabled

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-05-07 13:39:20 +02:00
Benjamin Cabé
e2508389c2 doc: develop: manifests: external: add emlearn
Introduce documentation for using emlearn (TinyML library) as an
external module in Zephyr.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-07 13:39:17 +02:00
Dipak Shetty
a123178898 tests: drivers: build_all: stepper: add diag0 test case
Added second tmc51xx node with diag0 interrupt pin.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-05-07 13:34:02 +02:00
Dipak Shetty
6b02a6148d drivers: stepper: adi_tmc: position handling support
Add definition for handling position signedness.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-05-07 13:34:02 +02:00
Dipak Shetty
418d2e6baa drivers: stepper: adi_tmc: diag0 interrupt support for tmc51xx
Add support for using the diag0 pin as an interrupt source. This
allows event detection via diag0 interrupts instead of polling rampstat.
The driver now:
- Configures diag0 when the GPIO is available
- Sets up GPIO interrupt handling for rising edge transitions for
rampstat reading
- Falls back to polling only when diag0 is not available

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-05-07 13:34:02 +02:00
Dipak Shetty
e5026d4a96 drivers: stepper: simplify event detection config
Simplified by removing redundant options and
enabled automatic fallback to ramp status polling when
diag0 pin is unavailable for event detection.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-05-07 13:34:02 +02:00
Dipak Shetty
b9ba0d27eb dts: bindings: stepper: adi: add diag0-gpios property to tmc51xx
This diag0-gpios property allows configuring the diag0 diagnostic pin,
which can be used to indicate position reached, stall detection, and
other status information from the controller.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-05-07 13:34:02 +02:00
Camille BAUD
3f3b04ee5b drivers: serial: Fix litex driver
This fixes several ways to hang the driver, such as:
- typing too fast
- going over the read buffer capacity
- pasting anything
- using arrow keys (sending 2 chars at once)
etc

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-07 13:33:56 +02:00
Adrian Gielniewski
39e051f372 net: fix configuration of NET_LINK_ADDR_MAX_LENGTH
Replace `CONFIG_NET_L2_IEEE802154` with `CONFIG_NET_L2_PHY_IEEE802154`
as `NET_LINK_ADDR_MAX_LENGTH` should be set to `8` for all IEEE 802.15.4
based L2, e.g. OpenThread.

Signed-off-by: Adrian Gielniewski <adrian.gielniewski@nordicsemi.no>
2025-05-07 13:33:46 +02:00
Tim Lin
b4936c587a dts: ite: it51xxx: Change the base address of voltage selection
Change the base address of GPIO and pinctrl voltage selection
The new base address enables more pins to support voltage selection.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-05-07 13:33:14 +02:00
Fin Maaß
029abb4165 mgmt: hawkbit: don't require DNS_RESOLVER
When the supplied server address is already an
ip address, CONFIG_DNS_RESOLVER is not required,
as zsock_getaddrinfo() can resolve literal addresses
without it.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-07 13:32:39 +02:00
Johan Hedberg
4cce7b6987 Bluetooth: drivers: Add names to Silabs EFR32 threads
This makes thread analysis output nicer, e.g.:

uart:~$ kernel thread list
Scheduler: 25953 since last call
Threads:
 0x20002380 EFR32 HCI RX
        options: 0x0, priority: -10 timeout: 0
        state: pending, entry: 0x80228fd
        stack size 512, unused 216, usage 296 / 512 (57 %)

 0x20002478 EFR32 LL
        options: 0x0, priority: -16 timeout: 0
        state: pending, entry: 0x8022921
        stack size 1024, unused 296, usage 728 / 1024 (71 %)

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-05-07 13:32:28 +02:00
Ayush Singh
763e5f31e0 boards: beagle: beagleconnect_freedom: Enable watchdog timer
Enable watchdog timer in the base tree. This is required for
MicroPython.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-05-07 13:32:09 +02:00
Arunmani Alagarsamy
dd1bfa4eb9 drivers: wifi: siwx91x: Fix default scan time handling
The commit `1f73ca3` clarified that a scan time of 0 should be used to
apply the default scan timeout, as opposed to using
SL_WIFI_DEFAULT_ACTIVE_CHANNEL_SCAN_TIME, which incorrectly results in
a 65-second timeout.

However, this fix was unintentionally omitted in commit `bf22b61`
when the `sl_si91x_configure_timeout()` function was relocated.

This commit restores the behavior.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-05-07 13:32:04 +02:00
Arunmani Alagarsamy
89d6068504 drivers: wifi: siwx91x: Add param change handling for STA and AP modes
Implemented logic to detect changes in key Wi-Fi parameters (SSID, PSK,
security, channel) and disable the interface accordingly. For STA mode,
the driver disconnects before reconnecting with updated parameters. For
AP mode, it disables and re-enables the AP if changes are detected.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-05-07 13:32:04 +02:00
Arunmani Alagarsamy
98e72e9ed6 drivers: wifi: siwx91x: Relocate driver functions
Relocate the functions siwx91x_status(), siwx91x_disconnect(), and
siwx91x_ap_disable() to improve code structure and accessibility. This
reorganization prepares the codebase for upcoming integration of
connection and AP enable logic that handles parameter differences.

No functional changes are introduced in this commit.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-05-07 13:32:04 +02:00
Emil Gydesen
c8cb0426d2 tests: Bluetooth: Tester: Update supported_services
The supported bits were out of date and the response size
was incorrect.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-07 13:31:58 +02:00
Emil Gydesen
18193b86c3 tests: Bluetooth: Tester: Validate PBP features
Add validation of the PBP features in the
pbp_set_public_broadcast_announcement function.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-07 13:31:48 +02:00
Emil Gydesen
181a0238a2 tests: Bluetooth: Tester: Fix bad rsp len of CAP broadcast setup
The btp_cap_broadcast_source_setup_rp was reported with
an invalid length.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-07 13:31:39 +02:00
Emil Gydesen
228d89b433 tests: Bluetooth: Tester: Default to use overlay-bt_ll_sw_split.conf
Default the BT Tester to use the overlay-bt_ll_sw_split.conf for all
Zephyr based configurations.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-07 13:31:20 +02:00
Emil Gydesen
7f0c78210a tests: Bluetooth: Tester: Add new BT controller config
Adds a new BT controller configuration that can be applied
to multiple boards and not specific to the nRF5340 cpunet
as the existing setup uses from hci_ipc.

The config is based on nrf5340_cpunet_iso-bt_ll_sw_split.conf
from hci_ipc sample.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-07 13:31:20 +02:00
Emil Gydesen
b7a85a4ca5 tests: Bluetooth: Tester: Add missing checks for tx in bcast
The stream_started and stream_stopped callbacks are called for
both broadcast sink and source in the BT Tester, and thus
they should check if the stream can send before attempting
to register it for TX (which would otherwise fail).

This also guards the call to btp_send_bis_syced_ev so that
the event is only sent for broadcast sinks.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-07 13:31:09 +02:00
Karol Lasończyk
c6413c3e17 tests: drivers: Turn on HFCLK before LFCLK calibration in nRF devices
This change plays with situation in nRF54L devices where XOTUNE make
LF clock calibration process starts a bit longer. Now HF clock
is configured to be ready right before LF calibration test.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-05-07 11:45:48 +02:00
David Schneider
9455b412d2 drivers: sensor: maxim,ds3231: fix config dependency
Make the config which is specific for DS3231 depend on
the driver for it being enabled.

Signed-off-by: David Schneider <schneidav81@gmail.com>
2025-05-07 11:45:32 +02:00
Krzysztof Chruściński
aa8b25850f drivers: serial: nrfx_uarte: Add support for direct interrupts
Add option to use direct ISR.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-07 11:45:18 +02:00
Fin Maaß
e59451a758 mgmt: hawkbit: also clear in the call of hawkbit_autohandler()
the k_event_clear in the work might be to late sometimes, when
hawkbit_autohandler_wait() is executed directly after
hawkbit_autohandler(). This leads to getting the events
of the former execution and also not waiting until the
current autohandler run is finished.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-07 11:44:59 +02:00
Dean Sellers
be894849f1 drivers: ethernet: enc28j60: Add set config for runtime macaddr
Allow runtime setting of the MAC address for this driver.

Signed-off-by: Dean Sellers <dsellers@evos.com.au>
2025-05-07 11:44:50 +02:00
Emil Gydesen
ae4c6fe609 tests: Bluetooth: Tester: Refactor ACSC events for BAP unicast
This commit refactors when the BTP_ASCS_EV_OPERATION_COMPLETED
is sent to the upper tester. Previously it was send
in the stream changed callbacks, but that would send
the events to the BAP Unicast Server when it did not initiate
any changes, and would not properly match when the control
point operation was completed (which happens before the
ASE state changes).

This change makes it easier to determine when an operation was
actually completed, and easier to separate that from a
ASE state change which is another type of event.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-07 11:44:40 +02:00
Emil Gydesen
2263fb8ec7 tests: Bluetooth: tester: Send stream changed event for all states
The ase state changed event was only sent when entering the
streaming state, rather whenever there is a state change.

This commit sends the event for all ASE/stream state changes.
To make it clear that these are called in the callbacks,
the callbacks have all been suffixed with _cb.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-07 11:44:40 +02:00
Benjamin Cabé
d5e4b44696 drivers: i3c: Fix misspelling of brief in doxygen
Fixes trivial typo

Co-authored-by: Harry Martin <48959255+Harry-Martin@users.noreply.github.com>
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-07 11:44:33 +02:00
Benjamin Cabé
38f822cff2 tests: Bluetooth: fix misspelling of brief in doxygen
Fixes trivial typo

Co-authored-by: Harry Martin <48959255+Harry-Martin@users.noreply.github.com>
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-07 11:44:33 +02:00
Swift Tian
726eb0a25d drivers: mspi: add apollo5x MSPI controller
Add the MSPI controller support for apollo5x.
Add the MSPI controller to mspi API test.
Updated west.yml for hal updates.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-05-07 10:33:38 +02:00
Swift Tian
f7a8d06925 boards: add mspi base dts to apollo510 boards
Add mspi to board devicetree including pinctrl and mspi devices.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-05-07 10:33:38 +02:00
Swift Tian
0341e388ee dts: ambiq: add mspi nodes to apollo510 soc
MSPI controller nodes and corresponding XIP regions are added.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-05-07 10:33:38 +02:00
Swift Tian
f23c828dbe dts: mspi: update ambiq mspi controller/device bindings
Add the binding properties available to apollo5.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-05-07 10:33:38 +02:00
Swift Tian
5c7e7eab7f drivers: mspi: shroud controller specifics and fix potential issue
1. Moved ambiq specific macro to mspi_ambiq header.
2. Always fill rx&tx dummy settings regardless of transfer direction.
3. Add the CONFIG_MSPI_* macro for optional features.
4. Fixed the ID read process and add k_sleep during busy_wait in
   atxp032 driver.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-05-07 10:33:38 +02:00
Swift Tian
cbd475b9ed drivers: mspi: standarlized transfer priority
Standarlized transfer priority and add a medium level.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-05-07 10:33:38 +02:00
Valerio Setti
52dcb2593a Bluetooth: Host: remove useless select in BT_HOST_CRYPTO_PRNG
PSA Crypto API always allow psa_generate_random() to be called (i.e. there
is no PSA_WANT_xxx symbol that can be used to disable it). How random
numbers are generated internally is a library internal detail, but the
end user (Bluetooth) does not need to worry about this.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-05-07 10:30:45 +02:00
Abderrahmane JARMOUNI
15e9e7a57d samples: modules: lvgl: demos: sample.yaml clean up
remove redundant info already in common section

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-07 10:30:35 +02:00
Olivier Lesage
86a6b29733 bluetooth: host: Increase default cmd buffer size to 255 if using CS
sizeof(struct bt_le_cs_write_cached_remote_fae_table) = 74,
so the default value (65) was already too small in some cases.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2025-05-07 10:29:59 +02:00
Emil Gydesen
c2178bc25e tests: Bluetooth: Tester: Update README to rst and add text
Update the README file to be .rst instead of (implied) .md
and update the text w.r.t. supported profiles and services,
and how to build for LE Audio.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-07 10:29:24 +02:00
Andrzej Kuros
024deb49b1 bindings: nrf21540: set default tx-en-settle-time-us to 26
The tx-en-settle-time-us is set to 26 to take into account
the time needed for the RF output power rise time of the nRF5 SoC.

Signed-off-by: Andrzej Kuros <andrzej.kuros@nordicsemi.no>
2025-05-07 08:18:08 +01:00
Alain Volmat
5c856ca532 samples: display: cfb_custom_font: allow -ENOSYS blanking error
The display blanking API mentions that display_blanking_on
and display_blanking_off should return -ENOSYS if it is not
implemented by the driver. It should not be considered as
an error since it might not be needed in order to have the
display work correctly.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-07 08:17:52 +01:00
Alain Volmat
339d7fdb8b samples: video: capture: allow -ENOSYS blanking error
The display blanking API mentions that display_blanking_on
and display_blanking_off should return -ENOSYS if it is not
implemented by the driver. It should not be considered as
an error since it might not be needed in order to have the
display work correctly.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-07 08:17:52 +01:00
Alain Volmat
5e2950d496 display: stm32: ltdc: handle backlight on blanking
The display_blanking_on description states that if available,
backlight should also be disabled / enabled on driver blanking on / off.
Moreover, upon driver initialization, the display blanking (hence
backlight state as well) should be same as if display_blanking_on
had been called.

If nothing can be done by the LTDC driver (no backlight and no
panel blanking) then -ENOSYS is returned.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-05-07 08:17:52 +01:00
Charles Dias
deef1de9a1 boards: st: add support for STM32U5G9J-DK1
Adds the device tree, Kconfig, and documentation files.

The following features have been confirmed working on hardware:
* LED
* Button
* UART

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-05-07 08:17:26 +01:00
Ruibin Chang
265a0b991a drivers/pwm/it51xxx: implement pwm driver
Implement pwm driver for ITE it51xxx series chip.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-05-07 08:17:12 +01:00
Immo Birnbaum
3dcc1d2dd6 drivers: ethernet: xlnx_gem: add set_config function
Add an implementation for the Ethernet API's set_config
hook. Supported features:
- change MAC address at run-time
- enable/disable promiscuous mode if enabled at system level

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-05-07 03:59:23 +02:00
Immo Birnbaum
b4b5c3018d dts: bindings: xlnx_gem: remove promiscuous mode flag
Remove the boolean flag "promiscuous-mode" from the GEM's
DT binding, as promiscuous mode control is being switched
over the the Ethernet device driver's get_config/set_config
API functions.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-05-07 03:59:23 +02:00
Dhruv Menon
817594543b boards: beagle: Enable shell support for BeagleBone AI64 and BeagleY-AI
Enable UART-based shell access on BeagleBone AI64 and BeagleY-AI boards

Signed-off-by: Dhruv Menon <dhruvmenon1104@gmail.com>
2025-05-07 03:59:13 +02:00
Luca Burelli
2d264618bc twister: improve the alignment of columns in verbose output
This commit improves the alignment of columns in the verbose Twister
output by reclaiming extra space in the testsuite name column when the
platform name oveflows its allocated width.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-05-07 03:59:05 +02:00
Luis Ubieda
d26ed348ef samples: gnss: vmu_rt1170: correct alias assignment to gnss node
Otherwise, callbacks subscriptions the application subscribes to will
not ever trigger.

Additionally, rename this overlay so it's compatible with hwmv2 target:
vmu_rt1170/mimxrt1176/cm7.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-05-07 00:02:06 +02:00
Robert Hancock
83488e4354 drivers: gpio: xlnx_ps: Do not clear GPIO states on initialization
This driver was setting all GPIO lines to input and the data register to
zero on initialization. This does not appear to be common practice among
other GPIO drivers, and in fact caused a serious problem on the ZynqMP
platform, where between 1 and 4 of the top-most GPIO lines are
frequently used by platform firmware and Vivado as reset lines for the
programmable logic. Since these resets are active low, and their
input/output state is ignored due to how they are connected to the EMIO
GPIO outputs from the PS, this caused the PL reset to be asserted when
the GPIO driver initialized, preventing any logic using that reset from
functioning properly.

There may also be other cases where GPIO line states have already been
set by the boot loader or firmware and clearing them may result in
improper behavior or glitches on the lines during initialization.

Update the driver to disable GPIO interrupts but leave the pin
modes/states unchanged until/unless they are explicitly reconfigured.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-05-07 00:01:57 +02:00
Lin Yu-Cheng
5b2793a677 dts: arm: realtek: change the default setting of rts5912 dtsi
Change the default setting of memory layout.

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-05-07 00:01:46 +02:00
Lin Yu-Cheng
a2f4849b6d dts: arm: realtek: change the default setting of rts5912 dtsi
Change the default setting of min-residency-us.

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-05-07 00:01:46 +02:00
Stoyan Bogdanov
5104d6d5c3 boards: ti: lp_em_cc2340r5: Add watchdog to aliases
Add watchdog0 as alias for wdt0 driver

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-05-07 00:01:38 +02:00
Stoyan Bogdanov
e298412b38 dts: arm: ti: cc23x0: Add watchdog support
Add support for watchdog to cc23x0 SoC.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-05-07 00:01:38 +02:00
Stoyan Bogdanov
741879b362 drivers: watchdog: cc23x0: Add support for watchdog
Because of hardware limitations watchdog driver supports:
 * Start Watchdog
 * Feed Watchdog

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-05-07 00:01:38 +02:00
Andrzej Głąbek
fee8eddc5b drivers: display_st7567: Fix unintialized variable warning
Theoretically (if either `height` or `width` in `config` is set to 0),
the `ret` variable might be returned from `st7567_clear()` without
being initialized.
Add initialization of this variable to avoid compiler warnings.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-05-06 20:36:37 +02:00
Daniel Leung
1f21bb9003 soc: esp32: include ksched.h in esp32-mp.c
esp32-mp.c calls z_sched_ipi() so it needs to include ksched.h,
as it is no longer included via kernel.h after removal of
kernel/internal/smp.h.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-05-06 20:36:26 +02:00
Jiafei Pan
108615c560 soc: imx95: a55: initialize lpuart clock
Initialize lpuart clock to avoid it is not initialized.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-05-06 20:36:15 +02:00
Alex Fabre
2707fa2fca doc: guidelines: fix twister test sensors command
This commit updates the test suite name according to the changes made in
PR #87714.

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-05-06 18:24:55 +02:00
Dhanesh S R
3f2f6ae3fc samples: adc: Change atmel samv71 adc reference
Changed reference to ADC_REF_EXTERNAL0 as it is the only value supported
by current driver implementation and 3v3 external reference is connected
on the board.

Signed-off-by: Dhanesh S R <sr.dhanesh@protonmail.com>
2025-05-06 18:24:14 +02:00
Joakim Andersson
b2bb1ffc1b drivers: modem: Use modem command await function
Use the modem command await function where appropriate.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2025-05-06 18:24:01 +02:00
Joakim Andersson
25341410a7 drivers: modem: Add function to wait for sem and handle error
Add a helper function that waits for a semaphore and handles the
error conditions that may arise.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2025-05-06 18:24:01 +02:00
Joakim Andersson
995440b706 drivers: modem: Use modem command send_data_nolock
Use the new modem command send_data_nolock function where it was
previously just written directly to the interface.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2025-05-06 18:24:01 +02:00
Joakim Andersson
0617b25126 drivers: modem: Add helper function to send data on modem cmd iface
Add helper function to send data on modem command handler interface.
This makes sure that when verbose logging is enabled all data is
actually logged.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2025-05-06 18:24:01 +02:00
Joakim Andersson
8cea4ce5da drivers: modem: Fix possible race condition, reset sem before data send
Fix possible race condition, reset the response semaphore before we send
any data. In case we don't get scheduled back before the response is
processed.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2025-05-06 18:24:01 +02:00
Benjamin Cabé
878de4727a tests: lib: json: zero-initialize structs before using memcmp in tests
Zero-initialize the `test_int_limits` and `test_enums` structs before
assignment and decoding in their respective tests.

This ensures that all padding bytes are set to zero, making
`memcmp`-based comparisons reliable and portable across different
architectures and compilers.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-06 18:23:49 +02:00
Francois Ramu
c719e2cbb7 tests: drivers: flash testing stm32 flash size
Add a special testcase to test any stm32 target
The expected flash size is given by the config FLASH_SIZE (in bytes)
and stm32 flash driver API function should return the same value
Do not run on the stm32wb55 nucleo as 216K are reserved among the 1MB
(only 808K declared but mcu has 1MB)

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-06 18:23:36 +02:00
Francois Ramu
96b3a22dd8 drivers: flash: stm32H5 flash driver gives the flash size
Use the LL_GetFlashSize to retrieve the size of the flash, reading the
system flash OTP of the stm32h5 serie. This operation requires
Icache disable/re-enable to access the 0x08FF F80C memory area

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-06 18:23:36 +02:00
Francois Ramu
eea1b828a1 drivers: flash: stm32 flash drivers supports the get_size API function
Implement the get_size flash device API function for the various stm32
This is just CONFIG_FLASH_SIZE expressed in Bytes or the FLASH_SIZE
given by the LL driver

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-06 18:23:36 +02:00
Francois Ramu
5dc537389a drivers: flash: stm32 flash driver common functions
Move the flash_stm32_write_protection and
flash_stm32_option_bytes_lock functions to a common
file for stm32 devices including stm32h7

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-05-06 18:23:14 +02:00
Yau-ming Leung
6b3d53e4ec drivers: icm42688: ignore invalid fifo data
When using 20-bit FIFO packets, invalid data is indicated by the value
-524288. Currently, no check is done against this and invalid data is
decoded. Fixed by adding a simple check. Also, the wrong bit is used to
check if HIRES is enabled. Fixed by using the correct mask.

Signed-off-by: Yau-ming Leung <ymleung314@gmail.com>
2025-05-06 16:36:16 +02:00
Ibrahim Abdalkader
0d08e0d029 boards: shields: arduino_giga_display_shield: Rename shield.
Rename shield to arduino_giga_display_shield.overlay to match
the shield and board naming conventions.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-05-06 16:36:06 +02:00
Ibrahim Abdalkader
3582276826 boards: shields: arduino_giga_display_shield: docs: Fix docs.
Fix the board name.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-05-06 16:36:06 +02:00
Ibrahim Abdalkader
8f8c7070b9 boards: shields: arduino_giga_display_shield: Disable display SMH.
This allows all samples to work out of the box without requiring
SMH initialization. If DCMI (video) is used simultaneously and
more video buffers are needed, the application should enable SMH
for both the video and display subsystems and initialize it.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-05-06 16:36:06 +02:00
Ibrahim Abdalkader
3a0bacedbe drivers: display: stm32_ltdc: Add SMH attribute for LTDC buffer.
The LTDC driver was using the video buffer SMH attribute.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-05-06 16:36:06 +02:00
Alex Rodriguez
5603c097b4 boards: nxp: frdm_mcxa153: fix button GPIO signals
Corrects the signals in the board devicetree

Signed-off-by: Alex Rodriguez <alejandro.rodriguezlimon@nxp.com>
2025-05-06 16:35:57 +02:00
Declan Snyder
5ac2baccfd tests: flash: Fix LPC54114 failure
Fix test failure for LPC54114 m4 platform by adding config.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-06 16:34:41 +02:00
Declan Snyder
d8be41c00a tests: flash: common: Add disable spi nor case
Since the test is hardcoded to prioritize testing a spi nor flash if
there is one, add a twister case for disabling that config in case if a
platform should also test some other flash which is present, such as
internal SOC flash. I.e, relevant platforms would be those which have
both internal and spi nor flash enabled in DT.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-05-06 16:34:41 +02:00
Kurt Eckhardt
d48f2f49a4 boards: Support Teensy Micromod
The Sparkfun Teensy Micromod was designed by Paul of PJRC
and manufactured and sold by Sparkfun.com

The functionality of this board is very similar to the Teensy 4.

It has the same basic pin definitions of the Teensy 4 but added
6 additional IO pins. Which added a lot of possibilities to use
the flexio system in new ways, such as for camera input.

It was unclear if the board should be added here or all of this
duplicated under Sparkfun, but now Sparkfun is also now responsible for
 the manufacturing and sales of the Teensy 4 and Teensy 4.1, here feels
 like a good place.

Note: I am mainly doing this as a learning experience on how to use
zephyr directly, as most of my experiences with Zephyr is done through
the current WIP Arduino Wrappers for some of their boards.

So far I duplicated the Teensy 4.1 files, then modified, like removed
the Ethernet and added the I2C2 object.

I updated the flash information as these come with a 128mbit version
versus the 64 on T4.1 or 16 on T4.

So far I have only test blink.
plus: cdc-acm example, plus adding gpio to it,
plus logging, plus blinking.

Signed-off-by: Kurt Eckhardt <kurte@rockisland.com>
2025-05-06 16:34:33 +02:00
Maximilian Deubel
fb1161a6a9 mcumgr: img_mgmt_client: Add missing include
This header uses enum mcumgr_err_t but does not include the
header where it is defined. Fixed in this commit.

Signed-off-by: Maximilian Deubel <maximilian.deubel@nordicsemi.no>
2025-05-06 15:32:54 +02:00
Sylvio Alves
5599f99e30 tests: console: use printf instead
This change aligns the test case with the hello_world sample.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-05-06 15:32:46 +02:00
John Bason Mitchell
abcc7c3ccf boards: stm32: Correct Arduino header on Nucleo WL55JC
There appears to be a typo in the arduino header .dtsi
compared to UM2592 and physical hardware.

Signed-off-by: John Bason Mitchell <johnbasonmitchell@gmail.com>
2025-05-06 15:32:34 +02:00
Chaitanya Tata
3953bb9ce3 nrf_wifi: Add nRF71 support
nRF7120 PDK support that uses IPC as comms b/w APP and Wi-Fi domains.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-05-06 15:32:11 +02:00
Guillaume Gautier
08cc15aed8 drivers: flash: stm32 xspi: replace prescaler assert by returning error
Replace the assert on the value of the prescaler by a standard check and
an error value return (similar to the STM32 XSPI PSRAM driver).

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-05-06 15:32:02 +02:00
Guillaume Gautier
d236012ca8 boards: st: stm32n6570_dk: add xspi psram max frequency
Add XSPI PSRAM maximum frequency property in the dts.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-05-06 15:32:02 +02:00
Guillaume Gautier
8177be5a91 drivers: memc: compute prescaler automatically for stm32 xspi
For STM32 XSPI PSRAM driver, compute and set the prescaler automatically
according to the kernel clock and the max frequency of the PSRAM.
Copied from what is done in the STM32 XSPI Flash driver.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-05-06 15:32:02 +02:00
Guillaume Gautier
a156ba3e69 dts: bindings: memc: add a max-frequency property for stm32 xspi psram
Add a parameter to define the maximum PSRAM frequency for the STM32 XSPI
driver. It will be useful to automatically calculate a prescaler.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-05-06 15:32:02 +02:00
Guillaume Gautier
83e0ca82b6 soc: st: stm32n6: add arm v8.1 mvei and mvef kconfig
STM32N6 supports M-Profile Vector Extension (MVE) integer and
floating-point instruction set.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-05-06 15:31:51 +02:00
Johan Hedberg
4a31b8036d Bluetooth: Host: Remove conditional stack size for BT_SETTINGS
With BT_SETTINGS enabled, there doesn't seem to (anymore?) be any
substantial overhead in stack consumption:

 0x200020b8 BT RX WQ
        options: 0x0, priority: -8 timeout: -9223372036854775808
        state: pending, entry: 0x5ba69
        stack size 2240, unused 1072, usage 1168 / 2240 (52 %)

Let's just remove the conditional default and fall back to the
non-conditional one which is 1200.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-05-06 13:01:28 +02:00
Henrik Brix Andersen
8d8fb5b5c3 boards: others: neorv32: add GPIO buttons
Add buttons connected via GPIOs 0 to 3 for the NEORV32 MinimalBoot and
UP5Kdemo board variants.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-05-06 13:01:20 +02:00
Henrik Brix Andersen
0366df369b drivers: gpio: neorv32: add interrupt support
Add interrupt support to the NEORV32 GPIO controller driver.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-05-06 13:01:20 +02:00
Henrik Brix Andersen
de2f9ee9b4 dts: bindings: gpio: neorv32: require interrupt property to be set
Require the interrupt property for the NEORV32 GPIO controller to be set.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-05-06 13:01:20 +02:00
Henrik Brix Andersen
3c8ac10dc7 drivers: gpio: neorv32: use spinlock instead of irq_lock()
Switch from using irq_lock()/irq_unlock() to using a k_spinlock.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-05-06 13:01:20 +02:00
Ren Chen
437c16fcf9 drivers: i3c: shell: enable i3c shell support for it51xxx.
This commit introduces support for i3c shell on it51xxx.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-05-06 13:01:13 +02:00
Ren Chen
9743a983f8 drivers: i3c: add it51xxx i3cm driver
Add it51xxx i3c controller driver.

Tested with: it51xxx evb board with st_lps22df sensor

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-05-06 13:01:13 +02:00
Ren Chen
76efd333cc drivers: i3c: add it51xxx i3cs driver
Add it51xxx i3c target driver.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-05-06 13:01:13 +02:00
Krzysztof Chruściński
ce8af54ce8 drivers: clock_control: Add missing dependency in Kconfig
Calibration process can be simplified if LF clock is always on.
Kconfig was depending on RTC being used as system clock because
that indicates LF clock being always on. Same can be done for
case when GRTC is used as system clock.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-06 13:01:07 +02:00
Marek Slowinski
deae35917f tests: coredump: Call k_panic() directly for mpfs_icicle board
mpfs_icicle timeouts on this test similarly to other boards
simulated in Renode. Null pointer dereference doesn't trigger
a CPU fault during simulation. Instead, call k_panic() directly.

Link: a28d5df5c6

Signed-off-by: Marek Slowinski <mslowinski@antmicro.com>
2025-05-06 13:01:00 +02:00
Marek Slowinski
69592710fa tests: debug/coredump: Disable clang-format for column-aligned macro
Keep manually aligned lines for better readability.

Signed-off-by: Marek Slowinski <mslowinski@antmicro.com>
2025-05-06 13:01:00 +02:00
Hank Wang
72509c385e drivers: gpio: sn74hc595: fix terminology for GPIO expander
The Kconfig help text for the SN74HC595 driver refers to the device
as a "GPIO extender", which is inconsistent with the devicetree
binding file (ti,sn74hc595.yaml) that describes it as a "GPIO expander".

Signed-off-by: Hank Wang <wanghanchi2000@gmail.com>
2025-05-06 12:00:31 +02:00
Yannis Damigos
d21749f64d drivers: udc_smartbond: Fix calls to udc_get_ep_cfg()
Fix calls to udc_get_ep_cfg() that passed only 1 argument

Fixes #89395

Signed-off-by: Yannis Damigos <ioannis.damigos.uj@renesas.com>
2025-05-06 12:00:23 +02:00
Troels Nilsson
facdbdbd29 Bluetooth: Controller: Fix handling of odd SDU intervals in CIS central
Make sure iso_interval_us is in a multiple of 1.25 ms instead of directly
assigning it the value of SDU interval

Fixes EBQ failures in LL/CIS/CEN/BV-36-C and LL/CIS/CEN/BV-37-C

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-05-06 12:00:15 +02:00
Philipp Steiner
be259d0755 boards: adafruit: esp32s2_feather: correct copyright info
Add missing copyright and correct wrong e-mail address

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-05-06 12:00:08 +02:00
Jukka Rissanen
8b1f06af05 drivers: net: loopback: Set interface name to lo
Set the loopback interface name to "lo" instead of using the
default "dummy0" as the former is a more appropriate.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-05-06 10:50:48 +02:00
Shrek Wang
f2ef654155 net: tcp: Replace the FIN only case with FIN+ACK
According to TCP Spec. RFC793, ACK flag should be always set
after sequences of both sides are sync-ed except for RST seg-
ment. It is not necessary to send FIN only packet in the
test case, using FIN | ACK instead.
Similarly, change the tcp_out(conn, FIN | ACK) in CLOSE_WAIT.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-05-06 10:50:39 +02:00
Sebastian Bøe
ee458692b5 soc: nrf53: Port nrf53_cpunet_mgmt_init to soc_early_init_hook
Port from SYS_INIT to soc_early_init_hook because SYS_INIT is legacy.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-05-06 10:50:31 +02:00
Sebastian Bøe
8007e2481c soc: nrf53: Port SYS_INIT nrf53_cpunet_init to soc_late_init_hook
Port SYS_INIT nrf53_cpunet_init to soc_late_init_hook as SYS_INIT are
legacy.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-05-06 10:50:31 +02:00
Sebastian Bøe
5d9f5543b9 soc: nrf53: Port SYS_INIT rtc_pretick_init to soc_late_init_hook
Port the SYS_INIT for rtc_pretick_init to use soc_late_init_hook as
SYS_INIT's are legacy.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-05-06 10:50:31 +02:00
Sebastian Bøe
5da0748612 soc: nrf53: Port SYS_INIT to soc_early_init_hook
Port the nordicsemi_nrf53_init to use soc_early_init_hook instead of
SYS_INIT as SYS_INIT is legacy.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-05-06 10:50:31 +02:00
Emil Gydesen
277d0c1f89 tests: Bluetooth: CAP: Fix typo STREMT -> STREAM
Fixed a typo in the term "stream".

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-06 10:50:22 +02:00
Emil Gydesen
240749c770 tests: Bluetooth: CAP: Add bcast reception with multiple acceptors
Expand the CAP broadcast reception test to also run with
multiple acceptors to better verify correctness in the
procedures.

For this to run more stable, the maximum number of streams
has been reduce to 2, rather than
CONFIG_BT_BAP_BROADCAST_SRC_STREAM_COUNT.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-06 10:50:22 +02:00
Derek Snell
e96bf44d93 boards: nxp: frdm_mcxa153: enable DMA
Enable DMA by default for this board.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-05-06 02:36:35 +02:00
Derek Snell
6ce2c8a7f0 doc: boards: shields: nxp_m2_wifi_bt: add blobs command
Add command to fetch the firmware blobs from hal_nxp.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-05-06 02:36:22 +02:00
Daniel Nicoletti
9bbccf39cb include: zephyr: sys: Fix uuid.h usage in C++ code
In uuid.h the function uuid_generate_v5 had a 'namespace'
parameter which is a reserved C++ keywork.
Renamed to 'ns'.

Signed-off-by: Daniel Nicoletti <dantti12@gmail.com>
2025-05-06 02:36:15 +02:00
John Batch
b1950615bd driver: pwm: infineon: Use PWM buffer updates
Change PWM to use buffers registers instead of writing period
and compare directly.  This addressses an issue when updating
period to a value less than current counter, as demonstrated
in the blinky_pwm sample running on the CYW920829M2EVK_02
board.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-05-06 02:36:04 +02:00
John Batch
2702192872 Samples: basic: blinky_pwm: Add support for cyw920829m2evk_02 board
Origin: Zephyr OS
License: Apache-2.0
URL: https://github.com/zephyrproject-rtos/zephyr/blame/main/samples/basic/fade_led/boards/cyw920829m2evk_02.overlay
commit: abca729367
Purpose: Add overlay to enable and configure PWM device on IFX
CYW920829M2EVK-02 board.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-05-06 02:36:04 +02:00
Dhruv Menon
4aa1ac9f96 doc: fix typo in driver subsection of kernel
This commit fixes a type in kernel/driver/index.rst,
present in the "Drivers that do not use Zephyr Device
Model" subsection

Signed-off-by: Dhruv Menon <dhruvmenon1104@gmail.com>
2025-05-05 21:57:12 +02:00
Robert Hancock
3a0f26f02a drivers: ethernet: vsc8541: add RGMII clock delay configuration
As the code noted, the RGMII RX and TX clock delay values may need to
change depending on the MAC configuration or the PCB layout. Add
properties to allow configuring these in the device tree, defaulting to
the previous hard-coded values if not present.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-05-05 21:57:05 +02:00
Krzysztof Chruściński
8ad44471b9 pm: Include disabled states in search inside pm_state_get
pm_state_get() is used to get a PM state that can be forced.
Disabled states (not included in automatic state selection) can
also be forced thus they should be included in search inside
pm_state_get().

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-05 21:56:55 +02:00
Hao Luo
660390835b dts: ambiq: change to enable ambiq drivers in overlays
Keep minimal system in board dts, only enable driver in overlays

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-05-05 21:56:47 +02:00
Michael Hope
51209ef7ec samples: pwm: add the CH32V003EVT to the blinky_pwm and led/pwm samples
The CH32V003 has a single red LED that can be driven by GPIO or TIM2
CH1. Add to the samples.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-05-05 21:56:38 +02:00
Michael Hope
b1aadb6729 drivers: pwm: add a CH32V00x General-prupose Timer Module (GPTM) driver
The GPTM is a general purpose module with a 16 bit prescaler, 16 bit
counter, and 4 compare units that can be used for PWM generation.

Use the same style as gd32 where the timer is a counter and the PWM
mode is a child node.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-05-05 21:56:38 +02:00
Tobias Meyer
64fe434297 doc: sbom cmd more detail for build_dir
when following the example it was not clear that BUILD_DIR needs to point
to application for sysbuild builds

Signed-off-by: Tobias Meyer <tobiuhg@gmail.com>
2025-05-05 18:12:09 +02:00
Jeppe Odgaard
d9cec34c7a boards: st: nucleo_u083rc: improve pyocd flashing
`pyocd` fails the second time the MCU is flashed.

Add `pyocd` flags identical to other nucleo boards to fix the issue.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-05-05 18:07:45 +02:00
Bas van Loon
c020dfab41 drivers: serial: uart_mcux_lpuart: Fix pinctrl flow control
Currently the driver code does not actually request the flow control
state, it only checks if the state exists. To fix this we should
simply call pinctrl_apply_state() and if that fails, meaning no
flow control state exists, fall back to default pin mux settings.

Another case that needed fixing is run time flow control enabling
ie in the case where we have a WIFI/bluetooth module connected
and we initially operate without flow control but later enable
it after firmware download.

This patch addresses this as well by making a generic function
to achieve this.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-05-05 18:07:33 +02:00
Vit Stanicek
eeaf860dfa dma_mcux_lpc: add host directions, DMA driver ctx, getter func
Add support for HOST_TO_MEMORY, MEMORY_TO_HOST directions (aliases of
MEMORY_TO_MEMORY). Implement dma_mcux_lpc_get_attribute function. Fix
missing DMA driver context.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-05-05 18:07:15 +02:00
Jilay Pandya
4e83888a26 tests: stepper: delete duplicate test cases
deleting two test-cases from drv8424 test-suite since these test-cases
are now present in stepper-api since #88835

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-05-05 14:26:02 +02:00
Troels Nilsson
368beb9623 Bluetooth: Controller: Fix truncation by abs() call when using PAST
The abs() function only takes an int as input - use llabs() instead

Fixes EBQ failure in LL/CON/PER/BV-105-C

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-05-05 14:25:22 +02:00
Arkadiusz Balys
bee2f79dde samples: Enable OpenThread logging in all related samples
Some OpenThread logs were moved from L2 to the OpenThread module,
so enable logging from there to keep previous logging visibility.

Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
2025-05-05 14:25:13 +02:00
Arkadiusz Balys
8a9fd8d5c8 drivers: nxp: Do not use private L2 data structure.
An implementation should use a dedicated function to get
openthread instance instead of using the private L2 data.

Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
2025-05-05 14:25:13 +02:00
Arkadiusz Balys
e3fab7f89c doc: releases: add release note for OpenThread update
Add an entry to the release note and migration guide regarding
moving the OpenThread implementation from the L2 networking layer
to the OpenThread module.

The migration guide note contains information about deprecated
functions, explains what functions should be used instead and
provides a guide for required updates in users' applications.

Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
2025-05-05 14:25:13 +02:00
Arkadiusz Balys
596844a2cb openthread: Move OpenThread implementation from net to modules
Move OpenThread-related code from
zephyr/subsys/net/l2/openthread/openthread.c to
zephyr/modules/openthread/platform/openthread.c.

The primary goal of this refactor is to enable the use
of OpenThread as an independent module, without the necessity
of Zephyr's networking layer.

This change is particularly beneficial for simple applications
that have their own implementation of the IEEE802.15.4 driver
and do not require a networking layer. These applications can
now disable Zephyr's L2 and IEEE802.15.4 shim layers and
directly use the OpenThread module, saving valuable kilobytes
of memory.

In this approach if the CONFIG_NET_L2_OPENTHREAD
Kconfig option is set, Zephyr's L2 and IEEE802.15.4 layers
will be used, and everything will function as before.
The main difference is the Zephyr's L2 layer now uses
the OpenThread module, no longer implementing it.

While most of the functions in include/net/openthread.h
have been deprecated, they are still available for use to
maintain backwards compatibility.

Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
2025-05-05 14:25:13 +02:00
Dat Nguyen Duy
92cb88ff75 tests: counter: fix test_valid_function_without_alarm for count-down timer
The ticks_expected was not calculated correctly for count-down
timer, let's fix this.

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2025-05-05 14:24:54 +02:00
Markus Lassila
10bd2de235 modem: backend: uart: Add hw-flow-control for UART
Add Asynchronous UART implementation, which does not drop data
when automatic hardware-flow-control is set in the device tree.

With automatic hardware flow control, the CTS pin will be
automatically deactivated when there are no more asynchronous
UART RX buffers available. After buffer space becomes available,
and UART RX is restarted, the CTS pin will be activated.

Signed-off-by: Markus Lassila <markus.lassila@nordicsemi.no>
2025-05-05 14:24:49 +02:00
Bjarki Arge Andreasen
24dd37929c tests: modem: backends: uart: add hw flow control option
Extend test modem uart backend test suite to support testing hw
flow control, which is performed by using a small receive
buffer for the modem uart backend, and slowing down the read
of received data, ensuring the buffer will be overrun if hw flow
control is not working.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-05 14:24:49 +02:00
Bjarki Arge Andreasen
525d3d680d tests: modem: backends: uart: boards: add hw-flow-control
Update the board overlays to support hardware flow control for
testing.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-05-05 14:24:49 +02:00
Jordan Yates
24ede86380 boards: nordic: *dk: don't enable USE_SEGGER_RTT
Don't enable RTT by default on these development kits. They all have
a dedicated physical serial port that is intended to be the primary
serial comms channel.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-05 14:24:38 +02:00
Kyle Micallef Bonnici
ee940cb6dc dts: arm: nordic: nrf5340: cpuapp: peripheral: add missing reg
Add missing reg property to nrf5340_cpuapp.dts peripheral
node.

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-05-05 12:21:17 +02:00
Fin Maaß
0d74f6239b logging: backend: net: use sizeof to check Kconfig
Use sizeof to check if the Kconfig value had been
set, to allow the compiler to optimize.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-05 12:21:00 +02:00
Fin Maaß
211c0e3819 net: config: init: remove second init of syslog
Doing another init of the log_backend_net in
the net config init could lead to the
server, set during runtime, being overwritten
by the Kconfig default.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-05 12:21:00 +02:00
Henrik Brix Andersen
b2248b9a20 boards: others: neorv32: mention the GPTMR as being supported
Mention the NEORV32 General Purpose Timer (GPTMR) as supported and add
instruction on how to enable it in the devicetree.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-05-05 12:20:50 +02:00
Henrik Brix Andersen
8f8458c4b4 tests: boards: neorv32: build_all: enable GPTMR
Enable the NEORV32 General Purpose Timer (GPTMR) in the NEORV32 build_all
test suite.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-05-05 12:20:50 +02:00
Henrik Brix Andersen
65ec9256bb tests: drivers: counter: counter_basic_api: add NEORV32 GPTMR support
Add support for testing the NEORV32 General Purpose Timer (GPTMR).

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-05-05 12:20:50 +02:00
Henrik Brix Andersen
2e8a08a165 drivers: counter: add NEORV32 GPTMR driver
Add counter driver for the NEORV32 General Purpose Timer (GPTMR).

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-05-05 12:20:50 +02:00
Henrik Brix Andersen
bd409ab231 dts: riscv: neorv32: add GPTMR devicetree node
Add NEORV32 General Purpose Timer (GPTMR) devicetree node.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-05-05 12:20:50 +02:00
Henrik Brix Andersen
fc72eafe01 dts: bindings: counter: add NEORV32 GPTMR devicetree binding
Add devicetree binding for the NEORV32 General Purpose Timer (GPTMR).

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-05-05 12:20:50 +02:00
Abderrahmane JARMOUNI
558aaace96 samples: subsys: logging: logger: add stm32h750b-dk conf
Enable the sample to run on stm32h750b-dk board with async
UART backend

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-05 12:20:42 +02:00
Abderrahmane JARMOUNI
63cf0c803f logging: uart_backend: add uncached buffers support
When async UART is used & DCache is enabled, some SoCs, like STM32H7,
require UART buffers to be placed in nocache memory to avoid cache
coherence issues.

Fixes issue 87795

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-05-05 12:20:42 +02:00
Christoph Winklhofer
13054293ad tests: logging: Allow LOG_PRINTK from user space
The commit '3b29b9fa3b4 (tests: logging: restore userspace testing,
2025-04-18)' set CONFIG_LOG_PRINTK=n which brakes the build on the
platform 'ip_k66f'.

Without CONFIG_LOG_PRINTK=n (dependency from CONFIG_USERSPACE=y) some
tests in 'tests/subsys/logging/log_core_additional/logging.log_user'
would not build.

Remove this dependency so that LOG_PRINTK can also be used from user
space, which is possible since '77925656ab8 (logging: Fix runtime
message creation in user-mode thread, 2025-04-18)' and reset
CONFIG_LOG_PRINTK=y.

Fixes: #89067
Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-05-05 12:20:34 +02:00
Dominik Ermel
71a329fbb0 tests: flash_map: Basic offset/length overflow tests
Test integer overflow on Flash Area operation parameters.
All functions call the same is_in_flash_area_bounds
function for parameter verification, so it was enough
to test parameter checks of flash_read.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-05-05 10:57:51 +02:00
Dominik Ermel
3d4b427245 storage/flash_map: Fix is_in_flash_area_bounds
Prevent possible overflow in is_in_flash_area_bounds while
validating offset and length of an operation.

Fixes #89349

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-05-05 10:57:51 +02:00
Robert Lubos
d60831810b net: websocket: Make use of any leftover data after HTTP processing
In case HTTP client read out more data from a socket that it processed
it will indicate there is leftover data in the receive buffer available.
Make use of it at the websocket level, so that no data is lost. As we
reuse the same receive buffer in this case, it's only needed to update
the count variable to indicate how many bytes are available.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-05 10:57:43 +02:00
Robert Lubos
4a85e47061 net: http: client: Notify application about unprocessed data
The HTTP client would read data from a socket up to the size of the
receiving buffer, however it may not process them all. This is usually
only the case if protocol switching takes place, where the data read may
belong to another protocol. Therefore we need a way to notify the caller
about any potential data that is already present in the buffer and needs
to be processed.

Introduce an new data_len member in struct http_request to provide the
information about the data already available in the receive buffer. If,
after HTTP response processing, the value is non-zero, the data will be
available in the beginning of the user provided receive buffer.

To make this possible however, we need to track how many bytes were
actually processed by the http_parser, therefore the code will no longer
ignore the http_parser_execute() return value. To simplify processing,
it's also been changed how the receive buffer is used. Instead of using
it in a ring-buffer-like way, the offset variable will track how many
bytes are available in the buffer, and in the rare occasions when not
all data from the buffer was processed by the HTTP parser, we'll
memmomve the remaining data to the beginning of the buffer.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-05-05 10:57:43 +02:00
Gudipudi Ramana Kumar
44ed0c60ba samples: bluetooth: Increase number of buffers for avoiding deadlocks
The central_multilink sample issues various API calls
(in particular because it does some from the bt_workq("BT RX WQ"))
this results in a deadlock since there are not enough
HCI command buffers available, this is causing deadlocks on hardware
that do not support BT_HCI_ACL_FLOW_CONTROL.

Below is the flow where assert is observed:
bt_hci_le_enh_conn_complete() -> bt_conn_connected()
-> connected() callback -> start_scan() -> bt_le_scan_start()
-> set_random_address() -> bt_hci_cmd_send_sync: opcode 0x2005
-> Controller unresponsive, command opcode 0x2005 timeout with err -11

Since the start_scan is called from the callback and BT RX WQ thread,
the command buffers are still not available for the system work queue
to process the hci commands it has to send out for starting the scan.

By adding additional buffers this deadlock can be avoided.

Signed-off-by: Gudipudi Ramana Kumar <ragudipu@silabs.com>
2025-05-05 10:57:33 +02:00
Marcin Lyda
f7280fac32 drivers: counter: Add MCP7940N property to enable VBAT backup
This PR adds a new devicetree property
that allows enabling external battery
backup functionality.

Signed-off-by: Marcin Lyda <elektromarcin@gmail.com>
2025-05-05 10:57:28 +02:00
Chris Friedt
76e1fc7713 tests: posix: move tv_to_ts to posix_clock.h
Move the private static inline function tv_to_ts() to posix_clock.h .

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-04 19:56:02 +02:00
Josselin Bunt
c4970880a1 drivers: stepper: Add unit tests for stepper API using work_q
This commit adds unit tests for the stepper API using work_q scheduler.

Signed-off-by: Josselin Bunt <josselin@sensible.health>
2025-05-04 19:55:51 +02:00
Josselin Bunt
902824db1f drivers: stepper: Fix stepper callbacks when using work_q
Fix issue where stepper callbacks were not being called when
using work_q. This was due to the steps being counted down before
the work_q was rescheduled.

Signed-off-by: Josselin Bunt <josselin@sensible.health>
2025-05-04 19:55:51 +02:00
Pisit Sawangvonganan
96325ad3e1 drivers: dma: remove '&' when assigning dma_xxx_init
Remove address-of operator ('&') when assigning `dma_xxx_init`
function pointer in `DEVICE_DT_INST_DEFINE` macro.

This change aims to maintain consistency among the drivers in
`drivers/dma`, ensuring that all function pointer assignments
follow the same pattern.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-05-04 19:55:44 +02:00
Luca Burelli
021d90b641 tests: twister_blackbox: fix vendor filter test
Commit 6dc27a4 ("boards: align vendor entry in board.yml files")
unknowingly broke Twister blackbox tests by correctly placing Atom
targets under the 'intel' vendor. Since this was not previously the
case, the Twister blackbox vendor filter test for 'intel' was actually
expecting 'qemu_x86/atom' to be filtered out as "Not a selected vendor
platform."

This commit updates test_filter.py with the new vendor flags.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-05-03 17:49:29 +02:00
Phi Bang Nguyen
7dfd0d017f drivers: display: elcdif: Fix a typo breaking i.MX RT1170
The backlight_gpios property has a "s" at the end. This typo has broke
the display on i.MX RT1170. Fix it.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-05-03 17:48:08 +02:00
Jeppe Odgaard
b3c0be05c4 dts: arm: st: u0: fix msi clock
`msi-range` value 4 sets MSI clock frequency to 1 MHz and not 4 MHz as
intended.

Change value to 6 to increase clock to 4 MHz which matches comment.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-05-03 17:47:58 +02:00
Jeppe Odgaard
6b98f2e99f dts: bindings: clock: stm32-msi: fix whitespace
Change "1M Hz" to "1 MHz".

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-05-03 17:47:58 +02:00
Stefan Giroux
6ec4436085 drivers: serial: fix uart_sam0 async rx timeout calculation
Zephyr moved to microseconds to represent uart async timeout.
This one has some additional logic that was not adjusted in
the transition from milliseconds.

c590b3545a was integrated in
https://github.com/zephyrproject-rtos/zephyr/pull/39041

Signed-off-by: Stefan Giroux <stefan.g@feniex.com>
2025-05-03 17:47:42 +02:00
Dominik Ermel
f070786dd6 storage/stream_flash: Fix description of erased_up_to
The description incorrectly stated that it points to last erased
offset, while it actually points to first offset that has not
yet been erased.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-05-02 16:10:17 +01:00
Aleksander Wasaznik
440c287ef5 Bluetooth: doc: Fix use of deprecated bt_conn_security
`bt_conn_security` was removed in Zephyr 2.5 and is replaced with
`bt_conn_set_security`.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2025-05-02 16:10:07 +01:00
Marek Matej
883b0dc7a8 snippets: remove entries
Remove entries that was incorrectly added.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-05-02 16:09:52 +01:00
Andre Morishita
40a3d1e365 boards: variscite: Add Variscite VAR-SOM-MX8M-PLUS board
Add Variscite VAR-SOM-MX8M-PLUS board support. This SoM is based on NXP's
i.MX8M Plus SoC. It includes Cortex-A53 and Cortex-M7 support.

Signed-off-by: Andre Morishita <andre.m@variscite.com>
2025-05-02 16:09:44 +01:00
Camille BAUD
eabb0b5cfc MAINTAINERS.yml: Add VynDragon to bouffalolab maintainers
Add VynDragon to bouffalolab entries

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-02 16:09:31 +01:00
Yau-ming Leung
bd0a0011ab drivers: icm42688: fix missing compile time log level
The icm42688 driver RTIO stream module does not specify a compile time log
level. Thus, CONFIG_SENSOR_LOG_LEVEL_DBG is ignored. Fixed by specifying
log level on log module declaration.

Signed-off-by: Yau-ming Leung <ymleung314@gmail.com>
2025-05-02 16:09:23 +01:00
Camille BAUD
945f7d86dd tests: display: Add sh1122 build_all test
Adds SH1122 build_all test

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-02 16:09:08 +01:00
Camille BAUD
e5819f7a6c drivers: display: Introduce SH1122
Introduces Sinowealth SH1122 Greyscale 256x64 OLED controller

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-02 16:09:08 +01:00
Johan Hedberg
ed9bed110d Bluetooth: Controller: Be more explicit with thread names
The "BT RX pri" and "BT RX" are too easily confused with host-side threads,
e.g. the host RX thread is called "BT RX WQ". Add "CTLR" to the Controller
side thread names to make it clear that they're managed by the controller.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-05-02 15:21:52 +02:00
Grzegorz Swiderski
52f834068a drivers: firmware: nrf_ironside: Make events static
Events used in `call.c` should've been defined as static.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-05-02 15:21:40 +02:00
Grzegorz Swiderski
3353bbc066 drivers: firmware: nrf_ironside: Guard behind CONFIG_NRF_IRONSIDE
Add a promptless symbol that can be selected by different drivers. It is
there to ensure that the corresponding library is not added to the build
unless it contains at least one source file.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-05-02 15:21:40 +02:00
Benjamin Cabé
268e0f5c88 samples: Remove MAX44009 sensor sample
Delete the MAX44009 sensor sample as it's fully generic and does nothing
that's not already in light_polling sample.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-02 15:21:28 +02:00
Patryk Koscik
9d8afe2154 boards: it8xxx2_evb: remove Renode simulation files
This platform was never supported in Renode, it's a leftover from Mi-V
support which probably was copied here. The referenced `it8xxx2_evb.repl`
does not exist in the Renode tree or in the `support` directory.

Signed-off-by: Patryk Koscik <pkoscik@antmicro.com>
2025-05-02 15:21:19 +02:00
Arkadiusz Cholewinski
1366fa94f5 Tests: PM: Fix tests.
Change expected values for:
- pm/power_states
- pm/power_residency_time
- pm/power_wakeup_timer

and fix pm/power_wakeup_timer.

Signed-off-by: Arkadiusz Cholewinski <arkadiuszx.cholewinski@intel.com>
2025-05-02 15:21:07 +02:00
Pete Johanson
99171c39d6 dts: common: adi: Corrected HPB alt func
Correctly use AF3 for HPB on P1.12 for MAX32690.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-05-02 15:20:55 +02:00
Pete Johanson
f4b52a43d9 drivers: memc: Add MAX32 HyperBus driver
Add memc driver for the MAX32 HyperBus peripheral, supporting HyperRAM
and Xccela PSRAM memory devices.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-05-02 15:20:55 +02:00
Fin Maaß
1736736454 drivers: ethernet: stm32: remove asserts and move var initialization
remove unneded asserts and move variables initialization

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-02 15:20:45 +02:00
Fin Maaß
745d76292a eth: stm32: streamline eth_initialize function
streamline eth_initialize function by removing
redundant variable assignments

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-02 15:20:45 +02:00
Fin Maaß
bccd8abe0e ethernet: stm32: use HAL_ETH_SetMACFilterConfig
use HAL_ETH_SetMACFilterConfig for all soc, that
support hal api v2

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-02 15:20:45 +02:00
Fin Maaß
6978f24e61 ethernet: stm32: use DEVICE_DT_GET(STM32_CLOCK_CONTROL_NODE)
use DEVICE_DT_GET(STM32_CLOCK_CONTROL_NODE) directly.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-02 15:20:45 +02:00
Fin Maaß
d1f63abc78 ethernet: stm32: use DT_INST_*
use DT_INST_* where possible

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-05-02 15:20:45 +02:00
Vinayak Kariappa Chettimada
30a634c47a Bluetooth: Controller: Interleaved extended advertising reception
Increase scan aux sets to support interleaved extended
advertising reception in hci_ipc ISO support configuration
in nRF5340 HCI ISO Controller.

CONFIG_BT_MAX_CONN is reduced accordingly as ticker node
instances are shared across all state/role scheduling in the
Controller implementation.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-02 15:20:30 +02:00
Vinayak Kariappa Chettimada
590b86039b Bluetooth: Controller: Fix Extended connection initiation assertion
Fix assertion on aux context release during extended
connection initiation when supporting multiple simultaneous
interleaved Extended scanning support.

Relates to commit a8065926ac ("Bluetooth: Controller: Fix
to release aux context stored in node rx").

Relates to commit 193ce73109 ("Bluetooth: Controller: Fix
missing resume of primary channel scanning").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-05-02 15:20:30 +02:00
Mathieu Choplain
d65f8e32a4 drivers: entropy: stm32: don't waste generated random data
Even though the STM32 TRNG hardware produces 2- or 4-byte sized words of
random data before triggering an interrupt, the driver currently discards
all but the bottom byte: 50/75% of the produced entropy goes to waste!

Make sure we consume all the random data from each word we read to improve
the entropy generation rate seen by users of the driver.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-05-02 15:20:10 +02:00
Emil Gydesen
abad49b0d3 tests: Bluetooth: BSIM: Store last sent opcode for BT tester
The BT Tester will not provide the opcode in the case of a
BTP error. To help log this for developers, we store the
opcode of the currently outstanding command, so that we can
log it.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-02 10:47:32 +02:00
Pieter De Gendt
faec7c5ae9 drivers: wifi: nxp: Select EVENTS
The driver uses k_event objects and needs to select the EVENTS kconfig
option.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-02 10:40:38 +02:00
McAtee Maxwell
e6c5e26597 drivers: allow disabling gpio interrupt in ifx-cat1 gpio driver
- allow GPIO_INT_MODE_DISABLED in interrupt_configure function

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-05-02 10:39:45 +02:00
Adib Taraben
1613b5aade driver: hwinfo: nxp_rcm correct implementation of get_supported_reset_cause
The function should return all possible combinations for reset cause.

Signed-off-by: Adib Taraben <theadib@gmail.com>
2025-05-02 10:39:20 +02:00
Andy Lee
45746c172e scripts: zephyr_module now handles when unable to retrieve git rev
We now return "unknown" as the revision, and only concat onto
the revision if the revision is a valid git has value.

Signed-off-by: Andy Lee <andy@chiefmarley.com>
2025-05-02 10:39:03 +02:00
Michael Hope
aa469e05fe drivers: pinctrl: enable the AFIO clock on the CH32V003/20x/30x
The Alternate Function IO (AFIO) block must have the clock enabled
before configuring. Some remappings seem to work without, but some
like EXTI do not. Fix.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-05-02 10:38:54 +02:00
Steffen Jahnke
b64cd0dd96 boards: panasonic: Update PAN B511 Evaluation Board
The PAN B511 evaluation board is a development tool for the
nRF54L15 from Nordic Semiconductor. Updates are based on latest
changes for nrf54l15dk.

Signed-off-by: Steffen Jahnke <steffen.jahnke@eu.panasonic.com>
2025-05-02 10:38:46 +02:00
Raffael Rostagno
abe18d2ccb boards: esp32c6_devkitc: Add CAN sample
Add CAN sample for esp32c6_devkitc.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-05-02 10:38:39 +02:00
Raffael Rostagno
8167fe381d drivers: can: esp32c6: Add support
Add TWAI support to ESP32-C6.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-05-02 10:38:39 +02:00
Camille BAUD
b933aff68c tests: display: Add SSD1320 build test
Adds SSD1320 build test

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-02 10:37:56 +02:00
Camille BAUD
73dae9e910 drivers: display: Introduce SSD1320
Introduce a driver for SSD1320 displays

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-02 10:37:56 +02:00
Krzysztof Chruściński
a87e6280aa tests: drivers: uart: Add test for async API using two instance
Add test which is using two independent UART devices. Validate behavior of
asynchronous API.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-02 10:37:30 +02:00
Duy Nguyen
e0e90375da test: Skip kernel stack protect test for RX arch
Skip kernel stack protect as the compiler not support
-fstack-protector

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
2e92209726 test: interrupt_utils: Add method to trigger interrupt on RX
Add trigger_irq() function support for RX
This function will set corresponding IR bit to 1 on RX ICU to
trigger interrupt

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
f7db912e70 test: Test accumulator register save for RX arch
Add new test cases to check for accumulator register save
on RX architecture

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
d104ebaf63 test: fatal_exception: Add support for RX test
Add RX exception instruction

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
a87c3acfa9 twister: Add support for new rx arch test
Add "rx" in the arch list of twister

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
bf9240452c boards: qemu_rx: Add support for qemu rx
This support is based on the RX62N qemu envinronment
See: https://www.qemu.org/docs/master/system/target-rx.html

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Phi Tran
7ac89d33b1 scripts: west: flash: Add support for .mot file format
Add support for .mot file flash using west flash command
The RX build output .mot as binary file to flash into
board

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
c5f7ede44c boards: renesas: Add support for RSKRX130 512KB boards
Intial support for RSKRX130 512KB board
The board 2 version 128KB and 512KB running on 2 different
part of the RX130 MCU series.

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
7e0d006851 driver: serial: Add support for uart interface for qemu_rx
Support uart driver for qemu_rx environment base on the SCI0
HW on RX MCU

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
84c4c6fa77 drivers: serial: Initial support for Renesas RX serial driver
Intial serial driver support for RX MCU, this driver utilize
the SCI HWIP for uart communication
Current support include polling API and Interrupt driven API,
some of the code is using Renesas RX Driver Package (RDP) as
hal layer

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
Signed-off-by: Sang Tran <sang.tran.jc@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
86024ffebb drivers: gpio: Support GPIO driver for Renesas RX MCU
Initial commit for GPIO driver support on board using RX130 MCUs
* drivers: GPIO: implementation for GPIO driver on RSK_RX130_512KB
* dts: rx: add device node for GPIO of RSK_RX130_512KB

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
2aa071c7ad drivers: pinctrl: Support pinctrl driver for Renesas RX
Intial support of pinctrl driver for Renesas RX MCU
family.
This support base on using Renesas RX driver package in
hal_renesas layer

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
ad42e4d87d driver: timer: Support for RX system timer
This commit add a system timer driver for Renesas RX using the
CMT peripheral. The driver supports both system ticks and
high-resolution cycle counting
- Configures CMT0 as the system tick timer
- Configures CMT1 as a free-running cycle timer for precise
  time tracking
- Handles timer overflows to maintain a continuous cycle count.
- Implements sys_clock_cycle_get_32() and sys_clock_cycle_get_64()
  for  high-resolution timing
- Supports Zephyr tickless kernel mode by tracking elapsed cycles
- Enables interrupt-based tick announcement using CMT0

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
Signed-off-by: Yuichi Nakada <yuichi.nakada.sx@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
2f0715262d drivers: clock: Support clock control driver RX MCU
Initial support of clock control driver for RX MCU

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
Signed-off-by: Tran Van Quy <quy.tran.pz@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
d4d2b09cac soc: renesas: Add support for RX62N MCU
The qemu-system-rx is based on RX62N, this commit added
support for the RX62N SOC layer. MCU is using RXv1 core and
system timer running at 6MHz

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
dc470f782a goc: renesas: rx: Initial support for RX130 SOC
Minimal SOC layer support for Renesas RX SOC
This SOC is using Renesas RXv1 core

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
fb7bdf0df4 arch: Initial support for RX architecture support
This commit add require code for supporting RX architecture
to Zephyr, it include:
- Add require config and CMakelists for RX arch
- Intialization startup code for RX
- Interrupt and exception handling
- Thread creation adn thread context switch
- irq offload using SW interrupt

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
f00608ef56 include: Create linker for RX architecture
Add intial support for RX linker script
The RX GCC toolchain automatically adding an "_" as prefix
on every C symbol to comply to the arch ABI, for the C file
to understand the symbol define in linker script the
PLACE_SYMBOL_HERE() macro help to add "_" to linker script
define symbol if build with CONFIG_RX enable
This commit adding minimal support in common linker script
for RX arch

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
702bed6af5 include: Update toolchain header to support RX architecture
This add common gcc define for new RX architecture support

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
65ad2b0883 cmake: Add Renesas RX support
This commit add toolchain command line option for the RX
architecture support

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Duy Nguyen
5fabd3634a CMake: Add support for .mot binary file format
The Renesas RX support flashing .mot file for binary image
This commit target to add the .mot file output for build and
flash script

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-05-02 09:18:16 +02:00
Grzegorz Swiderski
bca4c17da3 MAINTAINERS: Update nRF platform files
Spot header files, as well as drivers with `nrf` in directory names.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-05-02 09:17:34 +02:00
Fabrice DJIATSA
b5090e220a tests: drivers: spi: spi_loopback: update spi_loopback test
add nucleo_wba55cg board for spi_loopback driver test.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-05-02 09:17:26 +02:00
Fabrice DJIATSA
e54c615255 tests: drivers: i2c: i2c_target_api: update i2c test driver
add nucleo_wba55cg board for i2c driver test.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-05-02 09:17:26 +02:00
Yangbo Lu
f8b450d6a5 net: gptp: adjust only frequency for continuous synchronization
Current clock synchronization was always stepping clock. This was
causing large offset, and discontiguous ptp hardware clock time.
For TSN hardware, discontiguous ptp hardware clock time was not
able to be used for other TSN protocols.

This patch is to convert to frequency adjustment with a basic
PI control algorithm.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-02 09:17:12 +02:00
Yangbo Lu
faa55bd44b drivers: ptp_clock_nxp_enet: avoid configuring IRQ handlers again
Converted ENET_Ptp1588Configure to ENET_Ptp1588StartTimer during reset.
This is to avoid configuring IRQ handlers again in hal driver with
ENET_Ptp1588Configure.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-02 09:17:12 +02:00
Yangbo Lu
0e4a334f1c drivers: ptp_clock_nxp_enet: adjust rate based on nominal frequency
The rate adjustment should be based on nomianl frequency, but not
current frequency. Then any PTP stack with PID control could adjust
frequency well.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-02 09:17:12 +02:00
Yangbo Lu
383d4f499e drivers: eth_nxp_enet: fix data share with ptp driver
The enet handle in mac driver was not shared with ptp driver
properly. This was causing wrong TX timestamp.
This patch is to fix it.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-02 09:17:12 +02:00
Yangbo Lu
0415ba0452 drivers: clock_control_mcux_ccm: use fixed 25M for PTP on RT10XX
The RT10XX uses fixed 25M for PTP clock per RM. Verified on
RT1060.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-05-02 09:17:12 +02:00
Amaan Singh
ef93b1437c qdec: Add STM32F2 support via overlay for nucleo_f207zg
Add a disabled st,stm32-qdec node to TIM3 for STM32F2-based MCUs.
This enables QDEC support via devicetree overlays and simplifies
usage on boards such as nucleo_f207zg.

Signed-off-by: Amaan Singh <amaansingh160@gmail.com>
2025-05-02 09:16:54 +02:00
Amaan Singh
7a74842f95 dts: stm32: Add st,stm32-qdec support to TIM1-TIM5 & TIM8 for STM32F2
Add disabled qdec subnodes to timers TIM1 through TIM5 and TIM8
for STM32F2 series MCUs. This enables Zephyr to provide consistent
QDEC support across all supported encoder-capable STM32 timers.

Signed-off-by: Amaan Singh <amaansingh160@gmail.com>
2025-05-02 09:16:54 +02:00
Ali Hozhabri
5762117d05 boards: shields: x_nucleo_wb05kn1: Update documentation
The documentation is updated to give more information regarding the SPI
default settings and the necessity to change the out-of-the-box firmware
to be compatible with Zephyr.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-05-02 09:16:23 +02:00
Mirai SHINJO
143859dece boards: nucleo_h753zi: add die_temp support
This commit enables die_temp support by configuring ADC3 and adding
the die_temp0 alias to the devicetree of the nucleo_h753zi board.

This change has been tested using the die_temp_polling sample.

Signed-off-by: Mirai SHINJO <oss@mshinjo.com>
2025-05-02 09:16:11 +02:00
Martin Jäger
70947968d4 soc: stm32: common: wkup_pins: fix log output
Remove newline in log output and simplify log message.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-05-02 09:15:59 +02:00
Aksel Skauge Mellbye
3a2f839d45 doc: bindings-syntax: Document requirements for title property
Add documentation for the expectations for the title property
in devicetree bindings.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-02 09:15:50 +02:00
Aksel Skauge Mellbye
4b4d40017a dts: bindings: silabs: Clean up descriptions, add titles
Clean up dt binding descriptions and introduce titles where
needed to make board documentation pages look nice. The supported
hardware table on board documentation pages sources its data
from dt bindings, and needs succinct titles.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-02 09:15:50 +02:00
Aksel Skauge Mellbye
b2451ca109 doc: _extensions: zephyr: Use binding title in supported hw table
Use the title property from bindings in the supported hardware table
if available.

Create <abbr> elements for acronyms and abbreviations in titles.
Abbreviations are not created when the description field is used as
a title, since existing text in bindings was not created with this
in mind, and parentheses are used in the text in ways that are
incompatible with the auto-abbreviating logic.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-02 09:15:50 +02:00
Aksel Skauge Mellbye
2e442e0ad5 doc: _scripts: Expose title from dt binding in board catalog
Make the recently added `title` attribute in dt bindings available
in the board catalog used by the board supported hardware directive.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-02 09:15:50 +02:00
Aksel Skauge Mellbye
73b8d1b637 edtlib: Expose binding title in node class
Make the binding title available from the node the same way
the binding description is propagated.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-05-02 09:15:50 +02:00
IBEN EL HADJ MESSAOUD Marwa
9dfca6506b boards: st: nucleo_c071rb: Add the usb and usbd test features
Add the usb_device and usbd test features to nucleo_c071rb.yaml

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-05-02 09:15:41 +02:00
IBEN EL HADJ MESSAOUD Marwa
a6d766e185 boards: st: nucleo_c071rb: Enable USB peripheral
Enable the USB node of the nucleo_c071rb board

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-05-02 09:15:41 +02:00
IBEN EL HADJ MESSAOUD Marwa
1a8f5ba0da dts: arm: st: c0: Add USB device node
Added USB device node with compatible "st,stm32-usb".
Added usb_fs_phy node with compatible "usb-nop-xceiv".

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-05-02 09:15:41 +02:00
IBEN EL HADJ MESSAOUD Marwa
2e59e8207a include: zephyr: dt-bindings: Add STM32C0 USB clock selection support
- Defined CCIPR2_REG offset.
- Added USB_SEL(val) macro to support USB clock selection using CCIPR2_REG.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-05-02 09:15:41 +02:00
Jeppe Odgaard
c3a9fb1c63 driver: sensor: tmp11x: support get offset
Allow reading the offset register.

This allows reading the offset before setting it if offset is set more than
once.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-05-02 09:15:33 +02:00
Jordan Yates
8cebd99066 samples: st: power_mgmt: blinky: enable PM on GPIOs
Enable runtime PM on each GPIO port to preserve the legacy PM GPIO
behaviour for this sample.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-02 09:15:26 +02:00
Jordan Yates
41fe3b9d24 gpio: stm32: initialise according to zephyr,pm-device-runtime-auto
Don't automatically disable all GPIO ports just because
`PM_DEVICE_RUNTIME` is enabled. Require the user to explicitly call
`pm_device_runtime_enable` on the port, or add
`zephyr,pm-device-runtime-auto` to the devicetree node.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-02 09:15:26 +02:00
cyliang tw
3bf1ee7cb0 tests: drivers: adc: adc_api: support numaker_m55m1
Add support for Nuvoton numaker board numaker_m55m1.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-05-02 07:20:34 +02:00
cyliang tw
082a3a0878 dts: arm: nuvoton: add adc node of numaker m55m1x
Update m55m1x.dtsi, to add adc node for adc driver support.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-05-02 07:20:34 +02:00
Andrej Butok
25a2196ac9 boards: nxp: imx-flexspi-nor: add missing sizes for is25wp064
Adds erase-block-size and write-block-size
for is25wp064 nxp,imx-flexspi-nor.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-05-02 07:20:24 +02:00
Lin Yu-Cheng
1e71a79ba1 soc : realtek: ec: rts5912: add soc rts5915 config
Add the config for user to chose rts5915

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-05-02 07:20:13 +02:00
Troels Nilsson
6a5fa60ad4 Bluetooth: Controller: Fix missing window widening in ull_periph_setup
No window widening was applied to conn_offset_us causing the initial
ticker_cb to get called slightly too late

Apply window_widening_periodic_us to conn_offset_us, since this is the
worst-case window widening (win_offset is not allowed to be larger than
a connection interval) and is applied in the LLL window size already

Fixes EBQ failure in LL/TIM/PER/BV-02-C

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-05-02 07:20:03 +02:00
Alvis Sun
7e23f8b408 soc: add npck soc driver
For npck3m8k:
1. Update code ram from 320KB to 416KB (0x1005_8000~0x100B_FFFF).
2. Update data ram from 32KB to 64KB.
3. Move fiudiv from hfcbcd1 to hfcbcd2 register

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-05-02 07:19:55 +02:00
Alvis Sun
488526190f dts: arm: npcx: Add dts files for NPCK3 series
K3 series is a Nuvoton embedded controller based on NPCX series.
Add npck3m8k dtsi

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-05-02 07:19:55 +02:00
Khoa Nguyen
d63aac0d3d tests: drivers: flash: Add support "common" for Renesas ek_ra4l1
Add support test app "flash/common" for Renesas RA ek_ra4l1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-05-02 07:19:46 +02:00
Khoa Nguyen
3e2a243edb boards: renesas: Add support Flash-HP for Renesas ek_ra4l1
Add storage partition and flash support for Renesas ek_ra4l1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-05-02 07:19:46 +02:00
Khoa Nguyen
6026d339b3 dts: arm: renesas: Add support Flash-HP for Renesas RA4L1
Add support Flash-HP for Renesas RA4L1 SoC

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-05-02 07:19:46 +02:00
Khoa Nguyen
c0048f1beb dts: arm: renesas: Update Flash-HP node for Renesas SoC
Update Flash-HP node for all Renesas SoCs that enabled support

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-05-02 07:19:46 +02:00
Khoa Nguyen
d9032f03f2 drivers: flash: Update driver flash to support Flash-HP for RA4L1
Update source flash driver to support Flash-HP for RA4L1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-05-02 07:19:46 +02:00
Khoa Nguyen
b9160aab15 manifest: Update hal_renesas for Flash-HP support ek_ra4l1
Update hal_renesas for Flash-HP support ek_ra4l1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-05-02 07:19:46 +02:00
Khoa Nguyen
9088261efd drivers: flash: Correct naming of Flash HP Renesas RA Kconfig
Correct naming of Flash HP Renesas RA Kconfig

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-05-02 07:19:46 +02:00
Khoa Nguyen
f305a339b3 drivers: flash: Update naming for flash driver of Renesas RA
Update naming for flash driver of Renesas RA

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-05-02 07:19:46 +02:00
Khoa Nguyen
575a95de65 drivers: flash: Remove Dual mode feature for Renesas flash-HP
Since the Dual Mode feature doesn't actually work when selected,
and we also realize that we can't support key features of dual
mode, such as bank swap using hardware.
As a solution, we desire to remove this Dual mode feature.

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-05-02 07:19:46 +02:00
Ofir Shemesh
999b19d6ce soc: nxp: imxrt: fix incorrect flexram partition function call
Replace incorrect call to memc_flexram_dt_partition() with
flexram_dt_partition() to resolve build error on
IMXRT10xx and IMXRT11xx.

Signed-off-by: Ofir Shemesh <ofirshemesh777@gmail.com>
2025-05-02 01:17:13 +02:00
Martin Jäger
403299c40b samples: boards: st: power_mgmt: wkup_pins: add nucleo_g031k8
Add overlay for above board for testing. As the board does not have an
actual button, PA0 has to be connected to GND for wake-up.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-05-02 01:17:02 +02:00
Martin Jäger
bb0e580be4 soc: stm32g0x: add poweroff implementation
Same implementation as stm32c0x and stm32l4x. This is required
for wake-up from sleep.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-05-02 01:17:02 +02:00
Martin Jäger
d65149e210 dts: arm: stm32g0: add pwr node and wkup-pins
WKUP3 is only available for g0b0/1 and g0c1 variants.

WKUP5 is only available in larger packages. However, package sizes
are currently not considered in the devicetree file schema for STM32.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-05-02 01:17:02 +02:00
Chris Friedt
0cac1849ca doc: kernel: mark k_event apis as being ISR safe
Most of the k_event APIs are ISR-safe, with the exception of

* k_event_init() - object should be initialized before ISR context
* k_event_wait(), k_event_wait_all() - only ISR safe with K_NO_WAIT

The last two functions already check for K_NO_WAIT when in ISR context
so this is very much just updating documentation to reflect the
current state.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-02 01:16:46 +02:00
Chris Friedt
36c44045a0 kernel: events: prevent k_event_init() from being called in an ISR
Most kernel objects should be initialized well before being
manipulated in ISR context.

Event objects are no exception. Initializing a k_event object in
ISR context would implicitly be racey and introduce an element of
non-determinism.

Assert that k_event_init() is not called from ISR context.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-05-02 01:16:46 +02:00
Hake Huang
c10e6eaf07 soc: mimxrt11xx: update the frdmram api
flexram api change to misc.

fixes: #89150

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-05-02 01:16:37 +02:00
Hake Huang
61e1dc963c samples: magic_addr: move the config to app.overlay
move the board config to app.overlay, as it is
a general dts settings

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-05-02 01:16:37 +02:00
Derek Snell
26423f2020 soc: nxp: mcxn: configure CPU1 TrustZone access level
Configures AHBSC MASTER_SEC_LEVEL register for the cpu1 before cpu1 is
enabled.  By default, this gives CPU1 secure and privileged access to
the rest of the SOC, same as CPU0.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-05-02 01:16:26 +02:00
Derek Snell
01ca78b227 Revert "boards: nxp: frdm_mcxn947: enable GPIO in all modes"
This reverts commit feb966df36.  That
change makes GPIO registers inaccessible from cpu0.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-05-02 01:16:26 +02:00
Keith Packard
2d64237f44 cmake: Enable undefined behavior sanitizer on all targets
GCC and Clang support the undefined behavior sanitizer in any
configuration, the only restriction is that if you want to get nice
messages printed, then you need the ubsan library routines which are only
present for posix architecture or when using picolibc.

This patch adds three new compiler properties:

 * sanitizer_undefined. Enables the undefined behavior sanitizer.
 * sanitizer_undefined_library. Calls ubsan library routines on fault.
 * sanitizer_undefined_trap. Invokes __builtin_trap() on fault.

Overhead for using the trapping sanitizer is fairly low and should be
considered for use in CI once all of the undefined behavior faults in
Zephyr are fixed.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-05-02 01:16:18 +02:00
Alex Fabre
1fdad5cc29 doc: toolchain: atfe: arm toolchain for embedded documentation
Arm Toolchain for Embedded (ATfE) is the next-generation Arm embedded
C/C++ compilation toolchain.

Arm Toolchain for Embedded is 100% open source. Arm is investing in the
LLVM linker and minor tools, and in the Picolib C library, to create a
performant 100% open source compilation toolchain for embedded
development with Arm-based designs.

The proprietary components used in Arm Compiler for Embedded 6 (the
linker, C library, and binutils carried over from the legacy Arm
Compiler 5 toolchain) are retired in favour of their open source
(LLVM and Picolib) equivalents.

Product page: https://developer.arm.com/Tools%20and%20Software/Arm%20Toolchain%20for%20Embedded
Github repo: https://github.com/arm/arm-toolchain

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-05-02 01:16:08 +02:00
Alex Fabre
6e5554b383 doc: toolchain: ac6: update documentation filename
This update changes the filename from 'arm_compiler.rst' to
'arm_compiler_6.rst' to accurately reflects its focus on AC6.

Recently, Arm introduced the Arm Toolchain for Embedded (ATfE), which is
distinct from AC6. This 7th generation compiler is entirely open source
for the first time. To distinguish it from AC6 and highlight it's a
complete toolchain rather than just a compiler, this new version will
be named Arm Toolchain for Embedded (ATfE).

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-05-02 01:16:08 +02:00
Tais Hjortshøj
0709014549 scripts: west_commands: Add powershell autocompletion (west -b)
Windows powershell can by default not autocomplete known boards when
tapping which can cause frustration when you can't quite remember the
exact name or you don't want to type it out.
west build .\path\to\application\ -p -b stm<tab> will search for
available board including 'stm' in their name.

Signed-off-by: Tais Hjortshøj <tbh@mjolner.dk>
2025-05-02 01:16:00 +02:00
Josep Puigdemont
e0dbba5bd3 samples: sensor: lps22hh: fix title
The name of the sensor in the title had one S too many, it should
be LPS22HH instead of LPSS22HH.

Same for the I3C version of the sample.

Signed-off-by: Josep Puigdemont <josep.puigdemont@gmail.com>
2025-05-01 18:18:03 +02:00
Josep Puigdemont
b915e24817 samples: sensor: i3g4250d: add missing config
Adds CONFIG_REQUIRES_FLOAT_PRINTF so that printf can display
floats correctly.

Signed-off-by: Josep Puigdemont <josep.puigdemont@gmail.com>
2025-05-01 18:17:54 +02:00
Vijayakannan Ayyathurai
32253c6159 net: ip: resolve NET_IPV4_FRAGMENT build warning
warning: format '%d' expects argument of type 'int', but argument 3 has
type 'size_t' {aka 'long unsigned int'} [-Wformat=]

Change the printf modifier to %zd for size_t variable will resolve the
warning.

Signed-off-by: Vijayakannan Ayyathurai <vijayakannan.ayyathurai@intel.com>
2025-05-01 18:17:46 +02:00
Fabrice DJIATSA
19ba839d66 tests: drivers: spi: spi_loopback: update testcase file
add stm32n6570_dk in yaml file for CI test integration
purpose.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-05-01 18:17:15 +02:00
Fabrice DJIATSA
234efb48dc tests: drivers: i2c: i2c_target_api: update testcase file
add stm32n6570_dk in yaml file for CI test integration
purpose.


Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-05-01 18:17:15 +02:00
Armando Visconti
4c34b5d725 drivers/sensor: lis2dux12: add high performance mode
Add driver capability to properly set high performance mode
while setting data rate (thru lis2duxxx_mode_set() API)
based on how power-mode is set into DTS: if it is set to
LIS2DUX12_OPER_MODE_HIGH_PERFORMANCE then configure HP mode,
LP/ULP mode otherwise.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-05-01 18:17:05 +02:00
Axel Le Bourhis
dc52ec7d32 soc: nxp: rw: fix wrong dependency on kconfigs
Use `defaut y if` instead of `depends on` as the related Kconfig
should be user configurable even when standby mode is not used.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-05-01 18:16:57 +02:00
Axel Le Bourhis
0ecaef0053 drivers: mcux_flexcomm: fix character glitches at low power entry
Character glitches are observed when entering suspend and standby low
power modes.
To fix it, we make sure the `poll_out` API waits for the character
transfer to complete. This is aligned with the uart driver API
description.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-05-01 18:16:57 +02:00
Olivier Lesage
36aa80337b bluetooth: host: Clarify docs about reading remote FAE table
There was some confusion about why this function doesn't work with
nordic devices. The explanation is that the controller is required
to return an error code if the remote device doesn't need an FAE table.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2025-05-01 18:16:48 +02:00
Manuel Argüelles
3602108bd8 MAINTAINERS: add collaborator and board to NXP Robotics area
Changes on NXP Robotics Products area:
- add myself as collaborator
- move ucans32k1sic board from S32 area

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-05-01 18:16:39 +02:00
Manuel Argüelles
07936d7182 MAINTAINERS: add congnguyenhuu as collaborator of NXP S32
Nominate congnguyenhuu as collaborator of NXP Platforms (S32) area.

See #89219

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-05-01 18:16:39 +02:00
Lauren Murphy
51aa2ffec0 arc: add ram to qemu board yaml so arc tests run
With a missing RAM value in the ARC QEMU board YAML,
Twister assigns it 128. The min_ram filter for the
testcase is higher. The RAM in the ARC QEMU board DTS
is 4 MB. Update ARC QEMU board YAML to include 4 MB
of RAM so tests run on ARC QEMU.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-05-01 18:16:30 +02:00
Lauren Murphy
e0a54835c2 llext: support ARC MPU
Make it so LLEXT allocates a memory region equal or greater
to the minimum size supported by the MPU, to ensure no region
overlap.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-05-01 18:16:30 +02:00
Daniel Leung
0d650aebe7 boards: qemu_xtensa/sample_controller32/mpu: enable twister
Since Zephyr SDK 0.16.9, it has support for building the board
qemu_xtensa/sample_controller32/mpu. Addd the corresponding
toolchain entry in the YAML file so it can built with twister
without forcing toolchain.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-05-01 18:16:20 +02:00
Daniel Leung
d3dcf36897 libc: newlib: heap arean to support Xtensa MPU
This adds the bits to define HEAP_BASE when using Xtensa MPU.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-05-01 18:16:20 +02:00
Daniel Leung
5682a7f09e logging: backend/xtensa_sim: more generic enabling condition
Instead of using individual SoC kconfigs to determine whether
to enable the Xtensa simulator logging backend, simply use
CONFIG_SIMULATOR_XTENSA.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-05-01 18:16:20 +02:00
Thomas Lang
1a8b8f4220 drivers: sensor: Added timeout for apds9960 sampling
Timeout occurs if status register does not register an interrupt

Signed-off-by: Thomas Lang <thomaslang2003@me.com>
2025-05-01 18:16:05 +02:00
Thomas Lang
f38beeafba drivers: sensor: Make apds9960 polling wait
sensor_fetch for apds9960 will now block until a valid sample is ready

Signed-off-by: Thomas Lang <thomaslang2003@me.com>
2025-05-01 18:16:05 +02:00
Thomas Lang
999b8f85c6 drivers: sensor: Removed apds9960 interrupt pin
Made interrupt pin on apds9960 optional

Signed-off-by: Thomas Lang <thomaslang2003@me.com>
2025-05-01 18:16:05 +02:00
Emil Gydesen
6abdc389d4 Bluetooth: CSIP: Remove bt_csip_set_member_get_sirk
The bt_csip_set_member_get_sirk function is superseded by
bt_csip_set_member_get_info and uses of it has been replaced.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-01 18:15:56 +02:00
Jordan Yates
f4825033bc sensor: remove PM state checks from API functions
Calling sensor API functions on devices not in `PM_DEVICE_STATE_ACTIVE`
is a violation of the PM API. Adding manual checks inside of drivers
complicates the drivers and increases ROM footprint for no additional
benefit.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-01 18:15:42 +02:00
Dat Nguyen Duy
eb7ac1c0ff arm: cortex_a_r linker: move data section between rodata and bss
By moving data section between rodata and bss, and disabling
Kconfig LINKER_LAST_SECTION_ID by default if non-XIP (it is
seems only needed for XIP), the size of zephyr.bin can be
reduced significantly on non-XIP system.

As a result, moving __kernel_ram_start to another place
to ensure it still include bss + data as before.

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2025-05-01 18:15:33 +02:00
Johan Hedberg
3a07c25c65 Bluetooth: HCI: Rename BT_BUF_TYPE_INVALID to BT_BUF_TYPE_NONE
The new name is slightly clearer, since strictly speaking any value not
part of the enum is invalid.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-05-01 14:59:12 +02:00
Johan Hedberg
dcc1d384b6 Bluetooth: HCI: Add documentation for BT_BUF_IN/OUT
Document the enum values for the recently added bt_buf_dir enum.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-05-01 14:59:12 +02:00
Pieter De Gendt
1a64977b1f sys: dlist: Add const qualifier to immutable API functions
Allow passing structs with sys_dlist_t members as const without
discarding qualifiers if the API is used without modifying it.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-01 08:54:04 -04:00
Pieter De Gendt
dde8067d4a sys: slist/sflist: Add const qualifier to immutable API functions
Allow passing structs with sys_slist_t/sys_sflist_t members as const
without discarding qualifiers if the API is used without modifying it.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-01 08:54:04 -04:00
Pieter De Gendt
857abda15e net: lib: coap: coap_server: Change error print to debug
The POLLHUP is expected with, for example DTLS UDP sockets.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-01 08:53:32 -04:00
Pieter De Gendt
51a4e4c858 samples: net: sockets: coap_server: Add CoAP secure support
Update the CoAP server sample to demonstrate using DTLS for secure
sockets.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-01 08:53:32 -04:00
Pieter De Gendt
b596b13e7c tests: net: lib: coap_server: Add secure test
Add testcase for CoAP secure service support.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-01 08:53:32 -04:00
Pieter De Gendt
470b582e04 net: lib: coap: Add CoAP secure support
Add optional TLS secure tag lists for CoAP services to enable DTLS
sockets.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-05-01 08:53:32 -04:00
Patryk Koscik
6fc11ca6dd samples: hello_world_user: unify board identifier output
This patch unifies the board target identifier output to match that in
the `hello_world/src/main.c` file.

Signed-off-by: Patryk Koscik <pkoscik@antmicro.com>
2025-05-01 13:43:03 +02:00
Bartosz Miller
a1a8d28394 tests: drivers: can: Enable GPD for nrf54h in CAN host test
nrf54h should be capable of operating
the CAN interface when GPD is enabled.

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-05-01 13:42:47 +02:00
Emil Gydesen
6ddc988c1e tests: Bluetooth: Audio: Fix includes
Updates the includes in a a few files to
avoid including unused header files and include the
ones that are used.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-01 13:42:37 +02:00
Emil Gydesen
d38b0e9ecd tests: BSIM: Bluetooth: Audio: Fix includes
Updates the includes in a a few files to
avoid including unused header files and include the
ones that are used.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-01 13:42:37 +02:00
Emil Gydesen
b04d6386db Bluetooth: Audio: Fix includes
Updates the includes in a a few files to
avoid including unused header files and include the
ones that are used.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-01 13:42:37 +02:00
Emil Gydesen
b9ddaf7a5f Bluetooth: Audio: Shell: Fix includes
Updates the includes in a a few files to
avoid including unused header files and include the
ones that are used.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-01 13:42:37 +02:00
Emil Gydesen
aaec705f12 Bluetooth: Audio: Fix includes in public header files
Updates the includes in a few header files to
avoid including unused header files and include the
ones that are used.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-05-01 13:42:37 +02:00
Martin Meyer
010d7d1b9a soc: raspberrypi: common: reformat pinctrl include
Apply clang-format on source files.

Signed-off-by: Martin Meyer <meyer.m90@gmail.com>
2025-05-01 13:42:17 +02:00
Martin Meyer
5d39cc1eea drivers: pinctrl: rp2040: extend pin override config
Add a device-tree property to configure the override
functionalities of RP2040 GPIO pins.

Signed-off-by: Martin Meyer <meyer.m90@gmail.com>
2025-05-01 13:42:17 +02:00
Fredrik Danebjer
379eb7a0ff bluetooth: host: Fix premature semaphore giving
There was a semaphore in hci_core which was given to early when
receiving the BT_HCI_EVT_NUM_COMPLETED_PACKETS message from the
controller. This would sometimes cause an assert to happen in
function hci_num_completed_packets, where there would arise a
mismatch in the bookkept count, and actually stored nodes. More
concretely, due to premature semaphore giveing, the tx_pending node
would be have been removed in another context before it could be
fetched and moved to complete list in this function.

Signed-off-by: Fredrik Danebjer <frdn@demant.com>
2025-05-01 09:34:28 +02:00
Jordan Yates
94a8c5241a samples: lora: send: counter in packet
Add an incrementing counter in the transmitted packet to differentiate
one packet from the next.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-01 09:34:21 +02:00
Jordan Yates
b6e5e6819f shields: semtech_sx1262mb2das: reduce SPI frequency
The current frequency of 16 MHz has been observed to result in
communications errors on a nRF5340DK. Since the LoRa PHY bitrate is
measured in kbps, there is no throughput implications from this change.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-05-01 09:34:21 +02:00
Cliff Brake
346bd7d16d drivers: eth/mdio: esp32: enable GPIO0 for phy clock out
Currently, GPIO16/17 are supported for Ethernet phy
clock out, but some boards are also using GPIO0.
This change allows GPIO0 to be configured.

Signed-off-by: Cliff Brake <cbrake@bec-systems.com>
2025-05-01 09:34:13 +02:00
Jamie McCrae
9bd8bd6b75 tests: mgmt: mcumgr: img_mgmt_slot_info: Fix overlay
Fixes the order of the overlay which now throws an error

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-05-01 09:33:34 +02:00
Anuj Deshpande
969c3e9980 samples: Fix inconsistent variable naming
Similar variables were using alpha and alph as a prefix

Signed-off-by: Anuj Deshpande <anuj@makerville.io>
2025-05-01 07:15:44 +02:00
Cristian Funes
5043cb712c boards: rak: add support for stm32 cube programmer
Added support for stm32 cube programmer to RAK3172 module.

Tested with:
- `samples/hello_world`
- `samples/basic/blinky`

Flashed samples via stm32cubeprogrammer
- `west flash -r stm32cubeprogrammer`

Signed-off-by: Cristian Funes <cristian.funes@pragmafw.com>
2025-05-01 07:15:33 +02:00
Camille BAUD
0168ed4e03 boards: bl604e_iot_dvk: remove CONFIG_UART_BFLB
remove CONFIG_UART_BFLB because default y was added to
Kconfig so it enables automatically

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-01 07:15:25 +02:00
Camille BAUD
857c7c2f42 drivers: serial: add missing default y
Adds missing default y to bflb Kconfig

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-01 07:15:25 +02:00
Camille BAUD
2642a7b978 boards: bflb: Introduce AI-WB2-12F
This introduces the Ai-Thinker BL602 WB2 development board

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-01 07:15:25 +02:00
Camille BAUD
a97508cd9c dts: bindings: Add Zbit Semiconductor
Add zb prefix

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-01 07:15:25 +02:00
Keith Packard
f075022bec libc/picolibc: Make lock typing match between Zephyr and picolibc
Picolibc's retargetable locking is based upon having the user own the lock
type (struct __lock, along with typedef struct __lock *_LOCK_T), and then
having the picolibc internal code only refer to this type via the _LOCK_T
pointer typedef, leaving the actual struct undeclared there.

Zephyr wants to use 'struct k_mutex' for this type; the initial picolibc
port handled this by trying to redefine the picolibc locking to use 'void
*' instead of 'struct __lock *' by including '#define _LOCK_T void
*'. Which 'works' as long as the Zephyr code doesn't actually include
picolibc's sys/lock.h.

A recent picolibc change to support POSIX stdio locking has picolibc's
stdio.h including sys/lock.h, which breaks Zephyr's hack.

To fix this, create a real 'struct __lock' type as

	struct __lock { struct k_mutex m; };

Define all of the required picolibc locking API with this real type,
referring to the mutex inside without needing any casts.

This required switching the definition of the C library global lock from
K_MUTEX_DEFINE to the open-coded version, STRUCT_SECTION_ITERABLE_ALTERNATE
so that it has the correct type and still lands in the same elf section.

The only mildly inappropriate code left is that lock are allocated using
k_object_alloc(K_OBJ_MUTEX), which "works" because the size of 'struct
__lock` will exactly match the size of 'struct k_mutex' because of C's
struct allocation rules.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-05-01 07:15:16 +02:00
Jeppe Odgaard
96f51bf797 drivers: sensor: explorir_m: fix maybe-uninitialized
Fix maybe-uninitialized warning by initializing `restore-rc`.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-04-30 23:03:26 +02:00
Alain Volmat
9494cf259c boards: st: stm32mp135f_dk: add the I/O expander i2c device and led 2-3
The stm32mp135f_dk board embeds an I/O expander to get access
to more I/O. Led 3 (green) and Led 4 (orange) are accessible via this
I/O expander.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-04-30 23:03:17 +02:00
Alain Volmat
ae4358fa01 boards: st: stm32mp135f_dk: correct led_1 / led_2 polarity
blue and red leds polarity is ACTIVE_LOW hence correct the
DT to have them behave correctly.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-04-30 23:03:17 +02:00
Alain Volmat
285d1d2529 boards: st: enable all i2c and panel available on the stm32mp135f_dk board
The stm32mp135f_dk board has 3 i2c instances enabled and feature a
480x272 panel controlled via the LTDC.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-04-30 23:03:17 +02:00
Alain Volmat
7481187b95 dts: arm: st: mp13: add ltdc node in stm32mp135.dtsi
Add the node describing the LTDC available in the stm32mp135.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-04-30 23:03:17 +02:00
Alain Volmat
d9b41a0a83 include: dt-bindings: clock: add LTDC specific entry for stm32mp13
The non-secure LTDC plane has its own register for clock gating hence
add an entry to control this.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-04-30 23:03:17 +02:00
Alain Volmat
b538ba71ba dts: arm: st: mp13: add description of all i2c instances
Add description of all 5 instances (i2c1 to i2c5) available
on the stm32mp13 soc.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-04-30 23:03:17 +02:00
Alain Volmat
9c9f526443 display: stm32_ltdc: update macro to avoid usage of legacy API
Replace the usage of __HAL_LTDC_RELOAD_CONFIG which is a legacy
API with __HAL_LTDC_RELOAD_IMMEDIATE_CONFIG

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-04-30 23:03:17 +02:00
Alain Volmat
eaa525c2e9 clock_control: stm32: add I2C periph get_subsys_rate for mp13
Add code to handle stm32_clock_control_get_subsys_rate for all
i2c instances from I2C1 to I2C5.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-04-30 23:03:17 +02:00
Alain Volmat
d78842a5fd modules: stm32: add DCMIPP and DDR modules found on STM32MP13XX
Addition of the DCMIPP and DDR modules.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-04-30 23:03:17 +02:00
Alain Volmat
5a672f6cf9 west: update hal_stm32 to take MP13 HAL update
Update hal_stm32 revision to include the MP13 HAL update.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-04-30 23:03:17 +02:00
Dmitrii Sharshakov
114bc8086d Bluetooth: ISO: fix hci_le_set_cig_params validation
Sizeof of a pointer doesn't make sense here, and
e.g. on native_sim/native/64 this would fail.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-04-30 23:03:07 +02:00
Daniel Leung
3cf5b0c8e8 cmake: toolchain/xcc,xt-clang: LD flag for multi-core env vars
When using one set of environment variables for multiple
cores compilation, we also need to supply the core name in
linker flags. So add that to TOOLCHAIN_LD_FLAGS.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-30 23:02:56 +02:00
Keith Short
5615e466c9 pm: Cleanup PM stats
Convert PM stats code to use IS_ENABLED in place of #ifdefs.

Signed-off-by: Keith Short <keithshort@google.com>
2025-04-30 18:44:32 +02:00
Francois Ramu
22ca514ddc doc: release-notes-4-2: new DTS properties for the xSPI of STM32 devices
Change to apply on the DTS of STM32 soc and boards with xSPI nodes

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-30 18:44:24 +02:00
Francois Ramu
95d95dc82c samples: code_relocation_nocopy: update macro for flash size and address
In case of the st,stm32-xspi-nor compatible
new property and node definitions will requires new macro
to get the external NOR flash base address and size

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-30 18:44:24 +02:00
Francois Ramu
8d8b08221b boards: st: stm32H573 disco kit xspi-nor-flash DTS configuration
This PR defines the "st,stm32-xspi-nor" compatible Node
in conformance to the DTS specifications
Includes the size property (in Bits) of the external NOR device

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-30 18:44:24 +02:00
Francois Ramu
6b574e6d37 boards: st: stm32N6 boards xspi-nor-flash DTS configuration
This PR defines the "st,stm32-xspi-nor" compatible Node
and the "st,stm32-xspi-psram" compatible Node
in conformance to the DTS specifications
Includes the size property (in Bits) of the external memory device

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-30 18:44:24 +02:00
Francois Ramu
421c3f6325 drivers: memc: stm32 xspi driver size and address of the external PSRAM
New property of the st,stm32-xspi-psram compatible gives
the external PSRAM memory in bits.
The property of the st,stm32-xspi compatible gives
the external PSRAM memory base address

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-30 18:44:24 +02:00
Francois Ramu
bee60ed906 drivers: flash: stm32 xspi driver size and address of the external NOR
New property of the st,stm32-xspi-nor compatible gives
the external NOR flash in bits.
The property of the st,stm32-xspi compatible gives
the external NOR flash base address

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-30 18:44:24 +02:00
Francois Ramu
a76b784ee2 dts: arm: stm32H5 reg definition for the st,stm32-xspi compatible
The st,stm32-xspi compatible is defining the reg property
with the register address and size at first index
followed by the external memory base address and max allocated
xspi1 is addressing max 256 MBytes from 0x90000000

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-30 18:44:24 +02:00
Francois Ramu
a6d652e158 dts: arm: stm32N6 reg definition for the st,stm32-xspi compatible
The st,stm32-xspi compatible is defining the reg property
with the register address and size at first index
followed by the external memory base address and max allocated
size. For the stm32N6 serie,
xspi1 is addressing max 256 MBytes from 0x90000000
xspi2 is addressing max 256 MBytes from 0x70000000

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-30 18:44:24 +02:00
Francois Ramu
ef2268fea9 dts: bindings: memory controller size of the stm32 xspi psram
This PR adds the size in Bits of the PSRAM  memory
for the st,stm32-xspi-psram compatible

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-30 18:44:24 +02:00
Francois Ramu
ae748d08fa dts: bindings: flash controller size of the stm32 xspi nor
This PR adds the size in Bits of the flash nor memory
for the st,stm32-xspi-nor compatible

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-30 18:44:24 +02:00
Sai Santhosh Malae
8e57cc6f70 drivers: spi: siwx91x: spi_loopback test support
1. Add board config and overlay files
2. Update testcase.yaml

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-04-30 18:44:11 +02:00
Sai Santhosh Malae
c22cf4943b drivers: spi: siwx91x: DTS changes for siwx91x SPI driver
1. Create a YAML file for SPI node
2. Add SPI node in the siwx917.dtsi

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-04-30 18:44:11 +02:00
Sai Santhosh Malae
ab76a345f2 drivers: spi: siwx91x: Add siwx91x SPI primary driver
Implement SPI driver for siwx91x device

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-04-30 18:44:11 +02:00
Sai Santhosh Malae
8542e401a6 drivers: spi: siwx91x: SPI clock initialization for siwx91x
Clock driver changes required for initializing the SPI clock
for the siwx91x driver

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-04-30 18:44:11 +02:00
Jamie McCrae
c6eb665acf tests: lib: devicetree: devices: Add sub-partition check
Adds a sub-partition check to this test

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-30 18:44:06 +02:00
Jamie McCrae
320e654e99 dts: common: nordic: nrf5340: Use sub-paritions for TF-M areas
Uses sub-partitions to allow having a dedicated secure and
non-secure partition area in flash partitions, which also allows
the main application slot to be extended when TF-M is not in use

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-30 18:44:06 +02:00
Jamie McCrae
51cf4157e6 scripts: dts: gen_defines: Add support for fixed-subpartitions
Adds support for generating defines for this binding type

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-30 18:44:06 +02:00
Jamie McCrae
f85d017e61 dts: bindings: mtd: Add fixed-subpartitions binding
Adds a new binding which allows for sub-partitioning defined flash
areas

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-30 18:44:06 +02:00
Bartosz Miller
21f71dfab4 tests: boards: i2c: Add testing with different i2c speeds
Test with all available speeds on the given device.

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-04-30 16:27:43 +02:00
Armando Visconti
a5d3612ef3 modules/hal_st: Align to stmemsc HAL i/f v2.9.1
Align all sensor drivers that are using stmemsc (STdC) HAL i/f
to new APIs of stmemsc v2.9.1.

Requires https://github.com/zephyrproject-rtos/hal_st/pull/25

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-04-30 16:26:53 +02:00
Vinayak Kariappa Chettimada
5b17b5b44f Bluetooth: Controller: Fix adv aux release on insufficient resources
Fix missing adv aux release on insufficient adv data buffers
configured when starting multiple extended advertising sets.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-04-30 16:26:48 +02:00
Emil Gydesen
3d9f2d17ed tests: Bluetooth: ISO: Add validation of broadcast info
Add validation of the info the application can retrieve by
calling bt_iso_chan_get_info.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-30 16:26:39 +02:00
Guillaume Gautier
a5f979315e drivers: flash: stm32 xspi: add memmap support for n6
Add memory-mapped support for STM32N6 XSPI Flash driver.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-04-30 16:26:28 +02:00
Guillaume Gautier
f69fcdf65f drivers: flash: stm32: remove dependeny on XIP for memory map
Remove XIP dependency for enabling memory mapping for Q/O/XSPI NOR Flash.
It is not necessary and is preventing configuring an external Flash in
memmap mode if there is no internal Flash (like on STM32N6)

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-04-30 16:26:28 +02:00
Robert Lubos
bbad01eb91 tests: net: socket: af_packet: Add more tests to verify binding
In case the receiving packet socket is not bound to any specific
interface, or is explicitly bound to "any" interface (at index 0),
it should collect packets from all interfaces. Add test cases which
verify that.

Also, if a packet socket is bound to a specific interface, it should not
receive packets from others. Add a test case to verify that as well.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-30 16:26:16 +02:00
Robert Lubos
6654f78376 tests: net: socket: af_packet: Remove unused param
iface parameter in setup_packet_socket() function was not used, remove
it to avoid confusion.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-30 16:26:16 +02:00
Robert Lubos
cd50608f24 tests: net: sockets: af_packet: Fix recvfrom DGRAM test
The recvfrom test case for DGRAM packet socket specified wrong socket
type, so RAW sockets were tested twice instead. Also, for the DGRAM
variant, the offset was not taken into account for the expected packet
length.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-30 16:26:16 +02:00
Robert Lubos
29a2b5c8c6 net: sockets: packet: Fix default binding order
Default binding should take place before we actually make use of the
local address when registering packet socket "connection".
Also, instead of hard coding the protocol for default binding to
ETH_P_ALL, use the protocol that the socket was created with.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-30 16:26:16 +02:00
Robert Lubos
c8798d017f net: sockets: packet: Make it possible to receive packets when unbound
In order to be able to receive packets on unbound packet sockets (which
should collect packet from all interfaces in such case), it's needed to
register receive callback at the socket layer as soon as the socket is
created.

In additional to that, the default binding for packet sockets need to be
revisited. Packet socket should not be bound to the default interface,
as this way the socket would only be receiving packets from that
particular interface. Instead, leave the interface unspecified in such
case.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-30 16:26:16 +02:00
Robert Lubos
cd0b195b00 net: connection: Make it possible to update local address
Allow to update the local address on a registered connection when
rebinding.

This is needed for packet sockets, as by default packet socket
will be bound to "any" interface (interface index 0), and interface
index is part of the local address registered for packet socket.
In order to be able to explicitly bind to a specific interface later, it
needs to be possible to update the local address registered for the
connection, as we need to update the interface index, which is used
by net_conn_packet_input() for packet filtering.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-30 16:26:16 +02:00
Benjamin Cabé
6c788e139e fatfs: add support for mmc disks when generating FF_VOLUME_STRS
add zephyr,mmc-disk's disk names as they were missing causing fatfs to
be unusable on boards that had otherwise valid DT configuration for
the mmc disks.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-30 16:26:10 +02:00
Benjamin Cabé
f797d0dc26 boards: mm_feather: add missing mmc node
Add missing mmc node to the mm_feather board, and properly
set disk-name for it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-30 16:26:10 +02:00
Lyle Zhu
cd43e03bbe Bluetooth: classic: shell: Support L2CAP channel seg_recv
Add the callback function `seg_recv` if the configuration
`CONFIG_BT_L2CAP_SEG_RECV` is enabled.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-30 14:00:06 +02:00
Lyle Zhu
df1e2264ff Bluetooth: Classic: L2CAP: Fix seg_recv cannot work issue
When the L2CAP channel connection is in none basic mode, the
`seg_recv` cannot work properly if the configuration
`CONFIG_BT_L2CAP_SEG_RECV` is enabled. And the L2CAP channel
connection will be broken incorrectly.

Check whether the received data len exceeds the SDU length if the
`SAR` is `BT_L2CAP_CONTROL_SAR_END` or `BT_L2CAP_CONTROL_SAR_CONTI`.

And check whether the SDU length is valid if the `SAR` is
`BT_L2CAP_CONTROL_SAR_UNSEG` or `BT_L2CAP_CONTROL_SAR_START`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-30 14:00:06 +02:00
Mark Wang
bc47bce39b bluetooth: handsfree: improve the cod print string
cod is three bytes, print it as 6 hex values.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-04-30 13:59:58 +02:00
Nazar Palamar
085b216e75 drivers: wifi: AIROC: update connect\scan api
- Updated airoc_mgmt_connect to be able use security provided
  by user (params->security). If it is not passed, we will perform
  scan ssid to detect secure type.

- Fix convert_whd_security_to_zephyr() with correct corresponding
  whd_security_t to zephyr security type.

Signed-off-by: Nazar Palamar <nazar.palamar@infineon.com>
2025-04-30 13:59:50 +02:00
Nazar Palamar
c9ffcac8a7 drivers: wifi: AIROC: add support of new devices
- add support Wi-Fi Host Driver (WHD) 4.2.1
- add Country configuration from Kconfig

Support new devices:
 -- CYW43022
 -- CYW55500 (WIFI6)
 -- CYW55572 (WIFI6)

Support new modules:
 -- CYW43022CUB
 -- CYW955573M2IPA1_SM
 -- CYW955513SDM2WLIPA_SM
 -- CYW4373_MURATA_2BC
 -- CYW4373_MURATA_2AE
 -- CYW43439_STERLING_LWBPLUS

Signed-off-by: Nazar Palamar <nazar.palamar@infineon.com>
2025-04-30 13:59:50 +02:00
Marek Matej
2920b7ac5c snippets: remove unrelated files
Remove files added by accident.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-04-30 13:59:39 +02:00
Cong Nguyen Huu
1596cc5667 drivers: flash-nxp-s32-qspi: ignore flash operations with zero size
The current shim driver for flash-nxp-s32-qspi returns invalid error
when handling write, erase operations with zero size.
This issue causes the failure of the tests/subsys/settings/fcb/.
Updated to ignore the flash operations with zero size instead of.

Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
2025-04-30 11:57:05 +02:00
John Bason Mitchell
28c2521926 drivers: adc: disabling timer after DMA eror
The ADC timer should be disabled however the read is finished.

Signed-off-by: John Bason Mitchell <johnbasonmitchell@gmail.com>
2025-04-30 10:55:17 +01:00
Francois Ramu
8501c46772 boards: st: stm32 add the SD disk name to boards with sdmmc node
Add a disk name to the SDMMC node, as done for all other SD card
compatibles in tree.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-30 10:55:04 +01:00
Francois Ramu
f9e5eeb053 dts: bindings: mmc stm32 sdmmc has a mandatory disk-name
This PR makes the property disk-name required
for the st,stm32-sdmmc compatible

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-30 10:55:04 +01:00
Emil Gydesen
24037ef20a Bluetooth: CAP: Broadcast: Add missing ISO test parameters
The cap_initiator_broadcast_to_bap_broadcast_param function
did not properly relay the ISO test parameters from the CAP
parameters to the BAP parameters.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-30 10:54:56 +01:00
Vixay Phimmasane
e55a505989 drivers: rtc: check PORF flag before clearing alarm flags at init
alarm flags only need to be cleared if PORF flag is set; otherwise,
the RTC is already running and alarm flags must not be cleared

Signed-off-by: Vixay Phimmasane <visuphi@gmail.com>
2025-04-30 09:48:42 +02:00
Ha Duong Quang
2f5a05cbb7 tests: adc: adc_api: fix main stack overflow
Increase the value of CONFIG_MAIN_STACK_SIZE for the s32z270 board to
avoid stack overflow during the adc_api test, and add new .conf files
for each board.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2025-04-30 09:48:32 +02:00
Troels Nilsson
9fbfa1f626 Bluetooth: Controller: Only validate CIS SDU interval for BN > 0
Some in-the-wild devices use SDU interval of 0 when BN == 0; This
is not allowed by BT Core Spec v6.0, but is not specifically
mentioned in v5.4 and earlier. To allow connecting a CIS to these
devices, relax the check on SDU interval

Note: LL/CIS/PER/BI-07-C only checks rejection of invalid SDU interval
with BN > 0, so it still passes with this change

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-04-30 09:48:24 +02:00
Luis Ubieda
996e65d526 tests: rtio: Add testcase to validate OP_DELAY
Providing a set of SQEs with varying delays in different orders. Test
validates each delay is completed at the right amount (and the CQEs are
received in the right order).

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-30 09:48:16 +02:00
Luis Ubieda
3d4bd5de86 rtio: Introduce OP_DELAY as a valid SQE operation
SQE items with this OP will take the specified amount of time
(asynchronously) before completing. This allows to serve as an
asynchronous delay in between SQE items (e.g: A sensor measurement
requested, which requires 50-ms before having the result available).

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-30 09:48:16 +02:00
Shrek Wang
adaec1c7ed net: tcp: start keepalive timer at the right time
keep_alive_timer_restart() only works in ESTABLISHED state. In
tcp_in() SYN_SENT and SYN_RECEIVED state, it won't work by calling
this function. So remove the call in that 2 states while adding it
in the bottom after changing the conn->state to ESTABLISHED.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-04-30 07:52:14 +02:00
Lyle Zhu
e1d9db8b6e Bluetooth: Classic: L2CAP: Handle shorter data length of the request
The response L2CAP_COMMAND_REJECT_RSP(BT_L2CAP_REJ_NOT_UNDERSTOOD)
should be replied if the received L2CAP command is a invalid L2CAP
signaling command packets with extra data in the Information Payload.

Send L2CAP_COMMAND_REJECT_RSP(BT_L2CAP_REJ_NOT_UNDERSTOOD) if it a
small L2CAP signaling PDU or it has short length.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-30 07:52:03 +02:00
Camille BAUD
7d3f5f09ab tests: display: Add test for st75256
adds the test for st75256

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-04-30 07:51:57 +02:00
Camille BAUD
772b9afc97 drivers: display: Introduce ST75256
Introduces a driver for ST75256 Display Controller that
supports mono and greyscale but not i2c mode.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-04-30 07:51:57 +02:00
Titan Chen
2ede51b3e9 drivers: gpio: rts5912 support new features
add support new features for get/set configuration:
1. slew rate
2. output driving current
3. schmitt trigger
4. multi-function select

testing by blinky sample.

20250326: remove check interrupt mask to avoid interrupt disable.

Signed-off-by: Titan Chen <titan.chen@realtek.com>
2025-04-30 07:51:46 +02:00
Arkadiusz Cholewinski
515c98139f tests: kernel/sleep: exclude npcx platforms from the test
According the specification, in extreme cases, the deviation of the APB
clock and LFCLK clock can reach up to +/-1% (+/- 10ms).
Therefore, exclude npcx platforms from the test because it required 1ms
accuracy.

fixes: #66185

Signed-off-by: Arkadiusz Cholewinski <arkadiuszx.cholewinski@intel.com>
2025-04-29 20:10:14 -04:00
Chris Friedt
4e75657048 drivers: hwinfo: ensure z_vrfy_hwinfo_get_device_eui64() uses int
The z_vrfy function for this syscall

```
__syscall int hwinfo_get_device_eui64(uint8_t *buffer);
```

in `drivers/hwinfo/hwinfo_handlers.c`, used an `ssize_t` rather than an
`int` which makes it inconsistent with the prototype declared in
`drivers/hwinfo.h`.

Use `int` instead of `ssize_t`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-29 20:09:46 -04:00
Ravi Dondaputi
eb9d98a1af modules: hostap: Increase supplicant stack size
SoftAP operation needs around 5700 bytes of stack. With a
buffer of 100 bytes, set the supplicant stack size to 5800.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-04-29 20:08:57 -04:00
Gerson Fernando Budke
aa9d327abf drivers: serial: bouffalolab: Add support to interrupts
Enable interrupt support in the driver.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-04-29 20:08:45 -04:00
Jordan Yates
b2b1865184 doc: networking: zperf: document custom data upload
Note the ability to upload custom data in the documentation, and add
it to the release notes.

Also include the new `CONFIG_ZPERF_SESSION_PER_THREAD` option.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-29 20:08:32 -04:00
Jordan Yates
7087eb49ef net: zperf: increase default max packet size
Slightly increase the default maximum size for zperf uploads to support
1kB of data payload together with the 40 bytes UDP client header.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-29 20:08:32 -04:00
Jordan Yates
d6cb7f4eea net: zperf: custom data upload support
Add support for uploading custom data, instead of a static packet of
'z'. This can be used for more accurate profiling of uplink throughput
for a given application. For example, reading data from flash, or
application level encryption.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-29 20:08:32 -04:00
Jordan Yates
bbaf4a7947 net: zperf: specify Unix time offset
The timestamp in the UDP header is expected to be a Unix timestamp, not
an application uptime. Add the option to specify the Unix time at
function entry so that the reported timestamps are accurate.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-29 20:08:32 -04:00
Jordan Yates
2f091ad800 net: zperf: fix minimum UDP packet size
The minimum packet size is the combination of the datagram and client
headers, not just the datagram header.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-29 20:08:32 -04:00
TOKITA Hiroshi
4b563934a6 west: runners: openocd: Add option to start RTT server during debug
Add `--rtt-server` option to start RTT server when the OpenOCD
launched from `debug`, `debugserver`, and `attach` commands.

This option starts the RTT server and opens a port,
but RTT logging must be done externally.
That is, you must connect to port 5555 using `telnet` or `nc`
in another terminal to view the RTT log.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-29 20:08:20 -04:00
Felix Moessbauer
8cf75fbc9b dts: lilygo/ttgo_tbeam: add axp2101 charger node
The board provides an axp2101 chip with a builtin charger. We add the
corresponding charger node with values taken from the official XPowers
library example. This makes the board compatible with the
drivers/charger example.

[1] a7d06b98c1/examples/AXP2101_Charge_Example/AXP2101_Charge_Example.ino

Signed-off-by: Felix Moessbauer <felix.moessbauer@gmail.com>
2025-04-29 20:08:04 -04:00
Abderrahmane JARMOUNI
6b4984a366 tests: drivers: uart_async_api: fix alignment size
We fix 2 issues:
First issue: __aligned attribute is in bytes
second issue: we should align depending on the platform

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-04-29 20:07:46 -04:00
Adib Taraben
e92fb10971 drivers: hwinfo: add nxp mcxn reset_cause implementation
Implementation is specific to the NXP MCXN series.
Code mostly copied from hwinfo_mcux_rcm driver.

Signed-off-by: Adib Taraben <theadib@gmail.com>
2025-04-29 20:07:25 -04:00
Fin Maaß
94b00090f5 dts: bindings: ethernet:phy: move into own dir
move ethernet phy bindings into their own directory.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-29 20:07:02 -04:00
Adrian Gielniewski
8661c3caea net: openthread: radio: fix otPlatRadioClearSrcMatch* return values
Fix the return values of `otPlatRadioClearSrcMatchShortEntry` and
`otPlatRadioClearSrcMatchExtEntry` to match the OpenThread API.

Signed-off-by: Adrian Gielniewski <adrian.gielniewski@nordicsemi.no>
2025-04-29 19:08:38 +02:00
Jordan Yates
be919675f9 sensor: npm1300_charger: uA resolution current
Update the conversion functions for the charge/discharge current to
be uA resolution.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-29 19:07:04 +02:00
Jordan Yates
4748fb37c3 sensor: npm1300_charger: correct current direction
Update the direction of the measured current to match that expected by
the API and existing users, positive = charging and negative =
discharging.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-29 19:07:04 +02:00
Jordan Yates
55cf62dd47 sensor: document "direction" of gauge current
Document the expected meaning of positive and negative currents for the
fuel gauge channels. The definition is chosen to match that of the
fuel gauge API.

This also matches the convention expected by `shell_battery.c`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-29 19:07:04 +02:00
Jordan Yates
aacbd6607c sensor: npm1300_charger: use logf not log
Both the input and output parameters are floats, not doubles, so use
the floating point logarithm variant.

Correct the source of the equations for the latest datasheet versions
at the same time.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-29 19:07:04 +02:00
Jordan Yates
5fccbcb95e sensor: npm1300_charger: use common conversion funcs
Use the standard sensor value conversion helpers for constructing
`struct sensor_value` outputs.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-29 19:07:04 +02:00
Fabio Baltieri
370e0882cb ci: workflows: check for manifest dnm in the manifest workflow
The current CI setup sets the manifest DNM label in a workflow and
checks it in a different workflow. The one performing the check is
configured to rerun on label changes but it's been reported few times
that the rerun logic does not seem to always run effectively and there's
been cases where the manifest has been fixed but the label has not been
removed by the automation, resulting in a stale PR.

Since the manifest has its own dedicated label, fix this race condition
by checking for that label specifically in the manifest workflow rather
than in a separate one, this means that the check is always performed
after the script that sets the label.

It also means that on manifest changes the manifest step itself will
fail rather than the PR metadata check one.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-04-29 19:06:55 +02:00
Hake Huang
79edc36759 samples: sensor: accel_trig fix build failure
fix build failure on rddrone_fmuk66

fixes: #86508

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-04-29 19:06:42 +02:00
Bastien JAUNY
d5365ba513 drivers: input: vs1838b: Add support for VS1838B
The VS1838B is one of the most found infrared receiver
found in electronic kits and is easy to setup with only
a single GPIO used for signal transmission (apart from
VCC and GND).
This new driver let applications use the VS1838B as an
input with events relayed as 0x0000<address><command>.

Only the NEC protocol is supported in this version but
more can be added later.
Link: https://github-wiki-see.page/m/CoreELEC/remotes/wiki/08.-NEC-IR-Protocol-Datasheet

This has been tested using the input_dump sample.

Signed-off-by: Bastien JAUNY <bastien.jauny@smile.fr>
2025-04-29 19:06:37 +02:00
Daniel Leung
4655ae3a27 tests: userspace/mem_protect: more CONFIG_SYS_HEAP_ALLOC_LOOPS
Due to the constant alloc/free cycles during the stress test,
it is possible that the heap can become fragmented enough to
prevent successful allocation, and thus failing the test.
So we change the CONFIG_SYS_HEAP_ALLOC_LOOPS to a higher value
so the allocation code will try harder to find a space.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-29 19:04:23 +02:00
Daniel Leung
6ccf0eb7ad tests: mem_protect/syscalls: more explicit error messages
There are lots of copy and paste error message which does not
really tell you which part fails. So make those messages more
explcitly on where it is emitting the error message.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-29 19:04:23 +02:00
Daniel Leung
f08c9fe2c2 tests: mem_protect/syscalls: test k_yield while in syscalls
The syscall stress test relies on timeslicing to switch between
threads, which utilizes the interrupt handling path to perform
context switching. It is also possible for kernel to switch
threads due to, for example, taking a mutex. This adds a bit of
code to the syscalls test to simulate this by yielding while
inside syscall handlers. This is to cover more scenarios so we
can catch issues earlier.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-29 19:04:23 +02:00
Daniel Leung
9ade47bbef tests: mem_protect/syscall: join stress threads after abort
Add a loop to join the stress threads after calling abort.
This is to make sure all stress threads have already stopped
before moving on. Simply for test hygiene.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-29 19:04:23 +02:00
Daniel Leung
2b13c780cb tests: mem_protect/syscalls: move torture test to another group
This moves the syscall torture test into another test group or
suite so that we run the individual syscall tests first before
the torture test. If individual test fails, it is easier to see
the error. Especially under SMP where multiple CPUs can report
the same error, cluttering the output.

Also rename the test to syscall_switch_stress to better describe
its purpose.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-29 19:04:23 +02:00
Daniel Leung
3ca962eb37 tests: mem_protect/syscalls: multiple buffers for stress test
This modifies string_copy() to have an addition ID as function
argument so that it can copy into different buffers during
the multi-threaded stress test, instead of all threads writing
into the same buffer. This is to prevent a situation where
one thread writes incorrect data but being overwritten by
another thread with correct data, thus making the following
strcmp() passing for both threads. Logically this should never
happen since the same function is being called which should
give same result, but it is simply to test for weird
situations.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-29 19:04:23 +02:00
Adrian Friedli
89f8f5bb07 net: lib: coap: fix division by zero
Prevent the modulo operation causing a division by zero error by falling
back to the minimal ACK timeout value if the random factor is 1.0. Also
fall back to the same value if the random factor is erroneously smaller
than 1.0. Additionally make the upper bound of the random range
reachable.

Signed-off-by: Adrian Friedli <adrian.friedli@husqvarnagroup.com>
2025-04-29 19:04:16 +02:00
Francois Ramu
0f465284aa drivers: spi: stm32 ll spi driver flush dcache function
This PR is for using the dcache flush range function
from the stm32 Cortex-M33 peripherals

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-29 17:55:01 +02:00
Carles Cufi
7c15b08a7e lib: hash: murmur3: Account for unaligned 32-bit access
The code was casting a byte array to 32-bit words without accounting for
alignment. On some platforms (e.g. Arm Cortex-M with multiple load/store
instructions) this will fault. Fix it by using the UNALIGED_GET() macro
whenever the array is passed unaligned.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-04-29 17:54:51 +02:00
Grzegorz Swiderski
d3704516b7 boards: nrf54h20dk: Add common files for iron board variants
Define `ipc_conf_iron.dtsi` and `memory_map_iron.dtsi`. In the future,
they will be merged with the base `ipc_conf.dtsi` and `memory_map.dtsi`
respectively. For now, they are used to replace a few devicetree nodes
when building for `nrf54h20dk/nrf54h20/*/iron` board targets.

Additional changes are included:

  * The IPC configuration includes new "nordic,ironside-call" nodes.
  * The memory map includes an updated RAM20 layout. Its subregions are
    placed under the `/reserved-memory` node like before.
  * The memory map also includes an updated MRAM layout. Partitions are
    now placed under a plain "fixed-partitions" node. MCUboot-specific
    node labels are applied in `cpuapp.dts`.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-04-29 17:54:41 +02:00
Grzegorz Swiderski
47df9ec981 drivers: firmware: Add support for IRONside calls
IRONside calls are remote procedure calls which comprise the runtime
interface of Nordic IRONside SE. They are realized using a simple IPC
mechanism.

A local domain (client) issues requests to the server by exchanging data
in shared memory, which is divided into evenly sized buffers. The client
selects a buffer, writes a request into it, and sends it to the server.
The server processes that request and writes a response into the same
buffer before returning it to the client.

This patch adds the initial client-side implementation on top of MBOX.
It features cache management and a blocking alloc/dispatch/release API
for synchronous, zero-copy transfers.

A new devicetree binding is added to support this implementation. It is
patterned after the `zephyr,ipc-*` bindings, where each node associates
a pair of mailboxes and a shared memory region.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-04-29 17:54:41 +02:00
Peter Wang
829c796e04 boards: frdm_mcxa166, frdm_mcxa276: add dma support
1. enable dma support

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-04-29 17:54:30 +02:00
Peter Wang
de7c508e58 boards: frdm_mcxa166, frdm_mcxa276: add lptmr and ctimer support
1. enable lptmr and ctimer support
2. verified tests/drivers/count/counter_basic_api

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-04-29 17:54:30 +02:00
Peter Wang
99441374d9 boards: frdm_mcxa166, frdm_mcxa276: fix SYS_CLOCK_HW_CYCLES_PER_SEC
1. mcxa serial SYS_CLOCK_HW_CYCLES_PER_SEC default value is 96000000
2. mcxa166,mcxa276 works at 180000000

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-04-29 17:54:30 +02:00
Adrian Friedli
ffdc50c4bf boards: native_sim: add reboot for native_sim
Add a reboot implementation for the native_sim target which restarts
the current executable keeping the command line arguments after closing
all open file descriptors.

Signed-off-by: Adrian Friedli <adrian.friedli@husqvarnagroup.com>
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Co-authored-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-04-29 17:54:26 +02:00
Daniel Nicoletti
b4f940d654 net: ethernet: Fix build without -fpermissive
Fix ethernet_hw_caps initialization in ethernet.h for
strict type checking.

g++-12: include/zephyr/net/ethernet.h:957:38: error: invalid \
 conversion from 'int' to 'ethernet_hw_caps' [-fpermissive]

Signed-off-by: Daniel Nicoletti <dantti12@gmail.com>
2025-04-29 16:51:17 +02:00
Johan Hedberg
fd037c7990 Bluetooth: Kconfig: Remove outdated references to bt_recv_prio()
The bt_recv() and bt_recv_prio() APIs don't exist anymore, so remove any
references to them from the Kconfig help texts.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-04-29 16:51:04 +02:00
Fabian Kainka
d02503ad7b drivers: gnss: gnss_emul missing month_day data
Just a minor fix to the gnss_emul.c to fix a the missing
month_day data. Also minor spelling fixes in the test code.

Signed-off-by: Fabian Kainka <f.kainka@gmx.de>
2025-04-29 16:49:29 +02:00
Emil Gydesen
5a25d23222 include: arch: ffs: include toolchain.h
Modify the include of toolchain/common.h to toolchain.h
The reason why we should/cannot include toolchain/common.h
is that it has an #error if included directly, and it
requires including it via toolchain.h instead.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-29 16:49:20 +02:00
Olivier Lesage
f4aa29d849 bluetooth: host: Fix param_len for LE CS Test command
The parameter length for this command was missing the additional
length from the arrayed parameters.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2025-04-29 16:49:10 +02:00
Marek Matej
305151030e doc,boards: mark deprecated boards
Add esp32_devkitc_wroom and esp32_devkitc_wrover on deprecated list.
Make the note on the merge in the migration guide for Zephyr v4.2.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-04-29 16:48:55 +02:00
Marek Matej
780bafab6a tests, samples: update esp32_devkitc board records
Update the tests using the esp32_devkitc_xxx entries.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-04-29 16:48:55 +02:00
Marek Matej
b8aa506c83 boards: esp32: make only one esp32_devkitc
Rename the esp32_devikic_wrover to esp32_devkitc.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-04-29 16:48:55 +02:00
Marek Matej
6745bd3069 boards: esp32: remove redundant board
Remove the esp32_devkitc_wroom board as near identical with wrover
variant. The differences of the two boards are covered by the user config.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-04-29 16:48:55 +02:00
cyliang tw
0400c8828f tests: drivers: i2c: i2c_target_api: support numaker_m55m1
Add support for Nuvoton numaker board numaker_m55m1.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-04-29 16:48:19 +02:00
cyliang tw
f6f61100c7 dts: arm: nuvoton: add i2c nodes of numaker m55m1x
Update m55m1x.dtsi, to add i2c nodes for i2c driver support.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-04-29 16:48:19 +02:00
Tim Lin
f91943ab6d test: drivers/i2c: ite: it515xx_evb: Add I2C target test
Add I2C target node for it515xx_evb test.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-29 16:48:06 +02:00
Tim Lin
f7d381fef1 drivers/i2c: Add I2C driver of it51xxx
Implement the functions of I2C host and target.
I2CM: supports nine hosts and each one able located at I2C interface
      0~12.
      supports two 32 bytes dedicated FIFO mode for read and write.
I2CS: supports three targets and each one able located at I2C
      interface 0~8.
      supports 16 bytes dedicated FIFO mode that only supports write or
      read mode and the maximum buffer size is 256 bytes.
      support non-FIFO write to shared FIFO read mode. The maximum
      shared FIFO size for read is 256 bytes.
The APIs test include: i2c_write(), i2c_read(), i2c_burst_read(),
                       i2c_burst_write(), i2c_write_read()

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-29 16:48:06 +02:00
Jeppe Odgaard
634ba6955c drivers: led: add led_dac
Add LED driver support for DAC based LED drivers.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-04-29 16:47:36 +02:00
Bjarki Arge Andreasen
4bd1de02bb drivers: i2c: nrfx_twi_rtio: support RTIO_OP_AWAIT
Add support for RTIO_OP_AWAIT.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-04-29 16:47:26 +02:00
Bjarki Arge Andreasen
61e838b246 drivers: i2c: nrfx_twim_rtio: support RTIO_OP_AWAIT
Add support for RTIO_OP_AWAIT.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-04-29 16:47:26 +02:00
Bjarki Arge Andreasen
ac1634b585 tests: rtio: rtio_api: add await sqe test case
Add test case for RTIO_OP_AWAIT SQE.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-04-29 16:47:26 +02:00
Bjarki Arge Andreasen
9a514ae2dd rtio: introduce await operation
Introduce await operation which simply blocks execution until the
SQE is signaled using the new API rtio_sqe_signal(). This is useful
for locking the bus for synchronous operations, especially those
requiring precise timing. For example, performing a transaction
within a tiny and exact time window.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-04-29 16:47:26 +02:00
Benjamin Cabé
38ad2a5894 doc: shields: nrf7002xx: fix section headers hierarchy
Fixed the headings hierarchy as there were multiple `###` headings when
only one should be used as the document's title.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-29 13:01:15 +02:00
Sebastian Głąb
687f4ce244 tests: drivers: audio: dmic_api: Enable coverage calculation
When test is run with enabled coverage, additional RAM is required
to store coverage data.
Digital Microphone test is reserving most of the available RAM
to store audio samples. Thus, test fails to build with coverage
enabled due to RAM overflow.

Decrease size of the audio buffer when coverage is enabled.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-29 13:01:07 +02:00
Jukka Rissanen
259d41f1e0 net: mgmt: Use layer codes defined in net_mgmt.h
Instead of hard coding some random value to layer code, use the
code that is registered in net_mgmt.h
This way it is easier to keep track of used layer codes in the
future, and we also allow out-of-tree components a way to avoid
allocating same layer code to in-tree-source code.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-29 13:01:01 +02:00
Jukka Rissanen
702776bd1f net: mgmt: Remove the _ from symbols
The _ is a reserved character in front of the symbols so remove
it from network management event macros. The remaining string
without the _ will identify the network API anyway so having
underscore there is not needed.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-29 13:01:01 +02:00
Jukka Rissanen
26afcb602f net: mgmt: Central place for allocating layer specific codes
Instead of littering the source tree with hard to track
layer code definitions, have a central place where to register
the layer codes.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-29 13:01:01 +02:00
Swift Tian
92fa83fc47 soc: ambiq: add common cache handling for apollo5x soc
The buf_in_nocache function is to be used by various device drivers
to check if buffer is in noncacheable region.
The cacheable DMA buffer shall be put into section .ambiq_dma_buff
due to certain restrictions of the SoC.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-04-29 13:00:42 +02:00
Johan Hedberg
5d6d876567 Bluetooth: hci_raw: Fix misleading documentation for bt_send()
The documentation for the HCI raw interface was incorrectly talking about
the need to define buffer pools, when in fact the hci_raw module provides
the necessary API to perform buffer allocation.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-04-29 13:00:33 +02:00
Johan Hedberg
bcd15caf65 doc: migration-guide-4.2: Add note about Bluetooth HCI changes
Mention the changes that have happened to the Bluetooth HCI driver
interface regarding packet type encoding.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-04-29 13:00:33 +02:00
Johan Hedberg
f85d63a6cc Bluetooth: Remove USB H4 mode support
This non-standard feature never had any proper host side implementation
(e.g. it was never upstreamed to BlueZ), and since it comes with notable
maintenance overhead it's fair to just remove it.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-04-29 13:00:33 +02:00
Johan Hedberg
6a24e6d152 Bluetooth: tests: Update to use new H:4 buffer encoding
Update the Bluetooth tests to assume the new H:4 encoding for data that's
passing between HCI drivers and their users (normally the host stack).

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-04-29 13:00:33 +02:00
Johan Hedberg
6113230ce3 Bluetooth: drivers: Update to use new H:4 buffer encoding
Update all HCI drivers to use the new H:4 encoding for buffers passing
to/from drivers.

One behavioral change that's done in favor of simplicity, is that where
there's previously been switch statements that could return an error for
unsupported packet types now simply pass any received packet unchanged to
lower layers of the controller (or the HCI transport). Handling this is
now the responsibility of the lower layers, however in practice hitting
such scenarios means that there's a mismatch between configured host and
controller features.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-04-29 13:00:33 +02:00
Johan Hedberg
26d97164be Bluetooth: HCI: Use H:4 encoding for buffers
Encode the packet type as a H:4 payload prefix for buffers passing to &
from HCI drivers. The existing bt_buf_set/get_type functions are
deprecated, but kept compatible with the change, except that they can only
be called once, since they modify the buffer payload.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-04-29 13:00:33 +02:00
Henrik Brix Andersen
9baa321b4b boards: others: neorv32: enable PWM controller
Enable the NEORV32 PWM controller in both the MinimalBoot and UP5Kdemo
board variants.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-04-29 13:00:17 +02:00
Henrik Brix Andersen
bbfa777e92 tests: boards: neorv32: build_all: enable PWM controller
Enable the NEORV32 PWM controller in the build_all test.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-04-29 13:00:17 +02:00
Henrik Brix Andersen
1b203bdb77 dts: riscv: neorv32: add PWM controller devicetree node
Add devicetree node for the NEORV32 PWM controller.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-04-29 13:00:17 +02:00
Henrik Brix Andersen
d8780274b5 drivers: pwm: add driver for the NEORV32 PWM controller
Add driver for the NEORV32 PWM controller.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-04-29 13:00:17 +02:00
Henrik Brix Andersen
87e38afff0 dts: bindings: pwm: add binding for the NEORV32 PWM controller
Add devicetree binding for the NEORV32 PWM controller.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-04-29 13:00:17 +02:00
Henrik Brix Andersen
02af629ff9 soc: neorv32: bump supported version to v1.11.3
Bump the supported NEORV32 SoC version to v1.11.3 (needed for Zephyr PWM
support).

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-04-29 13:00:17 +02:00
Emil Gydesen
54df371740 Bluetooth: TBS: Add support for long read with dirty bit
The TBS spec states that if a value is changed during a
long read procedure, then the server shall reject
read requests with offset != 0 with a specific TBS GATT
error until the value has been read from the beginning again
(i.e. with offset = 0).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-29 13:00:07 +02:00
Declan Snyder
7962eaeca6 dts: Move vendor-specific dtsi to dedicated folder
Move all the vendor-specific dtsi files that were in dts/common to a
new folder under dts/ designated for vendor-specific files,
since they are not common at all, except for one vendor.

Change MAINTAINERS.yml to reflect the moving of the files.

Update migration guide for this change.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-29 13:00:03 +02:00
Jiawei Yang
8b3eb368c6 Bluetooth: RFCOMM: Add RPN command sending support
Add support for Remote Port Negotiation (RPN) commands in the RFCOMM.
This allows applications to configure the serial port parameters
over RFCOMM connections, such as baud rate, data bits, stop bits, parity
and flow control.

Changes include:
- Add enumerations for RPN parameters (baud rate, data bits, stop bits,
  parity)
- Add a public API function bt_rfcomm_send_rpn_cmd() to send RPN
  commands
- Add shell command to test RPN with default parameters

This functionality is required by certain Bluetooth profiles that use
RFCOMM and need to configure serial port parameters.

Signed-off-by: Jiawei Yang <jiawei.yang_1@nxp.com>
2025-04-29 08:17:49 +01:00
The Nguyen
6126aa1d5c drivers: udc: renesas: enable high-speed USB support
Select UDC_DRIVER_HAS_HIGH_SPEED_SUPPORT to enable high speed
Renesas RA UDC device

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-04-29 08:17:38 +01:00
Lyle Zhu
597d76ce7d Bluetooth: Classic: HFP_HF: Fix out of bounds issue
Check whether the conn index is out of bounds.

CID 520290

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-29 08:17:28 +01:00
Lyle Zhu
be11f6fb0b Bluetooth: Classic: HFP_AG: Fix out of bounds issue
Check whether the conn index is out of bounds.

CID 520297
CID 520296

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-29 08:17:28 +01:00
Tom Chang
eeb3a55118 dts: arm: npcx: add device node for ram lock
This commit adds a RAM lock node for both NPCX9 and NPCX4. Then, the
user can use this node to configure the RAM lock settings.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-04-29 08:17:17 +01:00
Lyle Zhu
a1dce20e04 Bluetooth: Classic: L2CAP: Make TxWindow size on both sides the same
In retransmission mode and flow control mode, the TxWindow size should
be same on both sides.

When one side is updated, also update the other side.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-29 08:17:06 +01:00
Jilay Pandya
a371f0c516 drivers: stepper: tmc_spi: remove print_status_byte
print_status_byte is specific to tmc50xx and hence shoud not
be placeed in common tmc_spi.c which is supposed to be reused
by a variety of drivers

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-04-29 08:16:57 +01:00
Abhinav Kulkarni
bbeb01d325 boards: nxp: mimxrt1060_evk: Added support for IW612 and IW416 SoCs
- Added separate overlay conf files for wifi IW416 and IW612 SoCs.
- Added overlay debug conf file for nxp wifi needed to enable debug logs.
- Added additional configurations for module's region selection.

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2025-04-29 08:16:46 +01:00
Emil Gydesen
4d848ebdb1 tests: Bluetooth: Tester: Fix synced typos
Fixed typos syned -> synced and syced -> synced.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-29 02:42:32 +02:00
Derek Snell
faceffbb97 samples: drivers: uart: async_api: exclude some platforms with LPUART
NXP platforms with the LPUART require DMA for the async feature.
Exclude platforms without DMA.  Also exclude platforms with DCACHE
since this sample does not place the UART buffers in non-cacheable
memory.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-04-29 02:42:19 +02:00
Daniel Leung
92ebb2eb69 kernel: remove kernel/internal/smp.h
There is no need for kernel/internal/smp.h as SOF does not call
z_sched_ipi(). Actually... git log over there has no mention of
z_sched_ipi() anywhere, just arch_sched_ipi().

And include <ksched.h> for source using z_sched_ipi() since
they are using scheduling functions, and would be the correct
file to include.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-29 02:42:09 +02:00
Robert Hancock
3385861753 soc: xlnx: zynqmp: Add sys_arch_reboot implementation
This platform was previously using a default sys_arch_reboot
implementation which did nothing. Add an implementation which uses the
CRL_APB_RESET_CTRL register to initiate a soft reset (SRST) of the
device.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-04-29 02:42:00 +02:00
Benjamin Cabé
6e27d38a4d doc: _scripts: simplify vendor determination in board catalog generation
Use the board's vendor from board.yml as the source of truth.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-29 02:41:53 +02:00
Benjamin Cabé
e60711aa0a boards: align vendor entry in board.yml files
Added missing "vendor" entries and fixed incorrect ones for
multiple boards.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-29 02:41:53 +02:00
Benjamin Cabé
01a0c24e17 dts: vendor-prefixes: change description for zephyr entry
Use a better "vendor" name for "zephyr"

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-29 02:41:53 +02:00
Nirav Agrawal
bef5abd293 boards: shields: add nxp_m2_wifi_bt shield
- Added new shield to add support for WIFI and BT interface.
- Added board overlay for MIMXRT1060EVKC.
- Removed mimxrt1062 overlay from shell example to avoid conflicts.
- Added seperate shield overlay for supported M.2 module to enable
 BT or WIFI or Both.
- Added default kconfigs for each BT and WIFI which enables supported
 modules and SoC as part of enabled shield through build param.
- Added shield document.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-04-28 12:57:54 -05:00
Nirav Agrawal
49e96fb885 drivers: bluetooth: hci: add IW416 BT Controller Support
Added IW416 SoC support to enable Bluetooth HCI driver perform
firmware load, and works with blueooth HCI interface.

Removed cmake file from bt_controller/, added support in hal_nxp
module to fetch firmware blobs for iW416/nw612 BT Only FW.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-04-28 12:57:54 -05:00
Nirav Agrawal
4509d14fb5 west: update dependent hal_nxp PR
- Current PR is dependent on nxp_hal PR, so updating
  manifest.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-04-28 12:57:54 -05:00
Paul Alvin
87b664e3a2 tests: subsys: sd: Add board overlays to support testcase
Add SD/EMMC overlay files to support testcases for Versal NET. This
overlays are used to select the device to be tested.

Signed-off-by: Paul Alvin <alvin.paulp@amd.com>
2025-04-28 12:56:50 -05:00
Paul Alvin
ec23317813 tests: sd: mmc: Add filter for sdhc0 alias
Test expect sdhc0 alias to be defined.

Signed-off-by: Paul Alvin <alvin.paulp@amd.com>
2025-04-28 12:56:50 -05:00
Paul Alvin
d85aff2575 boards: amd: Enable SDHC DT nodes
Enable both sdhci0 and sdhci1 DT node. IP is tested on HW for Versal
NET.

Signed-off-by: Paul Alvin <alvin.paulp@amd.com>
2025-04-28 12:56:50 -05:00
Paul Alvin
bf7e5687c2 dts: Add device tree support for SDHC
Add sdhci0(SD) and sdhci1(EMMC) bus node with disk support to DT for
Versal NET.

Signed-off-by: Paul Alvin <alvin.paulp@amd.com>
2025-04-28 12:56:50 -05:00
Paul Alvin
327c78ec0a drivers: sdhc: Add driver support for xlnx SDHC
Add driver support for xlnx SD/EMMC host controller. The driver
currently support SD host controller version 3.0 and EMMC host
controller version 5.1. This driver functions with the SDHC subsystem to
perform operations on device.

Driver support both interrupt and polled mode data transfer. Uses ADMA2
to perform data transfer.

Signed-off-by: Paul Alvin <alvin.paulp@amd.com>
2025-04-28 12:56:50 -05:00
Robin-Charles Guihéneuf
e1c5e3a44d shields: ssd1306: Disable LVGL software screen inversion
On this screen the inversion is managed by hardware.

Signed-off-by: Robin-Charles Guihéneuf <robin-charles@hotmail.fr>
2025-04-28 12:55:51 -05:00
Robin-Charles Guihéneuf
b0715dd3f2 lvgl: Add config to disable monochrome pixel software inversion
In some cases, pixel inversion is managed by the display hardware
and software inversion is not required.

Signed-off-by: Robin-Charles Guihéneuf <robin-charles@hotmail.fr>
2025-04-28 12:55:51 -05:00
Vladislav Pejic
d7c2605aae samples: sensor: Add adxl372 streaming config
Adds adxl372 streaming configuration to accelerometer samples.

Signed-off-by: Vladislav Pejic <vladislav.pejic@orioninc.com>
2025-04-28 12:55:18 -05:00
Vladislav Pejic
e72e1c1c44 drivers: sensor: adxl372: FIFO mode from DT
Adds support for setting FIFO mode and water-mark from DT.

Signed-off-by: Vladislav Pejic <vladislav.pejic@orioninc.com>
2025-04-28 12:55:18 -05:00
Alexandre Bailon
c1bce30fe5 drivers: ieee802154: cc13xx/26xx: Add support of 802.15.4 ED Scan
This adds support of ED scanning to cc13xx/cc26xx.
This could be required to select the least busy channel
or to found neighboring networks.

Note:
Although the scanning is working, OpenThread still fails
to discover OpenThread networks.

Signed-off-by: Alexandre Bailon <abailon@baylibre.com>
2025-04-28 12:54:59 -05:00
Marek Matej
591bb7ec10 manifest: hal_espressif
Pull latest HAL version with:

* Fix baseband adapters by using equal interrupt levels
* Fix Wi-Fi adapter routines
* Add TWAI support
* Add PCNT support

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-04-28 12:54:21 -05:00
Fabrice DJIATSA
c5ef6b1936 west.yml: update cube package to the latest version
Update hal_stm32 to latest version

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-04-28 12:53:52 -05:00
Mathieu Choplain
abc8cb3bd9 llext: warn when devices aren't exported and extension tries to use them
Kconfig option LLEXT_EXPORT_DEVICES can be enabled to make all device
objects of an image available to LLEXTs, but it is disabled by default.
If an extension tries to import devices when the base image was not built
with this option, the dynamic linking equivalent of the much beloved error
"Undefined symbol __device_dts_ord_XXX" is logged, but this can be quite
cryptic to understand since user may be unaware of LLEXT_EXPORT_DEVICES.

Detect such invalid imports and print a special message that directs users
towards the appropriate Kconfig option, which should reduce the confusion.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-04-28 12:53:26 -05:00
Luis Ubieda
b6e2486ac3 bluetooth: userchan: Guard reads from beyond frame size
Even though through code-inspection there isn't a clear path where the
guard wouldn't act upon the length reaching the limit, this check is
moved up to unconditially validate it on every read.

Fixes #84731.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-28 17:50:56 +01:00
Damian Krolik
1e64c29ac3 drivers: ieee802154: nrf5: support reading EUI64 from UICR on nRF54L
Extend the existing code for reading EUI64 from UICR to
support nRF54L SoC series as well.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2025-04-28 16:41:23 +02:00
Emil Gydesen
68652a6682 Bluetooth: CAP: Broadcast: Add check for memory allocation for create
When creating a broadcast source with
bt_cap_initiator_broadcast_audio_create there was no check if
all broadcast sources were already allocated, which could cause
a NULL pointer dereference.

Add a check, a test and documentation about possibly
error codes of the function.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-28 16:41:06 +02:00
Titouan Christophe
ca1d457e6f boards: st: stm32h7s78_dk: include correct SoC pinctrl dtsi
The STM32H7S78-DK board is equipped with an STM32H7S7L8H6H. According to
the datasheet DS14359 (*), section 8, the trailing `H` in this SoC model
name indicates that it supports hexadeca SPI, in addition to quad and octa
modes that are supported on all variants in this family.

This fixes the issue where some pinctrl nodes are missing, when enabling
support for memories using 16 bit wide SPI transfer interfaces, like the
PSRAM chip on this board.

(*) https://www.st.com/resource/en/datasheet/stm32h7s7l8.pdf

Signed-off-by: Titouan Christophe <moiandme@gmail.com>
2025-04-28 16:40:50 +02:00
Krzysztof Chruściński
216476caaa pm: Fix case when forced state is not set
pm_suspend is returning early if there are no states
available (due to locking or latency policy). However,
if state is forced it should not return but rather enter
forced power state.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-28 16:40:41 +02:00
Robert Lubos
6a672bc5ba samples: net: mqtt_publisher: Enable MQTT 5.0 support
Enable MQTT 5.0 support in the mqtt_publisher sample and make use
of the topic aliasing feature.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-28 16:40:33 +02:00
Sylvio Alves
a831122029 drivers: uart/dma: esp32: revert to PRE_KERNEL_1
printf is failing in hello_world sample due to current
uart driver init level. This reverts back to PRE_KERNEL_1.
As uart depends on GDMA, set it also to same level.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-04-28 16:40:20 +02:00
Mert Ekren
d557fc51bb tests: drivers: gpio: Add MAX32657 boards overlay files
Add MAX32657 boards overlay files to gpio test be supported.

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2025-04-28 16:40:10 +02:00
Sadik Ozer
cb93c201d5 dts: arm: adi: Enable TRNG
Add MAX32657 TRNG device node
Add TRNG in MAX32657 board file

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-04-28 16:40:10 +02:00
Sadik Ozer
84ec336e07 boards: adi: Enable jlink runner for MAX32657
Enable JLink runner for MAX32657

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-04-28 16:40:10 +02:00
Sadik Ozer
9e6ca51b03 boards: Add MAX32657EVKit board
This commit add secure board of MAX32657.
Only GPIO and UART drivers have been enabled.

To build:
- west build -b max32657evkit/max32657 -p

Co-authored-by:: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-04-28 16:40:10 +02:00
Sadik Ozer
f9ce25fd05 soc: Add the MAX32657 SoC
MAX32657 is Cortex-M33 based Analog Devices MCU.
It supports ARM TrustZone security model.
There will be two boards of this MCU Secure and Non-Secure

This commit defines Secure version of peripherals.

Basic feature of MAX32657 device:
- Core is Cortex-M33
- 50MHz IPO clock
- There are 54 interrupt vectors
- 1MB flash & 256 SRAM
- MAX32657 has:
   - 1 x UART
   - 1 x I2C/I3C
   - 1 x SPI
   - 6 x TIMER
   - 1 x RTC
   - 1 x WDT
   - 1 x TRNG

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-04-28 16:40:10 +02:00
Sadik Ozer
57b4e614f5 manifest: Update hal_adi module for MAX32657
Update hal_adi node to get MAX32657 support

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-04-28 16:40:10 +02:00
Sayooj K Karun
74d6b21cd3 samples: tflite-micro: hello_world: round off quantization
Add roundoff to quantization calculation so that precision
is not lost in in edge cases or when quantization error
propagates through model layes.

Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2025-04-28 16:40:02 +02:00
Lyle Zhu
6661952dd4 Bluetooth: Classic: SSP: Fix bonding flag mismatch issue
A bonding issue is found with following conditions,
a. Local is a SSP initiator and it is in non-bondable mode,
b. Peer is in bondable mode,
c. The bonding flag in Authentication_Requirements of local IOCAP is
`No Bonding`,
d. the bonding flag in Authentication_Requirements of peer IOCAP is
`Bonding`.

The bonding information will be exchanged and stored. It is incorrect
behavior.

Fix the issue by reporting a pairing failure and disconnecting the ACL
connection with error `BT_HCI_ERR_AUTH_FAIL`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-28 13:41:25 +01:00
Håvard Reierstad
1e5f8bacfe Bluetooth: Doc: Improve docs in bluetooth.h
Adds improvements to the API docs in bluetooth.h, with the aim of
making the API less ambiguous and more informative.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-04-28 13:41:00 +01:00
Fabrice DJIATSA
3f67e2efd4 samples: drivers: display: update display sample
add stm32u5g9j_dk2 conf file for display app.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-04-28 13:40:52 +01:00
Fabrice DJIATSA
2ce8767a88 boards: st: add support for stm32u5a9j_dk2 board
- add dts for stm32u5a9j_dk
- add board configurations files
- add documentation

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-04-28 13:40:52 +01:00
Fabrice DJIATSA
d851986f59 dts: arm: st: add stm32u5g9 dtsi files
provide support for the STM32U5G9 serie.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-04-28 13:40:52 +01:00
Jamie McCrae
088c8f4df8 Revert "west: fix for context with sysbuild"
This reverts commit 8972146302.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-28 13:41:34 +02:00
Pályi Lőrinc
018963e0c7 samples: net: secure_mqtt: error code to enum
The error code `0x80` is replaced with its
corresponding `mqtt_suback_return_code` enum
value. This will make the code more readable, as
users of this example do not have to look up, what
`0x80` encodes.

Signed-off-by: Pályi Lőrinc <palyilorinc33@gmail.com>
2025-04-28 13:41:17 +02:00
Pieter De Gendt
7b1d748e8b drivers: Wrap device driver APIs using DEVICE_API macro
Put the device APIs in their respective linker sections with the
DEVICE_API wrapper macro.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-04-28 13:41:03 +02:00
Benjamin Cabé
93f432a066 doc: boards: bflb: add .. zephyr:board-supported-runners
Add .. zephyr:board-supported-runners:: directive to document the
supported runners for the BL604E IOT DVK board.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-28 13:40:55 +02:00
Benjamin Cabé
fc359ee95a boards: bflb: remove redundant file reference
Board documentation page already has a link to the board's folder in
GitHub so hardcoding a link to the board's defconfig is redundant.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-28 13:40:55 +02:00
Benjamin Cabé
047b11f0d1 soc: bflb: rename bouffalolab_bflb soc family to bflb
For simplicity/consistency with many other soc families, rename the
bouffalolab_bflb soc family to the simpler bflb.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-28 13:40:55 +02:00
Benjamin Cabé
2e881018ac boards: dts: soc: bflb: use proper folder names
Folders should be named after the vendor prefix

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-28 13:40:55 +02:00
Jamie McCrae
90de22fde7 boards: nordic: thingy53: Remove scratch from cpunet
Removes the scratch area from the network core for this board
target, this was not used anyhow but gets rid of a configuration
that would use a non-optimal swap mode

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-28 13:40:46 +02:00
Jamie McCrae
f64d92ff5c boards: nordic: Fix devicetree styling issues
Fixes issues to make files compliant with the Zephyr devicetree
guidelines

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-28 13:40:46 +02:00
Jamie McCrae
d5086f1f43 boards: ezurio: Remove outdated DOMAIN_ configuration
This configuration is for a system that has been removed

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-28 13:40:46 +02:00
Jamie McCrae
08db663a2b boards: panasonic: Remove outdated DOMAIN_ configuration
This configuration is for a system that has been removed

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-28 13:40:46 +02:00
Jamie McCrae
75b959adf2 boards: raytac: Remove outdated DOMAIN_ configuration
This configuration is for a system that has been removed

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-28 13:40:46 +02:00
Jamie McCrae
888c5bd9a8 boards: nordic: Remove outdated DOMAIN_ configuration
This configuration is for a system that has been removed

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-28 13:40:46 +02:00
TOKITA Hiroshi
95db3a66fd include: zephyr: dt-bindings: gpio: Add arduino-mkr-header defines
To make the pin names of the Arduino MKR header easier to understand,
we will introduce a macro definition for the pin names.

And also update the definition of `arduino_mkrzero` with the definitions.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-28 09:24:02 +01:00
Tim Lin
c6824e95ff dts: ite: it8xxx2: Add pinctrl extend setting of CEC alternate function
Add pinctrl extend setting of CEC alternate function.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-28 09:23:08 +01:00
TOKITA Hiroshi
e43a396674 include: zephyr: dt-bindings: gpio: Add arduino-nano-header defines
To make the pin names of the Arduino Nano header easier to understand,
we will introduce a macro definition for the pin names.

And also update the definition of `nano_33_ble`, `nano_33_iot`,
`nucleo_g031k8`, and `nucleo_l031k6` with the definitions.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-28 09:22:57 +01:00
TOKITA Hiroshi
05a3c55b44 dts: bindings: gpio: arduino-nano-header-r3: Remove r3 suffix
R3 is a revision of the Arduino UNO(classic), not for the Nano.
Correcting the name.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-28 09:22:57 +01:00
Fin Maaß
fb6b321fbb doc: migration: 4.2: mention ethernet change
mention change of ethernet speed enums.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-28 09:22:09 +01:00
Fin Maaß
3a195a08da drivers: net: ethernet: change ETHERNET_LINK_*BASE_T
change ETHERNET_LINK_*BASE_T to ETHERNET_LINK_*BASE.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-28 09:22:09 +01:00
Fin Maaß
43919f1369 drivers: ethernet: phy: add PHY_LINK_IS_SPEED_10M macro
add PHY_LINK_IS_SPEED_10M macro to check if the link speed is 10M.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-28 09:22:09 +01:00
Fin Maaß
203ca6fcde drivers: ethernet: phy: rename LINK_*_*BASE_T
rename  LINK_*_*BASE_T to  LINK_*_*BASE

speed options for ethernet drivers shouldn't end with a _T, implying
that ethernet is only supported via a twisted pair cable.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-28 09:22:09 +01:00
Philipp Steiner
91dfa23f80 samples: bme280: adafruit: Add missing conf and power-domains
Add missing conf and power-domains for adafruit_feather_esp32s2
boards for the BME280 sample

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-04-28 08:37:41 +02:00
Lyle Zhu
76c072549d Bluetooth: Classic: L2CAP: Fix the FCS incorrect issue
The FCS flag of TX direction is not set correctly if the FCS flag of
RX direction is set. The issue could be found with following steps,
Step 1, Local sends configuration request with ERET mode and FCS
omitted.
Step 2, Peer replies the configuration response without any errors.
Step 3, Peer sends configuration request with ERET mode and NO FCS.
Step 4, Local replies the configuration response without any errors.

The FCS flag of TX is cleared incorrectly.

The FCS should be enabled if any one side enables the FCS.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-28 08:36:13 +02:00
Lyle Zhu
b3581fe1d4 Bluetooth: Classic: L2CAP: Handle multi L2CAP packets of a HCI ACL
In current implementation, if the HCI ACL data length exceeds on L2CAP
packet, the HCI ACL data will be discarded.

Support the case if the transport is classic.

Add a function `bt_br_acl_recv()` to handle the multi L2CAP packets
one by one.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-28 08:36:02 +02:00
Li Feng
132f0088ec ish build: add new manifest v1.1 support
ISH manifest v1.1 applies to ISH 5.8.

Signed-off-by: Li Feng <li1.feng@intel.com>
2025-04-28 08:35:53 +02:00
Vladislav Pejic
644dd757b2 samples: sensor: Add adxl367 streaming config
Adds adxl367 streaming configuration to accelerometer samples.

Signed-off-by: Vladislav Pejic <vladislav.pejic@orioninc.com>
2025-04-28 08:34:35 +02:00
Vladislav Pejic
4a9029771f drivers: sensor: adxl367: FIFO mode from DT
Add support for setting FIFO mode using DT property.

Signed-off-by: Vladislav Pejic <vladislav.pejic@orioninc.com>
2025-04-28 08:34:35 +02:00
Vladislav Pejic
9809788502 boards: shields: Add EVAL-ADXL367-ARDZ shield
Add a new shield definition for the Analog Devices EVAL-ADXL367-ARDZ
accelerometer shield. This shield provides support for an ADI ADXL367
accelerometer over an Arduino SPI connector.

Signed-off-by: Vladislav Pejic <vladislav.pejic@orioninc.com>
2025-04-28 08:34:35 +02:00
Titan Chen
31f5d2826d drivers: pwm: rts5912: port pwm driver on Zephyr
Add PWM driver support for Realtek RTS5912

Signed-off-by: Titan Chen <titan.chen@realtek.com>
2025-04-28 08:34:18 +02:00
Alain Volmat
29197ac963 drivers: video: add more RGB 24/32 bits and YUV 16 bit variants formats
Add several more RGB formats: (RGB24/BGR24,ARGB32,ABGR32,RGBA32,BGRA32)
as well as more YUV formats: YVYU, VYVU, UYVY

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-04-27 08:35:16 +02:00
Alain Volmat
d8ad66cfb3 drivers: video: add 10 to 16 bit unpacked bayer formats
Add all 4 variants of 10 / 12 / 14 and 16 bits unpacked bayer formats

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-04-27 08:35:16 +02:00
Johann Fischer
07f196b33a sample: usb: add usbd test feature to samd21/samr21_xpro boards
Add usbd test feature to samd21/samr21_xpro boards.
Add samr21_xpro board to integration_platforms in a few samples.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-27 08:35:00 +02:00
Johann Fischer
c8eaa11a0b drivers: udc: add new UDC driver for SAM0 USB controller
The UDC driver for this beautiful USB controller is mostly rewritten
from scratch. USB Pad Calibration and clock handling are copied from the
usb_dc_sam0 driver.

The driver uses multipacket transfers for all endpoints except the OUT
control endpoint. The OUT control endpoint has a buffer that is always
mapped to the endpoint buffer register so that it always has a valid
buffer. The driver provides up to 7 IN and 7 OUT endpoints that support
any type of transfer. Double buffering is not used, for the possible
case of isochronous transfers some changes would be required in the
future.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-27 08:35:00 +02:00
Phi Bang Nguyen
cf6f9e3807 tests: drivers: build_all: video: Move board-specific overlays to boards
Move board-specific overlays to boards folder

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-04-26 11:15:50 -04:00
Phi Bang Nguyen
ee7fb5119b tests: drivers: build_all: video: Add test case for smartdma
Add built-only test case for smartdma driver

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-04-26 11:15:50 -04:00
Phi Bang Nguyen
78b9f25f76 drivers: video: Use video interfaces binding for ov7670 and smartdma
Have ov7670 and video smartdma use video interfaces binding. With
this, we can fix the chicken-egg issue in init priority and don't need
the workaround anymore.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-04-26 11:15:50 -04:00
Phi Bang Nguyen
cc17b712f6 drivers: video: smartdma: Fix a typo breaking the build
Fix a typo so that it won't break the build.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-04-26 11:15:50 -04:00
Erik Tamlin
4f6d0c1910 doc: tracing: Added Percepio View section
Added Percepio View section to documentation.

Signed-off-by: Erik Tamlin <erik.tamlin@percepio.com>
2025-04-26 11:14:56 -04:00
Andrej Butok
0b3e9abbff sys: ring_buffer: fix possible ring_buf_put_claim/get_claim wrong size
- The issue is caused by the MIN() macro, which expands to
  (a)<(b)?(a):(b), where ring_buf_space_get()/ring_buf_size_get()
  is used as 'b' and is evaluated twice. The issue occurs when
  the (a)<(b) condition evaluates such that (b) is selected,
  but the value of (b) changes between evaluations, resulting
  in a possibly larger value than (a).
- Fixes the potential incorrect behavior by storing the result
  of ring_buf_space_get()/ring_buf_size_get() in a variable
  before using it in the MIN macro.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-26 11:14:44 -04:00
Andrej Butok
87ecedf265 doc: interrupts: fix Direct ISR code example
- Fixes Direct ISR code example.
- Deletes the wrong comment,
  which was likely copy-pasted from
  the previous ISR code example.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-26 11:14:20 -04:00
Michael Hope
02f85b253a drivers: clock_control: fix the CH32V00x clock definitions
Some time during the initial review, the CH32V003 clock definitions
were exended to include clocks from the CH32V20x and CH32V30x series.
As the CH32V20x series now has a separate clocks include, remove the
non-existent clocks.

While there, drop the 'A' prefix to match the register names in the
CH32V00X reference manual.

Also add the USART2 clock that's present in the CH32V00x series.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-04-26 10:55:45 +02:00
Michael Hope
1d7a095779 soc: wch: move from qingke-v2 to the more specific qingke-v2a
The CH32V003 CPU is a QingKe V2A while others in the CH32V00x series
use the QingKe V2C. Prepare for adding support for the CH32V006 moving
to the more specifc qingke-v2a, moving some cases of SOC_CH32V003
actually meaning SOC_FAMILY_QINGKE_V2A.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-04-26 10:55:45 +02:00
Vladislav Pejic
5fc5259964 drivers: sensor: adxl362: FIFO mode from DT
Adds support for setting FIFO mode from DT.

Signed-off-by: Vladislav Pejic <vladislav.pejic@orioninc.com>
2025-04-26 10:55:34 +02:00
Maxmillion McLaughlin
6f59533675 drivers: bmp581: change sensor_channel units to match spec
The bmp581 driver currently returns pressure in pascals, when
the sensor_channel enum specifies kilopascals.

Signed-off-by: Maxmillion McLaughlin <max@sorcerer.earth>
2025-04-26 10:55:27 +02:00
Michael Hope
7e31f6be48 samples: watchdog: add the ch32v003evt to the sample
The CH32V003 has a straight-forward watchdog that does not support
callbacks. Add an overlay and support.

To make the sample fit in flash, remove the unused logging from the
project configuration. The sample itself doesn't seem to use logging
so this is (mostly) a no-op.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-04-26 10:55:17 +02:00
Michael Hope
7f21dc2dfa drivers: watchdog: add a CH32V00x Independent Watchdog (IWDT) driver
The CH32V003 has a built-in watchdog that runs off the low speed
internal oscillator. Add a driver.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-04-26 10:55:17 +02:00
Declan Snyder
e358713ea4 drivers: Move flexram to misc driver
Flexram is really not a memory controller, and does not belong in memc
namespace or directory. Move it to it's own misc directory and remove
memc_ from the namespace.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-26 10:55:09 +02:00
Jacob Wienecke
db63e563a9 drivers: memc: memc_nxp_flexram.h: Move to the public includes directory
Moved to: include/zephyr/drivers/misc/flexram/memc_nxp_flexram.h

This change makes it so that the .h file does not need to be pulled in
using the CMakeLists.txt file, and can be included like other public
includes.

Removes drivers/memc/memc_nxp_flexram.h

Add memc_nxp_flexram.h to include/zephyr/drivers/misc/flexram

Modify drivers/memc/memc_nxp_flexram.c to use the new include path.

Modifies the mimxrt1170 magic_addr sample to include the driver using
the new include path.

Modify the soc file: soc/nxp/imxrt/imxrt11xx/soc.c to use the new path.

Add relevant information to migration-guide-4.2.rst.

Signed-off-by: Jacob Wienecke <jacob.wienecke@nxp.com>
Co-authored-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-26 10:55:09 +02:00
Benjamin Cabé
f412cc643d posix: fix typo in pthread_cond_init
Update the casting of the 'attr' parameter in pthread_cond_init to use
the correct variable name 'att'. Thanks clang for spotting the typo.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-25 19:03:28 +02:00
Benjamin Cabé
c080d1cb4b tests: posix: add test for pthread_cond_init with existing condattr
Introduce new test for pthread_cond_init verifying successful
initialization with a valid pre-initialized condattr.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-25 19:03:28 +02:00
Jukka Rissanen
0c1dca52f4 tests: net: ipv6: Test deprecated address selection
Make sure deprecated address is selected if no other address
is available.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-25 19:00:59 +02:00
Jukka Rissanen
aef83fce14 net: if: Allow selecting deprecated IPv6 address as src addr
This adjust the IPv6 source address selection so that it is possible
to select deprecated IPv6 address if no better preferred address is found.

From RFC 6724 chapter 5:

   Rule 3: Avoid deprecated addresses.
   If one of the two source addresses is "preferred" and one of them is
   "deprecated" (in the RFC 4862 sense), then prefer the one that is
   "preferred".

   Rule 8: Use longest matching prefix.
   If CommonPrefixLen(SA, D) > CommonPrefixLen(SB, D), then prefer SA.
   Similarly, if CommonPrefixLen(SB, D) > CommonPrefixLen(SA, D), then
   prefer SB.

So the fix allows deprecated address to be selected if it is a better
match than the preferred one. The reasoning here is that an address with
a longer matching prefix is generally considered topologically closer to
the destination. Using such a source address can lead to more efficient
routing, as it's more likely that the source and destination are within
the same network segment or a closely related one.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-25 19:00:59 +02:00
Guennadi Liakhovetski
1b7eae43db logging: mtrace: don't activate with hook == NULL
adsp_mtrace_log_init() can be called with its argument equal NULL,
mtrace_active shouldn't be set to true in that case.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-04-25 19:00:49 +02:00
Fin Maaß
1f7a694a76 MAINTAINERS.yml: promote maass-hamburg to mdio maintainer
promote maass-hamburg to mdio maintainer.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-25 19:00:41 +02:00
Fabian Blatz
8009614c16 drivers: display: sdl: Ensure task thread is run once on init
Adds taking of the task semaphore after creating the display thread
to ensure that the thread is run once, executing the SDL init.
Adjust the threads priority to match the main thread.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-04-25 19:00:28 +02:00
Dominik Ermel
ebd8803bd1 arch: arm: cortex_m: Rephrase comment on IRQ decrement
Move and rephrase the comment to better explain reason why obtained
IRQ number is decremented.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-04-25 19:00:15 +02:00
Mahesh Mahadevan
f5691120ca samples: display: Add overlay for FRDM_RW612 boards
Enable low power mode (PM Mode 3) for FRDM_RW612 board.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-04-25 19:00:06 +02:00
Mahesh Mahadevan
881b1ea477 drivers: mipi_dbi: Add PM action for NXP driver
Add PM action for the NXP LCDIC driver so that we can
recover from a lower power mode where we lose the register
settings and we need to reconfigure the block.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-04-25 19:00:06 +02:00
Derek Snell
79b0e06692 samples: sensor: thermometer: frdm_rw612: enable Standby power mode
Enables System PM and Standby (AKA Sleep or PM3) mode, to test I2C
after waking from Standby mode.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-04-25 18:59:57 +02:00
Derek Snell
5ff676f9fa drivers: i2c_mcux_flexcomm: adds PM TURN_ON low-power recovery support
Enables Sleep mode (PM3) in RW61x.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-04-25 18:59:57 +02:00
Marek Matej
b41806ba78 dts: common: espressif: update flash partitions
Include sys partition to be used with the virtual eFuse.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-04-25 18:59:46 +02:00
Neil Chen
096468e7f2 samples: sensor/mcux_lpcmp: Add LPCMP use case
Enable LPCMP use case on NXP frdm_mcxa153 board.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-25 18:59:33 +02:00
Neil Chen
33e88b07a7 boards: nxp: frdm_mcxa153: Support lpcmp for NXP frdm_mcxa153 board
Support lpcmp for NXP frdm_mcxa153 board.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-25 18:59:33 +02:00
Neil Chen
53dd770a90 dts: arm/nxp: Add lpcmp nodes to NXP MCXA153 dtsi file
Add lpcmp nodes to NXP MCXA153 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-25 18:59:33 +02:00
Neil Chen
4ea825152f tests: drivers/adc/adc_api: Support adc api test for NXP frdm_mcxa153
Support adc api test for NXP frdm_mcxa153

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-25 18:59:33 +02:00
Neil Chen
2826c4eb81 samples: drivers/adc: Support adc example for NXP frdm_mcxa153
Support adc example for NXP frdm_mcxa153

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-25 18:59:33 +02:00
Neil Chen
2b168adfe8 boards: nxp: frdm_mcxa153: Support adc for NXP frdm_mcxa153 board
Support adc for NXP frdm_mcxa153 board.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-25 18:59:33 +02:00
Neil Chen
7a1e39fec4 dts: arm/nxp: Add adc nodes to NXP MCXA153 dtsi file
Add adc nodes to NXP MCXA153 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-25 18:59:33 +02:00
Hake Huang
a37686ef71 boards: frdm_mcxa: add pinmux to boards for lpuart test
move the pinmux setting to boards

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-04-25 18:59:24 +02:00
Hake Huang
513e45f60d tests: drivers: uart: simplify setting for NXP platforms
simplify the test overlay for NXP platforms
also add check for read_ptr to avoid build warning

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-04-25 18:59:24 +02:00
Mahesh Mahadevan
9278de258e drivers: flash: flexspi: Fix XIP during flash write
Commit 857e5793f1 fix
the flash_mcux_flexspi_nor.c driver to wait for the
FlexSPI to be idle before performing write/erase
operations. Add a similar check to these drivers that
also use the FlexSPI NOR block.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-04-25 18:58:57 +02:00
Jordan Yates
bb0f19260a samples: uart: async_api: added
Add a sample that utilises the ASYNC API to queue packets in bursts.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-25 18:58:47 +02:00
Jordan Yates
9bbc6d1579 serial: uart_native_pty: ASYNC RX support
Add support for transmitting using the asynchronous API. The
asynchronous portion is simulated through a dedicated polling thread.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-25 18:58:47 +02:00
Jordan Yates
5536e5b5cd serial: uart_native_pty: ASYNC TX support
Add support for transmitting using the asynchronous API. The
asynchronous portion is simulated through the system workqueue.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-25 18:58:47 +02:00
Jordan Yates
3d344186fc serial: uart_native_pty_bottom: length parameter
Add a length parameter to the poll in read function so that data can be
read in larger chunks.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-25 18:58:47 +02:00
Fin Maaß
780379e333 drivers: nxp_enet: move phy_link_callback_set()
move phy_link_callback_set() to the iface init,
so we don't have to manually check the link state,
as phy_link_callback_set() will also invoke the callback.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-25 18:58:35 +02:00
Emil Lindqvist
500c67fa18 wifi: fix -Wignored-qualifiers warning
Including wifi.h with -Wignored-qualifiers warning enabled gives
a warning. Fix this warning

Signed-off-by: Emil Lindqvist <emil@lindq.gr>
2025-04-25 18:58:25 +02:00
Andrzej Głąbek
fb1d0785ae drivers: flash: nrf_qspi_nor: Prevent CPU hang when XIP is re-enabled
Add a simple non-XIP transaction before deactivating the QSPI after
a XIP transaction is performed. This prevents a CPU hang from occuring
when another XIP transaction is attempted after the QSPI is activated
again.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-04-25 15:57:35 +02:00
Ibe Van de Veire
c6d98acbbf net: lib: sockets: Increase socketpair mem pool size
Increased the heap mempool size for the socketpairs. This way there will
be enough memory available to allocate 2 * struct spair.

Signed-off-by: Ibe Van de Veire <ibe.vandeveire@basalte.be>
2025-04-25 15:57:25 +02:00
Michał Stasiak
c8bda86db6 tests: drivers: clock_control_api: move startup time to Kconfig
Moved target dependent startup time from header file to
Kconfig option to allow adding new targets with new .conf
file rather that modyfing source of the test. Adjusted
startup time for nRF54L09 and nRF54L20.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-04-25 15:57:13 +02:00
Radosław Koppel
e37b68bfa4 boards: nordic: Enable nfct on the supporting boards
Enable NFCT device in dts of the boards that have
NFC connector.

Signed-off-by: Radosław Koppel <radoslaw.koppel@nordicsemi.no>
2025-04-25 15:56:15 +02:00
Troels Nilsson
4aad818ec2 Bluetooth: Controller: Fix window widening for parameter update
When applying the connection parameter update, the window widening
for the previous connection interval was not applied since that is
normally done in LLL

Fixed by applying the window widening in ull_conn_update_parameters()
instead in this case

Fixes EBQ test failure in LL/CON/PER/BV-10-C

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-04-25 15:56:04 +02:00
Andre Heinemans
fce576bfcf lib: open-amp: fix OPENAMP_COPY_RSC_TABLE dependancy
The config item OPENAMP_COPY_RSC_TABLE is only applicable when
OPENAMP_RSC_TABLE is enabled

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-04-25 15:55:43 +02:00
Vignesh Pandian
8972146302 west: fix for context with sysbuild
show `west flash --context` with sysbuild

Signed-off-by: Vignesh Pandian <vignesh@aerlync.com>
2025-04-25 15:55:40 +02:00
Lucas Tamborrino
5d74f78332 drivers: gpio: Add LP GPIO
Add LP GPIO support for LP Core

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-04-25 14:06:18 +02:00
Michal Kozikowski
9a6f116a6a soc: nordic: nrf54h: Disable GPD for MCUBoot
Disable GPD for MCUBoot build, as it cannot be
reinitialized later in application (SDFW does not
support reinitialization).

Also, remove the GPD disabling from the mcumgr sample
for nRF54H20 iron board app - it was the reinitialization
that caused problems.

Signed-off-by: Michal Kozikowski <michal.kozikowski@nordicsemi.no>
2025-04-25 14:06:08 +02:00
Jukka Rissanen
feb0265e43 net: if: Stop IPv6 router solicitation if interface goes down
Make sure RS process is stopped if network interface goes down
as there is no point doing it any more.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-25 14:06:00 +02:00
Jukka Rissanen
c73f9d834a net: if: Make sure IPv6 RS timer is not added twice to list
It might happen that if the network interface is going up/down
fast enough, the RS timer could get inserted to the active RS
timer list twice. This would then cause a forever loop in
rs_timeout() when traversing the active list.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-25 14:06:00 +02:00
Jamie McCrae
a2ae38d849 west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  81315483fcbdf1f1524c2b34a1fd4de6c77cd0f4

  - 81315483 Revert "zephyr: arm: Update reading the flash image
    reset vector"
  - 47d826e7 boot: bootutil: swap_offset: Fix maximum application
    size
  - d5d3359e zephyr: Fix trailer size computation for swap-scratch
  - f9e4e529 zephyr: Fix TLV area was included in trailer size when
    rounding up
  - 6cbea0a2 boot: boot_serial: Fix swap using offset
  - efa30399 boot: bootutil: swap_move: Fix maximum application
    size

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-25 14:05:51 +02:00
Fin Maaß
051d257b3c net: config: sntp: don't use fallback, when Kconfig is not set
don't use fallback address, when Kconfig server address
is not set.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-25 14:05:35 +02:00
Fin Maaß
5819e1722b net: config: sntp: add assert, when address is not set.
when the sntp address is not set and geting it via
dhcp is not activated do a build assert.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-25 14:05:35 +02:00
Fin Maaß
71aa1b1bec net: config: sntp: add option for failure try interval
add option for a different resync interval, that is
applied when the sntp request fails.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-25 14:05:35 +02:00
Aleksandr Khromykh
fd818d7274 tests: bluetooth: mesh: test lpn communication after friendship
Commit extends the communication test between the LPN and
the third mesh device by checking that LPN and the third mesh
device can exchange data normally after friendship termination.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-04-25 14:05:27 +02:00
Aleksandr Khromykh
855639a3db bluetooth: mesh: keep scanner enabled if lpn has been disabled
Commit fixes the issue when scanner is disabled when
lpn is disabled.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-04-25 14:05:27 +02:00
Petr Vilím
a7bddddb1e drivers: sensor: max31855: fixed sign bit positions
MAX31855 driver had a wrong position of sign bits causing
invalid reading of negative temperature values. Fixed by
shifting position of sign bit by one bit.

Signed-off-by: Petr Vilím <petr.vilim@proton.me>
2025-04-25 14:05:18 +02:00
Luis Ubieda
7e1bc39225 tests: build_all: sensor: Add ICM45686 as an I3C device
To validate build-time functionality.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-25 14:05:10 +02:00
Luis Ubieda
72854df0a1 sensor: icm45686: Add stream support over I3C IBI
Streaming mode now supported through In-band Interrupts (I3C).
By default, a dedicated INT GPIO is prioritized, even if the sensor
is on an I3C bus.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-25 14:05:10 +02:00
Luis Ubieda
ba36d8a6b6 sensor: icm45686: Add I3C bus support
I3C is now a bus supported, by relying on RTIO IODEV which is supported
for all buses (I2C, I3C and SPI). Tested backwards compatibility: I2C
and I3C.

No IBI support yet.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-25 14:05:10 +02:00
Hoang Nguyen
dda00a8ccb samples: subsys: llext: shell_loader: Exclude Renesas RZ/A2M
RZ/A2M requires MMU enabled. This sample disables MMU, so exclude the
platform.

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-25 14:05:01 +02:00
Hoang Nguyen
02eda248e1 drivers: gpio: Add support for RZ/A2M
Add gpio support for RZ/A2M

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-25 14:05:01 +02:00
Hoang Nguyen
2e26a4497a drivers: serial: Add support for RZ/A2M
Add serial support for RZ/A2M

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-25 14:05:01 +02:00
Hieu Nguyen
f1b5511a23 drivers: pinctrl: Add initial support for RZ/A2M
Add pinctrl support for RZ/A2M

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
2025-04-25 14:05:01 +02:00
Hoang Nguyen
1462d3e972 drivers: timer: Add initial support for RZ/A2M
Add timer support for RZ/A2M

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-25 14:05:01 +02:00
Hoang Nguyen
1b8c77e4de drivers: clock control: Initial support for RZ/A2M
Add clock control support for RZ/A2M

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-25 14:05:01 +02:00
Hoang Nguyen
73926c587e boards: renesas: Add minimal support for Renesas RZ/A2M EVK
Add minimal support for Renesas RZ/A2M EVK

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-25 14:05:01 +02:00
Hoang Nguyen
73a9d2615d soc: renesas: Add support for Renesas RZ/A2M
Add support for Renesas RZ/A2M

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-25 14:05:01 +02:00
Mirai SHINJO
56cf24e34d cmake: ensure -fstack-protector-explicit is applied to C++ targets
A typo in the top-level CMakeLists.txt prevented C++ targets from
receiving -fstack-protector-explicit when CONFIG_STACK_CANARIES_EXPLICIT=y.

Signed-off-by: Mirai SHINJO <oss@mshinjo.com>
2025-04-25 14:04:51 +02:00
Nithin Ramesh Myliattil
a94cdafdb7 Bluetooth: CSIP: Fix ntf issue to clients on reboot
On reboot, client list to notify is not updated properly.
Fix is to check and add the reconnected clients on
security changed cb.

Subscription check is added before notify to clients.
BT Enable check is added in the register function before adding
bonded devices to client list.

Also typo is corrected in add_bonded_addr_to_client_list in the
second loop.

Signed-off-by: Nithin Ramesh Myliattil <niym@demant.com>
2025-04-25 14:04:37 +02:00
Jérôme Pouiller
6cc155f585 tests: drivers: flash: Remove conflicting overlay
Since siwx917_rb4338a now declare a storage_partition,
siwx917_rb4338a.overlay is not required anymore.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-04-25 14:04:26 +02:00
Jérôme Pouiller
13dbcbeb45 boards: silabs: siwx91x: Fix compatibility with tests
Some tests (eg. tests/bluetooth/shell) expects to have a
storage_partition defined.

storage_partition is also defined in the DT of most of the boards.

For now, this patch define a very small storage partition to avoid any
conflict with code_partition.

Tested-by: Andras Nyiri <andras.nyiri@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-04-25 14:04:26 +02:00
Jens Rehhoff Thomsen
73000a6154 Bluetooth: host: Ensure BASS notifications are sent
Update bit array (number of connections) added for each receive state.
Notifications are attempted to be sent in the system workqueue and
retried if failing.

Issue #85487

Signed-off-by: Jens Rehhoff Thomsen <jthm@demant.com>
2025-04-25 14:04:12 +02:00
Bjarki Arge Andreasen
9b4cd8a089 doc: rtc: add device driver design section
Add section describing how to write RTC device drivers. This should
help ensure consistent RTC behavior across system reboots.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-04-25 14:03:45 +02:00
Bjarki Arge Andreasen
76453e5b73 doc: rtc: move down "History of RTCs in Zephyr" section
Move down the "History of RTCs in Zephyr" which is least relevant,
especially now that the RTC API is well established.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-04-25 14:03:45 +02:00
Jamie McCrae
9b886c6158 doc: build: dts: api: Add details on zephyr,boot-mode
Adds details on this new chosen property

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-25 14:03:34 +02:00
Jamie McCrae
4876ff4b42 scripts: ci: check_compliance: Add Kconfig to allow list
Adds a Kconfig used in MCUboot to the allow list

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-25 14:03:34 +02:00
Jamie McCrae
8a8b91843d sysbuild: Add firmware loader application type support
Adds support for setting up a firmware loader image in a build,
which can also optionally automatically configure MCUboot and the
application image to be able to boot the firmware loader image
using the retention subsystem

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-25 14:03:34 +02:00
Jamie McCrae
bf59791aee samples: mgmt: mcumgr: smp_svr: Remove boot_info node
Removes a node from the devicetree overlay for a board for this
sample

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-25 14:03:34 +02:00
Jamie McCrae
2df118a390 tests: boot: mcuboot_data_sharing: Remove boot_info node
Removes a node from the devicetree overlay for a board for this
test

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-25 14:03:34 +02:00
Jamie McCrae
d2c4ba3191 tests: boot: mcuboot_recovery_retention: Remove boot mode overlay
Removes setting the boot mode device in the default test overlay
file as this is now set by the board

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-25 14:03:34 +02:00
Jamie McCrae
776fac5784 boards: nordic: Add boot mode chosen nodes
Adds boot mode chosen nodes to the nrf5340dk, nrf52840dk and
nrf54l15dk boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-25 14:03:34 +02:00
Tom Hughes
78b1ad9a73 cmake clang/compiler_flags.cmake: Re-enable -Wunused-variable for clang
All warnings in the code base have been resolved.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-04-25 14:03:25 +02:00
Jukka Rissanen
3e09a40de5 net: zperf: Add -w option to delay upload jobs
Use -w option to delay the startup of the upload job.
Then when ready, do "zperf jobs start" to launch all upload
sessions at the same time.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-25 10:22:33 +01:00
Jukka Rissanen
7595a4bb39 samples: net: zperf: Add compilation of concurrent upload support
Make sure we compile test CONFIG_ZPERF_SESSION_PER_THREAD support.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-25 10:22:33 +01:00
Jukka Rissanen
563f05eb8b net: zperf: Add concurrency when doing upload tests
If user has enabled CONFIG_ZPERF_SESSION_PER_THREAD, then if
user gives -a (async) option to upload command, then multiple
uploads can be run simultaneously. Each upload will be run
in a dedicated work queue. The work queue thread priority can
be set by -t option.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-25 10:22:33 +01:00
Jiafei Pan
5e47efa839 boards: imx93_evk: add jlink runner support for a55 core
Added jlink runner support for A-core platform on i.MX93 EVK board,
so that can use "west flash" to download zephyr.bin to DDR memory
and then boot the Zephyr on Cortex-A55 Core0.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-04-25 11:05:39 +02:00
Martin Hoff
eac798fc51 soc: adi: remove unused symbol sram_vector_table
The symbol SRAM_VECTOR_TABLE is not used in the adi/max32 soc. Removed
it in order to clean up the Kconfig file and avoid confusion with the
upcoming new definition of SRAM_VECTOR_TABLE symbol. (PR #87468)

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-04-25 11:05:17 +02:00
Andrej Butok
9126b1240d tests: littlefs: add 18 tested NXP boards to testcase.yaml
Adds 18 tested NXP boards to the littlefs testcase.yaml

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-25 11:04:51 +02:00
Henrik Lindblom
1a3fb4adfc drivers: stm32: use cache peripheral driver
Use cache API for disabling and enabling ICACHE. The driver handles waiting
for ongoing cache invalidation.

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2025-04-25 11:04:37 +02:00
Henrik Lindblom
9de3d6bf64 soc: stm32: use cache peripheral driver
Use the Zephyr cache API in soc initialization code instead of calling the
HAL directly. The change does not modify the pre-existing cache settings,
just changes the path they are enabled.

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2025-04-25 11:04:37 +02:00
Henrik Lindblom
6a3309a9e4 cache: stm32: add cortex-m33 peripheral driver
STM32 Cortex-M33, such as the L5/H5/U5 series, have a cache peripheral for
instruction and data caches, which are not present in the C-M33
architecture spec.

The driver defaults to direct mapped cache as it uses less power than the
alternative set associative mapping [1]. This has also been the default in
stm32 soc initialization code for chips that have the ICACHE peripheral,
which makes it the safest choice for backward compatibility. The exception
to the rule is STM32L5, which has the n-way cache mode selected in SOC
code.

[1]: https://en.wikipedia.org/wiki/Cache_placement_policies

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2025-04-25 11:04:37 +02:00
John Barbero Unenge
1d3018ad76 driver: mdio: mdio_nxp_enet: Implement c45 read/write
This change refactors the mdio_read / mdio_write functions into an
mdio_wransfer, and utilizes it to implement
mdio_{read,write,read_c45,write_c45}.

Heavily inspired by the implementation in drivers/mdio/mdio_sam.c

Signed-off-by: John Barbero Unenge <git@lsrkttn.com>
2025-04-25 11:04:30 +02:00
Younghyun Park
db168539cf drivers: spi: dw: read ssi component version
Read the Synopsys SSI component version to extend supported capability
based on the version.

Signed-off-by: Younghyun Park <younghyunpark@google.com>
2025-04-25 11:04:19 +02:00
Younghyun Park
0ee0a8de37 drivers: spi: dw: fix txftlr in HSSI controller
The TXFTLR register has 2 major fields which are TFT for triggering
interrupt threshold and TXFTLR for starting transfer threshold. This is
to ensure that sufficient data is ready for starting transfer.

Signed-off-by: Younghyun Park <younghyunpark@google.com>
2025-04-25 11:04:19 +02:00
Younghyun Park
71d37039db drivers: spi: dw: fix dfs offset in HSSI controller
The DFS(Data Frame Size) is at CTRLR0[4:0] in HSSI controller.

Signed-off-by: Younghyun Park <younghyunpark@google.com>
2025-04-25 11:04:19 +02:00
Derek Snell
dd825203b5 boards: nxp: add mcx_n9xx_evk
Another board for the MCXN947 SOC, very similar to FRDM-MCXN947

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-04-25 11:04:08 +02:00
Martin Hoff
64d20cf412 tests: vector_table_relocation: add test for vector table relocation
Add a basic test for vector table relocation to SRAM. This test
verifies that the vector table can be relocated to SRAM and that
the VTOR register correctly points to the SRAM address range.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-04-25 11:03:54 +02:00
Martin Hoff
136fe24453 arch: arm: cortex_m: generalizing SRAM vector table relocation
Allow to place the vector table section in SRAM with
CONFIG_SRAM_VECTOR_TABLE option for all cortex-m architecture that
have VTOR register.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-04-25 11:03:54 +02:00
Martin Hoff
a085cfcd99 arch: add dependencie for CONFIG_SRAM_VECTOR_TABLE
Move SRAM_VECTOR_TABLE symbol from general Kconfig to Arch Kconfig
because it depends on the architecture possibility to relocate the
vector table.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-04-25 11:03:54 +02:00
Daniel Baluta
c9f149cf6f drivers: intc: irqstr: Fix uninitialized variable error
Move initialization of 'enabled' variable together with declaration.
This fixes the following compiler error:
error: 'enabled' may be used uninitialized [-Werror=maybe-uninitialized]

This is not really an error but the compiler is tricked by the
K_SPINLOCK() macro.

Fixes: https://github.com/zephyrproject-rtos/zephyr/issues/88996
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2025-04-24 22:58:59 +02:00
Jordan Yates
1c2fc02cf2 net: ip: net_if: consistent interface id logging
Update logging to consistently refer to interfaces by their ID, instead
of a mix of IDs and pointers.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-24 22:58:51 +02:00
Jordan Yates
3772c719e0 net: l2: ethernet: ethernet_ll_prepare_on_ipv4 handling
Shift the error handling for `ethernet_ll_prepare_on_ipv4` out into
`ethernet_send`, since that is the function that needs to handle the
various result types of the ARP process.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-24 22:58:51 +02:00
Jordan Yates
029f542bb4 net: l2: ethernet: arp: unref pkt if queue add fails
Make it clearer that the `net_buf_ref` is for `k_queue_unique_append`,
and reverse the reference if the queue add fails.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-24 22:58:51 +02:00
Jordan Yates
3546020178 tests: net: arp: test the packet queuing case
Test the case where the packet provided to `net_arp_prepare` is queued
for later transmission, instead of being replaced with an ARP query
or having ARP information populated.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-24 22:58:51 +02:00
Jordan Yates
d283130b68 net: l2: ethernet: arp: explicit error codes
Update `net_arp_prepare` to return a return code instead of a pointer,
so that the various results of the function can be differentiated.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-24 22:58:51 +02:00
Jordan Yates
4e0386a445 net: ip: net_if: warning message on send failure
Print a warning if sending a packet on the L2 interface fails. Currently
this is completely silent unless `NET_DBG` is enabled and the `context`
parameter is provided.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-24 22:58:51 +02:00
Chris Friedt
e71c12c68f posix: refactor timespec_to_timeoutms() to use tp_diff()
Use the tp_diff() macro as a means of converting an absolute timeout
with respect to a specific clock to a relative timeout, in ms.

Clamp the result between 0 and UINT32_MAX.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-24 22:58:43 +02:00
Chris Friedt
89c1f15a6e posix: move timespec functions to posix_clock.h
Move somewhat useful (but private and internal functions) that deal
with struct timespec to posix_clock.h until there is a better API
available for dealing with operations on struct timespec.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-24 22:58:43 +02:00
Chris Friedt
d40be58093 posix: doc: hide internal posix_clock.h functions from doxygen
Prevent doxygen from parsing internal functions declared in
posix_clock.h .

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-24 22:58:43 +02:00
Chris Friedt
615ae7e1b5 posix: always require clockid_t argument to timespec_to_timeoutms()
Always require the clockid_t argument to timespec_to_timeoutms() and
remove the unused variant that accepts no clockid_t parameter.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-24 22:58:43 +02:00
Chris Friedt
a10f96e153 posix + tests: use CLOCK_REALTIME where specified by POSIX
Use CLOCK_REALTIME for the default clock source throughout
the POSIX implementation and tests so that we are
consistent with the specification.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-24 22:58:43 +02:00
Chris Friedt
e75f285bd1 posix: add timespec_is_valid() private internal function
Add a common private function timespec_is_valid() that
can be used to check if a timespec object is valid, and
use that consistently in lib/posix/options.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-24 22:58:43 +02:00
Chris Friedt
bb9ec32cf6 posix: cond: use clock specified via pthread_condattr_t
Use the clock specified via pthread_condattr_t in
pthread_cond_timedwait().

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-24 22:58:43 +02:00
Chris Friedt
8b60aa75fa posix: cond: check whether condattr is initialized in attr fns
Check whenther a pthread_condattr_t has been initialized in
pthread_condattr_*() functions.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-24 22:58:43 +02:00
Chris Friedt
ce7ae220a2 posix: cond: use struct posix_cond and struct posix_condattr internally
Use struct posix_cond and struct posix_condattr internally.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-24 22:58:43 +02:00
Chris Friedt
f208e3b02a posix: posix_internal: add definitions for posix_condattr, posix_cond
Add definitions for struct posix_condattr and struct posix_cond, which
are internal variants of the external pthread_condattr_t and
pthread_cond_t types.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-24 22:58:43 +02:00
Chris Friedt
241469af9a posix: provide timespec_to_clock_timeoutms
Provide a private internal function timespec_to_clock_timeoutms() to
complement timespec_to_timeoutms(). This new variant accepts a clock_t
parameter that allows the caller to specify which clock to use.

The original timespec_to_timeoutms() then just becomes a static inline
wrapper around the original.

Note: timespec_to_clock_timeoutms() and timespec_to_timeoutms() might
have a limited lifespan, since it might make sense to create a
common timespec manipulation library.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-24 22:58:43 +02:00
Chris Friedt
fffbd76683 posix: declare timespec_to_timeoutms() in posix_clock.h
Provide a single declaration of timespec_to_timeoutms() (which is
a private function), in the private header file posix_clock.h .

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-24 22:58:43 +02:00
Chris Friedt
3d146aed05 tests: posix: pthread: correct cases for pthread_timedjoin_np()
pthread_timedjoin_np() is allowed to take a negative tv_sec
parameter, since that is still a valid timespec.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-24 22:58:43 +02:00
Kapil Bhatt
951a321c89 drivers: nrf_wifi: Add locally generated info
Add locally generated info for deauth process. If deauthentication
frame is coming from AP it will be set, in other cases
(Beacon loss, New connection from user in connected state,
disconnection from user) flag will not be set.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-04-24 22:58:33 +02:00
Seppo Takalo
78ee0f0c23 net: lwm2m: Do not enforce canonical CBOR decoding
Our decoder can handle decoding of non-deterministic CBOR just fine.
There is no need to block valid CBOR if the server does not produce
length-first deterministic CBOR.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-04-24 22:58:24 +02:00
Jilay Pandya
92d914e465 drivers: stepper: fix trinamic controller names
dropping adi prefix & stepper_controller suffix from trinamic drivers.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-04-24 20:29:07 +02:00
Sebastian Bøe
fff2fef27c west: runners: nrf_common: Temp hack for NRF54H20_IRON
Temp hack while waiting for NRF54H20_IRON support for Network in
nrfutil.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-04-24 20:28:51 +02:00
Jukka Rissanen
f3cd029cce drivers: eth: e1000: Add Ethernet statistics support
Support e1000 driver Ethernet statistics if relevant config
options are enabled.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-24 20:27:58 +02:00
Jukka Rissanen
0e5df7a67b net: vlan: Avoid printf modifier issue with size_t variable
Change the printf modifier to %zd for size_t variable printout
to avoid compiler warning.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-24 20:27:58 +02:00
Ryan McClelland
59c9e84ab6 doc: releases: add pcie note for kconfig CONFIG_NVME_PRP_PAGE_SIZE
Add a pcie note for the new kconfig CONFIG_NVME_PRP_PAGE_SIZE

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-24 20:27:50 +02:00
Ryan McClelland
05db1563c5 drivers: disk: nvme: fix warnings
There are warnings generated within NVMe. `prp` is a `void *` which
is 32bits wide on 32bit systems. This adds a cast to first cast it
to a `uintptr_t` and then casts it to a `uint64_t` to supress the
warning.

This also fix an issue where `int n_prp` is defined under a case
statement. This adds the { } around the block underneath it.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-24 20:27:50 +02:00
Ryan McClelland
2b5c2748f6 drivers: disk: nvme: allow building of nvme without mmu
Some SoCs do not have MMUs. Create a new KConfig that `NVME_PRP_PAGE_SIZE`
that will define the PRP page size, and will default to `MMU_PAGE_SIZE` if
there is a MMU. Otherwise, it defaults to 0x1000.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-24 20:27:50 +02:00
Shan Pen
46f5e7b722 boards: ruiside: art-pi2: add minimum support
- introduced a new vendor ruiside, updated
`dts/bindings/vendor-prefixes.txt`
- add art-pi2 board basic support

Signed-off-by: Shan Pen <bricle031@gmail.com>
2025-04-24 20:27:42 +02:00
Anders Nielsen
b469fc188b drivers: stepper: adi_tmc: Add progress log for stall guard tuning.
Replace stall guard retry error log on EAGAIN with enable/disable info log.
Log position, sg result and sg status on each rampstat_work_handler() call.
Treat only negative return values from tmc_spi_write_register() and
tmc_spi_read_register() as an error. Only log actual velocity when not 0.
Use helper functions rampstat_work_reschedule() and read_vactual().

Signed-off-by: Anders Nielsen <anders.nielsen@prevas.dk>
2025-04-24 16:55:15 +02:00
Anders Nielsen
4b4dc77340 drivers: stepper: adi_tmc: Use helper functions in tmc50xx.
Use rampstat_work_reschedule() and read_vactual().
Only log actual velocity when not 0.
Update log_stallguard() output.

Signed-off-by: Anders Nielsen <anders.nielsen@prevas.dk>
2025-04-24 16:55:15 +02:00
Hao Luo
b64a56362d dts: power: ambiq: change to use ambiq HAL to do power-on config
Changed to use ambiq HAL to do power-on config, no need to bind
pwrcfg any more

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-24 16:55:08 +02:00
Markus Becker
4e5b524775 samples: drivers: jesd216: Make output correct DTS syntax
This way, the content can directly be copied into DTS and overlay files.

Signed-off-by: Markus Becker <Markus.Becker@tridonic.com>
2025-04-24 16:54:59 +02:00
Jonathan Nilsen
6066c5c004 modules: hal_nordic: bump regtool to 9.1.0
Changes for this package version:

* CTRLSEL is now set appropriately for the SPIS121 pins.
* DPPI.LINK configuration is now skipped when processing
  the 'dppic130' devicetree node.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-04-24 16:54:37 +02:00
Chaitanya Tata
4660f4c244 modules: nrf_wifi: Disable anomalies for both QSPIs
These are applicable for Wi-Fi over QSPI (nRF7002DK) or Flash over QSPI
(nRF52/53 + nRF7002EK) and as most Wi-Fi samples run on 128MHz (for
performance), disable the anomalies for both.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-24 16:54:27 +02:00
Chaitanya Tata
49a8dd51e4 nrf_wifi: Move QSPI defines to buslib
These are QSPI related which is part of buslib.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-24 16:54:27 +02:00
Daniel DeGrasse
b84076a192 cmake: arm: linker: remove usage of ld-specific ADDR() function
Remove usage of ld-specific ADDR function within the cmake linker
generator scripting. Since the linker generator scripting doesn't
support MPUs, we can simply set the __ramfunc_region_start symbol to be
equal to __ramfunc_start

Fixes #87200

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-04-24 16:54:14 +02:00
Ederson de Souza
01d10a4115 twister: Look at SIMICS_PROJECT environment variable to find simics
While cmake/emu/simics.cmake uses SIMICS_PROJECT env var, twister checks
if a build is "runnable" by checking if `simics` is executable, but it
doesn't look at SIMICS_PROJECT env var.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-04-24 16:54:00 +02:00
Ederson de Souza
f968d49232 cmake/emu: Use environment variable value on message about it
A message about not finding simics at SIMICS_PROJECT env var was not
showing the current value of said variable.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-04-24 16:54:00 +02:00
Benedikt Schmidt
21c1a9ef09 drivers: fpga: use device_deinit in ICE40 bitbang driver
Replace reapplying the original pin configuration via pinctrl
in the ICE40 bitbang driver with a device_deinit/device_init.
Fixes #77983.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2025-04-24 16:53:49 +02:00
Nicolas Goualard
27bfeea162 mcumgr: fs_mgmt: Add a hook on download/upload complete.
Added a hook on the FS group that notify applications when a
 file download/upload has completed.

Signed-off-by: Nicolas Goualard <nicolas.goualard@sfr.fr>
2025-04-24 16:53:35 +02:00
Sahaj Sarup
d784adbc1b shield: m5stack_cardputer: initial support
Added initial support for the M5Stack Cardputer shield for
M5 Stamp S3. The following features are supported:

- uSD
- st7789 LCD
- Analog input from VBAT
- I2C on the grove connector

Signed-off-by: Sahaj Sarup <sahaj.sarup@linaro.org>
2025-04-24 16:53:25 +02:00
TOKITA Hiroshi
8f9dc66f98 boards: m5stack: cores3: Add configuration for AXP2101
Adding configuration for enabling AXP2101.
Currently, it supports only LED features.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-24 16:53:20 +02:00
TOKITA Hiroshi
ee68472082 tests: driver: build_all: led: add AXP192/2101 to tests
Add AXP192/2101 LED controller function driver to build_all test.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-24 16:53:20 +02:00
TOKITA Hiroshi
7237a2659d drivers: led: Add driver for AXP192/2101 LED control function
Add a driver to support AXP192/2101's LED control function.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-24 16:53:20 +02:00
TOKITA Hiroshi
ff9d35ab95 dts: bindings: Define a bus for the axp192/axp2101.
Define a bus to show the dependencies of each function
on the AXP192/AXP2101 MFD.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-24 16:53:20 +02:00
Sayooj K Karun
bf104d42cb bluetooth: mtu_update: peripheral: Add NULL check
Add NULL check for connection context, and only send the
notification if connection is established.

Signed-off-by: Sayooj K Karun <sayooj@atmosic.com>
2025-04-24 11:57:43 +02:00
Anas Nashif
9aba1323ce doc: cache: fix cache doc structure
Wrong levels and cache topic appearing in the wrong table of contents.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-24 11:57:36 +02:00
Max Emde
e04d828219 Bluetooth: BAP: Update encrypt_state when BIG synced after bad code
- When encrypt_state in a receive state of the scan delegator is
  BT_BAP_BIG_ENC_STATE_BAD_CODE, make sure that on synchronization
  encrypt_state is updated to BT_BAP_BIG_ENC_STATE_DEC, as this
  implies that a correct code was provided, so that the broadcast
  assistant is not asked for a correct code any longer.

Signed-off-by: Max Emde <mxem@demant.com>
2025-04-24 11:57:25 +02:00
Ravi Dondaputi
870b2872fd snippets: wifi-enterprise: Resize data heap to fix RAM overflow
Inclusion of CONFIG_WIFI_SHELL_RUNTIME_CERTIFICATES causes build time
RAM overflow issues. Decrease NRF_WIFI_DATA_HEAP_SIZE to accommodate
the RUNTIME_CERTIFICATES feature.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-04-24 11:57:10 +02:00
Wojciech Klimek
21738825e9 boards: stm32: Add zephyr_udc0 to nucleo_h503rb
Added config of USB peripheral for Nucleo H503RB.

Signed-off-by: Wojciech Klimek <wjklimek1@gmail.com>
2025-04-24 11:57:04 +02:00
Jordan Yates
befb464d6e modules: fatfs: volume strings from DTS
Instead of relying on a hardcoded list of valid strings, automatically
create a perfectly sized array of disk names from devicetree.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-24 11:56:57 +02:00
Jordan Yates
0b5021aec8 tests: fs: lib_link: add RAM disk overlay
Add a basic RAM disk overlay for libraries that expect at least one disk
driver to be enabled.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-24 11:56:57 +02:00
Jordan Yates
42f1740361 boards: st: stm32h747i_disco: add SD disk name
Add a disk name to the SDMMC node, as done for all other SD card
compatibles in tree.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-24 11:56:57 +02:00
Ruibin Chang
eb99158a80 drivers/sensor/ite/tach/it51xxx: implement tachometer driver
Implement tachometer driver for ITE it51xxx series chip.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-04-24 11:56:44 +02:00
Titan Chen
e6bb7fc6cf soc : realtek: ec: rts5912: add support ULPM
Port rts5912 ULPM on Zephyr

Signed-off-by: Titan Chen <titan.chen@realtek.com>
2025-04-24 11:56:36 +02:00
Erwan Gouriou
b4c1dc63a8 soc: stm32h7r/s: smps is supported on all SoCs
Remove the sanity check between Cube HAL SMPS symbol and Kconfig SMPS
configuration.
SMPS is available on all STM32H7R/S SoC, so misalignment isn't possible.

Additionally, point to the hal commit which revert the fix which was done
on hal_stm32 to add this symbol.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-04-24 10:39:34 +02:00
Emil Gydesen
c8742a3cec Bluetooth: Mesh: Add missing includes to va.h
The va.h file used both uintX and bool without including
the appropriate header files, which can cause a compile issue
if the file is included in the wrong order.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-24 10:39:21 +02:00
Emil Gydesen
72d9a37159 tests: Bluetooth: Tester: Cleanup includes
Update the includes so that only what is actually used is included,
and so that everything is used is includes (IWYU).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-24 10:39:21 +02:00
Declan Snyder
e71aa649b2 spi_nxp_lpspi: Support SPI_HOLD_ON_CS FLAG
Support SPI_HOLD_ON_CS flag in the CPU-based driver. To do this we will
set CONTC bit to continue previous command. Technically it may not be
necessary right now, and could just not clear CONT bit...
but in the future in the lpspi driver we
will decouple the config/init of a transfer from the SDK
and therefore have more control over TCR,
and when we write the TCR, we need to take CONTC bit into account
otherwise a new command will be made. So this approach is how
it should be handled in the driver going forward in my opinion, even
if it might be possible without this bit right now, I want to introduce
it's usage now.

This commit also does a minor refactor in the ISR and adds some comments
to make the strange CS behavior and strange handling code more clear to
future readers.

Also, make the early predicted SPI xfer end code only happen for spi
versions where it is necessary, since I think that code is really the
best we can do but might have a race condition, where possible the last
word is not finished sending when we end the xfer. So limit the
potential affect to v1 lpspi where the workaround is actually required
due to stalling behavior.

Lastly, set the LPSPI into master mode at active low in init, due to
it being the most common case, we want the SPI CS lines to be
initialized at init of driver. I don't think it's worth it to make it
configurable at this time, but in the future it could be if needed.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-24 10:38:58 +02:00
Declan Snyder
17ec70c9c1 spi_nxp_lpspi: Use one logging module
Use one logging module for LPSPI driver instead of 3

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-24 10:38:58 +02:00
Declan Snyder
9d0762a1b8 spi_nxp_lpspi: Fix word size > 8
Fix calculations for larger than 8 bit word sizes

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-24 10:38:58 +02:00
Declan Snyder
d54d63d518 spi_nxp_lpspi: Support word size < 8
The LPSPI does support word sizes such as 6 or 7, anything as small as 2
bits. So fix the checks and the math to allow for this in the driver.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-24 10:38:58 +02:00
Declan Snyder
0cc535eedd spi_nxp_lpspi: Optimize TX fill for less interrupt
Optimize the TX fill algorithm to have less interrupts by filling the TX
fifo as much as possible during each interrupt handle.

Before, the algorithm was just a very simple, fill the TX fifo with as
much from only the current buffer as possible, then send it and wait for
the next interrupt. Now the algorithm is to fill the TX fifo as much as
possible, even if it means reading from multiple buffers during the
interrupt.

This has the advantage from master mode of having less interrupts. And
it is very important for slave mode because the slave mode does not
control the pacing of the transfer and so therefore should fill as much
as possible whenever possible in order not to miss a deadline.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-24 10:38:58 +02:00
Lyle Zhu
e454b0d678 Bluetooth: tester: Support board mimxrt1170_evk@B/mimxrt1176/cm7
Add test case bluetooth.general.tester_br_edr.

Add overlay `zephyr,sram` and `zephyr,uart-pipe` for the board.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
539a28312a Bluetooth: tester: Add project configuration for BR
Set following configuration by default,
CONFIG_BT_CLASSIC=y
CONFIG_BT_CENTRAL=y
CONFIG_BT_PERIPHERAL=y
CONFIG_BT_SMP=y
CONFIG_BT_L2CAP_DYNAMIC_CHANNEL=y
CONFIG_BT_PAGE_TIMEOUT=0xFFFF

When building the project, the argument `--extra-conf prj_br.conf`
needs to be appended for BR.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
065762cd2d Bluetooth: tester: Add BTP event encryption change
Report encryption change event when callback `le_security_changed` is
triggered.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
424364ded0 Bluetooth: tester: Support l2cap connect rsp insuff secure authen
If the L2CAP connection response of command `listen` is
`BTP_L2CAP_CONNECTION_RESPONSE_INSUFF_SEC_AUTHEN`, set the security
level of L2CAP server to level 4.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
ba55e9d7c0 Bluetooth: tester: Ignore error -EBUSY of bt_conn_set_security
The error code `-EBUSY` of `bt_conn_set_security` means the
pairing/encryption procedure is ongoing. Ignore the error code.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
81b8f8d265 Bluetooth: tester: Add command pair_v2 for BTP GAP
Compare with BTP GAP pair, the pair_v2 add more arguments, including
security mode, security level, and flags.

The argument `security mode` is used to set the security mode.

The argument `security level` is used to set the security level of the
specific security mode.

The argument `flags` is used to add additional setting, such as flag
`BTP_GAP_PAIR_V2_FLAG_FORCE_PAIR` is used to force the pairing
procedure.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
1f73bd7312 Bluetooth: tester: Support BR L2CAP connect and disconnect BTP command
Change the channel id rage of BR L2CAP channel to
`ARRAY_SIZE(channels)` ~ `ARRAY_SIZE(channels) + CHANNELS`. The
unified channel ID can help identify whether the channel is BR or BLE
L2CAP channel.

When the address type of L2CAP connect command is
`BTP_BR_ADDRESS_TYPE`, create BR L2CAP channel connect request.

And if the channel ID falls into the range `ARRAY_SIZE(channels)`
~ `ARRAY_SIZE(channels) + CHANNELS` of L2CAP disconnect command,
create BR L2CAP disconnect request.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
4fdc79d1e3 Bluetooth: tester: Support BR connect and disconnect features
Create BR connect if the address type is `BTP_BR_ADDRESS_TYPE` when
handling BTP GAP `connect` command.

Disconnect BR connect if the address type is `BTP_BR_ADDRESS_TYPE`
when handling BTP GAP `disconnect` command.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
71f81660d4 Bluetooth: tester: Enable GAP discover feature for BR
Call `bt_br_discovery_cb_register` to register discovery callbacks.

Define a buffer br_adv_buf to report br discovery result.

Report device found event if discovery received callback triggered.

Start BR device discovery procedure if command `start_discovery` is
received.

Stop BR device discovery procedure if command `stop_discovery` is
received.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
2cae2622ae Bluetooth: tester: Support pincode request for BR
Set the pin code request callback `auth_pincode_entry`.

If `highsec` is false, call `bt_conn_auth_pincode_entry` with pin code
"0000".
If `highsec` is true, call `bt_conn_auth_pincode_entry` with pin code
"0000000000000000".

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
05d6174c98 Bluetooth: tester: Support BR L2CAP listen mode
If cp->transport is BTP_L2CAP_TRANSPORT_BREDR, register BR L2CAP
server.

If cp->transport is not one of BTP_L2CAP_TRANSPORT_BREDR and
BTP_L2CAP_TRANSPORT_LE, return error code BTP_STATUS_FAILED.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
d083825cee Bluetooth: tester: GAP: Support BR connection
According to the connection type of connection, get the appropriate
peer address.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
4611c402e2 Bluetooth: tester: Support BR for security related commands
Look up the BR connection if the address type is BTP_BR_ADDRESS_TYPE.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
096fbb0c52 Bluetooth: tester: Add BR address type BTP_BR_ADDRESS_TYPE
The address type `BTP_BR_ADDRESS_TYPE=0xe0` of LE address is used to
mark as BR address.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
c667eb5aca Bluetooth: tester: Support connectable mode for classic
Disable connectable mode for classic if `cp->connectable` is false.

Enable connectable mode for classic if `cp->connectable` is true.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
353580a764 Bluetooth: tester: Support general and limited discoverable for classic
Disable discoverable mode if `cp->discoverable` is
`BTP_GAP_NON_DISCOVERABLE`.

Set general discoverable mode if `cp->discoverable` is
`BTP_GAP_GENERAL_DISCOVERABLE`.

Set limited discoverable mode if `cp->discoverable` is
`BTP_GAP_LIMITED_DISCOVERABLE`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Lyle Zhu
ba44d90a6a Bluetooth: tester: Set setting BREDR and SSP if classic is enabled
Set the supported settings `BTP_GAP_SETTINGS_BREDR` and
`BTP_GAP_SETTINGS_SSP` if the Bluetooth classic is enabled.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-24 10:38:45 +02:00
Fengming Ye
23494b7b68 net: sockets: kconfig: change hostap default socket pair add heap size
Reduce default socket pair add heap size in hostap case.
Reduce 1 socket pair in wpa_supplicant case.
Reduce 2 socket pairs in wpa_supplicant and hostapd coex case.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-04-24 10:38:03 +02:00
Fengming Ye
fd0ac07a21 modules: hostap: remove zephyr wpa_msg socket pair
Background:
In DPP hostapd will put more than 1K bytes text in multiple
wpa_msg calls in one loop. This will drain hostapd monitor
socket pair and fail. Thus DPP connection will fail.

The monitor socket pair of wpa_supplicant and hostapd are not like
ctrl_iface socket pair, which are used for sending command to
hostap from other tasks. The monitor socket pair is used by wpa_msg
to send messages to attatched ctrl_iface monitors. But in zephyr case,
the monitor is hostap task itself.
This means hostap task is both the sender and receiver task.
So it writes all the wpa_msg text into FIFO and read it in next loop.
So there is risk of draining socket pair FIFO and missing msg.
And the reading socket loop can be omitted by directly handling msg
in wpa_msg_cb.

Linux uses monitor socket pair because hostap is a process and wpa_msg
does cross-process communication.
But zephyr hostap is used as module in the same binary with
zephyr kernel.
So the usage is different and we don't need to use socket pair to
notify ctrl_iface monitors.
As long as we don't do time-consuming process in zephyr_wpa_msg_cb,
it won't affect hostap task.
So the zephyr_wpa_msg_cb will only filter and restore interesting logs,
or raise mgmt events to wifi l2 mgmt task.

Fix:
Remove socket send flow in wpa_msg.
Directly filter and handle text in zephyr_wpa_msg_cb,
coding in zephyr repo.
This will save 2K RAM in supplicant case and 4K RAM in
supplicant & hostapd coex case, in current default hostap
socket pair config.
And this will save max 50% loops of hostap task.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-04-24 10:38:03 +02:00
Fengming Ye
c767fa51e2 manifest: update hostap revision
Update hostap revision to fix wifi dpp fail due to
wpa_msg draining socket pair FIFO.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-04-24 10:38:03 +02:00
Ricardo Rivera-Matos
eca57905a3 dts: arm: st: f4: adds stm32f401Xd dtsi
Adds a dtsi file for the STM32F401XD family of devices. These devices
are closely related to the STM32F401XE family of devices but with a
reduced flash memory from 512kB to 384kB.

Signed-off-by: Ricardo Rivera-Matos <ricardo.rivera-matos@cirrus.com>
2025-04-24 01:27:43 +02:00
Ricardo Rivera-Matos
2b553ba74f soc: stm32: Adds support for STM32F401XD variants
Introduces config file entries for STM32F401XD variants. The
STM32F401XD family is related to the STM32F401XE family but with a
reduced flash memory.

Signed-off-by: Ricardo Rivera-Matos <ricardo.rivera-matos@cirrus.com>
2025-04-24 01:27:43 +02:00
TOKITA Hiroshi
0032951e29 boards: m5stack: cores3: Add AXP2101 charger configuration
Adding AXP2101 battery charger configuration.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-24 01:27:34 +02:00
Javad Rahimipetroudi
42683c369c samples: spi_flash: add support for blackpill_f411ce
This commit add spi nor flash support for blackpill_f411ce board

Signed-off-by: Javad Rahimipetroudi <javad321javad@gmail.com>
2025-04-24 01:27:27 +02:00
S Swetha
cbc5fdbb4b tests: kernel: spinlock: Increase lock contention
This commit resolves lock contention
issues by increasing the probablity of
contention during the test execution.

Increased wait delay when lock is taken
and Reduced wait delay when the lock is
released.

Achieved 99% lock contention probablity,
verified through runtime metrices.

Signed-off-by: S Swetha <s.swetha@intel.com>
2025-04-24 01:27:00 +02:00
Jukka Rissanen
c09ec58f01 samples: net: dsa: Enable DHCPv4 and start it when interface is up
Enable DHCPv4 when network interface goes up. This makes it easier
to test IP connectivity with DSA.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-04-24 01:26:46 +02:00
Yangbo Lu
4eb1669ac6 samples: net: dsa: convert to new dsa core driver
Converted to new dsa core driver. And adapted mimxrt1180_evk to it.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-04-24 01:26:46 +02:00
Yangbo Lu
14e4e12441 samples: net: dsa: rename master/slave to conduit/user
Renamed master/slave to conduit/user.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-04-24 01:26:46 +02:00
Yangbo Lu
e2488977e5 boards: nxp: mimxrt1180_evk: convert to random mac addresses for switch
Converted to use random mac addresses for switch.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-04-24 01:26:46 +02:00
Yangbo Lu
12ccaa1b46 drivers: ethernet: dsa_nxp_imx_netc: adapt to new DSA framework
Adapted to use new DSA framework. And related platforms converted
in samples too.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-04-24 01:26:46 +02:00
Yangbo Lu
2967b8db7e drivers: ethernet: eth_nxp_imx_netc: support no-tag type DSA conduit
Added support for no-tag type DSA conduit.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-04-24 01:26:46 +02:00
Yangbo Lu
81e0367e98 doc: connectivity: networking: add DSA document
Added DSA document.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-04-24 01:26:46 +02:00
Yangbo Lu
f0b1cb578f net: dsa: introduce new DSA framework
The new DSA framework purpose and changes are as below.

- Aligned to Linux DSA framework which has been already mature framework
  for many years, For now in zephyr, the DSA components were splited
  as: switch, port, master(not need driver file for now), slave, and tag.
  Seperated drivers were used for maintaining and developing new
  features.

- The unified dts bindings (aligned to linux) were supported. The port
  driver would parse DTS to decide the port type (master port, slave
  port, or cpu port) to set up the switch. All the ports registered as
  standard ethernet devices. (dsa port and dsa switch tree was not
  supported.)

- How to add DSA device driver based on the framework? All the device
  driver needing to do is providing dsa_spi implementation and private
  data, and calling below initialization.

    DSA_INIT_INSTANCE(n, _dapi, data)

- For switch tag case, recv/xmit helpers in dsa_api could be used for
  taging/untagging. No modified ethernet drivers.
  For no-tag type case, ethernet driver of master port should support
  packet injection/extraction for slave ports leaving NULL recv/xmit.

The dsa_nxp_imx_netc.c driver will be the first example of the new DSA
framework.

The future work for DSA will be supporting bridge for ports. We may align
Linux to give users two options to use DSA device:

- Standalone mode: the switch ports work as regular ethernet ports.

- Bridge mode: switch mode with virtual bridge device which could be
  assigned IP address.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-04-24 01:26:46 +02:00
Yangbo Lu
ba2028d19c dts: bindings: dsa: add common bindings file
Added common bindings file for dsa, and adapted NETC to it.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-04-24 01:26:46 +02:00
Yangbo Lu
b22db75cec include: ethernet: rename dsa master/slave to conduit/user
Renamed dsa master/slave to conduit/user for capabilities.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-04-24 01:26:46 +02:00
Yangbo Lu
018a718e12 net: dsa: make current DSA core driver obsolete
Current DSA TX/RX way was hard-coded in ethernet devices driver
with ETH_DSA_SUPPORT and NET_DSA.
This patch is to make such way obsolete, as we actually will support
a better DSA framework to handle this in NET/DSA core driver.
To make legacy devices not affected, below options are used instead.

- ETH_DSA_SUPPORT_DEPRECATED
- NET_DSA_DEPRECATED

Once the legacy devices are converted to new DSA framework, this code
could be removed.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-04-24 01:26:46 +02:00
Gerson Fernando Budke
b939b1d07c MAINTAINERS.yml: Add Bouffalo Lab entries
Introduce Bouffalo Lab platform.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-04-24 01:26:37 +02:00
Gerson Fernando Budke
531196086b boards: riscv: Introduce bl604e_iot_dvk
Add initial version.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-04-24 01:26:37 +02:00
Gerson Fernando Budke
531915deda drivers: serial: bouffalolab: Add bflb serial driver
Add Bouffalo Lab serial driver. The driver uses pinctrl to configure
pins and have power management capabilities.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-04-24 01:26:37 +02:00
Gerson Fernando Budke
6520633a90 drivers: pinctrl: bouffalolab: Add bflb pinctrl driver
Add Bouffalo Lab pinctrl driver.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-04-24 01:26:37 +02:00
Gerson Fernando Budke
3c45c8b5cf soc: riscv: bouffalolab: Add bl60x series cpu
Add initial version.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-04-24 01:26:37 +02:00
Gerson Fernando Budke
cb84060409 dts: riscv: bouffalolab: Add bl60x series cpu
Introduce Bouffalo Lab vendor with BL60x cpu.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-04-24 01:26:37 +02:00
Gerson Fernando Budke
fab1b2bd11 dts: bindings: vendor-prefixes: Add Bouffalo Lab prefix
Add necessary bflb prefix to be used on devicetree bindings and identify
the board vendor.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-04-24 01:26:37 +02:00
Gerson Fernando Budke
0020af2a8b west: Introduce hal bouffalo lab
Add initial version that uses bouffalo_sdk 1.4.5.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-04-24 01:26:37 +02:00
Cla Mattia Galliard
4d87827e04 MAINTAINERS.yml: Add clamattia as collaborator for ethernet
Add clamattia as collaborator in the area of ethernet to the
MAINTAINERS.yml file.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-04-24 01:26:26 +02:00
Haiyue Wang
9c9c080b68 pmci: mctp: Fix No SOURCES CMake warning
The commit 1e0af58b51 ("pmci: Move MCTP into the PMCI subsys") changes
'mctp' directory adding to unconditionally, which will cause:

CMake Warning at ./zephyrproject/zephyr/CMakeLists.txt:1022 (message):
  No SOURCES given to Zephyr library: subsys__pmci__mctp

  Excluding target from build.

Signed-off-by: Haiyue Wang <haiyuewa@163.com>
2025-04-23 17:55:19 +02:00
Arkadiusz Balys
e93fdca1e4 doc: releases: add release note for OpenThread update
Add an entry to the release notes and migration guide regarding
moving OpenThread-related Kconfig options from
subsys/net/l2/openthred/Kconfig to modules/openthread/Kconfig.

Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
2025-04-23 17:54:58 +02:00
Arkadiusz Balys
66e78e05d3 openthread: Separate OpenThread Kconfigs from L2 layer
Moved OpenThread-related Kconfigs from L2 layer to
modules/openthread. All of those configs were not strictly related
to the L2 layer, so they fits better to OpenThread module.
This operation allows using OpenThread Kconfigs even if L2 layer is
disabled.

Enabling NET_L2_OPENTHREAD also configures those configs by
selecting the OPENTHREAD kconfig, so there is no change regarding
backwards compatibility. The only change is that the Kconfigs
related to Thread were moved to the modules space, so their
location in the menuconfig also changed.

Once it is done, a choice for setting different L2 implementations
seems to be redundant.

Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
2025-04-23 17:54:58 +02:00
Anas Nashif
a07b6563a8 doc: semihosting: fix section level
Wrong section level makes this section appear in the wrong table of
contents.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-23 17:54:47 +02:00
Derek Snell
699ebb3623 doc: tests: drivers: i2c_target_api: correct comments for frdm_mcxn947
Corrects GPIO signal names shorted together for this test.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-04-23 17:54:43 +02:00
Fin Maaß
e6d6aacf32 ci: set_assignee: don't allways pick next area when submitter = assignee
we don't want to pick the next area when there
are other maintainers available in the same area.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-23 17:54:38 +02:00
Omkar Kulkarni
4680590fda Bluetooth: GATT: Clarify start and end handles
Clarifies what does start_handle and end_handle means in the GATT API.

Signed-off-by: Omkar Kulkarni <omkar.kulkarni@nordicsemi.no>
2025-04-23 15:07:27 +02:00
Yunshao Chiang
13087ee1b0 drivers: adc: add it515xx_evb board adc driver
Add it515xx analog to digital converter driver which supports 8 channels
ch0 ~ ch7 and 12-bit resolution.

Signed-off-by: Yunshao Chiang <Yunshao.Chiang@ite.com.tw>
2025-04-23 15:02:36 +02:00
Greg Leach
2aff40b1b1 tests: Add BL54L15/L15u DVK support
Adds support for the BL54L15 and BL54L15u DVK boards.

Signed-off-by: Greg Leach <greg.leach@ezurio.com>
2025-04-23 15:02:20 +02:00
Greg Leach
23338e5708 samples: Add BL54L15/L15u DVK support
Adds support for the BL54L15 and BL54L15u DVK boards.

Signed-off-by: Greg Leach <greg.leach@ezurio.com>
2025-04-23 15:02:20 +02:00
Greg Leach
f0eaba4ef7 boards: ezurio: bl54l15_dvk: Add BL54L15/L15u DVK support
Adds support for the BL54L15 and BL54L15u DVK boards.

Signed-off-by: Greg Leach <greg.leach@ezurio.com>
2025-04-23 15:02:20 +02:00
Chaitanya Tata
9c7e8ba679 drivers: nrf_wifi: Move AP mode depedency to LPM
Recovery only needs LPM, rest dependencies come through LPM, so, move
them to the source.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-23 15:00:27 +02:00
Chaitanya Tata
52c156a53d drivers: nrf_wifi: Disable LPM for radio test
This is only meant for operational modes not test modes.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-23 15:00:27 +02:00
Chaitanya Tata
5d81558ff3 manifest: nrf_wifi: Pull RPU recovery fixes
Minor fixes for RPU recovery.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-23 15:00:27 +02:00
Fin Maaß
8b322a4ed5 docs: releases: mention deprecation of CONFIG_HAWKBIT_DDI_NO_SECURITY
mention deprecation of CONFIG_HAWKBIT_DDI_NO_SECURITY
in release notes

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-23 15:00:05 +02:00
Fin Maaß
89ad446b27 mgmt: hawkbit: deprecate HAWKBIT_DDI_NO_SECURITY
anonymous/no authentication mode had been removed
from the last hawkBit server release, so mention it and
deprecate the option.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-23 15:00:05 +02:00
Fin Maaß
1db528fc45 mgmt: hawkbit: add more infos for authentication modes
add more infos for security token authentication modes

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-23 15:00:05 +02:00
Łukasz Iwaszkiewicz
2fa0afbc37 drivers: mdio_esp32: let the REF_CLK be initialized before the PHY.
When GPIO17 or 16 is used as an external REF_CLK signal, the output is
enabled in eth_esp32.c This was added in PR number #65759 and then refined
in PR #74442. However this does not work for PHYs which need the REF_CLK
for MDIO communication, such as LAN8720A. In such cases phy_mii driver
tries to get the ID of such a PHY before REF_CLK is present. Therefore
in this PR I propose to move REF_CLK initialization from eth_esp32.c to
mdio_esp32.c which gets initialized before PHY and ETH.

Signed-off-by: Łukasz Iwaszkiewicz <lukasz.iwaszkiewicz@gmail.com>
2025-04-23 14:59:36 +02:00
Jamie McCrae
a4e41f4d80 dts: common: nordic: nrf52840_partitions: Use equal partitions
Switches back to equal sized partitions, this fixes an issue
whereby the number of overhead sectors for a swap mode was
incorrectly listed as 2 when it should have been 1, and also
allows using any swap mode. This means that when using swap
using mode, 1 sector in the secondary partition will be unusable,
and when using swap using offset, 1 sector in the primary
partition will be unusable

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-23 11:49:01 +02:00
TOKITA Hiroshi
714852930e boards: m5stack: cores3: Add AXP2101 regulator configuration
Adding configuration for enabling AXP2101 regulator.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-23 11:48:54 +02:00
Jordan Yates
3048e6df6e samples: net: zperf: test NET_ZPERF_SERVER=n
Validate that zperf compiles without `NET_ZPERF_SERVER`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-23 11:48:42 +02:00
Jordan Yates
ed93ea3913 samples: net: enable NET_ZPERF_SERVER
Enable `NET_ZPERF_SERVER` for samples that currently enable `NET_ZPERF`
to prevent feature regressions.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-23 11:48:42 +02:00
Jordan Yates
00c68722d9 net: lib: zperf: TCP uploader: populate total_len
Populate the `total_len` field of the output results.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-23 11:48:42 +02:00
Jordan Yates
6ce51997e7 net: lib: zperf: conditional UDP/TCP compilation
Only compile in the UDP/TCP variants of the zperf functions if the
underlying support is present.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-23 11:48:42 +02:00
Jordan Yates
82d767585d net: lib: zperf: optional server support
Make the zperf server support optional, if only upload throughput
testing is required. This reduces the resources required to operate.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-23 11:48:42 +02:00
Jordan Yates
05d577993f net: lib: zperf: update descriptions
`NET_ZPERF` enables the core zperf utility library, not a shell module.
Add more specifics about what the utility can communicate with.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-23 11:48:42 +02:00
Robert Lubos
379e71def3 net: connection: Cleanup packet input processing
Part of the socket matching criteria for AF_PACKET family took place
inside conn_raw_socket() function, and some of it was redundant with
what already was checked in net_conn_packet_input(). Moreover, if the
packet cloning for packet socket failed for whatever reason, the packet
was reported as NET_DROP, which was confusing.
Finally, conn_raw_socket() updated network stats, which didn't really
work as net stats are only collected for UDP/TCP protocols and not for
L2 level protocols.

Therefore, cleanup the processing by:
  * Moving all socket matching criteria into net_conn_packet_input()
    for clarity,
  * Drop unneeded net stats functions,
  * Clarify NET_DROP strategy for packet socket input.
    net_conn_packet_input() should only be responsible for delivering
    packets to respective packet sockets, it should not decide whether
    to drop the packet or not - it's L2/L3 processing code
    responsibility. Therefore, assume this function forwards packet for
    further processing by default, and only allow small optimization to
    return NET_OK if the packet socket was really the only endpoint in
    the system.
  * And finally, since now conn_raw_socket() responsibility was to clone
    the packet for the respective socket, and was almost identical to a
    corresponding function for raw IP sockets, unify the two functions.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-23 11:48:33 +02:00
Robert Lubos
32f3ce396f net: connection: Split net_conn_input()
The current implementation of net_conn_input() can accept different
packet types, with completely different processing code, resulting in a
function which is pretty bloated, sliced with conditionally enabled code
and hard to understand and therefore maintain.

This commit splits that function into smaller ones, specialized for
different packet types (and entry levels). The following functions have
been extracted from the original one:
  - net_conn_packet_input() for early packet processing (covering
    AF_PACKET family sockets)
  - net_conn_raw_ip_input() for raw IP packets processing (covering
    AF_INET(6)/SOCK_RAW sockets)
  - net_conn_can_input() for CAN packets processing (covering AF_CAN
    family sockets)

The net_conn_input() function stripped from above cases now only takes
care of packets that have been processed by respective L4 and are
intended for regular TCP/UDP sockets.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-23 11:48:33 +02:00
Robert Lubos
edba291799 net: core: Pass the actual LL proto for DGRAM packet sockets
After L2 processing, the LL protocol type is already known and should be
set accordingly on the packet. Therefore it can be passed to the
net_packet_socket_input() function to allow proper socket filtering
based on protocol.

Additionally, as LL protocol type is 16 bit value, fix the proto
parameter type in net_packet_socket_input().

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-23 11:48:33 +02:00
Cong Nguyen Huu
b985b9437c drivers: uart_nxp_s32_linflexd: support config via devicetree
Added support for initialization configuration via Devicetree.

Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
2025-04-23 11:48:24 +02:00
Cong Nguyen Huu
92b57ac654 dts: bindings: serial: uart-controller: expand parity type support
Enhanced uart-controller.yaml to expand parity type support,
now including 'mark' and 'space' options.

Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
2025-04-23 11:48:24 +02:00
Mark Wang
5c4dece721 bluetooth: classic: smp: fix the wrong Responder Key Distribution
BR_SEND_KEYS_SC should be used to determine the value of
Responder Key Distribution when sending pairing_response to
reply smp br pairing_request.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-04-23 10:04:23 +02:00
Hao Luo
eebd10de8a soc: ambiq: Add missing LOG_MODULE_REGISTER in soc
Need to register log module as we declare it in power.c

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-23 10:04:09 +02:00
Khoa Nguyen
5d0f4e3677 tests: drivers: flash: common: Fixing the overlap case
For the flash with the block size equal to or smaller than 64 bytes,
using a specific "32" bytes for adding for destination_offset and "32"
bytes for subtracting the size that need to copy is not correct.

As a solution, I will add one-fourth of a block size for the
destination_offset and modify the size that need to copy to
[block size + one-fourth of a block size].

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-04-23 10:04:02 +02:00
Fin Maaß
44f9f9fb28 drivers: ethernet: phy: clarify phy_link_callback_set()
clarify phy_link_callback_set() duties.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-23 10:03:55 +02:00
Fin Maaß
3237fd2a54 drivers: ethernet: atmel_sam_gmac: move net_if_carrier_off()
move net_if_carrier_off() before
phy_link_callback_set() to ensure the carrier is
not truned off, when the link is already up.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-23 10:03:55 +02:00
Fin Maaß
ddfb3909f6 drivers: ethernet: nxp_imx_netc_psi: move net_if_carrier_off()
move net_if_carrier_off() before
phy_link_callback_set() to ensure the carrier is
not truned off, when the link is already up.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-23 10:03:55 +02:00
Fin Maaß
0e55a9565d drivers: ethernet: esp32: move net_if_carrier_off()
move net_if_carrier_off() before
phy_link_callback_set() to ensure the carrier is
not truned off, when the link is already up.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-23 10:03:55 +02:00
Kate Wang
b74feaacb8 samples: drivers: display: Enable example for g1120b0mipi on mimxrt798s
Enable display example for g1120b0mipi shield on mimxrt798s board and
update board document.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-04-23 10:03:42 +02:00
Kate Wang
4282687d40 boards: shields: Support panel g1120b0mipi and rk055hdmipi4ma0 on RT700
Add board specific overlay and configuration for display panel
g1120b0mipi and rk055hdmipi4ma0.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-04-23 10:03:42 +02:00
Kate Wang
041f2865bb boards: nxp: add configuration for MIPI-DSI and LCDIF on mimxrt700_evk
1.Add clock configuration for DCNano LCDIF video and
command mode.
2.Update board dts file

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-04-23 10:03:42 +02:00
Kate Wang
560b8bab37 dts: arm: nxp: update RT7xx dts files for LCDIF and MIPI-DSI
Add configuration for LCDIF and MIPI-DSI.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-04-23 10:03:42 +02:00
Kate Wang
587042d0df soc: nxp: imxrt: imxrt7xx: update rt7xx soc files
Add functions to configure MIPI_DSI power and clock when
MIPI_DSI is enabled.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-04-23 10:03:42 +02:00
Kate Wang
90c0af2018 drivers: clock_control: update clock_control_mcux_syscon driver for RT700
Update pixel clock control to support RT700.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-04-23 10:03:42 +02:00
Kate Wang
d628bfc148 drivers: mipi_dsi: dsi_mcux_2l: Use NXP DCNano DBI driver for memory write
There is no smartdma on RT700, so to perform DCS memory write the CPU has
to write APB buffer word by word, which is too slow for most applications.
But the DCNano in DBI mode can be used to interface with the MIPI-DSI on
RT700, and send data to MIPI-DSI to transfer, once it is properly
configured, which solves the issue.
First added new parameter first_write in display_buffer_descriptor to let
NXP DCNano DBI driver know to use MIPI_DCS_WRITE_MEMORY_START or
MIPI_DCS_WRITE_MEMORY_CONTINUE.
Second updated the MCUX MIPI-DSI driver to support using the NXP DCNano DBI
driver for memory write.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-04-23 10:03:42 +02:00
Kate Wang
0017bfcedc drivers: mipi_dbi: introduce NXP DCnano driver
Introduce NXP NCNano driver using MIPI DBI class. This peripheral
supports 8080 and 6800 mode. The driver also supports used with
nxp,mipi_dsi_2l driver, for the panel with DPHY bus, such as g1120b0mipi.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-04-23 10:03:42 +02:00
Kate Wang
b442b0b985 drivers: mipi_dbi: Add defines for color coding
Add defines for color coding of DBI Type A(Motorola 6800)
and B(Intel 8080) bus. This is to comply with the MIPI
Alliance Standard for Display Bus Interface v2.0.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-04-23 10:03:42 +02:00
Kate Wang
058a162baf drivers: display: Update nxp,dcnano-lcdif to support IP change on RT700
Update nxp,dcnano-lcdif to support IP change on RT700. There are extra
registers need to be configured for the lcdif on RT700. Add new binding
item "version" to tell which version of the IP the SoC has.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-04-23 10:03:42 +02:00
Kate Wang
ed63240804 drivers: display: Fix typo in kconfig comment of nxp,dcnano-lcdif.
Should be DISPLAY_MCUX_DCNANO_LCDIF instead of DISPLAY_MCUX_ELCDIF.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-04-23 10:03:42 +02:00
TOKITA Hiroshi
6463c68bc3 doc: extensions: application: Add args for debug related commands
The same as flash-args for flash, we will add commands to debug,
debugserver, and attach to specify arguments in the document.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-23 02:16:29 +02:00
Jilay Pandya
82c6add9b1 drivers: stepper: gpio: refactor work rescheduling logic
update remaining steps should just update the remaining steps, rescheduling
should happen after updating steps and hence is moved to position mode task
which is also in coherence with velocity mode task

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-04-23 02:16:19 +02:00
Luis Ubieda
150cd56643 tests: build_all: sensor: Add ICM45686 as an I2C device
To validate build-time functionality.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-23 02:15:34 +02:00
Luis Ubieda
0a4d86c557 sensor: icm45686: Add I2C bus support
Validated for read/decode APIs, as well as Streaming mode (FIFO).

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-23 02:15:34 +02:00
Luis Ubieda
b22299d262 sensor: icm45686: Rename REG_SPI_READ_BIT to REG_READ_BIT
So it's generic irrespective to the bus. Tested for I2C and SPI.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-23 02:15:34 +02:00
Luis Ubieda
1d4d7422b0 sensor: icm45686: Refactor DTS bindings to unify common properties
To split bus support into separate files. This patch does not introduce
any functionality, but rather precedes a patch introducing I2C bus
support.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-23 02:15:34 +02:00
Christoph Winklhofer
3b29b9fa3b tests: logging: restore userspace testing
Restore userspace testing that was removed with commit 'aa2b72d32af
(tests: logging: remove userspace testing, 2024-04-10)' and reported in
the issue #49213.

For the tests running with threads in user space (with ZTEST_USER),
the memory partitions are configured in the test-suite setup.

Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-04-23 02:15:25 +02:00
Christoph Winklhofer
501f33edea arch: Unify declaration of text region
The declaration for the text region '__text_region_start' and
'__text_region_end' should be consistent with the declaration in the
include file 'zephyr/linker/linker-defs.h'.

The local declarations are:
  extern uintptr_t __text_region_start, __text_region_end;
whereas 'linker_defs.h' declares them as:
  extern char __text_region_start[];
  extern char __text_region_end[];

This may result in conflicting types when 'linker_defs.h' is indirectly
included. Hence, remove the local declarations.

Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-04-23 02:15:25 +02:00
Christoph Winklhofer
8c7aded4c1 logging: Assign module data to memory partition 'k_log_partition'
The logging module data is assigned to the memory partition
'k_log_partition' so that a user mode thread can access this data (see
k_mem_domain_add_thread()). The 'k_log_partition' is created when:
- CONFIG_USERSPACE=y
- CONFIG_LOG_ALWAYS_RUNTIME=y

The option CONFIG_NO_OPTIMIZATIONS=y forces the logging module to use
the runtime message creation CONFIG_LOG_ALWAYS_RUNTIME=y. This raises a
MPU violation when logging is used in a user mode thread since this
thread is not allowed to access the module data (e.g. __log_level,
__log_current_const_data).

Note that the user mode thread may also require access to the partition
'z_libc_partition'.

Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-04-23 02:15:25 +02:00
Christoph Winklhofer
77925656ab logging: Fix runtime message creation in user-mode thread
The runtime message creation (CONFIG_LOG_ALWAYS_RUNTIME=y) in a user-
mode thread raises a MPU violation, e.g. call LOG_INF("Test") in a
user-mode thread.

The function 'z_log_msg_runtime_vcreate' runs in user mode but works
with Kernel data. Hence, create the cbprintf package on the stack (of
the user mode thread) and pass it further to the syscall
'z_log_msg_static_create'.

Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-04-23 02:15:25 +02:00
Marvin Ouma
83aafaf1ae tests: posix: xsi_realtime: move more tests into xsi_realtime
move tests with _POSIX_PRIORITY_SCHEDULING Option to
xsi_realtime testsuite

Signed-off-by: Marvin Ouma <pancakesdeath@protonmail.com>
2025-04-23 02:15:17 +02:00
Johann Fischer
52db58defa usb: device: remove loopback function in favor of new device stack
This function is used for testing purposes only, there is no real use
for it in a user application. Remove in favor of implementation in new
device stack.
Also remove the part of the documentation that depends on loopback.
Documentation on how to implement your own USB device function using the
new USB device support will follow during the documentation rework.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-23 02:15:10 +02:00
Johann Fischer
5b385493b3 samples: usb: testusb: use new USB device stack
Rework sample to use new USB device stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-23 02:15:10 +02:00
Chris Friedt
5fb47cd97f scripts: check_compliance: un-ignore diff and patch for CheckPatch
Un-ignore diff and patch files for CheckPatch.

This was originally added to avoid throwing false-positives when diff
and patch files were actually in the repo, since it would incorrectly
try to perform code-formatting checks on those files instead of on
the content of the commit.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-22 13:14:30 -04:00
Matt Ihnen
132289ec33 drivers: entropy: stm32: fix compile errors for STM32L4 series
The low level function names in the stm32l4xx low level driver are
different than all the other stm32's even though the functionality is the
same. This breaks the entropy module for these parts. This patch fixes the
build and has been tested on a custom stm32l4p5 board.

This STM32CubeL4 issue has been reported (ST Internal Reference: 207828).

Fixes: https://github.com/zephyrproject-rtos/zephyr/issues/88621

Signed-off-by: Matt Ihnen <matt.ihnen@gmail.com>
2025-04-22 16:54:52 +02:00
Sai Santhosh Malae
0d547d4e8a drivers: dma: siwx91x: SRAM desc alignment bug fix
Addressed an issue where alignment of dma desc varaible
of dma0 is corrected to 1024 instead of 512.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-04-22 16:54:11 +02:00
Sai Santhosh Malae
19e4c56e23 drivers: dma: siwx91x: Bug fix for regular DMA transfers
Addressed an issue where regular/non-scatter-gather DMA
transfers were not explicitly using the primary DMA descriptor
structure. This ensures a smooth regular DMA transfer after
any scatter gather transfer.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-04-22 16:54:11 +02:00
Sai Santhosh Malae
a7c06773fe drivers: dma: siwx91x: distinguishing mem to mem transfers
Introduced a new variable in the `dma_siwx91x_channel_info`
structure to provide a clean way to differentiate transfer
directions. This enhancement is utilized to trigger software
requests specifically for memory-to-memory transfers

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-04-22 16:54:11 +02:00
Emil Gydesen
11c3ee12a8 Bluetooth: BAP: Sink: Move mod_src_param to RAM
The mod_src_param was several places stored on the stack.
However this is a complex paramater struct that has
2 Kconfig options that can significantly increase the size,
and the maximum size of the parameter is nearly 8 KiB, and
was always place the in the BT RX thread's stack.

For this reason, the param is now stored in a single
static variable in RAM instead, so that the BT RX thread's stack
does not need to be increased based on the Kconfig options,
as that is quite difficult for users to be aware of.

The add_src_param has been left as is, as that stored in
the calling thread, and it is easier for an application
to determine if the calling thread needs additional stack
space.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-22 16:53:58 +02:00
Gudipudi Ramana Kumar
aafcd4f851 bluetooth: audio: Update bad code in BASS to be v1.0.1 compliant
Bad Broadcast Code in BASS/Scan Delegator if BIG_Encryption
field value = 0x03 (Bad_Code), Bad_Code shall be set to the
value 0xFFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF according to BASS v1.0.1

Signed-off-by: Gudipudi Ramana Kumar <gudipudiramanakumar@gmail.com>
2025-04-22 16:53:49 +02:00
Jamie McCrae
7e6410de2e boards: nordic: nrf52840dk: Add QSPI nrfutil config
Adds a configuration file which is used with nrfutil to allow
programming QSPI on the device

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-22 16:53:32 +02:00
Jamie McCrae
63c4951e38 boards: nordic: nrf5340dk: Add QSPI nrfutil config
Adds a configuration file which is used with nrfutil to allow
programming QSPI on the device

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-22 16:53:32 +02:00
Jamie McCrae
cd79d233e6 boards: nordic: nrf7002dk: Add SPI nrfutil config
Adds a configuration file which is used with nrfutil to allow
programming the SPI flash on the device

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-22 16:53:32 +02:00
Jamie McCrae
55a8198d35 boards: nordic: thingy53: Add QSPI nrfutil config
Adds a configuration file which is used with nrfutil to allow
programming QSPI on the device

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-22 16:53:32 +02:00
Egill Sigurdur
6d710a21cb doc: Make SD card peripheral docs more generic, fix one acronym
Fixes an issue in which "SDHC" had been incorrectly expanded to
"Secure Digital High Capacity" instead of "SD Host Controller".

Since this page is listed under "Peripherals" and since the
SD Host Controller API is not supposed to be used by applications,
the more generic and recognizable title "SD card interface" is used,
and users are pointed to pages relevant to them (disk access API
and SD card subsystem).

Signed-off-by: Egill Sigurdur <egill@egill.xyz>
2025-04-22 16:53:05 +02:00
Josuah Demangeon
0b2d45595e drivers: video: hotfix: force use of constant value for 'source_dev'
In Clang 16 run with some flags, the compiler does not accept a static
const variables as struct initializer. This caused build errors in only
some contexts. Always use the devicetree macros to access the source
device node as a workaround.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-04-22 15:04:47 +02:00
Guillaume Gautier
a15b66309d dts: arm: st: n6: fix axisram1 size
In STM32N6, AXISRAM1 is next to the 400kB FLEXRAM.
By default, the FLEXRAM is configured to extend the AXISRAM1 which put
its total size to 1024kB.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-04-22 15:04:38 +02:00
Simon Gilbert
5c04df9127 i2c: stm32: add DMA callback stubs to avoid nullptr calls in ISR context
Add stub functions for the I2C DMA callbacks, which are invoked
during or upon completion of DMA-based I2C transactions. Without
these, NULL pointer calls occur on DMA transfer complete or error
events, leading to faults within ISR context.

Signed-off-by: Simon Gilbert <srdgilbert@gmail.com>
2025-04-22 15:04:11 +02:00
Simon Gilbert
4348be608d i2c: stm32: add missing DMA configuration fields
Add missing fields for DMA tx and rx configuration macros

Signed-off-by: Simon Gilbert <srdgilbert@gmail.com>
2025-04-22 15:04:11 +02:00
Anas Nashif
c2c3f7570f tests: lib: fix doxygen groups
Group test using doxygen and general fixes to structure.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-22 14:03:29 +02:00
Anas Nashif
e5f841c183 tests: kernel/arch: various doxygen fixes
Group test using doxygen and other doxygen fixups.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-22 14:03:29 +02:00
Anas Nashif
29b1131f66 doc: Create dox file for tests
Create top level doxygen groups to be used by tests and move to
dedidcated dox file for tests.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-22 14:03:29 +02:00
Anas Nashif
feaf9893cc tests: fatal: group fatal tests
Group test using doxygen.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-22 14:03:29 +02:00
Anas Nashif
a816bfdfec test: kenrel: group sleep tests
Group test using doxygen.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-22 14:03:29 +02:00
Anas Nashif
39b1312392 tests: kernel: mbox: fix doxygen grouping
Fix grouping and general doxygen fixups.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-22 14:03:29 +02:00
Anas Nashif
70b2b952db tests: events: fix doxygen groups
Fix grouping and general doxygen fixups.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-22 14:03:29 +02:00
Anas Nashif
bb8b76094f tests: semaphore: fix doxygen groups
Fix grouping and general doxygen fixups.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-22 14:03:29 +02:00
Anas Nashif
4ca7c14eab tests: kernel: fix doxygen comments/groups for condition variables
Fix grouping and general doxygen fixups.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-22 14:03:29 +02:00
Anas Nashif
7b3ed2fbb4 tests: kernel/common: cleanup doxygen
Fix grouping and general doxygen fixups.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-22 14:03:29 +02:00
Anas Nashif
7d36a18b7b tests: kernel: fix kheap doxygen groups
Fix grouping and general doxygen fixups.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-22 14:03:29 +02:00
Anas Nashif
d837b644dd tests: kernel: threads: improve doxygen comments, layout
Fix grouping and general doxygen fixups.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-22 14:03:29 +02:00
Guillaume Gautier
f3ea832835 boards: st: n6: use ic3 as xspi kernel clock
Configure and enable IC3 to 400MHz and use it as kernel clock for XSPI
instances.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-04-22 14:03:22 +02:00
Guillaume Gautier
eab11acead dts: arm: st: n6: use default values for xspi kernel clock
Use the default kernel clock (HCLK5) for the XSPI instances instead of the
peripheral clock which may not be enabled at all.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-04-22 14:03:22 +02:00
Guillaume Gautier
f5a5dfcc43 boards: st: n6: use hse as system source clock
Use HSE as system source clock and adjust the different clock parameters
to use the highest admissible frequency (according to datasheet DS14791):
- CPU clock: 800MHz
- NPU clock: 1000MHz
- AXI clock: 800MHz
- AHB clock: 200MHz
Remove the setting of APB prescalers since they are constants set to 1.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-04-22 14:03:22 +02:00
Guillaume Gautier
9f02634d3f soc: st: stm32n6: configure regulator for best performance
Configure the main internal Regulator output voltage for best performance
on STM32N6.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-04-22 14:03:22 +02:00
Guillaume Gautier
744d6e8290 dts: bindings: clock: stm32n6: fix apb prescalers as constants
Errata sheet ES0620 indicates that STM32N6 APB prescalers cannot be
modified.
Fixes the value of all APB prescalers to 1 (default value).

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-04-22 14:03:22 +02:00
Chris Friedt
9535a69af8 tests: posix: semaphores: ensure test is not skipped
Commit f7633a55aa moved the tests for the
POSIX_SEMAPHORES Option Group from the tests/posix/common testsuite to
its own dedicated testsuite.

However, there was a copy-paste error. Previously, tests would have been
run only once when dynamic threads were enabled, and then skipped when
dynamic threads were disabled, since that follows the posix programming
model better. However, dynamic threads were never actually enabled after
moving to the new testsuite. So all tests were effectively skipped.

Add the necessary options to prj.conf in order to ensure that there are
sufficient dynamic threads available to run the testsuite.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-22 14:03:10 +02:00
Chris Friedt
a08240ba0d tests: posix: semaphores: coalesce string constants
Just a formatting change, in a separate commit.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-22 14:03:10 +02:00
Chris Friedt
c2609155b3 tests: posix: semaphores: reduce execution time by 5s
There is no reason to use a 5s wait time in tests. This can add up quite
significantly across multiple platforms that execute in real-time under
qemu (or even just on real hardware).

Speedup observed with qemu_cortex_a53/qemu_cortex_a53/smp

Before:
```
START - test_named_semaphore
 PASS - test_named_semaphore in 5.688 seconds
```

After:
```
START - test_named_semaphore
 PASS - test_named_semaphore in 0.783 seconds
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-22 14:03:10 +02:00
Chris Friedt
0449324257 posix: semaphores: use a default minimal heap-add for semaphores
The implementation of POSIX_SEMAPHORES historically used heap allocation
and has not yet been transitioned to a pool allocator.

However, since 590258b381, the default heap-add with CONFIG_POSIX_API
has been reduced from 1 kiB which causes tests/posix/semaphores to fail
due to NULL being returned from a call to k_calloc().

Create a minimal heap-add for the POSIX_SEMAPHORES Option Group.

This can be removed at a future date if semaphores are changed to use
a pooled allocator and fixed-size name, rather than heap allocation.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-22 14:03:10 +02:00
Glenn Andrews
a2da571172 boards: disco_l475_iot1: fix arduino_i2c assignment
0f05f58bf5 assigned the `arduino_i2c` to the incorrect pins for the Arduino UNO connector. This assigns them back.

signed-off-by: Glenn Andrews <glenn.andrews.42@gmail.com>
2025-04-22 14:03:01 +02:00
Fin Maaß
70a787cd18 drivers: mdio: Update shell commands to include device argument
Update shell commands to include device argument

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-22 14:02:51 +02:00
Amneesh Singh
d7bb10d85c drivers: timer: ti_dmtimer: provide timer IRQ for tests
This patch allows ti_dmtimer to provide the symbol z_sys_timer_irq_for_test
whenever tests are enabled. Not providing this results in failing some
kernel test cases which require this symbol.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-04-22 14:02:44 +02:00
Dylan Hsieh
f3bc550117 driver: adc: add adc driver for rts5912
Add adc driver for Realtek rts5912.

Signed-off-by: Dylan Hsieh <dylan.hsieh@realtek.com>
2025-04-22 14:02:37 +02:00
Titan Chen
2bca8d4e59 drivers: counter: rts5912: add support timer32 counter driver
Port rts5912 timer32 counter driver on Zephyr

Signed-off-by: Titan Chen <titan.chen@realtek.com>
2025-04-22 14:02:27 +02:00
Tahsin Mutlugun
e219da1ff6 tests: i2c_ram: rtio: Ensure completion queue events get released
Release completion queue events left over from the previous test and
make sure a completion queue event gets released after it is consumed.
Otherwise newer cqes may be unable to be submitted due to completion
queue being full.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-04-22 12:10:12 +02:00
Tahsin Mutlugun
c1c31e68b5 drivers: i2c_rtio: max32: Inform the rtio executor on errors
Call i2c_rtio_complete with a non-zero status code in case of an error
so that application does not get stuck waiting for the completion queue
event. An example to this situation could be an I2C target device
responding with a NACK to a read or write request by the controller.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-04-22 12:10:12 +02:00
Hao Luo
f28f4120ef drivers: pinctrl: Add sdif configs to ambiq pinctrl driver
Added sdio cd and wp pin configs to ambiq pinctrl driver

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-22 12:10:01 +02:00
Fabio Baltieri
4cfb1d3a2e MAINTAINERS: update Release Notes maintainers
Update Release Notes maintainers to the 4.2 release owners.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-04-22 12:09:51 +02:00
Tomi Fontanilles
03a35a4ea5 doc: releases: add release notes for TF-M update
Add an entry to the release notes regarding the TF-M 2.1.2 update.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-04-22 12:09:37 +02:00
Tomi Fontanilles
dfd0dd04c1 manifest: tf-m: update to 2.1.2
Update TF-M to 2.1.2 from version 2.1.1.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-04-22 12:09:37 +02:00
Anders Nielsen
b98bd7c145 drivers: stepper: adi_tmc: Add tmc51xx support
Add tmc51xx support based on tmc50xx implementation.

Signed-off-by: Anders Nielsen <anders.nielsen@prevas.dk>
2025-04-22 12:09:18 +02:00
Anders Nielsen
242e6ea12a drivers: stepper: adi_tmc: Prepare for tmc51xx support
Add Kconfig option. Find common regs. Update ramp generator data.

Signed-off-by: Anders Nielsen <anders.nielsen@prevas.dk>
2025-04-22 12:09:18 +02:00
Jan Kowalewski
92b2d46239 boards: ct: ctcc: remove unused peripherals
uart1 and adc are not physically routed to any pins in ctcc/nrf9161

Signed-off-by: Jan Kowalewski <jkowalewski@cthings.co>
2025-04-22 12:09:06 +02:00
Sebastian Bøe
3049e0c8b9 boards: nrf54h20: iron: keep cpusec_cpuapp_ipc
Support IPC between SEC and APP. This is needed for PSA Crypto
support.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-04-22 12:08:55 +02:00
Guillaume Gautier
785d0bbfb3 boards: st: n6_dk: fix sdmmc cd pin
CD pin of the SDMMC on the STM32N6570-DK board was incorrectly set as
PN8. Fixes the pin to PN12 as per the schematic.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-04-22 10:00:32 +02:00
Jordan Yates
80f7124155 samples: net: zperf: fix NRF_WIFI_DATA_HEAP_SIZE
Commit e33d9ee4 incorrectly stated that:
 > Now that nRF70 by default uses zero-copy fine-tune the configuration
   to get optimal memory while getting peak throughputs.

This is incorrect since `NRF_WIFI_ZERO_COPY_TX` is only enabled by
default for the nRF54L series. Update the data heap size so that the
smaller value is only used when `NRF_WIFI_ZERO_COPY_TX` is enabled.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-22 10:00:19 +02:00
Jordan Yates
86385590c2 wifi: nrf_wifi: net_if: allocate memory before mutex
Allocate the memory in `nrf_wifi_if_send` *before* taking the nrf70
global mutex. This prevents the function from deadlocking the
application if attempting to send under memory-pressure, since many of
the memory release paths also happen under the global mutex.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-22 10:00:19 +02:00
Make Shi
d879e8482f Bluetooth: Classic: L2CAP: Set the BR chan identifier for PENDING Case
When the connection status is "PENDING", need reset the br channel
identifier to the correct value before resend the connection response,
otherwise these is in an "ident mismatch" error being reported.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-04-22 10:00:08 +02:00
Jordan Yates
6695c8f0d6 doc: zbus: update iperf version information
Update iperf version information for use with zperf. Note the fallback
kconfig option for versions older than `2.0.10`, and remove the warning
about `LAST PACKET NOT RECEIVED!!!` since it is not longer present with
the fixed UDP header.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-22 09:59:57 +02:00
Jordan Yates
4582c64816 net: lib: zperf: warning on bad response flags
Output a warning if the server response does not have the expected
header flag set.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-22 09:59:57 +02:00
Jordan Yates
5c8b7cdd89 net: lib: zperf: fix internal UDP header definition
Fix the zperf UDP datagram header definition, as iperf introduced a
backwards incompatible format change in version 2.0.10 (August 2017).
```
struct UDP_datagram {
// used to reference the 4 byte ID number we place in UDP datagrams
// Support 64 bit seqno on machines that support them
    uint32_t id;
    uint32_t tv_sec;
    uint32_t tv_usec;
    uint32_t id2;
};
```

Update the header to the new format, with a Kconfig option to fall back
to the previous header definition.

The response decoding was testd with a nRF7002 client and
`iperf-2.2.1-win64.exe` server, with the output statistics struct now
containing the same information as reported on the PC server.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-22 09:59:57 +02:00
Andrej Butok
5f20f41808 samples: mcux_acmp: enable support for all mimxrt1170 revisions
Enables support for the mcux_acmp sample for all mimxrt1170 revisions.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-22 09:59:46 +02:00
Hugues Fruchet
24c584d2a4 drivers: clock: stm32: h7: fixed domain clock configuration
In some case, we may need to describe a domain clock for a device
while there is no way to configure it.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-04-22 09:59:34 +02:00
Alain Volmat
0501e7ad20 samples: drivers: display: add stm32n6570_dk specific conf
Add stm32n6570_dk conf file in order to increase the amount of
HEAP to ensure k_malloc allocation goes well.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-04-22 09:59:34 +02:00
Hugues Fruchet
f88aa82b39 boards: st: stm32n6570_dk: add display support
Add support of Rockchip RK050HR18C 800x480 RGB 24bits
panel connected on LTDC display parallel interface of
STM32N6570-DK board.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-04-22 09:59:34 +02:00
Hugues Fruchet
240737e1d3 dts: arm: st: n6: add ltdc node
Add LTDC node for STM32N6.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-04-22 09:59:34 +02:00
Hugues Fruchet
83b33d1e87 drivers: display: stm32_ltdc: configure RIF for LTDC layer 1
Configure RIF for LTDC layer 1.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-04-22 09:59:34 +02:00
Hugues Fruchet
873bba0a1b drivers: display: stm32_ltdc: add support of clock_configure
Add support of clock_configure() for clock source selection
through devicetree.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-04-22 09:59:34 +02:00
Hugues Fruchet
0da7671977 drivers: display: stm32_ltdc: add support of framebuffer in psram
Add support of framebuffer in PSRAM memory.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-04-22 09:59:34 +02:00
Hugues Fruchet
e15312bdb5 drivers: memc: stm32 xspi: add psram linker section
Add stm32_psram PSRAM linker section.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-04-22 09:59:34 +02:00
Davi Herculano
e554d90c78 soc: stm32f303re: add missing i2c3 node
Added I2C3 node definition for STM32F303xE.

Signed-off-by: Davi Herculano <davi.herculano@adam-audio.de>
2025-04-22 09:59:23 +02:00
Neil Chen
7077d1e0a6 boards: nxp: frdm_mcxa153: Support pwm for NXP frdm_mcxa153 board
Support pwm for NXP frdm_mcxa153 board.
Test with tests/drivers/pwm/pwm_api.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-22 09:59:13 +02:00
Neil Chen
bb108c9e20 dts: arm/nxp: Add pwm nodes to NXP MCXA153 dtsi file
Add pwm nodes to NXP MCXA153 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-22 09:59:13 +02:00
Chaitanya Tata
b1dfd13cf3 scripts: utils: tls_creds_installer: Improvements
Improve error handling and reporting.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-22 09:59:05 +02:00
Tom Hughes
7f0cd6692b soc: andestech: linker.ld: Handle symtab/strtab/shstrtab to fix warnings
lld will produce warnings for the symtab, strtab, and shstrtab sections
if --orphan-handling=warn is specified and there are no matching rules
in the linker script for these sections. Handle these sections when
building with lld to prevent the warnings.

This is exactly the same as commit
c420733c33, but for the AE350 linker
script.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-04-22 09:58:57 +02:00
Lyle Zhu
c5429d3204 tests: Bluetooth: Classic: Add dedicated test case for no_blobs
Add dedicated test case `bluetooth.classic.sdp.server.no_blobs` and
`bluetooth.classic.sdp.client.no_blobs` with the extra argument
`CONFIG_BUILD_ONLY_NO_BLOBS=y` and `build_only: true` to make sure the
tests sdp_s and sdp_c can be passed by Zephyr CI.

Fixes #88060.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-22 09:58:47 +02:00
Daniel Mangum
8e037fd89a drivers: console: uart_mcumgr: rename callback
Updates uart_mgumgr_recv_cb to uart_mcumgr_recv_cb to reflect the context
in which it is used.

Signed-off-by: Daniel Mangum <georgedanielmangum@gmail.com>
2025-04-22 09:58:40 +02:00
Steven Chang
95edcf70fc driver: i2c: ene_kb1200 i2c slave address
Fix slave address,
Notify transfer completion via semaphore

Signed-off-by: Steven Chang <steven@ene.com.tw>
2025-04-22 09:58:32 +02:00
Benjamin Cabé
76c266c0a7 samples: uuid: fix README issues
- use zephyr-app-commands
- fix bullet list formatting
- cross-reference UUID doxygen group

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-22 04:34:51 +02:00
Brandon Hurst
7ae44ec850 drivers: i2c: i2c_max32.c: Fix handling of 0-length I2C scan transactions
The I2C shell allows a user to input "i2c scan i2c0" for instance, to
scan addresses on the i2c0 bus enabled in DT. This currently causes
an infinite loop when CONFIG_I2C_MAX32_INTERRUPT is enabled.
The infinite loops happens because 0-length transactions
(tx_len == rx_len == 0) not being handled both by the Async
i2c_max32_transfer and by the controller ISR.

This commit makes two changes:
1) [ISR] When an address ACK is received, if there is simply no data to
send or receive, then just give up the semaphore, preventing the
i2c_max32_transfer function from waiting infinitely.
2) [i2c_max32_transfer] After getting the semaphore back, if there is no
data to send or receive, then avoid waiting for the BUSY flag to clear
since clock stretching should not occur by definition for transactions
which merely contain an address ACK.

Signed-off-by: Brandon Hurst <brandon.hurst@analog.com>
2025-04-22 04:34:28 +02:00
Luis Ubieda
a6c76c4dd9 drivers: i2c_rtio: max32: fix i2c_configure to return 0 on success
To comply with the API definition. This was caught by running i2c_ram
test.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-22 04:33:42 +02:00
Armando Visconti
242f3e2364 sensor: lsm6dsv16x: fix rtio/iodev prefix names
Use prefix for rtio_ctx and iodev instance names in
I2C case.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-04-22 04:33:28 +02:00
Jordan Yates
8c7e9a5f6c tests: sensor: generic: test new conversions
Add tests for `sensor_value_to_deci` and `sensor_value_to_centi`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-22 04:33:14 +02:00
Jordan Yates
9286b0b9d0 sensor: additional conversion functions
Add additional conversion helpers for `deci` and `centi` output units.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-22 04:33:14 +02:00
Tomasz Chyrowicz
2f6ac20654 drivers: flash: Optimize mspi_nor driver memory
Move MSPI NOR commands to rodata.
Replace array with empty padding (~1kB) with macro-based assignments.

Ref: NCSDK-32779

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-04-22 04:33:05 +02:00
Marcin Szymczyk
eab720201f boards: nordic: update binding for MX25U
Separate compatible is required for Flash MSPI quirks.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2025-04-22 04:33:05 +02:00
Marcin Szymczyk
b6642bb996 drivers: flash: mspi_nor: support MODE_SINGLE and MODE_QUAD_1_4_4
Extend driver to support single lane and 1-4-4 IO modes.
Move flash chip quirks to a separate file.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2025-04-22 04:33:05 +02:00
Paul Timke Contreras
0f0964f873 samples: sensor: paj7620_gesture: added sample
Added a sample for using the PAJ7620 gesture sensor

Signed-off-by: Paul Timke Contreras <ptimkec@live.com>
2025-04-22 04:32:54 +02:00
Paul Timke Contreras
4fd5ab9446 tests: drivers: build_all: sensors: added paj7620
Added paj7620 to the testcase so that it is in build.

Signed-off-by: Paul Timke Contreras <ptimkec@live.com>
2025-04-22 04:32:54 +02:00
Paul Timke Contreras
503f6388e4 drivers: sensor: paj7620: added driver
Added driver for the PAJ7620 gesture sensor. For now,
just added basic gesture mode, although sensor also
has other modes (proximity and cursor modes).

Signed-off-by: Paul Timke Contreras <ptimkec@live.com>
2025-04-22 04:32:54 +02:00
Jimmy Zheng
bb849bd3a4 MAINTAINERS: add AndesTech Platforms
Add AndesTech Platforms section and add me jimmyzhe, kevinwang821020
as maintainer and collaborator.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-04-22 04:32:38 +02:00
Derek Snell
b8d4a6aa59 boards: nxp: frdm_mcxn947: add RTC to supported features
Enable Twister to test RTC feature on this board.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-04-21 22:04:46 +02:00
Declan Snyder
63cb86db25 boards: mimxrt1180_evk: Fix documentation of cores
The wrong cortex M cores are described in the documentation. There is no
CM4. Describe the cores and memories assigned to them correctly.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-21 22:04:36 +02:00
Tomas Galbicka
e334453c0f boards: nxp: frdm_mcxn947: update dual-core memory docs
Update the dual-core memory configuration documentation to use
symbolic references to flash regions and partitions instead of
hardcoded addresses. This makes the documentation more maintainable.

The updated documentation correctly reflects that CPU0 has access to
the full flash memory including the bootloader region, while CPU1 is
restricted to its dedicated slot1_partition region.

Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
2025-04-21 22:04:27 +02:00
Andrej Butok
e9fd4b14de boards: nxp: mimxrt1170_evk: Update the documentation
- Adds reference to the MIMXRT1170-EVKB Board Hardware User's Guide.
- Mentions that LinkServer is the default runner (not Jlink).

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-21 22:04:05 +02:00
Derek Snell
d75fe02adf boards: nxp: frdm_mcxn947: enable GPIO in all modes
For CPU1 access, enable GPIO access in non-secure and non-privilege
modes.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-04-21 22:03:56 +02:00
Zhaoxiang Jin
e4a9467b25 modules: hal_nxp: Load SDK common drver per architecture
- The fsl_common_dsp driver needs to be loaded
    when building xtensa projects and the fsl_common_arm
    driver needs to be loaded when building arm projects.

  - Add a condition to load power driver, because the power
    driver is needed to build RT700 arm core project, but it
    is not needed to build hifi core project.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-04-21 22:03:47 +02:00
Kesavan Yogeswaran
2882dab78c soc: nxp: Fix boot header placement when using lld
As well described in a previous PR [1], the GNU ld and LLVM lld linkers
treat the location counter (`.`) differently. lld always inteprets the
location counter as an absolute address whereas ld interprets it as an
offset from the start of the current object.

The NXP boot header linker script files use `.` assignment to specify an
offset within the rom_start region (ld-style). This causes lld to error
out since it interprets this as the location counter moving backwards.

To fix this, re-use the idea from the previous PR [1]:
replace `. = FOO` with `. += FOO - (. - __rom_start_address)`

This sets the location counter in a way that works with both ld and lld.

[1] https://github.com/zephyrproject-rtos/zephyr/pull/58315

Signed-off-by: Kesavan Yogeswaran <hikes@google.com>
2025-04-21 22:03:38 +02:00
Qiang Zhao
893f2e0187 soc: nxp: imx95: fix systick issue for M7
The SLEEP_HOLD_EN is enabled by default, that will
gate systick, clear it to fix

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-04-21 22:03:27 +02:00
Qiang Zhao
4b61d4d218 dts: arm: nxp_imx95_m7: add cpu domain node
Added cpu domain node on imx95 core m7

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-04-21 22:03:27 +02:00
Qiang Zhao
c412ee4597 drivers: firmware: scmi: add cpu domain protocol
Added helpers for NXP SCMI cpu dmomain protocol.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-04-21 22:03:27 +02:00
Chris Friedt
89dd0ef1c1 tests: posix: rwlocks: ensure test is not skipped
Commit 7e8ee25479 moved the tests for the
POSIX_RW_LOCKS Option Group from the tests/posix/common testsuite to
its own dedicated testsuite.

However, there was a copy-paste error. Previously, tests would have been
run only once when dynamic threads were enabled, and then skipped when
dynamic threads were disabled, since that follows the posix programming
model better. However, dynamic threads were never actually enabled after
moving to the new testsuite. So all tests were effectively skipped.

Add the necessary options to prj.conf in order to ensure that there are
sufficient dynamic threads available to run the testsuite.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-21 20:05:05 +02:00
Hao Luo
706770b50f drivers: watchdog: Add support for Apollo510 watchdog
This commit adds support for Apollo510 SoC in ambiq wdt driver

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-21 20:04:31 +02:00
Hao Luo
6618a673e5 drivers: gpio: Add support for Apollo510 GPIO
This commit adds support for Apollo510 SoC in ambiq gpio driver

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-21 20:04:31 +02:00
Hao Luo
b9f05070be drivers: timer: Add support for Apollo510 SoC system timer (STIMER)
This commit adds support for Apollo510 SoC in ambiq stimer driver

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-21 20:04:31 +02:00
Hao Luo
1e8fb26b67 drivers: serial: pl011: Add support for Ambiq Apollo510 SoC UART
Added more clock sources for Apollo510 support

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-21 20:04:31 +02:00
Hao Luo
7090605026 drivers: pinctrl: Add pinctrl driver for Apollo510 SoCs
This commit adds pinctrl support for Apollo510 SoCs,
and unified pinctrl bindings across apollo families.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-21 20:04:31 +02:00
Hao Luo
6575b55bc0 boards: Add support for the Ambiq Apollo510 EVB board
This commit adds support for the Ambiq Apollo510 Evaluation Board.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-21 20:04:31 +02:00
Hao Luo
c188125165 soc: arm: ambiq: apollo510: Add support for Apollo510 SoC
Add all required parts (new SoC family/series, device tree) for
the Ambiq Apollo510 SoC.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-21 20:04:31 +02:00
Laurentiu Mihalcea
eaa1addb5e drivers: intc: irqstr: refactor level 1 interrupt recounting
So far, it has been assumed that only level 2 interrupts can be shared
via the `CONFIG_SHARED_INTERRUPTS` option, but this is not true. In the
case of i.MX95, for instance, level 1 interrupt 143 is shared among EDMA
channels 30 and 31.

Due to the previous assumption, the irqsteer driver currently performs
reference counting for all level 2 interrupts aggregated by each
dispatcher and, of course, for the level 1 interrupts the dispatchers are
attached to. For instance, assuming a machine with 100 level 1 interrupts
and 1 irqsteer dispatcher attached to line 50 this would mean reference
counting is performed solely for line 50 (and the level 2 interrupts MUX'd
into this line).

Going back to i.MX95, since there's no dispatcher attached to IRQ line 143
that means there's no reference counting for it. In turn, this means that
the IRQ line can be disabled accidentally on a channel release() operation
while the other channel is active.

To protect against such cases, refactor the level1 interrupt reference
counting. Now, reference counting is performed for _all_ level 1
interrupts.

Additionally, simplify the locking logic. Ideally, there would be a lock
for each dispatcher protecting the level 2 interrupts and 1 global lock
protecting the level 1 interrupts. Instead of this approach (which is a
bit more complex), simply use a global lock for all interrupts. If finer
granularity is required then it can be added later on.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-04-21 20:04:19 +02:00
Laurentiu Mihalcea
bb7efcf03b drivers: intc: irqstr: change name of level1 IRQ enable/disable
Add the "_raw" suffix to the macros handling the level 1 IRQ enable and
disable operation to signify that these operations perform no refcounting.
Additionally, shorten some portions of the name.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-04-21 20:04:19 +02:00
Peter Wang
d14c9c4d47 boards: frdm_mcxa166, frdm_mcxa276: add watchdog support
1. enable watchdog support
2. verified tests/drivers/watchdog/wdt_basic_api

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-04-21 20:04:09 +02:00
Isaev Denis
d34ed32846 drivers: display: elcdif: remove backlight enable pin dependency
The driver no longer requires a backlight enable GPIO pin to be defined,
which allows compatibility with displays that do not provide such a pin.

Signed-off-by: Isaev Denis <anelderlyfox@yahoo.com>
2025-04-21 20:03:50 +02:00
Phi Bang Nguyen
a250e91396 doc: release-notes-4-2: Add changes related to video control
Add changes related to the new video control framework

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-04-21 20:03:31 +02:00
Phi Bang Nguyen
7a1285efe5 drivers: video: Add support for controls of menu types
Add support for controls of menu types, standard menu and drivers'
defined menu.

Rework the ov5640's test pattern and power line frequency controls using
this new support.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-04-21 20:03:31 +02:00
Phi Bang Nguyen
3378d683e9 drivers: video: Add support for composite controls
For controls that are dependent from others, we need to "cluster" them.
Whenever one or more controls of the same cluster are set or gotten,
only the callback of the 1st control of the cluster, i.e. the master
control, is called. The master control is the one that represents the
whole cluster.

A common type of control cluster is "auto"-cluster, e.g. auto_gain/gain,
auto_exposure/exposure, auto_white_balance/red_balance/blue_balance,
etc. If the cluster is in automatic mode, then the manual controls are
marked inactive and volatile which are read via get_volatile_ctrl().
If the cluster is put in manual mode, then the manual controls should
become active again and the volatile flag is cleared.

Re-implement the ov5640's autogain/analogue_gain controls with the new
auto cluster mechanism so that it work correctly and fully.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-04-21 20:03:31 +02:00
Phi Bang Nguyen
cbf104f3d0 drivers: video: Add get_volatile_ctrl driver's API
Add get_volatile_ctrl() driver's API to retrieve the current value of a
control marked as volatile, e.g. gain, exposure. This function triggers
a hardware register reading instead of returning a cached value to ensure
that users always get a fresh value which is constantly updated by the HW.

Note that the driver is responsible for marking a control as volatile by
setting VIDEO_CTRL_FLAG_VOLATILE when registering a control because not
all hardwares work the same way for the same control.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-04-21 20:03:31 +02:00
Phi Bang Nguyen
f363bd6e36 drivers: video: Support controls of 64-bit integer type
Add supports for controls that need 64-bit integer such as pixel rate.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-04-21 20:03:31 +02:00
Phi Bang Nguyen
c95387a815 drivers: video: Add video query control API
Application can query information about a control given the control id,
the framework fill the rest of the structure. Application can also
enumerate all kinds of device's supported controls by iterating with
VIDEO_CTRL_FLAG_NEXT_CTRL on the same API.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-04-21 20:03:31 +02:00
Phi Bang Nguyen
135528a1be drivers: video: Implement video control framework
Implement the video control framework with the following features:

- Drivers initialize the control with a valid value range at boot which
  guides the application developer and the framework. Hence, the video
  framework could do all common works for drivers e.g., sanity check.

- Controls need to be cached to memory. Video framework handles
  get_ctrl(), drivers don't need to implement this API. It is because
  reading control value directly from registers are not only inefficient
  but also sometimes impossible, e.g. controls that scatter through
  several registers. Only "volatile" control needs to be updated at
  runtime.

- Only the devices (e.g., sensors) owning the controls need to
  implement set_ctrl(). Other devices of the pipeline do not need to
  propagate set_ctrl() and hence, do not need to implement this API

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-04-21 20:03:31 +02:00
Phi Bang Nguyen
2b46cc0b78 drivers: video: Introduce video device structure
Introduce a new video device structure representing a device in a
video pipeline. Each video device embeds a pointer to its "source"
device and other "video" characteristics.

This structure give the video framework an access to all video features
of the device and a hierachical view of the video pipeline that the
device belongs to.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-04-21 20:03:31 +02:00
Flavio Ceolin
d5201e179f doc: release-notes-4.2: Vulnerability fixed
Add information about vulnerability addressed in this release.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-04-21 12:43:50 +02:00
Flavio Ceolin
2baf7a4570 doc: vuln: Add CVE under embargo
Add an entry to CVE-2025-2962

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-04-21 12:43:50 +02:00
Lyle Zhu
40b10ccf8d Bluetooth: Classic: SSP: Only set MITM when sec level is more than 2
The local device shall only set the MITM protection required flag if
the local device itself requires MITM protection.

Only set MITM flag when the required security level is more than 2 and
pairing method is not `JUST_WORKS`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-21 12:43:42 +02:00
Tom Burdick
1e0af58b51 pmci: Move MCTP into the PMCI subsys
PMCI conveys a stack of specifications from DMTF including MCTP (a
transport layer protocol), PLDM (request/response messaging protocol),
and ancillary SPDM messaging. Placing all these libraries under PMCI
subsystem makes more sense than simply adding MCTP as its own subsystem.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-04-21 12:43:33 +02:00
Alberto Escolar Piedras
09137d16ac ci: bsim-tests: Add missing path to trigger BT tests
Also trigger the bluetooth tests if tests/bluetooth/common/testlib/
is changed.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-04-21 12:42:43 +02:00
Titan Chen
5179463750 drivers: timer : fix rtmr and slow timer.
RTMR use slow timer be the busy_wait timers,
only ARCH_HAS_CUSTOM_BUSY_WAIT if slow timer disabled.

Signed-off-by: Titan Chen <titan.chen@realtek.com>
2025-04-21 12:42:28 +02:00
Julian Achatzi
f9168ae464 arch: common: Make nocache region loadable
The `nocache` is not loadable, thus data stored therein cannot be
initialized by the startup code. This might be needed in special
cases. E.g. One might have a buffer which one wants to DMA into,
and which is a member of a struct. Other members of the struct one
may want to have initialized by the startup code.
The buffer thus should be placed in the `nocache` region, but for
the other members of the buffer to be initialized by the startup
code, the `nocache` region needs to be loadable.

Fix it by making the `nocache` region loadable. Adding a KConfig
symbol to do this optionally was considered, but deemed unnecessary
during the PR.

Signed-off-by: Julian Achatzi <mail@achatzi.pro>
2025-04-21 12:42:19 +02:00
Hu Dou
25564f73dc drivers: i3c: stm32: fix clock init for i2c fast mode plus
The logic of clock initialization for i2c fast mode (FM) and fast
mode plus (FMP) is as follows:
 1 compute how many system clock cycles for SCL to be low
 2 compute how many system clock cycles for SCL to be high by
   subtracting the low duration computed above from the SCL period
 3 verify the high duration computed in 2 is larger than a minimum
The bug is that the step 3 for the FMP is compared with the
minimum value for FM, and causes it to fail.

The fix corrects the bug.

Signed-off-by: Hu Dou <hugh.dou@gmail.com>
2025-04-21 12:42:01 +02:00
Nicolas Pitre
f087aa264e kernel/pipe: fix poll support
Two issues:

- is_condition_met() was missing proper code for The
  K_POLL_TYPE_PIPE_DATA_AVAILABLE case

- z_handle_obj_poll_events() was misplaced in z_impl_k_pipe_write()

Note: I added support for the deprecated pipe implementation to
      is_condition_met() but that is untested.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-04-21 07:45:35 +02:00
Nicolas Pitre
e29c0c1783 tests: poll: add pipe coverage
Add pipe test coverage.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-04-21 07:45:35 +02:00
Daniel Leung
d08981527d soc: intel_adsp/ace: use custom arch_spin_relax()
Intel Audio DSP ACE needs to use arch_spin_relax() to give
the bus more time to propagate the RCW transactions among
CPUs, and to avoid sending too many requests to the bus
after failing to lock spinlocks. However, the number of
NOPs results in a very big arch_spin_relax() that spans
multiple instruction cache lines, and requires evicting
them just for NOPs.  With 5 CPUs, it can span 6 cache
lines (if using nop.n instead of nop). That's a waste of
space and cache. So instead, we do a tight loop instead.
Since the SoC supports zero-overhead loops, this should
have minimal performance impact.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-21 07:45:23 +02:00
Daniel Leung
58b035b85f soc: intel_adsp/ace: linker: align cpuhold_* variables
For some weird unknown reasons, the simulator really do not
like the cpuhold_* variables to be tightly packed together.
This results in cpuhold_spawned not being updated, and we
will be stuck in the while loop for it to be set.
Workaround this by explicitly aligning these variables on
16 byte boundary. This seems to work for now.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-21 07:45:23 +02:00
Daniel Leung
e5685cab4a soc: intel_adsp/ace: link xtensa_swap_update_page_tables...
...earlier. Similar to xtensa_do_syscall, we want to group
some functions together.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-21 07:45:23 +02:00
Dylan Hsieh
c60d2c58f8 soc: realtek: rts5912 image tool add SHA2 tag
Let rts5912 image tool to add SHA2 tag at the tail end of image.

Signed-off-by: Dylan Hsieh <dylan.hsieh@realtek.com>
2025-04-21 07:45:14 +02:00
Krzysztof Chruściński
bb4fb12ca4 pm: policy: default: Optimize power state selection
Update power state selection. Previously, it was iterating over states
starting from the last one so the most common short sleep periods were
taking the longest time to select. Order is now swapped so that short
sleeps will get power state as quick as possible.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-21 07:45:07 +02:00
Krzysztof Chruściński
5a313e141d pm: Add option to quickly detect power state availability
When all states are locked or latency requirement cannot be met
by any power state it is important to be able to quickly exit
suspend procedure because that usually means that application
requires high performance. Add function for detecting if any
power state is available.

Additionally, add function pm_policy_state_is_available for
checking if given state is available which means that it is not
locked and fulfills current latency requirement.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-21 07:45:07 +02:00
Ioannis Damigos
e41909a32c soc: da1469x: Drop CONFIG_SRAM_VECTOR_TABLE from default configuration
Drop CONFIG_SRAM_VECTOR_TABLE from default configuration.

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-04-19 11:48:24 +02:00
Emil Gydesen
4cffba7c08 tests: Bluetooth: tester: BAP: Fix wrong wrong bcast rsp sizes
Several responses had incorrect sizes, which this commit fixes.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-19 11:48:16 +02:00
Sreeram Tatapudi
f64ff43a22 modules: hal_infineon: wifi-host-driver: Fixes cmake issues
- Fixes errors in the wifi_host_driver CMakeLists.txt (LWB5+)

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-04-19 11:48:09 +02:00
Tim Pambor
ef7892dc24 boards: st: stm32h573i_dk: Add support for probe-rs
Allow flashing the STM32H573II chip found on the STM32H573I-DK board
using the probe-rs runner.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-04-19 11:48:01 +02:00
Alberto Escolar Piedras
0648e49bf0 manifest: Update nRF hw models to latest
Update the HW models module to:
d5b95fdd0260e8189e788d40d2863d1e2d4be159

Including the following:
d5b95fd grtc hal replacement: Fix bug in nrf_grtc_int_group_enable/
        disable()
5f3641d GRTC: With a CC in the past evaluate immediately

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-04-18 17:49:40 +02:00
Fin Maaß
1ace896425 ethernet: dwc_xgmac: use phy api correctly
use phy_configure_link() instead of phy_api->cfg_link().

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-18 17:47:14 +02:00
Andrej Butok
45008f26c5 samples: tests: mimxrt1170_evk: avoid duplication in configuration
- Remove duplicated conf/.overlay configuration for
  mimmxrt1170_evk A and B revisions that have the same content.
- No change if .conf/.overlay have different content.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-18 17:46:59 +02:00
Anas Nashif
a97881fd63 doc: doxygen: move usermode mutex/sem under usermode group
Move usermode mutex/semaphore under the usermode group.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-18 17:46:50 +02:00
Anas Nashif
8fe2395103 doc: doxygen: add @brief to few APIs
Add some clarity to some of the groups using @brief.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-18 17:46:50 +02:00
Anas Nashif
3dc7291115 doc: doxygen: move notify/onoff to os_services
Those are no kernel permitives and belong under os services.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-18 17:46:50 +02:00
Anas Nashif
9babde4e78 doc: doxygen: move battery api under sensors
move from currently top level to sensors where it is defined.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-18 17:46:50 +02:00
Anas Nashif
44327ec841 doc: doxygen: exclude nrf_wifi
This one appears in the top level of doxygen and should not be exposed
as a Zephyr API.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-18 17:46:50 +02:00
Anas Nashif
b18995acd9 doc: stmesp: move to logging group
Move under logging group.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-18 17:46:50 +02:00
Anas Nashif
ec405a8632 doc: doxygen: group debugging APIs
Create new group for debugging and move all debugging APIs under this
group.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-18 17:46:50 +02:00
Michal Kozikowski
892163c170 samples: smp_svr: nrf54h20dk 'iron' board serial DFU
Adding sample configuration for nRF54H20dk 'iron' board.

Signed-off-by: Michal Kozikowski <michal.kozikowski@nordicsemi.no>
2025-04-18 17:46:40 +02:00
Michal Kozikowski
ea6e6c66a1 boards: nordic: nrf54h20dk iron board MCUBoot support
Provide proper adaptions as bootloader ROM offset, flash load
offset and dts definitions for the nRF54H20 iron board to make it
ready for the MCUBoot bootloader.

Signed-off-by: Michal Kozikowski <michal.kozikowski@nordicsemi.no>
2025-04-18 17:46:40 +02:00
Eric Ackermann
7ea1bb783f soc: cv32a6: Remove erroneous CPU_HAS_FPU configs
In the default configuration, cv32a6 does not have an FPU and does not
implement RISC-V's F and D extensions.
Hence, the FPU flags should not be added.
In the future, a second SoC for cv32a6 systems with FPU can be added.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-04-18 17:46:30 +02:00
Eric Ackermann
f9331854c8 tests: coredump: Add exception for cva6
The nullpointer address (0x0) is mapped to the debug module in cva6,
making it a valid address.
Thus, in the coredump test, trigger an exception using k_panic()
instead.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-04-18 17:46:30 +02:00
Eric Ackermann
51eaf02626 soc: cva6: Fix CONFIG_MAX_IRQ_PER_AGGREGATOR
The original commit uses the incorrect value 42 for
CONFIG_MAX_IRQ_PER_AGGREGATOR for the cva6 family of SoCs,
which is the total number of IRQs in the system.
This commit corrects this to 30, the number of IRQs for the PLIC.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-04-18 17:46:30 +02:00
Eric Ackermann
7dcb1296f2 boards: cv*a6: Add twister support
This commit adds the necessary configurations for building and testing
cva6 boards (cv64a6_genesys_2, cv32a6_genesys_2) with twister.
This has been validated against commit
8a9d7a832b7121dd6f9be61a380d1d89ebf2a5f3 of the cva6 hardware project.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-04-18 17:46:30 +02:00
Eric Ackermann
6ba7691e96 soc: cva6: Implement missing cache management APIs
In hardware, cva6 currently only provides global disable/enable
functions for the Dcache and Icache. Disabling and re-enabling them also
has the effect of flushing and invalidating the cache.
Future cva6 SoCs will add support RISC-V's standardized cache management
operations.
This commit provides a default implementation for all methods currently
part of the cache API. These implementations can be overwritten at board
or SoC level, as they use weak linking.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-04-18 17:46:30 +02:00
Eric Ackermann
e367e1d607 soc: cva6: Add device tree node for RISC-V mtimer
The device tree entry for cva6 is currently missing a device tree node
for the mtime and mtimecmp registers in the core-local interrupt
controllers.
This causes the RISC-V machine timer driver not to be built, causing
build failures as the system clock is missing.
This commit rectifies this by adding the corresponding device tree
entry.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-04-18 17:46:30 +02:00
Jordan Yates
590258b381 posix: options: POSIX_THREADS require a stack
`pthread_setspecific` requires a stack in order to allocate the
`struct pthread_key_data` data structure. On 64 bit systems this data
structure is 32 bytes, resulting in 160 bytes usage for the default 5
supported threads.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-18 12:36:58 +02:00
Jordan Yates
3da69a809c posix: options: don't imply POSIX_MESSAGE_PASSING
Don't `imply POSIX_MESSAGE_PASSING` when `POSIX_API=y` as this option
has a non-trivial RAM implication in `HEAP_MEM_POOL_ADD_SIZE_MQUEUE`.

The `mq_*` API is minimally used in-tree, with all users already
enabling the symbol directly.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-18 12:36:58 +02:00
Neil Chen
0b67e3f6f9 boards: frdm_mcxa153: add flash support
- enable flash support
- verified tests/drivers/flash/common

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-18 12:36:49 +02:00
Neil Chen
bd22a4a394 boards: frdm_mcxa153: add uart support
- add uart support
- enable the uart_async_api test example

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-18 12:36:49 +02:00
Håkon Amundsen
4edc003b9c boards: nordic: nrf54h20dk: fix debugging for iron board variant
The required jlink script was not added due to missing entry in the
board check. Also change the check for app vs rad to be on SOC level.

Signed-off-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
2025-04-18 12:36:45 +02:00
Andrej Butok
6c6c743c91 samples: nvs: set MAIN_STACK_SIZE in prj.conf
- Sets MAIN_STACK_SIZE in prj.conf to 2048 (default is 1024)
  to avoid possible stack overflow
  and adding new .conf files per board.
- Deletes existing board .conf files, as they are not needed anymore.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-18 12:36:36 +02:00
Olivier Lesage
00444893e3 dts: nordic: nrf54l20: Add CS radio capability
Like other nRF54L series products, the radio on 54l20 supports CS.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2025-04-18 12:36:28 +02:00
Tim Pambor
d68929c64a drivers: flash_stm32_xspi: fix DT accessor for flash size
The flash size is the second part (size) of the first reg value, not the
first part (address) of a nonexistent second reg value.

Based-on-patch-by: Armin Brauns <armin.brauns@embedded-solutions.at>
Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-04-18 12:36:20 +02:00
Yishai Jaffe
b5c634f4bb cfb: fix get_glyph_byte for vtiled displays
V-Tiled displays need different treatment when getting the glyph byte.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-04-18 12:36:16 +02:00
Jamie McCrae
276d447f51 boards: nordic: nrf54l15dk: Add missing flash runner config
Adds missing groupings for non-secure board targets

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-18 10:41:08 +02:00
Jamie McCrae
b59d6d3c2d soc: nordic: Add missing flash runner config
Adds missing qualifiers for grouping flash runner configuration

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-18 10:41:08 +02:00
Dmitrii Golovanov
411140d015 tests: kernel: mslab: extend k_mem_slab_alloc() timeout
Extend timeout on k_mem_slab_alloc() for kernel.memory_slabs
memory_slab_1cpu.mslab test suite as a workaround to allow its run
on slow platforms, e.g. simulated intel_ish_5_8_0.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2025-04-18 10:40:50 +02:00
Chaitanya Tata
7b3d44e403 samples: net: wifi: Add a script to install certs
For enterprise mode we need to install multiple certs to the TLS
credentials store, so, add a helper script in python to make it work
cross-platforms.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-18 10:40:39 +02:00
Chaitanya Tata
d1aa75cdd6 scripts: utils: Add a script to install TLS credentials
This helps install certificates to the TLS credentials store using TLS
credentials shell.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-18 10:40:39 +02:00
Aleksander Wasaznik
a71cadfc68 Bluetooth: testlib: Fix includes (IWYU)
This commit fixes all includes in testlib according to IWYU rules and
sorts all includes in ascending order by name.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2025-04-18 10:40:31 +02:00
Tom Chang
eb5597e90a drivers: espi: npcx: ensure the host receives the value from eSPI VW
This commit adds an option to verify weather the host has read the value
after the wire 3-0 bits have been updated.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-04-18 10:40:23 +02:00
Ryan McClelland
26c03005e7 drivers: i3c: fix warning with cpp builds
When compiling with C++ enabled (CONFIG_CPP), add an unused member to
prevent an empty struct; this makes the struct size the same for both C
and C++.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-18 10:40:18 +02:00
Jukka Rissanen
f9220146e6 samples: net: pkt_filter: Add Ethernet support to prj.conf
As the sample uses VLAN which needs Ethernet support make sure
CONFIG_NET_L2_ETHERNET is set in prj.conf file.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-17 21:18:26 +02:00
Chaitanya Tata
d7e4c812ab boards: nordic: nrf7002dk: Fix LFXO configuration
Commit 6a2cbc7c87 ("boards: nrf53*: add L|HFXO configurations") missed
the fix for nRF7002DK which is also based on nRF53 SoC.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Signed-off-by: Aleksandar Stanoev <aleksandar.stanoev@nordicsemi.no>
2025-04-17 21:18:16 +02:00
Chaitanya Tata
7524d57b52 manifest: hostap: Pull fix for certificate verify failure
Disable hostname validation as a WAR for certificate verification
failure for now.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-17 21:18:06 +02:00
Dipak Shetty
8f6b0b2e2e drivers: stepper: refactor stepper move_to and move_by calls
Refactored stepper move_to calls and move_by calls.
Now, relative movement required or absolute target position
is calculated and then redirected to move_by or move_to calls
respectively.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-04-17 21:17:55 +02:00
Emil Gydesen
efdca63c25 Bluetooth: Host: Add missing includes for all BT host files
Added missing includes and fixed typos in the files.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-17 21:17:29 +02:00
Emil Gydesen
1efd817dbd Bluetooth: Shell: Add missing includes for all BT host shell files
Added missing includes and fixed typos in the files.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-17 21:17:29 +02:00
Emil Gydesen
4a0ddbefe0 include: Bluetooth: Add missing includes for all BT host files
Added missing includes and fixed typos in the header files
for Bluetooth.

There is one exception in hci_vs.h where `struct arch_esf`
is still missing an include, but that is because that
is only specific for ARM.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-17 21:17:29 +02:00
Krzysztof Chruściński
ecabcf5db5 pm: Use pointers for current and forced power states
Use power state pointers instead of copies which improves performance.

Align power_mgmt_multicore test which was creating pm states in
runtime.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-17 21:17:18 +02:00
Andrei-Edward Popa
e4c2cecb7d drivers: i2c: added wch i2c driver
added i2c driver for wch platforms

Signed-off-by: Andrei-Edward Popa <andrei.popa105@yahoo.com>
2025-04-17 21:17:06 +02:00
Andrei-Edward Popa
1335c3fd76 boards: wch: ch32v003f4p6_dev_board: enable i2c and define i2c pins
enabled i2c for ch32v003f4p6_dev_board
added default i2c pins for ch32v003f4p6_dev_board
added i2c as supported

Signed-off-by: Andrei-Edward Popa <andrei.popa105@yahoo.com>
2025-04-17 21:17:06 +02:00
Andrei-Edward Popa
5e8008c0ab boards: wch: ch32v003evt: enable i2c and define i2c pins
enabled i2c for ch32v003evt
added default i2c pins for ch32v003evt
added i2c as supported

Signed-off-by: Andrei-Edward Popa <andrei.popa105@yahoo.com>
2025-04-17 21:17:06 +02:00
Andrei-Edward Popa
502e622644 dts: riscv: wch: added i2c node
added i2c node for ch32v003

Signed-off-by: Andrei-Edward Popa <andrei.popa105@yahoo.com>
2025-04-17 21:17:06 +02:00
Andrei-Edward Popa
f8a4262241 dts: bindings: i2c: added bindings for wch
added i2c bindings for wch platforms

Signed-off-by: Andrei-Edward Popa <andrei.popa105@yahoo.com>
2025-04-17 21:17:06 +02:00
Ryan McClelland
3932794aee drivers: i3c: shell: add direct rstdaa shell command
This adds a shell helper for a direct rstdaa for I3C v1.0 devices

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-17 21:16:45 +02:00
Ryan McClelland
c0503597ba drivers: i3c: add rstdaa direct helper
In I3C v1.0, there was a RSTDAA direct CCC. It is deprecated in I3C v1.1
and later. This adds a CCC helper for it.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-17 21:16:45 +02:00
Ryan McClelland
2e8c911fa3 drivers: i3c: add v1.0 support flag
This adds a v1.0 support dts flag for devices. This also makes it so it
doesn't try to send a GETCAPS (GETHDRCAP) ccc if this flag is set and it
doesn't support any HDR modes.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-17 21:16:45 +02:00
Maciej Perkowski
2f9faa0a93 ci: workflows: Align used host
Ubuntu-24.04 is the version to be used as default in all
gh workflows

Signed-off-by: Maciej Perkowski <maciej.perkowski@nordicsemi.no>
2025-04-17 17:24:39 +02:00
Aleksandr Khromykh
b53b5e198a bluetooth: rename _bt_gatt_ccc and clarify usage
Bluetooth had two public types with similar name _bt_gatt_ccc and
bt_gatt_ccc, but for absolutely different purposes.
That caused misunderstanding of relationship of them and cases
where to use which one.

Commit changes name of _bt_gatt_ccc to more suitable by usage and
improves documentation of it.

Additionally, it changes name of BT_GATT_CCC_INITIALIZER
to correspond the type name.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-04-17 17:24:19 +02:00
Peter van der Perk
6b369a322d kernel: init: bss clear nocache memory as well
If something is tagged as nocache it didn't got cleared, which could
lead some weird behaviour where bss memory is non-zero.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-04-17 17:24:00 +02:00
Fin Maaß
18b6b2ef48 docs: releases: mention flash_area_copy()
mention `flash_area_copy()` in release notes.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-17 17:23:43 +02:00
Jérôme Pouiller
a288c306f9 soc: silabs: siwx91x: Change memory partition
The current configuration allocate 476kB (672 − 196) to the NWP. This
configuration is only required with offloaded network stack
(CONFIG_WIFI_SILABS_SIWX91X_NET_STACK_OFFLOAD).

Since this parameter is not set by default, increase memory allocated to
Zephyr.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-04-17 17:23:32 +02:00
Jérôme Pouiller
2bbafa7072 soc: silabs: siwx91x: Allow alternative memory partition
Chip siwx91x has 672kB of SRAM shared between the Cortex-M4 (Zephyr) and
the NWP (Network Processor). 3 memory configurations are possible for
the Cortex-M4:
  - 196kB
  - 256kB
  - 320kB

Less memory is allocated to Zephyr, more memory is allocated to NWP,
better are the WiFi and BLE performances.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-04-17 17:23:32 +02:00
Jérôme Pouiller
8e5c95ed4b drivers: dma: siwx91x: Allow static allocation of DMA channel descriptors
Some instances of DMA (dma0) can use the normal sram to store their
descriptors. In this case, it makes sense to allow the linker to
allocate the memory rather than tweaking the memory layout.

So, if the attribute silabs,sram-region is not defined, use a statically
allocated buffer.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-04-17 17:23:32 +02:00
Jérôme Pouiller
832a006806 drivers: dma: siwx91x: Early init is not required
DMA can be initialized with the other devices. The user only need to the
ensure CONFIG_DMA_INIT_PRIORITY is less than the DMA consumers.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-04-17 17:23:32 +02:00
Jérôme Pouiller
382a6d5d32 drivers: dma: siwx91x: Do not cache shared memory
Memory areas for DMA descriptors are shared with the DMA hardware block.
There area should be cached by the CPU.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-04-17 17:23:32 +02:00
Jérôme Pouiller
164bbdf294 drivers: dma: siwx91x: Use DT to declare descriptors
Silabs siwx91x hardware use specific memory areas to store descriptors
for DMA requests. These areas are tightly coupled between the CPU and
the hardware. This helps in reducing the wait cycles.

Until now these addresses was also hard coded in the DT and in the
linker script. This patch leverage the zephyr,memory-region driver to
centralize the information in the DT.

Then, with this new implementation, the memory mapping is easier to
understand for the reader.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-04-17 17:23:32 +02:00
Robert Lubos
95ac568ed0 tests: net: socket: af_packet: Extend the test suite with more tests
Add more tests cases to the AF_PACKET sockets test suite, covering the
summary of the packet socket functionalities prepared from various
sources (mostly man pages).

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-17 17:23:23 +02:00
Robert Lubos
6c0aef4da0 net: sockets: packet: Ensure correct interface is used
Make sure that when sendto is being used without the socket being bound
before, a correct interface is used for transmission. As
zpacket_sendto_ctx() calls net_context_recv() to register receive
callback before sending, a default binding was used by the context
layer, which would bind the socket to the default interface. This could
lead to unexpected results, i.e. packet being sent on a default
interface, even though a different one was specified.

Make also sure that there is no ambiguity in the interface selection -
the application should be explicitly clear what interface it wants to
use when it comes to packet sockets. It's better to return an error if
no valid interface was specified.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-17 17:23:23 +02:00
Robert Lubos
332843be33 net: sockets: packet: Allow proto 0 for RAW sockets
According to AF_PACKET man pages protocol number 0 is allowed, however
in such case the socket is only capable of transmitting packets then:

  "If protocol is set to zero, no packets are received."

Therefore, allow to create sockets with such protocol, and at the
connection.c level filter out such sockets from data reception.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-17 17:23:23 +02:00
Robert Lubos
6869668cc9 tests: net: socket: af_packet: Fix test_raw_and_dgram_socket_recv test
The test case did not do what it said, it was supposed to receive data
on both RAW and DGRAM packet sockets, but instead it received on RAW
socket twice.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-17 17:23:23 +02:00
Robert Lubos
9f6ac50566 tests: net: socket: af_packet: Simplify test initialization
Test interface configuration doesn't change throught the test suite
execution, therefore there's no need to reiterate the interfaces to set
the interface pointers in each test case. Do it just once, when test
suite is setup.

Also remove the __test_packet_sockets() function which seemed no longer
useful with all those simplifications.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-17 17:23:23 +02:00
Robert Lubos
0a98a83387 tests: net: socket: af_packet: Switch to blocking sockets with timeout
Packet socket tests used non-blocking sockets so in results the test
code was overly complicated with delays and loops scattered all across
the test code, making it difficult to read.
As packet sockets do support blocking operation with timeout,
reconfigure the sockets to use that and simplify the test code by
getting rid of unnecessary loops and delays.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-17 17:23:23 +02:00
Robert Lubos
ff801c62b1 tests: net: socket: af_packet: Increase IPv4 context instance count
Test suite prints a warning on boot about not enough IPv4 context
instances compared to the number of interfaces, therefore adjust the
config value to get rid of it.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-17 17:23:23 +02:00
Robert Lubos
76605f813a tests: net: socket: af_packet: Make sure sockets are closed on failure
Make sure all sockets used in test are closed even in case of test
failure. Otherwise, a single test failure could derail other tests,
making the results obfuscated.

Remove redundant code related to socket creation.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-17 17:23:23 +02:00
Martin Durietz
3197be97e6 lorawan: add link check support.
Add link check support, by adding:
- link check callback in response of LinkCheckAns.
- link check request function using LinkCheckReq.

Signed-off-by: Martin Durietz <martin.durietz@gmail.com>
2025-04-17 17:23:12 +02:00
Chaitanya Tata
7f7965e6db tests: net: wifi: Add a test for Enterprise with run-time certs
This is needed to ensure run-time certs feature builds.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-17 17:22:58 +02:00
Chaitanya Tata
2668b34602 doc: net: wifi: Fix the connect command
The command should work with existing certs rather than a generic
example, also fix the key-management.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-17 17:22:58 +02:00
Chaitanya Tata
eb1a13eda7 samples: net: wifi: Add two variants of certs
RSA3K based certs are not supported on all platforms, so, keep both
variants, rsa2k (the older certs but with longer expiry 9999 days) and
rsa3k (latest ones) and we can have more variants in this folders.

Also, add a cmake variable to override the path with default as rsa3k.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-17 17:22:58 +02:00
Chaitanya Tata
9b68218e9a net: l2: wifi: Make build time certs as optional
Certificates usage depends on STA/AP mode, but we don't have that
information at a build time, so, make all certs as optional and if a
file isn't found then generate an empty header so that corresponding C
code will be built.

Any missing mandatory certificates will be validated before connection
and connection is failed.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-17 17:22:58 +02:00
Chaitanya Tata
c2f4e67c8a net: lib: tls_credentials_shell: Fix crash during delete
Deletion of credential should use the pointer from the reference slot
not the temporary buffer, this causes a crash (unknown error).

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-17 17:22:58 +02:00
Chaitanya Tata
31913efcbf snippets: wifi-enterprise: Add support for TLS credentials
Enable TLS credentials shell to manager Wi-Fi enterprise certs.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-17 17:22:58 +02:00
Chaitanya Tata
d7b3bcd982 wifi: Move Wi-Fi enterprise configs to a snippet
Instead of having an overlay move the Enterprise configurations to a
dedicated snippet so that it can be enabled with any sample.

Can be used along with Wi-Fi snippet e.g., `-S
"wifi-ipv4;wifi-enterprise"`.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-17 17:22:58 +02:00
Chaitanya Tata
7ba5e43cf5 net: lib: tls_credentials_shell: Add a config for heap
The volatile backend stores the credentials on the heap, so, explicitly
add a config option that can be overridden in case there are more certs
than the default.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-17 17:22:58 +02:00
Chaitanya Tata
b2e7d7fc0c net: l2: wifi: Add support for run-time certificates
Using TLS credentials library add support for run-time certificates where
the installed certs are retrieved from the credential store (as of now
only volatile backend is tested).

This helps in production environments.

Implements #79564.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-17 17:22:58 +02:00
Maochen Wang
90cd350c5a drivers: serial: fix console hang when waken up from PM3
The console can't input when waken up from PM3, as get the wrong
usart_intenset when process PM_DEVICE_ACTION_TURN_ON and the
USART interrupt is not enabled. Only saving usart_intenset after
PM action of PM_DEVICE_ACTION_TURN_OFF can fix this issue.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-04-17 09:06:38 +02:00
Tim Lin
db4344b06b drivers/i2c: ite: Use i2c_bitbang API for bus recovery
Replace the manually implemented GPIO-based I2C recovery logic
with Zephyr's i2c_bitbang API.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-17 09:06:29 +02:00
Hao Luo
6f4b92d64d soc: ambiq: Optimize the inclusion relationship of header files
Optimized the inclusion relationship of header files

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-17 09:06:18 +02:00
Jun Lin
3f59fa36f1 soc: npcx: update the NUM_IRQS value for npcx4
The npcx4 SoC only uses 86 NVIC IRQ numbers.
This commit updates the number from 128 to 86 to reduce the memory
usage.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-04-17 09:06:07 +02:00
Daniel Hajjar
69713f4e6a posix: net: Fix undefined behavior
The signedness of the variable caused undefined behavior because the
sign bit is modified when it gets left-shifted.

This fixes that by changing it to an unsigned variable.

Signed-off-by: Daniel Hajjar <daniel.hajjar16@gmail.com>
2025-04-17 09:05:56 +02:00
Ryan McClelland
2c66a2adc0 drivers: i3c: add i3c controller and target kconfigs
I3C can contain a lot of features that may be unused. Add Kconfigs for
enabling controller and/or target code. Choosing just one can reduce
the code size footprint.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-17 09:05:36 +02:00
Aditya Bhutada
4102010456 drivers: espi: Add return value to eSPI send_vwire API
Added note about return value to the eSPI send_vwire API in the header:
-ETIMEDOUT & _EINVAL.

Signed-off-by: Aditya Bhutada <aditya.bhutada@intel.com>
2025-04-17 00:57:28 +02:00
Aditya Bhutada
2c36616dd2 drivers: espi: espi_mchp_xec: Fix the VW change check time
Adjusted the VW change check timings:
- Polling time changed from 100 uSec to 1 uSec.
- Timeout value changed from 10 mSec to 1 mSec.

This is to achieve the lowest possible pulse width for SCI VW in S0,
while ensuring that the VW change check is still reliable for S0iX
where SoC may take longer to process upstream events.

Also added -ETIMEDOUT error when failure.

Signed-off-by: Aditya Bhutada <aditya.bhutada@intel.com>
2025-04-17 00:57:28 +02:00
Daniel Leung
9cadc8cbec xtensa: userspace: use ADDX4 to calculate syscall table index
When looking for jump address in the syscall table, we need to
multiply the syscall ID by 4 before adding the address offset
of the beginning of the table. This is due to the jump address
being 32-bit (4 bytes). Instead of using two instructions to
shift the ID by 4 first and then the addition, we can use one
ADDX4 instruction to achieve the same result.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
277fa9e8ac xtensa: userspace: swap page tables via assembly code
Since the necessary register values are now pre-computed and
stored in the memory domain struct, we can use them directly
in various assembly locations, thus replacing the function
call to xtensa_swap_update_page_tables().

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
689e1121cf kernel: typedef k_mem_domain_t and _mem_domain_info_t
Create alias for struct k_mem_domain into k_mem_domain_t,
and struct _mem_domain_info into _mem_domain_info_t via
typedef. These are needed to generate offsets via
GEN_OFFSET_SYM.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
2abf7ce2f1 xtensa: userspace: prevent potential privilege escalation
When context switching and dealing with non-nested interrupts,
the context to be restored are saved in the thread stack.
When userspace is enabled, this means saving context into
the user stacks for user threads. This allows PS values to be
manipulated externally by setting PS.RING in the saved PS
value to 0, resulting in granting kernel access privilege when
the thread is restored. To prevent this, we store the PS value
into the thread struct instead, where user threads cannot
manipulate that. Note that nested interrupts and syscalls are
not using the user stack but the interrupt stack and thread
privileged stack respectively, where they are not accessible
under user mode.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
d5c2e4b03c xtensa: userspace: workaround return PC calc with loops
When syscall assembly is executed, the EPC points to the syscall
instruction, and we have to manually advance it so we will
return to the instruction after syscall to continue execution.
However, with zero-overhead loops and the syscall instruction is
the last instruction, this simple addition does not work as it
would point past the loop and would have skipped the loop.
Because of this, syscall entrance would need to look at the loop
registers and set the PC back to the beginning of loop if we are
still looping. Assuming most of the syscalls are not inside
loops, the extra handling code consumes quite a few cycles.
To workaround this, simply adds a nop after syscall so we no
longer have to deal with loops at syscall entrance, and that
a nop is faster than all the code to manipulate loop registers.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
bdb5723f28 xtensa: userspace: remove ununsed syscall helpers
Syscall helpers with 0, 1, 2, and 3 number of args are not
used so remove them.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
b0693ee41b xtensa: userspace: handle privileged stack in arch_cohere_stacks
This extends arch_cohere_stacks() to handle privileged stacks of
user threads when userspace is enabled.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
9ebe16b6e7 xtensa: no need to restore A0/A1 if not coherence in irq exit
Towards the end of interrupt handling, and before restoring
context, we would spill all register windows. This requires
A0 and A1 to be restored from the saved context so spilling
would work correct. However, when coherence is enabled,
window spilling has already been done earlier so there is
no need to spill the register windows again. So there is
no need to restore A0 and A1. They will be restored again
before returning from interrupt anyway.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
0dce0bdc0b xtensa: userspace: pre-compute MMU registers at domain init
Instead of computing all the needed register values when
swapping page tables, we can pre-compute those values when
the memory domain is first initialized. Should save some
time during context switching.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
36064939d3 xtensa: no need for flush register if threads are pin only
There is no need for ZSR_FLUSH when threads are pin only
(CONFIG_SCHED_CPU_MASK_PIN_ONLY=y), so there is no need to
reserve it.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
50abe89970 xtensa: userspace: use ZSR_RFI_LEVEL for userspace enter
In xtensa_userspace_enter, we were hard-coding to use level 2
interrupt return mechanism to pivot to user mode and start
running the user thread. However, EPC2 and EPS2 may be used
for other purposes, and they could be used for interrupt
return if there are only two level interrupts. So change
the userspace enter to use ZSR_RFI_LEVEL, ZSR_EPC and ZSR_EPS
instead to be more explicit.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
af5dfff3ae xtensa: userspace: use ZSR_RFI_LEVEL for syscall return
When returning from syscall, we cannot use RFE by using EPC1.
As there is no EPS1, we would need to write to PS before
returning. However, this creates a situation where interrupts
are being enabled (since PS is set), and any interrupts will
overwrite EPC1 before we return (which ensures chaos as we
would be returning to the wrong address). So utilize the same
mechanism as interrupt returning by use ZSR_EPS, ZSR_EPC and
ZSR_RFI_LEVEL.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
514cd38431 xtensa: userspace: remove jump to _syscall_returned
There is no need to do a jump to _syscall_returned as it is
the next to be run anyway. Keep the label there so we can
set breakpoint if needed.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
7f028e2f6e xtensa: userspace: align stack before calling syscall handler
We stuff the 7th argument into stack by moving the stack pointer
before calling syscall handler. The Xtensa ABI says stack must
be 16-byte aligned. So instead of moving stack pointer 4 bytes,
we move 16 bytes (assuming stack has been aligned so far).

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
482f9fbbfb xtensa: pad IRQ stack frame to be 16 bytes aligned
Xtensa ISA mentions that stack always needs to be aligned on
16 bytes. So we need to pad the stack frame to be also 16 bytes
aligned when dealing with interrupts. Or else the stack would
not be 16 bytes aligned when we add the stack frame to stack
during interrupt handling.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
7229b00433 xtensa: window may overflow during irq stack crossing
When crossing stack during interrupt handling, we do two call4
to pivot to the interrupt stack, with arguments to these two
call4 stashed in A6, A10 and A11. However, A4-A11 may be marked
as invalid in the register file, and accessing them would
result in window overflowing. At that point, A0 and A1 are not
setup to handle window overflows, and will result in registers
being stashed in incorrect location, resulting in incorrect
value being restored during window underflowing. So move around
the code a bit to restore A0 and A1 properly before accessing
A4-A11.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
9610f1a229 xtensa: mmu: do not force small vector table
Do not force CONFIG_XTENSA_SMALL_VECTOR_TABLE_ENTRY when MMU
is enabled. It is up to the SoC to decide whether they need
this.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
774b73c8a4 xtensa: userspace: swap page table at end of cross stack call
The logic to swap page tables or MPU entries is moved to the end
of cross stack call, since it is still running in the interrupt
stack instead of the thread stack. The old logic was calling
the swap functions in the outgoing thread stack, which is not
desirable.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
e0752c2938 xtensa: userspace: swap page table earlier in xtensa_switch
When switching page table and MPU enties, we need to call
corresponding functions via call4 which would move the register
window. So we need to do that earlier before we start saving
context into stack by manipulating stack pointer manually which
definitely would interfere with window spilling.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
6874cdcf19 xtensa: fix unneeded cache invalidation in arch_cohere_stacks()
During arch_cohere_stacks(), the used portion of the outgoing
thread is cache flushed, and then the unused portion of cache
invalidated. However, this results in the cache line at
the stack pointer being flushed and then invalidated due to
how sys_cache_data_*() operates. If we are swapping back to
the same thread (e.g. after handling interrupt), this cache
line will need to be retrieved again from main memory since
it has already been invalidated. This creates unnecessary
data move between cache and main memory. So create our own
version of cache flushing and invalidation routines just for
arch_cohere_stacks(). Bouns is that these work directly with
bounding addresses and skips the size calculation which should
save a little bit amount of execution time.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
9fb87cf586 xtensa: remove second cross stack trampoline
This removes _xstack_call1_* trampoline as we can simply use
callx4 to jump to the interrupt handler.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
3f8e4d7400 xtensa: rework IRQ masking during IRQ entrance
Before cross stack call is setup correctly, we cannot allow
interrupts to be triggered or it may interfere with register
window spilling since we are clobbering registers needed for
that to work. However, there was a brief period where higher
level interrupts could fire due to code writing to PS with
lowered interrupt mask before raising it again. So rework
that part to avoid writing PS with intermediate value, and
now we mask interrupt until everything is setup correctly
before interrupt is enabled again.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
dcf75319e2 xtensa: set pointer to privileged stack only if user mode
When initializing the stack at thread creation, we should not
set the pointer to privileged stack pointer yet as the thread
can be a kernel thread. Only when a thread is transitioning to
user mode, then we need to set the pointer to point to
the privileged stack. This is a purely semantic change and
should not affect any functionality.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
d725f37d5e xtensa: userspace: calculate PC earlier at syscall entry
This moves the calculation of the return PC earlier in syscall
entry. There is no need to stash it into BSA, load it, do
the calculation and save it back. We can do the calculation
first and save it in BSA at the same time.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
1203ed05d9 xtensa: syscall: fix setting up PS for window spilling
We should not perform a straight OR operation on INTLEVEL as
we have no idea what existing PS.INTLEVEL is. Also, to avoid
any interferences, we disable interrupts very early during
syscall entrance. So we can remove the OR operation as
PS.INTLEVEL will still have all interrupts masked. Note that
we do not really need to OR PS_WOE into PS as we currently
only support windowed ABI which must have PS_WOE set in PS
anyway.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
7f693679b8 xtensa: move FPU_REG_SAVE out of ODD_REG_SAVE
Syscall entrance makes use of ODD_REG_SAVE but it does not
really need to save FPU registers as it is technically
the same thread and same context. So extract call to
FPU_REG_SAVE to interrupt handling code.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
c13c499557 xtensa: add ODD_REG_RESTORE
This adds ODD_REG_RESTORE as a counterpart to ODD_REG_SAVE.
Both the code in interrupt handling and syscall exit have
been refactored to use this new macro.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
fc85aface1 xtensa: parameterized ODD_REG_SAVE
This adds two parameters for ODD_REG_SAVE for scratch register
and BSA pointer, thus allowing a bit more flexibility on how
it can be called.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
10f8882eec xtensa: userspace: remove saving HiFi registers for syscalls
This removes the call to _xtensa_hifi_save() to save the HiFi
registers during syscalls. During syscall, we are not doing
context switching, and technically it is still the same thread.
There is no need to save HiFi registers.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
d9f6882071 xtensa: rsync before reading ZSR_FLUSH
The Xtensa ISA reference manual says to do rsync after wsr to
make sure register is updated before rsr. So do that.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
a4367eb514 xtensa: remove CONFIG_XTENSA_INVALIDATE_MEM_DOMAIN_TLB_ON_SWAP
Remove CONFIG_XTENSA_INVALIDATE_MEM_DOMAIN_TLB_ON_SWAP as it is
remnant from early MMU enabling work which is not needed as
the page table code is different from early version where
the PTEVADDR would be the same for all memory domains.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
Daniel Leung
ee9ddb0eeb xtensa: remove CALC_PTEVADDR_BASE and PRELOAD_PTEVADDR macros
These assembly macros are not being used at all. So remove
them.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-17 00:57:19 +02:00
The Nguyen
949fc5b5f0 soc: renesas: add linker define for CMake Linker Generator on RA4E2
Initial support for CMake Linker Generator on Renesas RA4E2

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-04-17 00:57:08 +02:00
Mika Braunschweig
d19c499037 drivers: interrupt-controller: vim: Compare interrupt numbers
To avoid misconfigurations a comparision has been added which compares the
amount of reported interrupts from the VIM interrupt controller with the
configured number of interrupts via Kconfig.

Signed-off-by: Mika Braunschweig <mika.braunschweig@siemens.com>
2025-04-17 00:56:59 +02:00
Mika Braunschweig
2b7db7f395 drivers: interrupt-controller: vim: Fix wrong address
On startup the VIM interrupt controller driver had a sys_read32 call with a
bitmask instead of an address. This has been fixed.

Signed-off-by: Mika Braunschweig <mika.braunschweig@siemens.com>
2025-04-17 00:56:59 +02:00
Eve Redero
cb8b1cdc74 dts: atmel: add adc node to due
Add ADC0 node and associated pincontrols
in sam3x and Arduino Due device trees.

Signed-off-by: Eve Redero <eve.redero@gmail.com>
2025-04-17 00:56:30 +02:00
Julien Panis
2bbba44205 boards: ti: lp_em_cc2340r5: Add SPI support
Enable SPI.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-04-17 00:55:56 +02:00
Julien Panis
eca9c92ed5 dts: arm: ti: cc23x0: Add SPI support
Add support for SPI to cc23x0 SoC.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-04-17 00:55:56 +02:00
Julien Panis
45895ecfea drivers: spi: Add support for cc23x0 SPI
Add support for SPI to cc23x0 SoC. Only controller mode is implemented.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-04-17 00:55:56 +02:00
Julien Panis
23a296f26b soc: ti: cc23x0: Add helper macros for device tree
This patch adds an header file which contains helper macros.
These macros can be used to access some device tree properties.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-04-17 00:55:56 +02:00
Alberto Escolar Piedras
e1a0350d23 posix arch: Change kconfig menu prompt to be a bit clearer
To avoid confusion with the POSIX OS compatibility shim layer.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-04-16 20:37:16 +02:00
Anders Nielsen
b2b597aa6e drivers: stepper: adi_tmc: adi_tmc50xx_stepper_controller.c
Replace stall guard retry error log on EAGAIN with enable/disable info log.
Log position, sg result and sg status on each rampstat_work_handler() call.
Treat only negative return values from tmc_spi_write_register() and
tmc_spi_read_register() as an error.

Signed-off-by: Anders Nielsen <anders.nielsen@prevas.dk>
2025-04-16 20:37:04 +02:00
Riadh Ghaddab
2eba2e9c9c zms: add more robustiness in extreme cases
When power cuts during a GC operation, the sector is erased again in the
next reboot cycle and the cycle_cnt of the empty ATE is incremented.
If the same power cut happens 255 times in a row, the empty ATE cycle_cnt
will become equal to the close ATE which causes a memory corruption.
Fix this by checking the close ATE cycle_cnt before incrementing the
empty ATE cycle_cnt.

Fixes: #84874
Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-04-16 20:36:49 +02:00
Jukka Rissanen
f1c83bca8f drivers: nxp: wifi: Disable softap mode by default
Do not enable CONFIG_NXP_WIFI_SOFTAP_SUPPORT by default as
that should be let for the user to decide whether the AP
mode is compiled or not.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-16 20:36:37 +02:00
Keith Packard
a721291adc arch/arc: Remove redundant __cxa_atexit from MWDT stubs
__cxa_atexit was originally defined by the IA64 C++ ABI, but it has been
adopted by other C++ implementations since then.  This function is already
present in lib/cpp/api/cpp_dtors.c, which is built by default when C++
support is enabled, so we don't need another copy in the MWDT-specific
code.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-04-16 20:36:27 +02:00
Keith Packard
db49cd3899 tests/kernel: Validate constructor execution order
Check the order of constructors, making sure those with a specified
priority are called in numeric order after which those without priority are
called.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-04-16 20:36:27 +02:00
Keith Packard
9398174340 kernel: Unify .ctors and .init_array handling
Handle both of these sections in a single chunk of code instead of
separately. We don't need to use the legacy .ctors ABI as both
the constructors array and startup logic are managed within a single
link result.

This can now also be used with ARC MWDT which had been using the .ctors
sections but with .init_array semantics. For ARC MWDT, we now always
discard .dtors and .fini sections as Zephyr will never cause global
destructors to execute. Stop discarding .eh_frame sections so that
exception handling works as expected.

When building a NATIVE_APPLICATION, we ask the native C library to run all
of the constructors to ensure any non-Zephyr constructors are run before
main is invoked. It might be "nice" to split the constructors so that the
Zephyr constructors were executed by the Zephyr code while the non-Zephyr
ones were executed by the native C library. I think that could be done if
we knew the pathnames of either the Zephyr or non-Zephyr files. That might
make a good future enhancement.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-04-16 20:36:27 +02:00
Arnaud Pouliquen
cea2487d3d soc: st: stm32mp13: add missing arm_mmu.h include
The samples/subsys/llext/shell_loader test fails when running as a
twister test on the stm32mp135f_dk/stm32mp135fxx platform, with the
following error:

soc/st/stm32/stm32mp13x/soc.c:46:36:
error: array type has incomplete element type 'struct arm_mmu_region'
   46 | static const struct arm_mmu_region mmu_regions[] = {

This commit adds the missing arm_mmu.h include to fix the build issue.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-04-16 17:08:37 +02:00
Arnaud Pouliquen
9dec55e107 arch: arm: mmu: add missing includes
The samples/subsys/llext/shell_loader test fails when running as a
twister test on the stm32mp135f_dk/stm32mp135fxx platform, with the
following error:

zephyr/include/zephyr/arch/arm/mmu/arm_mmu.h:112:9:
error: unknown type name 'uintptr_t'

This commit adds the necessary includes to define the missing types.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-04-16 17:08:37 +02:00
Sai Santhosh Malae
ee55bdc3c2 drivers: timer: siwx91x: Remove sleeptimer as default soc timer
Remove sleeptimer as default soc timer and it should be only
used as soc timer if PM is enabled.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-04-16 17:08:13 +02:00
Toon Stegen
a4f89574b9 bluetooth: increase stack size for NO_OPTIMIZATIONS
when building without optimizations, the bt long thread needs more space
to not crash

Signed-off-by: Toon Stegen <toon@toostsolutions.be>
2025-04-16 17:08:02 +02:00
Hao Luo
a499afde23 drivers: pinctrl: Update ambiq nce definitions in pinctrl
Updated nce definitions in pinctrl structure to be consistent
with ambiq HAL.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-16 17:07:51 +02:00
Valerio Setti
843776035d tests: drivers: build_all: add support for "x-powers,axp2101-charger"
Extend the *.dtsi file to include also an "x-powers,axp2101-charger"
instance.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-04-16 17:07:20 +02:00
Valerio Setti
5d78ef3d5d boards: twatch_s3: enable battery charger
Enable the battery charger module form the X-Powers AXP2101 IC.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-04-16 17:07:20 +02:00
Valerio Setti
65a7e79eab drivers: charger: add charger support in X-Powers AXP2101
AXP2101 is MFD device. Zephyr already support the regulator part. This
commit introduces intial support for the charger one.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-04-16 17:07:20 +02:00
Marek Slowinski
ba8742c1b8 tests: robot: renode: Use precise pause for UART keywords
Remove the source of non-determinism during emulation
by keeping terminal events reproducible between runs.
By using the mechanism of precise pause in Renode emulator
every interaction with terminal happens at the same virtual time
from the perspective of an emulated system, hence makes it independent
of the host. Otherwise the result of a test is susceptible to
the load on the host and robot process keywords' timing.

Renode emulator supports precise pausing when specified sequence of
characters is received on a terminal. Besides that,
char delay parameter is specified to set time interval between
consecutive characters entered in the terminal.
'Start Emulation' keyword is redundant, because 'Wait For'
keywords automatically continue emulation up to the nearest pause
event (e.g. matched pattern on the terminal).

Signed-off-by: Marek Slowinski <mslowinski@antmicro.com>
2025-04-16 17:07:05 +02:00
Kapil Bhatt
a9507729c7 net: lib: Correct the wifi_cred command
Change wifi_cred to wifi cred.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-04-16 14:53:54 +02:00
Krzysztof Chruściński
2ccc3ce6aa debug: cpu_load: Add missing static keyword
Local variable for counter device is missing static keyword.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-16 14:53:30 +02:00
Dipak Shetty
c9645c9d9c tests: drivers: stepper: remove downstream-specific boards not run in CI
Removed boards that are not exercised in the CI pipeline, as they are
highly downstream-specific and not relevant to upstream validation.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-04-16 14:53:19 +02:00
Ravi Dondaputi
ba5b897cb6 wifi: nrf_wifi: Add control pool specific APIs
Memory allocations in HAL are using data pool. These operations
are in control plane. Add APIs for allocation/free operations on
control pool.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-04-16 14:51:59 +02:00
Jamie McCrae
efd4f93045 west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  20f98e0a975c24864872e0df5701eb1082e9c957

  - 20f98e0a Updates for 2.2.0-rc1 release
  - 7a33bcaa boot: bootutil: loader: Add include for flash
    function
  - 8a9627d9 boot/zephyr/boards: nrf54h20dk 'iron' board
    configuration
  - de7a9dc5 zephyr: Disable SPI_NOR by default for
    nrf7002dk/nrf5340/cpuapp
  - 5aed4245 swap_move: correct appsize calcs and warning
  - 454c033f bootutil: swap-scratch: Fix conflicts after support
    of devices w/o erase
  - 572b8fb2 boot: zephyr: flash_map_extended: Add pointless
    workaround for clang
  - 091af82e boot/zephyr: nrf54h20dk adaptations
  - ed434f33 boot: bootutil: Fix clash of STRUCT_PACKED definition
  - 33ad4973 boot: zephyr: add support for mcx_n9xx_evk
  - 881608eb boot/zephyr: Use MCUBOOT_RAM_LOAD instead of
    CONFIG_BOOT_RAM_LOAD
  - 993c2ff8 boot/bootutil/ram_load: Add flash area pointer to
    bootloader state
  - 8b7c7cc9 zephyr: flash map: fix comparison signedness
  - b92d4dd7 boot: zephyr: Only supply MBEDTLS config file path
    if set
  - 9fa0c6b5 zephyr: Fix translation of PSA Kconfig to MCUboot
    config
  - 2d681da4 bootutil: Fix ed25519 pure signature verification

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-16 14:51:50 +02:00
Huaqi Fang
86293ebe11 tests: kernel: gen_isr_table: Fix irq tests for rv64 targets
The element in _irq_vector_table is 64bit for 64bit cpu,
and 32bit for 32bit cpu

Signed-off-by: Huaqi Fang <578567190@qq.com>
2025-04-16 08:10:47 +02:00
Huaqi Fang
a7f9ebe9d5 driver: interrupt_controller: intc_clic: support 32 and 64 bit riscv cpu
This patch is used to provide clic(eclic) in 64 bit riscv cpu support,
since in 64 bit riscv cpu, the clic irq table entry is also 64 bit,
so we need to use ld/sd to do irq entry load and store

Signed-off-by: Huaqi Fang <578567190@qq.com>
2025-04-16 08:10:47 +02:00
Tien Nguyen
5cf65452c3 tests: drivers: gpio: Add support for RZ/G2LC-SMARC
Add support for RZ/G2LC-SMARC

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-04-16 08:10:38 +02:00
Tien Nguyen
dd31b7f0ea boards: renesas: Add minimal support for Renesas RZ/G2LC-SMARC
Add minimal support for Renesas RZ/G2LC-SMARC

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-04-16 08:10:38 +02:00
Tien Nguyen
3287dd3a77 dts: arm: renesas: Add support for Renesas RZ/G2LC
Add initial support for Renesas RZ/G2LC (r9a07g044c22gbg), a 361-pin
package variant of RZ/G2L

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-04-16 08:10:38 +02:00
Tien Nguyen
673d408b40 soc: renesas: Add initial support for Renesas RZ/G2LC
Add initial support for Renesas RZ/G2LC (r9a07g044c22gbg), a 361-pin
package variant of RZ/G2L

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
2025-04-16 08:10:38 +02:00
Derek Snell
838eae9abf doc: releases: migration-guide-4.2: add mclk-output for nxp,mcux-i2s
Document new mclk-output property.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-04-16 08:09:41 +02:00
Derek Snell
331e0cef3f drivers: i2s_mcux_sai: control MCLK direction with DT property
For the SAI peripheral, the MCLK signal input/output direction is
independent from the TX or RX bit clocks directions (TCR2[BCD] and
RCR2[BCD]). Introduces mclk-output property.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-04-16 08:09:41 +02:00
Carles Cufi
999b6a14a4 west: runners: nrf: Add an option to control the ext erase mode
The erase mode for any external memory that is mapped to the address
space of the MCU is derived from the internal non-volatile memory erase
mode. In order to allow users to override the default value, add a new
--ext-erase-mode command-line option that takes an erase mode just like
--erase-mode does.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-04-16 08:07:44 +02:00
Carles Cufi
58e0e31c7e west: runners: nrf: Generalize the erase command
Instead of providing an `--erase-pages` command, generalize it to a new
`--erase-mode` one that can be set to `none`, `ranges`, or `all`. This
gives the user full control over the erase mode that will be passed on
to nrfutil.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-04-16 08:07:44 +02:00
Carles Cufi
01f65f658b west: runners: nrf: Fix typo in nrjfprog runner
The correct string is `ERASE_NONE`.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-04-16 08:07:44 +02:00
Jukka Rissanen
3064c7b11d samples: net: pkt_filter: Add a sample to demo packet filtering
Add a network packet filtering sample to show how the packet
filtering can be used.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-16 08:07:34 +02:00
Jukka Rissanen
8d0c16ef9c tests: net: npf: Add VLAN tests
Add tests for VLAN matching.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-16 08:07:34 +02:00
Jukka Rissanen
4c01b37bda net: pkt_filter: Add VLAN support to filtering
The Ethernet matching needs tweaking so that it will also
work with VLAN packets.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-16 08:07:34 +02:00
Jukka Rissanen
3232b6190c net: pkt_filter: Add more debug prints when matching packets
Add some more useful debug prints when checking packets.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-16 08:07:34 +02:00
Jukka Rissanen
28dca17436 net: shell: Add packet filter support
Add a "net filter" command that will allow user to see the
current network packet filter configuration.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-16 08:07:34 +02:00
Jukka Rissanen
f5bac38865 net: pkt_filter: Add enablers for shell support
Add helpers and enablers that allow "net filter" shell command to
work.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-16 08:07:34 +02:00
Jukka Rissanen
bd3ce84d91 net: virtual: Hook into packet filter processing
Make sure that we check possible network packet filtering status
before accepting the packet.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-16 08:07:34 +02:00
Jukka Rissanen
cde70232b9 net: pkt_filter: Add statistics support to packet filter
As the network packet filter drops packets without any indication
that the packet is dropped, it can be difficult to monitor what
is going on in the system when receiving data. The user can
now monitor the statistics and see if packets are being dropped
because of packet filter activity.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-16 08:07:34 +02:00
Jukka Rissanen
c066deb5ef net: pkt_filter: Avoid unused function warning
The get_ip_rules() function is only used if IPv4 or IPv6
filtering is enabled so add checks to avoid unused function
warning.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-16 08:07:34 +02:00
Chris Friedt
d29a2a599c doc: posix: option groups: add c_lang_support_r section.
Document that the POSIX_C_LANG_SUPPORT_R Option Group is already
complete.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-16 08:07:24 +02:00
Jordan Yates
dfabbee634 net: socketpair: fix allocated number of buffers
According to `f9901e8e` and validated by testing, the supplicant only
use case only requires 4 socket pairs. 6 pairs are required for the
`hostapd` use case.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-16 08:05:12 +02:00
Jordan Yates
94583777fd net: socketpair: give allocation strategy option a name
Give the socketpair allocation strategy a name so that users can change
the default.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-16 08:05:12 +02:00
Jordan Yates
e803bfb4bb net: ip: net_context: louder warning for no src address
Increase the verbosity of the message when there is no source address
in `net_context_create_ipv4_new`. This is likely the first failure point
when attempting to send data on an interface that has not yet been
assigned an IP address. Burying the fault at the DBG level makes it much
more time consuming to determine the root cause of this error.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-16 08:05:03 +02:00
Emil Gydesen
da953b64c2 Bluetooth: Host: Shell: Add missing guard for CS test commands
The start_simple_cs_test and stop_cs_test depends on
CONFIG_BT_CHANNEL_SOUNDING_TEST and could cause build errors if that
is disabled while CONFIG_BT_CHANNEL_SOUNDING=y in the shell.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-16 08:04:53 +02:00
Chris Friedt
788369493d tests: posix: timer: do not skip tests
I just happened to try to run this testsuite manually today and
noticed that it was being skipped due to a copy-paste error.

This test was migrated from tests/posix/common, where tests
were skipped for non-dynamic threads, since it would mostly
duplicate tests that had already been run.

However, while migrating, the condition to skip tests was
mistakenly left in when it should not have been.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-16 08:04:36 +02:00
Chris Friedt
f5cf14cbb1 tests: posix: timers: provide at least 1 dynamic thread
timer_create() will error if there are no dynamic threads to
run the SIGEV_THREAD handler, causing the test to fail (where
it was previously expected to pass).

Ensure that there is at least 1 dynamic thread available to
the POSIX API.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-16 08:04:36 +02:00
Chris Friedt
82d564a354 posix: timers: correct pointer passed to k_mem_slab_free()
If it is not possible to create a timer in timer_create(),
then the timer_obj associated with the timer must be freed.

However, the address of the pointer was mistakenly being
passed to k_mem_slab_free() rather than simply the
the pointer.

This caused a crash in tests which can easily be avoided
by passing the pointer rather than the address of the
pointer.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-16 08:04:36 +02:00
Fengming Ye
541b64747c modules: hostap: enable DPP3 kconfig option
DPP3 is must when we want to pass DPP certificate with
different elliptical curves.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-04-16 08:04:23 +02:00
Ayush Singh
b2b7a468ea boards: beagle: Add PocketBeagle 2 M4 support
Add initial support for the PocketBeagle 2 MCU domain Cortex-M4F core.
This only adds support for A0 revision (i.e. the version with AM6232).

PocketBeagle 2: https://www.beagleboard.org/boards/pocketbeagle-2

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-04-16 01:15:41 +02:00
Ayush Singh
e443fbd6db soc: ti: k3: Add support for AM6232
- AM6232 is a dual core variant of AM6234 with everything being smae.
- Used in the first batch of PocketBeagle 2

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-04-16 01:15:41 +02:00
Tom Hughes
d024158d83 include: linker: Add missing symbols needed for LLVM's libunwind
LLVM's libunwind needs eh_frame_start/eh_frame_end and
eh_frame_hdr_start/eh_frame_hdr_end symbols.

See
80267f8148/libunwind/src/AddressSpace.hpp (L73-L103)

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-04-16 01:10:50 +02:00
Chaitanya Tata
5293155588 drivers: nrf_wifi: Fix log level of a print
This is just for developers, so, convert to a debug.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-16 01:10:37 +02:00
Chaitanya Tata
37d774e908 drivers: nrf_wifi: Fix co-ex configs
They all depends on main COEX feature flag.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-16 01:10:37 +02:00
Marcio Ribeiro
a5d69a5b63 drivers: i2s: esp32 fix warnings and errors due to variable declarations
Fixes warnings and errors due to misplacement of variable declarations

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-04-16 01:10:26 +02:00
Peter Mitsis
9416ef2684 doc: Update context switching for arch porting
Updates the context switching documentation for arch porting
to reflect the current state.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-04-16 01:10:15 +02:00
Peter Mitsis
0a9019f09a doc: Remove stale reference to _IntExit
_IntExit() no longer exists.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-04-16 01:10:15 +02:00
Peter Mitsis
4131e9bcf3 doc: Replace references to _Swap with z_swap
_Swap() is obsolete. Replace references to it with z_swap().

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-04-16 01:10:15 +02:00
Peter Mitsis
4bc5498399 kconfig: Remove stale references to _Swap()
_Swap() is obsolete and has since been replaced with z_swap().

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-04-16 01:10:15 +02:00
Charles Dias
6fec48956c dts: arm: st: u5: add support for stm32u5g9
Add device tree support for STM32U5G9 line.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-04-16 01:10:06 +02:00
Charles Dias
389c9e7b67 soc: st: stm32: add support for stm32u5g9xx
Add Kconfig and YML SoC configurations for STM32U5G9xx.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-04-16 01:10:06 +02:00
Arnaud Pouliquen
42463cbee8 drivers: hwinfo: stm32: add support for STM32MP13
Adds the support for the STM32MP13 series to the existing STM32
Hardware Information driver.

Note that there is no  LL_GetUID_Word<x> functions for the STM32MP13
series. to allow to use HAL_GetUIDw<x> functions create macros to
fill the stm32_uid structure.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-04-16 01:09:56 +02:00
IBEN EL HADJ MESSAOUD Marwa
60835568fc drivers: usb: device: resolve USB build error for STM32N6
- Removing the unused declaration of 'ret'
  in the usb_dc_stm32_init function for STM32N6.
- Ensuring the 'ret' variable is used correctly
  in the pinctrl_apply_state function call.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-15 19:10:28 +02:00
IBEN EL HADJ MESSAOUD Marwa
ae9f0529c7 boards: st: Add missing USART status
Add missing USART status for nucleo_n657x0_q
and stm32n6570_dk.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-15 19:10:28 +02:00
Frank Audun Kvamtrø
6ab7322688 boards: nordic: Add sysbuild for NS board (nrf54l10)
-This commit adds "sysbuild: true" for ns build-targets for the
 following nordic board:
  - nrf54l15dk (nrf54l10 target)
-Added missing vendor: nordic for some boards for consistency

Signed-off-by: Frank Audun Kvamtrø <frank.kvamtro@nordicsemi.no>
2025-04-15 19:10:21 +02:00
Frank Audun Kvamtrø
fde11594e2 boards: nordic: Add sysbuild for NS boards
-This commit adds "sysbuild: true" for ns build-targets for the
 following nordic boards:
  - nrf5340_audio_dk
  - nrf54l15dk
  - nrf9131ek
  - nrf9151dk
  - nrf9161dks (multiple versions)
  - thingy53
-Added missing vendor: nordic for some boards for consistency

Signed-off-by: Frank Audun Kvamtrø <frank.kvamtro@nordicsemi.no>
2025-04-15 19:10:21 +02:00
Maochen Wang
879c00a462 samples: net: wifi: fix the value of NXP_WIFI_DRIVER_TASK_STACK_SIZE
Fix the typo that NXP_WIFI_DRIVER_TASK_STACK_SIZE has wrong value in
the overlay_rw612_debug.conf.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-04-15 19:10:12 +02:00
Eric Ackermann
421a7047e5 net: gPTP: Fix pointer type in gptp_add_port
The number of ports in gptp_domain.default_ds.nb_ports is a uint8_t.
A pointer to it is passed to gptp_add_port.
However, in this method, the pointer is cast to an int pointer.
The C compiler generates an int-size store for this.
In addition to potentially overwriting adjacent attributes, on platforms
such as RISC-V that do not support unaligned accesses, this causes an
exception on access.
This commit casts nb_ports to the correct type, uint8_t.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-04-15 19:10:04 +02:00
Daniel Leung
833bb667b2 xtensa: fix thread_page_tables_get being unused
thread_page_tables_get() is only used when userspace is
enabled. So move it with userspace #ifdef, or else
compiler would complain about it being unused.

Fixes #88421

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-15 19:09:52 +02:00
Krzysztof Chruściński
e0f5241b28 drivers: serial: nrfx_uarte: Fix use of PM_DEVICE_ISR_SAFE
PM_DEVICE_ISR_SAFE shall not be used when non-asynchronous API is used
because RX is disabled in suspend action and that takes relatively
long time. In case of PM_DEVICE_ISR_SAFE it is done with interrupts
disabled. RX is not used at all if disable-rx property is set and in
that case PM_DEVICE_ISR_SAFE can be used.

Added macro which determines if ISR safe mode can be used.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-15 19:09:43 +02:00
Krzysztof Chruściński
66daaf6ba3 kernel: sched: sleep: Use value returned by z_add_timeout
z_tick_sleep function needs to calculate expected wakeup tick. It
required reading current system clock tick. It can be costly since
it is a register access. When timeout is added this value is
calculated and z_add_timeout returns it. It can be used instead to
optimize sleep performance.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-15 19:09:33 +02:00
Krzysztof Chruściński
5f55fed4bb kernel: timeout: z_add_timeout to return expiration tick
Add return value to z_add_timeout. It returns system tick when timeout
will expire.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-15 19:09:33 +02:00
Krzysztof Chruściński
6d35969a55 kernel: sched: Optimize sleeping function
Accessing system timer registers can be costly and it shall be avoided
if possible. When thread is waken up in z_tick_sleep it may be because
timeout expired or because thread was waken up before sleeping period
passed.

Add function to detect if timeout is aborted (before it was expired).
Use it in the sleep function and avoid reading system ticks if timeout
was not aborted.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-15 19:09:33 +02:00
Benjamin Cabé
3c2d2a6ee5 doc: _scripts: boards: fix for boards without revisions
Commit 38b8790 introduced a pretty bad regression for boards without
revisions. Fix by correctly checking for actually undefined revisions

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-15 15:33:51 +02:00
Jordan Yates
729f50e9d5 manifest: nrf_wifi: cleanup logging newlines
Update WiFi driver to cleanup extra logging newlines for consistency.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-15 15:33:41 +02:00
Emil Gydesen
2420b61037 include: arch: ffs: include toolchain/common.h
Add an include of toolchain/common.h for the ALWAYS_INLINE
macro.

This is a general issue in many files across Zephyr, specifically
for the ALWAYS_INLINE macro, but for simplicity this commit
only includes it for this file as that has been shown to
cause compilaion issues without it.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-15 15:33:33 +02:00
Ian Morris
1f113411b1 boards: shields: adafruit_pca9685: added pwm binding include
Lack of PWM binding include causes some examples using this
shield not to build if the base board used did not already
include this binding.

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2025-04-15 15:33:26 +02:00
IBEN EL HADJ MESSAOUD Marwa
a2cb85295b tests: drivers: adc: adc_api: update adc_api test
Add nucleo_wba65ri overlay file

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-15 15:33:15 +02:00
Francois Ramu
a60d7741b5 drivers: flash: stm32wba6x add flash driver support
-The stm32wba6x has Dual Bank memory. Change the flash driver
 to support this OPTion given by presence of the
 DUAL_BANK bit (21) in the FLASH_OPTR register.

-Flash erase with 2 banks: Add the control of the BKER
 bit of the FLASH_NSCR1 to select BANK1 or 2 of
 the internal flash depending
 on the page number >127 for BANK2

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-15 15:33:15 +02:00
Francois Ramu
940993cc4b boards: st: add the nucleo_wba65ri board
Introduce the stm32WBA56 nucleo board.
HSE32 divided by 2 is the source clock.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-15 15:33:15 +02:00
Francois Ramu
95728178f5 include: bindings: stm32wba clock domain definition
Add the clock domain definition for the stm32wba CCIPR

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-15 15:33:15 +02:00
Francois Ramu
0771d55dfa dts: arm: st: add DTSI for STM32WBA65x device
This commit adds the Device Tree include files
for the STM32WBA65x device
Adding GPIO D/E/G banks.
Renaming JTAG reset pin.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-15 15:33:15 +02:00
Francois Ramu
82d0c7aa5c soc: stm32: Adds the STM32WBA65x device.
This commit adds support for the STM32WBA65x MCU.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-15 15:33:15 +02:00
Francois Ramu
f0b1c490e7 west.yml: update modules hal stm32 for stm32wb and stm32wba
update modules hal stm32 for stm32wb and stm32wba

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-04-15 15:33:15 +02:00
Björn Bergman
1e1f94405f toolchain: iar: Fix sections placed at address
zephyr_linker_section(... ADDRESS 0xF00) was broken. The fixed
placement was using their parent group address.

This also removes some dead code in config_file_script.cmake that
helped confuse what is going on with fixed sections.

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-04-15 11:25:07 +02:00
Théo Battrel
cb0ece1ea9 Doc: Release Notes: Add util_memeq and util_eq
Add the two new function `util_memeq` and `util_eq` recently added in
`sys/util.h` to the release notes for 4.2.

Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
2025-04-15 11:25:04 +02:00
Jordan Yates
b7542f17fa wifi: nrf70: configurable IOVDD settling delay
Make the IOVDD settling delay configurable, instead of hardcoding a
delay that happens to work for the dev kits. For example, the nPM1300
load switches have a soft-start time of 1.8 ms.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-15 11:24:53 +02:00
TOKITA Hiroshi
b63957351d boards: add usbd supports for the rp2350 implemented boards
Add `usbd` support for boards that have the rp2350 SoC to run device tests.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-15 11:24:49 +02:00
Przemyslaw Bida
150af78d6c net: openthread: Add tcat platform function implementation
Commit add tcat related function implementation

Signed-off-by: Przemyslaw Bida <przemyslaw.bida@nordicsemi.no>
2025-04-15 11:24:40 +02:00
Jordan Yates
6c989dee10 wifi: nrf_wifi: add alignment requirement to buffers
The nRF lower levels (`spim_addr_check` and `qspi_addr_check`) do
address alignment validation before sending or receiving data. If the
buffer sizes are not aligned, errors like this are printed to the
console when the interface is powered up.

```
<err> : spim_addr_check : Unaligned address ee0b2 2002b020 1 0 0
<err> : spim_addr_check : Unaligned address eeb3e 2002bb40 1 0 0
<err> : spim_addr_check : Unaligned address ef5ca 2002c660 1 0 0
<err> : spim_addr_check : Unaligned address f0056 2002d180 1 0 0
```

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-15 09:28:44 +02:00
Sreeram Tatapudi
0918236c0c manifest: update hal_infineon revision
Updating the below listed assets,

- abstraction-rtos 1.10.0.724
- core-lib 1.4.3.87
- mtb-hal-cat1 2.7.0.45636
- mtb-pdl-cat1 3.16.0.40964
- mtb-template-cat1 1.7.1.44929
- serial-flash 1.4.3.44145

SHA: 9df9d40571b25171cb752459c6dd96bd83ec8570

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-04-15 09:28:30 +02:00
Ruibin Chang
41bc8efbee drivers/watchdog/it51xxx: implement watchdog driver
Implement watchdog driver for ITE it51xxx series chip.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-04-15 09:28:19 +02:00
Dhanesh S R
38a81f13ea samples: dac: sam: Add missing pin configuration for sam_v71_xult
DAC pins are not defined for SAM V71(B) Xplained Ultra - this was
causing device initialization to fail. This commit fixes that.

Signed-off-by: Dhanesh S R <sr.dhanesh@protonmail.com>
2025-04-15 09:28:09 +02:00
Jhan BoChao
482d17f235 driver: sensor: add tachometer driver for rts5912
Add tachometer driver for Realtek rts5912.

Signed-off-by: Jhan BoChao <jhan_bo_chao@realtek.com>
2025-04-15 09:28:01 +02:00
Tom Burdick
8b54e8afa9 boards: frdm-mcxn947: Enable flexcomm3
Flexcomm3 is used for the mikrobus header, enable the clock for it and
setup a pinctrl group for i2c.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-04-14 23:07:31 +02:00
Chaitanya Tata
163fe87831 Revert "shields: nrf7002ek: Increase default frequency to 16MHz"
This reverts commit fe32d059af.

A supported host, 52840 does not support 16MHz SPI (though it falls back
to 8M) but prioritize interoperability over performance.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-14 23:07:16 +02:00
Okan Sahin
bacb99da6d ci: doc: github: Require update for python version
Require latest python version for Setup Zephyr Project
step.

Signed-off-by: Okan Sahin <Okan.Sahin@analog.com>
2025-04-14 23:07:04 +02:00
Luis Ubieda
d7ebf672bd drivers: i2c_rtio: MCUX LPflexcomm determine by inst
Determine if lpflexcomm wrapped lpi2c by instance and connect
irq differently dependending on that to support platforms with
both flexcomm wrapped and unwrapped lpi2c's.

Applying c1286a8d8d to RTIO version.

Authored-by: Declan Snyder <declan.snyder@nxp.com>
Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-14 23:06:53 +02:00
Luis Ubieda
c7a00248a6 drivers: i2c_rtio: Use the NXP Flexcomm driver for interrupt handling
The Low Power Flexcomm driver manages the interrupt handling
and provides an API to register interrupt callbacks.
Register the NXP LPI2C interrupt handler.

Applying dca6e64c93 on RTIO-version.

Authored-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-14 23:06:53 +02:00
Luis Ubieda
797772fc41 drivers: i2c_rtio: Use flexcomm interface to manage interrupts
Some NXP SoC's have a FlexComm interface that manages the
interrupts.

Applying 482e39ea95 on RTIO-version.

Authored-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-14 23:06:53 +02:00
Luis Ubieda
0f0bb7e6e9 drivers: i2c_rtio: Use MCUX variations when using instance number
Update the driver to account for variations in the SDK driver
when it uses the instance number instead of the base address.

Applying 49bdcd2ef2 on RTIO-version.

Co-authored-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-14 23:06:53 +02:00
Chris Friedt
c46f7f54e8 doc: kernel: threads: add dynamic thread stack docs
Add documentation to indicate that, aside from static thread
stack allocation, Zephyr supports dynamically allocated thread
stacks.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-14 23:06:41 +02:00
Chris Friedt
582c98344f kernel: revise doc for k_thread_stack_alloc and k_thread_create
Update the kernel API doxygen for k_thread_stack_alloc() and
k_thread_create() to convey that kernel thread stacks may be
dynamically allocated as an alternative to static allocation.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-14 23:06:41 +02:00
Nitin Pandey
50e36095dd driver: wifi: siwx91x: Add roaming configuration
- Defined Kconfig macros for Roam config
- Added set roam configuration API call
  after BGSCAN

Signed-off-by: Nitin Pandey <nitin.pandey@silabs.com>
2025-04-14 23:06:20 +02:00
Nitin Pandey
bf22b61540 driver: wifi: siwx91x: Implement scan dwell time
- Verified and configured scan
  dwell time for active, passive
  and advance scan

Signed-off-by: Nitin Pandey <nitin.pandey@silabs.com>
2025-04-14 23:06:20 +02:00
Nitin Pandey
4c5dd7384b driver: wifi: siwx91x: Add support for BG Scan
- Added support for background scan
  and configured the default values
  of BG scan configuration

Signed-off-by: Nitin Pandey <nitin.pandey@silabs.com>
2025-04-14 23:06:20 +02:00
Georgios Vasilakis
8cec9f7cd7 boards: nordic: Update copyrights for nRF54L15
It seems that some copyrights were not udpated to
Apache-2.0 as they should have been so this commit
updates them.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-04-14 20:05:17 +02:00
Georgios Vasilakis
5c06558be2 samples: tests: Exclude nRF54L10 NS for unsupported tests/samples
The ADC and watchdog samples are not currently supported for the
non secure target of the nRF54L10 DK.

Add exclusions for these until they are supported.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-04-14 20:05:17 +02:00
Georgios Vasilakis
6432b0debd samples: tfm: Add nRF54L10 in TF-M samples yaml
Add nRF54L10 non secure target for the config_build and
the tfm_ipc samples.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-04-14 20:05:17 +02:00
Georgios Vasilakis
0151535b8f boards: nordic: Add initial support for nRF54L10 with TF-M
This adds the nrf54l15dk/nrf54l10/cpuapp/ns board variant to
Zephyr. It allows to build applications for this target.

This is an initial support for the non secure target which allows
building and running tfm_ipc and config_build.

This is NOT full support of the non secure target in upstream
Zephyr.

There are important limitations, such as:
  - The hardware Crypto accelerator is not supported and thus the non
    secur target is NOT secure for production applications in upstream
    Zephyr.
  - The BL2 is not supported, so no DFU is supported with this support

Most of the code changes here are taken from nRF Connect SDK
in order to avoid having noups there.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-04-14 20:05:17 +02:00
Georgios Vasilakis
0c11af915d modules: TF-M: nordic: Update header for the NRF54L series
Update the header to include a generic header for the NRF54L
series and not a specific one for the NRF54L15.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-04-14 20:05:17 +02:00
Georgios Vasilakis
27174731c7 manifest: Bring TF-M with initial nRF54L10 support
Brings some commits from the upstream TF-M which introduce
nRF54L10 ns support.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-04-14 20:05:17 +02:00
Zhaoxiang Jin
b39f8bdd9c modules: hal_nxp: Fix bt_controller cmake load issue
- In middleware/CMakeLists.txt, using add_subdirectory()
    to load the cmakelists.txt under bt_controller will
    result in the bt_controller directory not being found
    correctly, because the starting point of the query
    is mcux-sdk-ng/CMakeLists.txt. Need to add
    ${CMAKE_CURRENT_LIST_DIR} to bt_controller to correctly
    locate the folder.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-04-14 20:04:59 +02:00
Luis Ubieda
d1b79aa5bc drivers: i2c_nrfx_twi_rtio: Fix multi-writes with OP_TRANSACTION flag
This patch establishes proper handling of RTIO OPs with multiple write
requests in the same transfer (as in: including OP_TRANSACTION flag).
An example of this is captured in test_ram_rtio_write_with_transaction
test). This patch makes that testcase pass for i2c_nrfx_twi_rtio.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-14 20:04:47 +02:00
Luis Ubieda
7f6588877a tests: i2c_ram: Add testcase for i2c_rtio write with transactions
As it is a common pattern for drivers performing writes (e.g: write
reg-addr + write reg-data) without having to memcpy both into a buffer.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-14 20:04:47 +02:00
Peter Wang
7b2c92f0a0 boards: frdm_mcxa166, frdm_mcxa276: add flash support
1. enable flash support
2. verified test/driver/flash

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-04-14 20:03:54 +02:00
Peter Wang
393c8d1378 boards: frdm_mcxa166, frdm_mcxa276: add uart support
1. add uart support
2. enable the uart_async_api test example

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-04-14 20:03:54 +02:00
Piotr Krzyzanowski
b983b0441b tests: drivers: spi: Add NULL spi_buf_set tests
Add test cases where spi_transceive gets NULL spi_buf_set
once for tx and once for rx.

Signed-off-by: Piotr Krzyzanowski <piotr.krzyzanowski@nordicsemi.no>
2025-04-14 20:03:28 +02:00
Utsav Munendra
fd8abcff37 portability: cmsis: Avoid copying objects names into control block
Instead, just store the pointer to the string provided as part of the
RTOS object init attributes.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-04-14 20:03:19 +02:00
Utsav Munendra
e676bf3d35 portability: cmsis: Store thread name within Zephyr k_thread
Use underlying Zephyr thread directly to store thread name instead of
storing the name in CMSIS control block. Also, allow `osThreadGetName`
to work within ISR, as expected from spec.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-04-14 20:03:19 +02:00
Jordan Yates
1ce32f0633 doc: releases: document zbus_chan_add_obs changes
Document the changes to the ZBus function `zbus_chan_add_obs`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-14 20:03:09 +02:00
Jordan Yates
19d123fc43 doc: zbus: update CONFIG_ZBUS_RUNTIME_OBSERVERS
Update the documentation for `CONFIG_ZBUS_RUNTIME_OBSERVERS`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-14 20:03:09 +02:00
Jordan Yates
ab34a9df48 zbus: remove k_malloc dependency for ZBUS_RUNTIME_OBSERVERS
Remove the dependency on the system heap existing when enabling
`ZBUS_RUNTIME_OBSERVERS`. Instead the previously allocated memory is
required to be provided to `zbus_chan_add_obs` (which can still be
allocated through malloc).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-14 20:03:09 +02:00
Benjamin Cabé
8a4bb181f5 doc: releases: intermediate update for new 4.2 boards/samples/drivers
New boards, drivers, samples since March 24, 2025.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-14 16:08:06 +02:00
Benjamin Cabé
be16a55039 boards: intel: btl: use zephyr board sphinx directives
Improve documentation of this board by using the appropriate Sphinx
directives

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-14 16:08:06 +02:00
Benjamin Cabé
83a40d360c doc: releases: sort board vendors alphabetically
previsouly  the ordering was case sensitive, making the list of vendors
not really alphabetically ordered.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-14 16:08:06 +02:00
Hao Luo
5d62f96d8d drivers: i2c: ambiq: Optimized i2c_ambiq_transfer to handle frame header
Need to send the device address together with data in one transaction,
instead of splitting into two.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-14 16:07:54 +02:00
Ivan Wagner
192b780364 drivers: sensor: meas: ms5837 release notes and migration guide for 4.2
The meas,ms5837 compat has been removed and replaced with two variants
hence the documentation in order to migrate to the new ones.

Signed-off-by: Ivan Wagner <ivan.wagner@tecinvent.ch>
2025-04-14 16:07:45 +02:00
Fin Maaß
1c788ba74d tests: storage: flash_map: add test for flash_area_copy()
add test for flash_area_copy().

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-14 16:07:35 +02:00
Fin Maaß
ddefc4222b storage: flash_map: add flash_area_copy()
add flash_area_copy() function based on
flash_copy().

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-14 16:07:35 +02:00
Théo Battrel
77bdc8a435 Bluetooth: Add usage of util_eq and util_memeq
Update `bt_irk_eq` to use `util_memeq` instead of `memcmp` and the
"disconnect" BabbleSim test to use `util_eq` instead of a first
assertion on the size followed by a `memcmp`.

This is done as an example usage of the two new functions.

Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
2025-04-14 16:06:38 +02:00
Théo Battrel
716e6bfd20 Tests: Util: Add unit tests for util_eq/util_memeq
Add two unit tests for the newly added functions `util_eq` and
`util_memeq`.

Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
2025-04-14 16:06:38 +02:00
Théo Battrel
2158f4897d include: util: Add util_eq and util_memeq
`util_eq` compare two memory areas and their length. It returns true if
they are equal, else false.

`util_memeq` the first n bytes of two memory areas. It returns true if
they are equal, else false.

Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
2025-04-14 16:06:38 +02:00
Krzysztof Chruściński
8d6ab28ff7 drivers: spi: nrfx_spis: Fix spis120
ISR safe runtime PM can only be used for all instances except for
spis120 which requires standard runtime PM.

Added compilation guard against using CONFIG_PM_DEVICE_SYSTEM_MANAGED
with spis120.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-14 13:07:17 +02:00
Krzysztof Chruściński
9d59e03ad9 drivers: spi: nrfx_spim: Remove explicit references to SPIM instances
Add FOREACH macro which iterates over all SPIM instances and creates
device instances for each enabled instance.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-14 13:07:07 +02:00
Krzysztof Chruściński
d8dc24165a drivers: spi: nrfx_spim: Detect wrong configuration
Add compile time detection if fast SPIM instances are used
and system managed device PM is enabled. This configuration is
not supported.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-14 13:07:07 +02:00
Krzysztof Chruściński
fc77abc8ae drivers: pwm: nrfx: Add protection against wrong configuration
Do not allow CONFIG_PM_DEVICE_SYSTEM_MANAGED when fast PWM instance
is used.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-14 13:06:54 +02:00
Robin Kastberg
f9ec5f86fa iar: toolchain: arm: Fix FPU settings for CM55 and CM85
Currently the FPU settings for CM55 and CM85 are not complete.
This will complete them.

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-04-14 13:06:41 +02:00
Luca Burelli
0f71880001 cmake: yaml: update timestamp on intermediate file save
file(GENERATE ...) does not update the output file if the content is
unchanged. Since the metadata in build_info.yml mostly depends on the
build configuration, the timestamp of the intermediate file does not get
updated on most rebuilds, while the final file does, due to immediate
file(WRITE ...) calls. Since the latter is newer, no post-process step
is executed and the file is left with commented genexes.

Touching the intermediate file ensures that the post-process step is
performed every time, even if the content is unchanged, restoring the
expected behavior.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-04-14 13:06:30 +02:00
Mark Wang
6c9e478e49 Bluetooth: Classic: Fix assert when aborting initiating SCO connection
return an error instead of assert

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-04-14 13:06:20 +02:00
Krzysztof Chruściński
73d19acce7 debug: cpu_load: Add configurable log level
Add Kconfig for configuring cpu_load log level.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-14 13:06:06 +02:00
Jordan Yates
97f2814b5e tests: drivers: mark rebooting tests with expect_reboot: true
Notify twister of tests that are expected to reboot in normal operation.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-14 13:05:46 +02:00
Jordan Yates
a5ffd7f7a3 scripts: twisterlib: extend testcase schema for reboots
Extend the testcase schema to provide a way to communicate that a given
test is expected to reboot during execution. The generic harness takes
that information and suppresses `already STARTED` warnings if the
restart is expected.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-14 13:05:46 +02:00
Benjamin Cabé
a29c0afaa8 doc: boards: osd32mp1_brk: fix bullet list formatting
add missing blank lines where needed in sub-bullet lists.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-14 11:50:03 +02:00
Josuah Demangeon
90b23bfd58 drivers: video: formats: add grayscale formats
Add the grayscale formats in the same packing as defined by MIPI.
The Linux V4L2 naming is preserved.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-04-14 11:49:49 +02:00
Josuah Demangeon
8ae185561c drivers: video: formats: include bayer 10/12/14-bits formats
In addition to the 8-bit, introduce all the other bayer formats
described by MIPI-CSI2 specification. The 8-bit bayer formats
description is shortened to just 4 bytes like the other formats,
to help intuition while comparing the different formats.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-04-14 11:49:49 +02:00
Josuah Demangeon
2c5ec1cc07 drivers: video: improve the format description docs
@verbatim shows the leading comment '*' fence in the output.
@code{.unparsed} allows extracting the text only.
In some formats, the pixels are also not immediately packed into fixed
number of bytes, like YUYV due to chroma subsampling. Disambiguate.
Add numbers marks on top to help identify the individual pixels.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-04-14 11:49:49 +02:00
Gerhard Jörges
cbfa49f378 fs: shell: fix maybe-uninitialized warning
`read` may have been used uninitialized.

Signed-off-by: Gerhard Jörges <joerges@metratec.com>
2025-04-14 11:49:28 +02:00
Fabrice DJIATSA
cf517f92fc scripts: twister: fix regenerate serial device with unknown platform
Since BOOT-SERIAL isn't a recognized STMicroelectronics product name,
when Twister saves the new map.yaml, it will also check if the previous
map.yaml had the 'SERIAL-BOOT' product name and attach the corresponding
serial device.It won't generate a new one with an unknown platform name.


Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-04-14 11:49:13 +02:00
Karol Lasończyk
68f6cfb382 drivers: clock_control: Add support for XOTUNE in nRF54L
Adding support for handling XOTUNE event in clock_control.
Right now XOTUNE event reflects situation when HFCLK is stable and tuned.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-04-14 11:48:57 +02:00
IBEN EL HADJ MESSAOUD Marwa
1844e98d96 drivers: usb: Enhance USB and UDC drivers for STM32 OTG configurations
- Unified the handling of USB OTG HS and USB OTG FS
  by removing redundant preprocessor conditionals.
- Introduced a new macro `UDC_STM32_BASE_ADDRESS`
  to dynamically set the USB base address.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-14 11:48:54 +02:00
IBEN EL HADJ MESSAOUD Marwa
6f005fdf7d drivers: usb: Add STM32N6 family support to UDC driver
Add STM32N6 family support to UDC driver

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-14 11:48:54 +02:00
IBEN EL HADJ MESSAOUD Marwa
d60cd86ddc boards: st: stm32n6: Add the usbd test feature
Add the usbd test feature to twister.yaml for the boards
nucleo_n657x0_q and stm32n6570_dk.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-14 11:48:54 +02:00
IBEN EL HADJ MESSAOUD Marwa
2b56eb6393 drivers: usb: Add STM32N6 USB support
Enable clock and power for the OTG HS peripheral
of the STM32N6x serie

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-14 11:48:54 +02:00
IBEN EL HADJ MESSAOUD Marwa
752e1fe381 boards: st: stm32n6570_dk: Enable OTG HS peripheral
Enable the USB OTG HS node of the stm32n6570_dk board

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-14 11:48:54 +02:00
IBEN EL HADJ MESSAOUD Marwa
5816fe0b52 boards: st: nucleo_n657x0_q: Enable OTG HS peripheral
Enable the USB OTG HS node of the nucleo_n657x0_q board

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-14 11:48:54 +02:00
IBEN EL HADJ MESSAOUD Marwa
a3c08e0554 dts: arm: STM32N6X serie with OTG HS instance
Add the USB OTG HS node for the STM32N6X devices

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-14 11:48:54 +02:00
IBEN EL HADJ MESSAOUD Marwa
83c1ee7474 dts: bindings: usb: Introduce STM32N6 OTG HS compatible
Add STM32N6 USB OTG HS compatible 'st,stm32n6-otghs'
that doesn't require pinctrl-0 and pinctrl-names.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-14 11:48:54 +02:00
JP Hutchins
fe6366b804 lib: crc: add CRC-32K/4.2
This adds the best HD=4 CRC32 polynomial. The discovery
is the result of research by Philip Koopman of Carnegie
Mellon University, and is well documented at
https://users.ece.cmu.edu/~koopman/crc/.

The user is given the option of trading 1024B of RAM to
improve the execution speed. The unit tests are parameterized
with this KConfig option.

Signed-off-by: JP Hutchins <jp@intercreate.io>
2025-04-14 09:49:02 +02:00
Torsten Rasmussen
db6b126e90 zperf: moving declaration of variable to top of function
Declaration of variables after a label inside a switch statement is a
c23 extension, not c99.

This results in the following warning when compiling with clang:
> .../subsys/net/lib/zperf/zperf_shell.c:912:4: warning: label followed
>                by a declaration is a C23 extension [-Wc23-extensions]
>   912 |                      int seconds = parse_arg(&i, argc, argv);
>       |                         ^
> .../subsys/net/lib/zperf/zperf_shell.c:1145:4: warning: label followed
>                by a declaration is a C23 extension [-Wc23-extensions]
>  1145 |                      int seconds = parse_arg(&i, argc, argv);
>       |                         ^
> 2 warnings generated.

There are no practical reasons why the variable should be declared
inside the switch statement, therefore move the declaration and place it
together with declaration of other variables.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-04-14 09:47:57 +02:00
Lyle Zhu
918b91bc85 Bluetooth: Classic: Shell: HFP: Clear all calls if SLC is broken
If the SLC is broken, all saved calls should be cleared.

Clear all calls in the callback `hf_disconnected()` and
`ag_disconnected()`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-14 09:47:48 +02:00
Lyle Zhu
03ca91fef4 Bluetooth: Classic: HFP_AG: Don't change call status if SLC broken
In current implementation, the active/hold call will be terminated
and notify the upper layer the status change of calls when the SLC
is broken. But the calls should not be terminated in this case.

Do not terminate the calls and only clear the status of all calls.
And disconnect the SCO connection if it is established.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-14 09:47:41 +02:00
Simone Orru
36ec017a38 uuid: Add sample for UUID utilities
Add a sample that showcases the usqge of the
UUID utilities.

Signed-off-by: Simone Orru <simone.orru@secomind.com>
2025-04-14 09:47:26 +02:00
Simone Orru
c82bf03e6d uuid: Add documentation for UUID utilities
Include the UUID utilities in the Miscellaneous
documentation page.
The UUID is being placed in a new Identifier
APIs section.

Signed-off-by: Simone Orru <simone.orru@secomind.com>
2025-04-14 09:47:26 +02:00
Simone Orru
25c94a3019 uuid: Add tests for UUID utilities
Add some tests for the UUID utilities.

Signed-off-by: Simone Orru <simone.orru@secomind.com>
2025-04-14 09:47:26 +02:00
Simone Orru
bb39048cc2 uuid: Add UUID utilities
Add UUID generation and parsing utilities compliant
with RFC9562.

Signed-off-by: Simone Orru <simone.orru@secomind.com>
2025-04-14 09:47:26 +02:00
Derek Snell
d453fb9407 doc: boards: nxp: frdm_mcxn947: corrected memory map
Corrected flash region table for dual core samples.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-04-12 17:41:43 +02:00
Utsav Munendra
d130b68872 portability: cmsis: Fix whitespace in KConfig help
Got messed up in #86599

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-04-12 17:41:34 +02:00
Daniel Leung
781011b911 tests: kernel/pending: fix incorrect test names
These tests should be named "kernel.pending" instead of
"kernel.objects".

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-04-12 00:02:59 +02:00
Peter van der Perk
886a99e736 kinetis-tpm: Implement pulse_cycles directly instead of duty cycle
When using low PWM frequency i.e 50Hz the resolution of pulse_cycles
got lost from converting pulse_cycles to duty cycle % and then back to
pulse_cycles again.

Furthermore TPM_UpdateChnlEdgeLevelSelect call would restart the pwm
constantly on a mcux_tpm_set_cycles call now only call
TPM_UpdateChnlEdgeLevelSelect when changing the polarity

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-04-12 00:02:48 +02:00
Neil Chen
d2d0e8553e boards: frdm_mcxa153: add frdm_mcxa153 board
add frdm_mcxa153 board support.
Test with samples/hello_world, samples/basic/blinky.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-12 00:02:28 +02:00
Neil Chen
720f726072 soc: mcxa153: add SOC support for MCXA153
Add MCXA153 support

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-12 00:02:28 +02:00
Neil Chen
596d80f46f dts: mcxa153: add dts for MCXA153
add initial dts support(fmu, sram, syscon, gpio, port, lpuart0)
for MCXA153.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-12 00:02:28 +02:00
Neil Chen
44f0c0389b drivers: clock_control: update syscon driver for MCXA153
Add #if check whether the PORT count is greater than 4.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-04-12 00:02:28 +02:00
Dimitrije Lilic
c41a2652d7 boards: shields: Fix EVAL-AD4052-ARDZ adc shield conversion pin
Changed conversion gpio to correct arudino header number.

Signed-off-by: Dimitrije Lilic <dimitrije.lilic@orioninc.com>
2025-04-11 22:07:34 +02:00
Brandon Allen
7126fab232 clang-format: add new line at EOF.
Compliance failed for not having a new line
at EOF yet I ran `git clang-format`. Adding
this to the clang-format file will auto fix
this in the future.

Signed-off-by: Brandon Allen <brandon.allen@exacttechnology.com>
2025-04-11 22:07:26 +02:00
Andrej Butok
9fdf613d01 dts: nxp: mcxn94x: fix SRAM region naming typo
Fixes a SRAM region naming typo in nxp_mcxn94x_common.dtsi

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-11 22:07:15 +02:00
Andrej Butok
c4b92123d3 tests: littlefs: add .conf and .overlay for nxp boards
Adds littlefs test .conf and .overlay files for 18 nxp boards.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-11 22:07:03 +02:00
Chris Friedt
2ec7af3474 test: posix: c_lib_ext: reduce memory requirements for testsuite
Previously, these tests were part of tests/posix/common.
In an effort to tie feature tests to specific POSIX features
(Option Groups), these tests were moved to a separate suite in a
previous commit.

However, the memory requirements for the legacy
tests/posix/common testsuite were significantly higher while the
memory requirements for tests in tests/posix/c_lib_ext are
significantly lower.

Remove the minimum flash and ram requirements to run the test so
that it passes tests on the integration platform qemu_cortex_m0.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-11 22:06:55 +02:00
Emil Gydesen
ff9a9fe031 Bluetooth: BAP: Release read_buf_sem in receive_state_updated earlier
The semaphore should be returned before calling the application
callbacks.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-11 22:06:44 +02:00
Fabrice DJIATSA
f8d1d354c5 drivers: dma: stm32: update function prototype after hal update
New HAL update changed the prototype of the check DMA flag functions.
C0 use a const parameter for these functions.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-04-11 17:32:01 +02:00
Fabrice DJIATSA
0e41b07309 drivers : flash: update way to get flash size
The LL_GetFlashSize function has been removed for
this new HAL H7RS release. Retrieves the value now from
the devicetree using the DT_REG_SIZE macro.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-04-11 17:32:01 +02:00
Fabrice DJIATSA
e3b4711597 west.yml: update cube package to the latest version
Update hal_stm32 to latest version

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-04-11 17:32:01 +02:00
Luis Ubieda
ecbe31f59f drivers: i2c_nrfx_twi_rtio: Fix missing completion on i2c_configure
This patch adds the missing completion call to the
RTIO_OP_I2C_CONFIGURE OPs. Without this, the drivers will lock when
calling i2c_configure().

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-11 17:31:53 +02:00
Kevin ORourke
f68eefa6f7 drivers: ethernet: eth_stm32_hal: fix API_V2 multicast
After API_V2 auto-negotiation support was added by #86621
setup_mac_filter() was called before HAL_ETH_Init(), which resulted in
received multicast packets being discarded.

This moves the call to setup_mac_filter() to eth_iface_init(), after
HAL_ETH_Init() for both API_V1 and API_V2.

I've verified the problem and tested the fix on a Nucleo-H563ZI with a
simple application that just starts up and makes an mDNS query (which
depends on working multicast).

Signed-off-by: Kevin ORourke <kevin.orourke@ferroamp.se>
2025-04-11 17:31:43 +02:00
Scott Worley
22e65b67ee boards: microchip: mec172xmodular_assy6930: Kernel timer logic moved to soc
We moved kernel timer configuration logic to the soc layer.
In addition, removed zephyr library cmake rule causing a build
warning since there are no C source files in the board.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-04-11 17:31:37 +02:00
Scott Worley
3f74ca7c78 boards: microchip: mec172xevb_assy6906: Kernel timer config moved to soc
We moved kernel timer kconfig logic to the soc layer.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-04-11 17:31:37 +02:00
Scott Worley
6a48fe7415 boards: microchip: mec15xxevb_assy6885: Remove kernel timer kconfig logic
Kconfig logic for kernel timer configuration and selection has been
moved to the soc layer.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-04-11 17:31:37 +02:00
Scott Worley
990ac2b201 boards: microchip: mec1501modular_assy6885: Remove kernel timer logic
Microchip MEC kernel timer configuration logic has been moved to the
soc layer.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-04-11 17:31:37 +02:00
Scott Worley
b32eaa7add boards: microchip: mec_assy6941: Add MEC5 evaluation board 6941
We added the mec_assy6941 an evaluation board for MEC5 HAL based
MEC174x and MEC175x parts. We support these Microchip chips:
mec1743_qlj, mec1743_qsz, mec1753_qlj, and mec1753_qsz. LJ refers
to 176-pin and SZ to 144-pin WFGA packages. Q refers to total SRAM
of 480KB. Building the board with one of the SoC's requires passing
mec_assy9641/<soc_name>. For example: mec_assy6941/mec1753_qlj is
passed to west via the "-b" command line option.
The SoC's are configured to use Microchip's 32-bit 32KHz RTOS timer
as the kernel tick. Refer to the board DTS rtimer node. If the user
wishes to use ARM SYSTICK as the kernel timer then disable the rtimer
node in the application overlay.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-04-11 17:31:37 +02:00
Scott Worley
059ee104fa dts: arm: microchip: Fixes in preparation for boards
We fixed some minor bugs and one missing component for
Microchip MEC5 HAL based chips, MEC174x and MEC175x.
These changes are in preparation for board check-in and
hello world sample. Added the clock-frequency property
to the cpu and rtimer nodes. This properity is used
derive the Kconfig's for the kernel tick.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-04-11 17:31:37 +02:00
Scott Worley
4d1139de91 soc: microchip: mec: Unify kernel timer tick rate configuration
Microchip MEC was configuring the kernel timer tick rate at the
board level instead of the SoC level. We unify all this by moving
the Kconfig logic out of the board level into each mec chip.
We also derive SYS_CLOCK_HW_TICKS_PER_SEC from the device tree
node enabled for the kernel timer: Microchip's 32 KHz RTOT timer
or Cortex-M4 SYSTICK. The soc kconfig rules are loading all mec
subdirectories for every build causing warnings when building
new socs with this change. We made the changes for all the mec chips.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-04-11 17:31:37 +02:00
Scott Worley
ab071da3be drivers: serial: Microchip MEC5 add select PINCTRL to Kconfig
Zephyr has changed the rules for PINCTRL to use Kconfig select
feature at the driver level instead of setting the Kconfig
item directly in the board or application level. We updated
the MEC5 UART serial driver Kconfig to select PINCTRL.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-04-11 17:31:37 +02:00
Emil Gydesen
e02bd58049 samples: Bluetooth: BAP: Unicast Server: Fix bad valid check
The valid check was incorrect and instead set valid_data to
false for valid data, and true for invalid data.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-11 16:18:23 +02:00
Peter van der Perk
6a37f325a4 drivers: input: sbus: Fix race and infinite loop
Under certain conditions report_lock could already be used by the irq
before it was initialized, now we ensure we enable irq after report_lock
is initialized.

Furthermore in some conditions data->xfer_bytes could be equal
SBUS_FRAME_LEN resulting in a infinite loop doing zero reads when
fifo is still holding new bytes

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-04-11 16:17:56 +02:00
Maureen Helm
60d933e278 MAINTAINERS: Update ADI area to match more drivers and boards
Updates the ADI platforms area to match additional drivers for ADI part
numbers (e.g., ad405x, ad559x, and adp5585) and ADI shield boards (e.g.,
eval_ad4052_ardz).

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-04-11 16:17:47 +02:00
Olivier Lesage
7b61bd6518 bluetooth: gatt: Add BT_GATT_CCC_WITH_WRITE_CB()
Add simple helper macro so users can define a CCCD with a write cb
without having to combine BT_GATT_CCC_MANAGED() and
BT_GATT_CCC_INITIALIZER() themselves.

Unlike the changed callback the write callback has a return value
that can be used to reject the write request.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2025-04-11 16:17:42 +02:00
Jeppe Odgaard
c1e8ad447a doc: releases: migration-guide-4.2: rename tmp116 to tmp11x
tmp116 has been renamed to tmp11x because it also supports tmp117 and
tmp119.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-04-11 16:17:35 +02:00
Jeppe Odgaard
231b2a0c19 drivers: sensor: rename tmp116 to tmp11x
The tmp116 sensor driver also supports tmp117 and tmp119. Therefore rename
to indicate that is supports a range of tmp devices.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-04-11 16:17:35 +02:00
Jeppe Odgaard
4ce331c1d9 drivers: sensor: add tmp119 support
Add support for TMP119. Its registers are compatible with TMP117 except for
device id register.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-04-11 16:17:35 +02:00
Robert Lubos
958872648a net: openthread: Fix ignored return values in platform diag module
Verify return values for otPlatRadio* functions and log the error
accordingly. For otPlatRadioTransmit() case, just log the error
and let the entire TX procedure proceed on the next timeout.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-11 14:53:59 +02:00
Robert Lubos
cbde1edc41 net: openthread: Remove unused function from radio.c
clear_pending_events() was not used anywhere.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-11 14:53:59 +02:00
Robert Lubos
ab448a88db net: openthread: Fix ignored return values in OT utils
Do not ignore return values of OT functions registering IPv6 addresses.
As this is called from the net_mgmt callback context, which returns
void, there's not much that can be done, other than logging the error.

To simplify the logging code and avoid the need to use extra buffer,
use net_sprint_ipv6_addr() networking utility function within the log
message to convert binary address to string.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-11 14:53:59 +02:00
Jordan Yates
52415ed94f tests: pm: device_driver_init: test state_get during init
Test the value returned by `pm_device_state_get` during device driver
initialisation.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-11 14:53:53 +02:00
Jordan Yates
71a0f39568 pm: device: correct state in pm_device_driver_init
Set the value of `pm->state` as we move through the various stages of
`pm_device_driver_init`. This ensures hat if any of the code inside the
actions callbacks runs `pm_device_state_get` they get the correct state,
instead of always getting `PM_DEVICE_STATE_ACTIVE` (0, the value at
reset).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-11 14:53:53 +02:00
Vixay Phimmasane
5721815cab samples: boards: st: fix command path in README
command path is wrong, pointing to basic blinky sample

Signed-off-by: Vixay Phimmasane <visuphi@gmail.com>
2025-04-11 14:53:27 +02:00
Ruibin Chang
fb35b6890d drivers/input/it51xxx: implement kbd driver
Implement kbd driver for ITE it51xxx series chip.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-04-11 14:53:11 +02:00
Lucas Tamborrino
72aa2a9391 samples: boards: espressif: ulp: Add Echo Sample
Add an echo sample based on polling API from UART.

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-04-11 13:34:17 +02:00
Lucas Tamborrino
466051b1c3 samples: boards: espressif: ulp: Add sysbuild property
Add proper sysbuild property to debug_ulp sample

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-04-11 13:34:17 +02:00
Lucas Tamborrino
232e2c5a3c drivers: uart: espressif: Add LP UART driver
Add LP UART driver for LP Core

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-04-11 13:34:17 +02:00
Lucas Tamborrino
0b79b47811 soc: espressif: Filter LP Core from esptool command
Filter LP Core from esptool post build commands

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-04-11 13:34:17 +02:00
aisuneko icecat
cd3c6604ee boards: lilygo: t_oi_plus: initial support
initial support for the Lilygo TTGO T-OI-PLUS ESP32-C3 board

Signed-off-by: aisuneko icecat <iceneko@protonmail.ch>

Co-authored-by: Benjamin Cabé <kartben@gmail.com>
2025-04-11 13:33:58 +02:00
Eric Ackermann
c2f024ee2a boards: openhwgroup: add CVA6 on Genesys 2 board
Adds support for the CVA6 CPU on a Genesys 2 FPGA board
(https://github.com/openhwgroup/cva6).
The SoC currently contains the CVA6 CPU  with the SV39 MMU, interrupt
controllers (CLINT and PLIC), UART, a SPI for booting from SD, a boot
ROM, and I2C controller for on-board audio, a GPIO and the lowRISC
ethernet subsystem.
Two slightly different versions of the board are added, with a 64-bit
and a 64-bit configuration of CVA6, respectively.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-04-11 13:33:50 +02:00
Eric Ackermann
39babba9a9 soc: add OpenHW Group CVA6 SoC
Adds support for the CVA6 family of RISC-V CPUs.
CVA6 is commonly found as a soft core CPU on FPGA designs.
Different configurations and instruction set extensions can be
configured, and different SoCs targeting various FPGA boards are
available.
This commit adds support for the 32-bit and 64-bit configurations
of CVA6, as well as three slightly different SoCs (a minimal 32-bit
configuration, a 64-bit configuration without FPU, a 64-bit
configuration with FPU).

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-04-11 13:33:50 +02:00
Daniel Mangum
25b083dff4 doc: shell: fix typo of Segger
Fixes Segger typo in shell Segger RTT backend docs.

Signed-off-by: Daniel Mangum <georgedanielmangum@gmail.com>
2025-04-11 10:54:29 +02:00
Peter Johanson
ea3f239ac6 boards: seeed: Add XIAO MG24
Add the basic XIAO MG24 board definition.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-04-11 10:54:22 +02:00
Manojkumar Konisetty
aa690fad3f doc: samples: Update bluetooth/central README
Add relevant details to README file of samples/bluetooth/central

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
2025-04-11 10:54:17 +02:00
Ren Chen
b601a357cd drivers: i3c: shell: fix the argv index for broadcast setwml ccc
For the broadcast setwml ccc, the argument vector index of the input
length is 2 instead of 3. This commit fixs this issue.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-04-11 06:34:36 +02:00
Derek Valleroy
ead1cfb1aa drivers: sensors: lsm6dsv16x: Fix bug in decoder
The lsm6dsv16x driver is using an incorrect value for the index
into the acceleration range. This results in using the wrong
range. The issue was found to be a bug in a MACRO in
lsm6dsv16x_decoder.h that was used to find the index in the
acceleration range. The MACRO was improperly counting zeros from the
leading edge, instead of the trailing edge.

Signed-off-by: Derek Valleroy <derekvalleroy@fb.com>
2025-04-11 06:34:24 +02:00
Tim Lin
f3ddb06028 soc: ite: ilm: it51xxx: Support RAM code size up to 4K
Previously, the RAM code size was limited to 1K, causing issues when the
code exceeded this limit. This update modifies the implementation to
support RAM code sizes up to 4K

test: zephyrproject/zephyr/tests/drivers/flash/common --> pass

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-11 06:34:15 +02:00
Utsav Munendra
12cba7addf portability: cmsis: Bugfix osThreadFlagsWait behavior
The osFlagsWaitAny option is not handled correctly.  It returns once any
flag at all is set, whereas it is supposed to only return once one of
the flags specified in flags is set.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-04-11 06:34:06 +02:00
Tomáš Juřena
6127264fe7 dts: stm32f4: Add wkup-pin node
For the F4 MCU family, a new DT node is defined to specify the pins
capable of waking the chip.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-04-11 06:33:56 +02:00
Tomáš Juřena
d700943d29 soc: st: stm32: Add poweroff to F4 family
Allows F4 MCUs to enter standby mode which behave similar to the poweroff
mode.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-04-11 06:33:56 +02:00
Piotr Krzyzanowski
41a996df94 samples: drivers: Add spis_wakeup sample
Sample showing how to use the additional wakeup signal
in nordic,nrf-spis driver. The application, configured
as a SPIS, is put to sleep while waiting for an SPI
transmission. An external device working as a SPIM and
also handling the wakeup signal wakes the application
up just before the transmission starts.

Signed-off-by: Piotr Krzyzanowski <piotr.krzyzanowski@nordicsemi.no>
2025-04-11 06:33:38 +02:00
Darren Lu
30ff07f225 west.yml: update hal_ambiq to support sdhc
Updated Apollo4P HAL to support SDHC driver.

Signed-off-by: Darren Lu <dlu@ambiq.com>
2025-04-11 06:33:24 +02:00
Darren Lu
5b623ea12f samples: add apollo4p_evb to fs_sample
Add apollo4p_evb.conf to fs_sample.

Signed-off-by: Darren Lu <dlu@ambiq.com>
2025-04-11 06:33:24 +02:00
Darren Lu
5fd343b316 dts: add SDIO support to apollo4p_evb
Update dts for using SDIO on apollo4p_evb.

Signed-off-by: Darren Lu <dlu@ambiq.com>
2025-04-11 06:33:24 +02:00
Darren Lu
129ccf981c drivers: sdhc: add sdhc driver for Ambiq MCU
Add SDHC/SDIO driver support for Ambiq Apollo4 MCU.

Signed-off-by: Darren Lu <dlu@ambiq.com>
2025-04-11 06:33:24 +02:00
Pavel Vasilyev
f46fd075d4 tests: bsim: bluetooth: host: hfc_multilink: Run test on nRF5340
Run test on nRF5340 to check if recombination works with HCI IPC
driver.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-04-11 06:32:58 +02:00
Pavel Vasilyev
82a7110406 tests: bsim: bluetooth: host: hfc: Run test for nRF5340
Run test for nRF5340 to check that it works with a different HCI driver.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-04-11 06:32:58 +02:00
Christoph Winklhofer
a5e295c452 json: improve parsing and serializing of integers
Add support for parsing and serializing of following integer types:
'int8_t', 'uint8_t', 'int16_t', 'uint16_t' and 'uint32_t'.

The generic integer token JSON_TOK_INT and JSON_TOK_UINT, in combination
with the field size (set by JSON_OBJ_DESCR_PRIM) allows to parse different
integer types, for example:

struct foo {
  int64_t i64;
  uint32_t u32;
  int16_t i16;
  uint8_t u8;
};

struct json_obj_descr foo_descr[] = {
  JSON_OBJ_DESCR_PRIM(struct foo, i64, JSON_TOK_INT),
  JSON_OBJ_DESCR_PRIM(struct foo, u32, JSON_TOK_UINT),
  JSON_OBJ_DESCR_PRIM(struct foo, i16, JSON_TOK_INT),
  JSON_OBJ_DESCR_PRIM(struct foo, u8, JSON_TOK_UINT),
};

These tokens also support parsing and serializing enums:

enum unsigned_enum { UA=0, UB=1, UC=2 };
enum signed_enum { SA=-1, SB=0, SC=1 };

struct foo {
  enum unsigned_enum u;
  enum signed_enum s;
};

struct json_obj_descr foo_descr[] = {
  JSON_OBJ_DESCR_PRIM(struct foo, u, JSON_TOK_UINT),
  JSON_OBJ_DESCR_PRIM(struct foo, s, JSON_TOK_INT),
};

Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-04-11 06:32:50 +02:00
Christoph Winklhofer
63d33e631c json: support parsing and serializing of strings with char arrays
Support parsing and serializing of struct fields that are defined as a
char array.

Use the token JSON_TOK_STRING_BUF to parse and serialize a string for a
char array, for example:

struct foo {
  const char *str;
  char str_buf[30];
};

struct json_obj_descr foo_descr[] = {
  JSON_OBJ_DESCR_PRIM(struct foo, str, JSON_TOK_STRING),
  JSON_OBJ_DESCR_PRIM(struct foo, str_buf, JSON_TOK_STRING_BUF),
};

The struct 'json_obj_descr' now has an additional union member 'field'
to store the size of the struct field, which is used with the token
'JSON_TOK_STRING_BUF' to determine the element size.

Fixes: #65200
Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-04-11 06:32:50 +02:00
Marcio Ribeiro
915779947a samples: i2s & led_strip: update esp32 board overlay files
Updates esp32 i2s and led_strip board overlay files

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-04-11 06:32:40 +02:00
Marcio Ribeiro
faea025cd4 drivers: i2s: esp32: remove block size limitation from rx channel
Removes block size limitation from rx channel

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-04-11 06:32:40 +02:00
Chris Friedt
b032304bbe scripts: ci: check_compliance: use git-top to check modules
BoardYml, DeviceTreeBindings, Kconfig, and KconfigBasic checks
can be run with a decentralized west manifest.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-11 06:32:31 +02:00
Chris Friedt
07a023d779 scripts: ci: check_compliance: GIT_TOP and ZEPHYR_BASE as paths
Use pathlib.Path objects for GIT_TOP and ZEPHYR_BASE instead of
strings.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-11 06:32:31 +02:00
Chris Friedt
af342e5205 scripts: ci: check_compliance: allow mcuboot log level dbg
Currently, only MCUBOOT_LOG_LEVEL_INF and MCUBOOT_LOG_LEVEL_WRN
are allowed in UNDEF_KCONFIG_ALLOWLIST. Let's allow
MCUBOOT_LOG_LEVEL_DBG as well, since some use cases may require
this level of scrutiny.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-11 06:32:31 +02:00
Chris Friedt
305e648d63 scripts: ci: check_compliance: ignore patch and diff files
Was getting several false positives about whitespace at line
endings with check_compliance.py because it was analyzing
.patch and .diff files as source.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-11 06:32:31 +02:00
Stefan Giroux
651ecab53e drivers: gpio: gpio_mcux_igpio: add pull strength configuration
The i.MXRT10xx series have configurable GPIO pull strengths.

These are available for configuration in the pinctrl system, but not for
regular GPIO use.

This commit adds SOC-series specific GPIO configuration bits for selecting
weak or strong GPIO pulls, similar to drive strengths available from other
GPIO pin configuration examples.

This has been tested on a custom i.MXRT1062 product.

Signed-off-by: Stefan Giroux <stefan.g@feniex.com>
2025-04-10 18:05:26 +02:00
Chaitanya Tata
5f67471532 drivers: nrf_wifi: Fix SR co-ex RF switch configuration
This was not getting enabled because label was passed instead of path
and dependency was not met.

Fix the DT function to use label.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-10 18:02:28 +02:00
Chaitanya Tata
260c4f6878 drivers: nrf_wifi: Extend the help on modes
These nRF70 driver operational modes are important, so, extend the help
to clearly communicate the mode's purpose.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-10 18:02:20 +02:00
Hake Huang
98458e2220 tests: uart: add extra_conf to disable CONFIG_USERSPACE
while disable USERSPACE we need set
CONFIG_TEST_ENABLE_USERSPACE=n

fixes: #82758

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-04-10 18:01:18 +02:00
Kiara Navarro
77c1414082 drivers: charger: add driver for bq25713
Create a driver implementation for the battery charge controller
TI BQ25713.

It includes the ability to enable / disable the controller and also
to setup max current and voltage charge parameters at initialization
time but also at run time.

On the other hand, it is possible to assign / obtain input voltage
and current regulation.

Signed-off-by: Kiara Navarro <knavarro@paltatech.com>
2025-04-10 18:01:02 +02:00
Benjamin Cabé
68b2e7d677 dts: nxp: wifi: fix Wi-Fi spelling
Spell Wi-Fi properly in binding description

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-10 15:52:14 +02:00
Benjamin Cabé
669d35a752 dts: nxp: wifi: nxp,wifi is not an SD device
inherit from base.yaml instead of sd-device since this device is not
meant to be used on an SD bus.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-10 15:52:14 +02:00
Troels Nilsson
c3df8fcd92 Bluetooth: Controller: Add validation of received LL_CIS_REQ
Validate that a received LL_CIS_REQ is valid and reject if it is not

Fixes EBQ test failure in LL/CIS/PER/BI-07-C

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-04-10 15:51:54 +02:00
Derek Snell
070bd0e295 soc: nxp: rw61x: enable USB clock for UDC
When using USB Next stack and UDC driver, enable USB clock

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-04-10 15:51:45 +02:00
Fengming Ye
da4c015aad west.yml: update hal_nxp revision
Update hal_nxp revision to align wifi_nxp imu adapter
with SDK Next Generation.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-04-10 15:51:37 +02:00
Fengming Ye
3a921c1dab hal: nxp: mcux-ng: align imu adapter with SDK
Align cmake with NXP SDK.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-04-10 15:51:37 +02:00
Isaac Yuki
94655d2a13 drivers: display_mcux_elcdif: enable RGB_888 pixel format
Add missing define in order to enable RGB_888 pixel format support
on the mcux_elcdif driver. Tested with TM070JVHG33 display

Signed-off-by: Isaac Yuki <isaaclucas.delimayuki@tq-group.com>
2025-04-10 15:51:27 +02:00
Petri Pitkanen
78b96585d0 dts: silabs: xg29 flash controller int level fix
Accidentall chosen wrong interrup level for flash controller
fixed to be inline with other devices flash controller level

Signed-off-by: Petri Pitkanen <petri.pitkanen@silabs.com>
2025-04-10 14:44:16 +02:00
Triveni Danda
b20e87ae7a net: lib: wifi_credentials: Fix security type check while storing creds
Fix credential store corruption issue caused by missing
security type checks. Add support for all valid security
types to ensure credentials are parsed correctly.

Fixes #88261.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-04-10 14:44:02 +02:00
Armando Visconti
4f8572c35a sensor: lsm6dsv16x: fix building in rtio config
Fix build error which happens when LSM6DSV16X_STREAM=y and there
are no lsm6dsv16x driver instances on i3c bus.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-04-10 14:43:53 +02:00
cyliang tw
ea1129ee1a drivers: ethernet: support for numaker m55m1x series
Add support for Nuvoton numaker m55m1x series EMAC controller.
Also include NOCACHE_MEMORY allocation.
Support to generate random mac address and remove emac data flash.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-04-10 14:43:43 +02:00
Jamie McCrae
8b49c638ec boards: nordic: nrf54l15dk: Fix flashing with XIP board variant
Fixes an issue whereby flashing would fail when using --erase since
it would erase the cores twice rather than once, by adding a flash
runner run once board configuration

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-10 14:43:28 +02:00
Benjamin Cabé
975b8e137f tests: json: fix tests involving double numbers
Update the JSON test cases to explicitly cast NAN and INFINITY to double
type to avoid implicit promotion.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-10 14:43:19 +02:00
Ying Zhang
ce771c57e6 bluetooth: host: fix hang issue caused by consecutive bt disable commands
- add BT_DEV_DISABLE flag to BT_DEV_PERSISTENT_FLAGS to
  protect consecutive bt disable from running

Signed-off-by: Ying Zhang <ying.zhang_2@nxp.com>
2025-04-10 13:02:41 +02:00
Tim Lin
327f8df862 test: drivers/gpio: ite: it515xx_evb: Add gpio test
Add GPIO node for it515xx_evb test.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-10 12:58:01 +02:00
Robert Robinson
9c672fb876 include: drivers: clock_control: Remove strict inclusion for nrf_clock.h
This reverts commit ee05087935.
Since all devices now support nrf_clock HAL as of nrfx 3.10

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2025-04-10 12:57:52 +02:00
Johann Fischer
0f4fc767be drivers: udc_rpi_pico: use atomic_t instead of k_event for value passing
Use atomic_t instead of k_event for event value passing.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
dfe483dbcc drivers: udc_rpi_pico: fix restart of the new transaction
At high throughput, the controller sometimes fails to start a new
transaction. Clearing the corresponding endpoint bit in the BUFF_STATUS
completion register before initiating a new transaction solves this
problem.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
6c90673a32 drivers: udc_rpi_pico: fix OUT transfer handling in ISR
Do not check if the tailroom is greater than or equal to MPS because the
controller does not write directly to the buffer and therefore cannot
write outside the buffer.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
a2c5861568 drivers: udc_rpi_pico: fix set/clear endpoint halt
For the IN endpoint, we only need to set/reset the STALL bit in the
endpoint control register.
To set halt on the OUT endpoint, the AVAILABLE bit must also be set,
which is similar to starting a new transfer, but first any transfer in
progress must be canceled.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
e98e774b75 drivers: udc_rpi_pico: mark endpoint as not busy after transfer canceled
Mark endpoint as not busy after transfer is canceled.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
f701357675 drivers: udc_rpi_pico: support VBUS state change detection
Support VBUS state change detection and enable/disable DP pull-up
according to VBUS state when pinctrl property is provided.

It brings the similar functionality introduced in commit 4c0317fa47
("drivers: usb_dc_rpi_pico: Implemented vbus detection handling")
for the legacy device controller driver.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
06232bb491 drivers: udc_rpi_pico: replace message queue with k_events
Using k_events eliminates the drawback of the queue potentially dropping
messages and provides a reliable event notification mechanism. It is
similar to commit c2f2d8ce5d
("drivers: usb: udc_dwc2: Replace queue with events")

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
2f64a422e2 drivers: udc_rpi_pico: fix suspend/resume ISR handling
Set suspended state on suspend/resume ISR.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Sebastian Głąb
3c34f88678 tests: drivers: uart: uart_elementary: Run test on nRF54L* FLPR
Add overlays required to run the test on:
- nrf54l09pdk/nrf54l09/cpuflpr,
- nrf54l20pdk/nrf54l20/cpuflpr.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Sebastian Głąb
a2f4154674 samples: drivers: watchdog: Enable sample on nrf54L09 and L20
Add overlays required to run watchdog sample on:
- nrf54l09pdk/nrf54l09/cpuapp,
- nrf54l09pdk/nrf54l09/cpuflpr,
- nrf54l20pdk/nrf54l20/cpuflpr.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Sebastian Głąb
a9e822ee29 tests: drivers: watchdog: wdt_basic_api: Enable test on nRF54L09 and L20
Enable wdt_basic_api test on:
- nrf54l09pdk/nrf54l09/cpuapp (missing supported),
- nrf54l09pdk/nrf54l09/cpuflpr (missing overlay),
- nrf54l20pdk/nrf54l20/cpuflpr (missing supported and overlay).

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Sebastian Głąb
729e39a0a7 tests: boards: nrf: qdec: Enable test on nRF54L20 FLPR
Add overlay required to run qdec tests
on nrf54l20pdk/nrf54l20/cpuflpr.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Sebastian Głąb
6a782cf31f tests: drivers: timer: Enable test on nRF54L* cpuflpr
Enable nrf_grtc_timer test on:
- nrf54l09pdk/nrf54l09/cpuflpr and
- nrf54l20pdk/nrf54l20/cpuflpr.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Sebastian Głąb
fb1d730f5c tests: drivers: gpio: gpio_basic_api: Enable test on nRF54L* cpuflpr
Add overlay required to run gpio_basic_api test on
- nrf54l09pdk/nrf54l09/cpuflpr and
- nrf54l20pdk/nrf54l20/cpuflpr.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Sebastian Głąb
9bb5e2f910 samples: drivers: mbox: Enable sample on L09 and L20
Add board overlays required to run mbox sample on
nRF54L09 and nRF54L20 targets.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Tomasz Moń
d6a8bd5870 usb: device_next: Change speed selection Kconfig dependency
In my opinion, the user is supposed to configure the speed of the stack
and drivers ough to honor that choice. However current Zephyr USB
maintainer imposes that the dependency is the other way round, i.e.
that user first needs to disable High-Speed chirp at driver level and
only then can select Full-Speed only operation. Adhere to the
arbitrarily set up rule to allow this really necessary functionality to
enter Zephyr.

I consider this change to be harmful because it opens up a Kconfig trap
that allows configuring High-Speed capable stack with a device driver
limited to Full-Speed only operation.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-10 12:57:19 +02:00
Tomasz Moń
79f2615f1a drivers: udc_dwc2: Limit operating speed to stack configuration
Limit maximum operating speed in DCFG register if USB stack is
configured to support only Full-Speed.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-10 12:57:19 +02:00
Tomasz Moń
b3eb6f2d11 usb: device_next: Reduce code size on Full-Speed only configuration
Allow compiler optimizations to remove High-Speed handling code. Knowing
that maximum operating speed is Full-Speed allows to reduce bulk buffers
from 512 to 64 bytes. More RAM optimizations are possible but this
commit only gets the low hanging fruits.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-10 12:57:19 +02:00
Tomasz Moń
faeabc63c9 usb: device_next: Add Kconfig to set maximum speed
Two main ideas behind setting maximum speed are:
  * Allow code and RAM optimizations at compile time
  * Allow High-Speed capable drivers to limit operating speed to user
    choice.

This commit only introduces the necessary Kconfig options but does not
implement any code or RAM optimizations and does not modify any driver.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-10 12:57:19 +02:00
Tomasz Moń
35af7b88b3 usb: device_next: Unregister class according to speed
Fix a typo resulted in USBD_SPEED_HS unregistering Full-Speed class
instead of High-Speed.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-10 12:57:19 +02:00
Krzysztof Chruściński
eb1081e8f4 doc: services: logging: Clarify limitations
Add note about limitation regarding logging strings with width. Clarify
that it is required to cast character pointer to non-character pointer
when used with %p format specifier.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-10 10:12:11 +02:00
Mathieu Choplain
f1452f2caa boards: st: nucleo_wb09ke: replace OpenOCD with pyOCD for debugging
pyOCD is installed along with Zephyr, and can debug apps on STM32WB09 once
the appropriate pack (already publicly available) is installed.

On the other hand, OpenOCD comes with the Zephyr SDK but only on Linux, and
both Zephyr's fork and upstream lack support for STM32WB09, which was added
by commit 89b053b660bcef803e19c89584de933158c59299 in ST's OpenOCD fork[1].
While pre-builts for this OpenOCD fork are provided by ST as part of other
software packages (e.g., STM32CubeIDE), it is less convenient to use and
the exact support script to use varies depending on which tool OpenOCD is
borrowed from.

Remove OpenOCD support for STM32WB09 entirely, replacing it with pyOCD, and
add instructions about pack installation in the board documentation.

While this also applies to flashing, STM32CubeProgrammer is the default
runner for this, and already supports STM32WB09 without any shenanigans
(i.e., a bare "west flash" will work with CubeProg) - as such, place the
notice only in the debugging section, which is the only operation CubeProg
does not support.

[1] https://github.com/STMicroelectronics/OpenOCD

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-04-10 10:11:58 +02:00
Mathieu Choplain
87b8074241 boards: st: nucleo_wb07cc: add pyOCD support
Add pyOCD as supported runner for the Nucleo-WB05KZ board, and a note about
pack installation to the board documentation.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-04-10 10:11:58 +02:00
Mathieu Choplain
909dcb592b boards: st: nucleo_wb07cc: make OpenOCD script compatible with Zephyr
The old OpenOCD script was expecting usage of ST's OpenOCD fork, but
the WB07 is already supported as "bluenrg-lp" in upstream OpenOCD and
the Zephyr fork provided in SDK.

Update the script to work properly with these two versions, instead of
requiring usage of ST's OpenOCD fork and scripts to function properly.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-04-10 10:11:58 +02:00
Mathieu Choplain
bf2acb046e boards: st: nucleo_wb05kz: add pyOCD support
Add pyOCD as supported runner for the Nucleo-WB05KZ board, and a note about
pack installation to the board documentation.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-04-10 10:11:58 +02:00
Mathieu Choplain
fabee4190c boards: st: nucleo_wb05kz: make OpenOCD script compatible with Zephyr
The old OpenOCD script was expecting usage of ST's OpenOCD fork, but
the WB05 is already supported as "bluenrg-lps" in upstream OpenOCD and
the Zephyr fork provided in SDK.

Update the script to work properly with these two versions, instead of
requiring usage of ST's OpenOCD fork and scripts to function properly.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-04-10 10:11:58 +02:00
Luca Burelli
a90870da4c cmake: yaml: improve escaping of strings with backslashes and quotes
Switching the intermediate file format from JSON to YAML has a very
significant benefit: the file is now loaded via yaml_load(), which
internally calls Python to parse the file into the JSON format that
CMake expects. This means that the file contents are now automatically
escaped properly for JSON; it is a huge improvement over the previous
implementation, which was escaping everything given as input to
to_yaml().

With the removal of the now-redundant call in to_yaml(), escaping is
applied exactly once per value or list, when it is passed to yaml_set().
This allows to convert the logic in zephyr_string(ESCAPE ...) to a more
robust "escape everything" approach.

These changes fix the handling of strings with backslashes and different
types of quotes passed either directly or via generator expression. The
existing tests are updated to cover these cases.

Two other small changes are made in this commit:

- a small check in internal_yaml_list_append() is removed, as the same
  issue is already detected by the caller yaml_set() logic.

- the to_yaml() function is modified to initialize the YAML output
  variable at the top level, which is the expected behavior. This
  resulted in genex temp files sometimes having duplicate lines.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-04-10 10:11:47 +02:00
Luca Burelli
90aa937e3a cmake: yaml: switch to yaml for intermediate file
The intermediate file used to expand the generator expressions is now in
YAML format. This allows for a more robust handling of the data, as the
single quoted strings are a lot easier to escape: inside them every
character is a literal except for two single quotes (which intuitively
map to a literal single quote).

When saving a simple YAML file without genexes, the single quotes in
strings need to be escaped. However, doing so when saving the
intermediate file would make it harder to properly escape them later,
since it could be possible that the expansion of the generator
expressions would introduce new single quotes. For this reason, when
genexes are enabled, the escaping is now done in a single pass inside
the yaml-filter.cmake script.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-04-10 10:11:47 +02:00
Luca Burelli
4a50fbf804 cmake: yaml: properly store strings
Store strings in YAML as single-quoted entries to avoid issues with
special characters. This also fixes a quirk with the current test
suite where the quotes in the expected value are filtered out by the
YAML import.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-04-10 10:11:47 +02:00
Luca Burelli
f5b3e0adf4 cmake: extensions: (cosmetic) refactor zephyr_string()
This commit refactors the zephyr_string() function to explicitly
show that ESCAPE and SANITIZE are mutually exclusive options and
that SANITIZE joins multiple arguments into a single string before
processing it.

No functional change introduced by this commit.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-04-10 10:11:47 +02:00
Luca Burelli
cab474affe cmake: yaml: (cosmetic) avoid referring to file type in variable names
To move away from the JSON/YAML terminology, rename the variables that
refer to the intermediate files to "expanded" and "output" files.

Also, clean up a few "C-style" function calls and a typo in a variable
name in the same files.

No functional change introduced in this commit.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-04-10 10:11:47 +02:00
Ryan McClelland
28a7ad4a57 drivers: i3c: add primary controller da property
Add a way to assign the dynamic address for a primary controller. This
is the address that is broadcasted out with the ccc DEFTGTS, and is the
address that secondary controllers use to communicate with the primary
controller.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-10 10:11:37 +02:00
Pisit Sawangvonganan
7abda99fe3 shell: mqtt: use ring_buf_reset to flush rx_rb
The `sh_mqtt_rx_rb_flush` function was intended to flush `rx_rb` when
get an error return from `mqtt_read_publish_payload_blocking`.
Instead of retrieving values from `rx_rb` one by one, calling
`ring_buf_reset` achieves the same result more efficiently.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-04-09 22:06:05 +02:00
Pisit Sawangvonganan
24dabdd5fb shell: mqtt: optimize module-scoped sh_mqtt variable access
Introduce a local pointer, `struct shell_mqtt *sh`, to minimize access
to the module-scoped `sh_mqtt` variable.
This allows `sh` to be stored in a CPU register, resulting in more
compact code and improved execution efficiency.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-04-09 22:06:05 +02:00
James Roy
285b8ac933 style: edtlib: Use a more efficient expression
Replaced nested loops with a list comprehension
to improve performance. Execution time improved
from 0.0046203136444s to 0.0040774345397s

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-09 22:05:22 +02:00
Christoph Winklhofer
fc37c02eb1 json: improve parsing and serializing of 'float' and 'double'
Up to now, the handling of type float was offloaded to the users of the
JSON utility, with the token JSON_TOK_FLOAT.

Improve handling of floating point types and support the types 'float'
and 'double' in a built-in way so that they can be directly parsed to
and serialized from variables (of type float or double).

The types are serialized in the shortest representation, either as a
decimal number or in scientific notation:
  * float (with JSON_TOK_FLOAT_FP): encoded with maximal 9 digits
  * double (with JSON_TOK_DOUBLE_FP): encoded with maximal 16 digits
  * NaN, Infinity, -Infinity: encoded and decoded as:
    {"nan_val":NaN,"inf_pos":Infinity,"inf_neg":-Infinity}

Enable the floating point functionality with the Kconfig option:
  JSON_LIBRARY_FP_SUPPORT=y

It requires a libc implementation with support for floating point
functions: strtof(), strtod(), isnan() and isinf().

Fixes: #59412
Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-04-09 22:05:14 +02:00
Christoph Winklhofer
c7b7ec2faf json: Support floating point values NaN and Infinity for numbers
Add support to decode the special floating point values NaN, Infinity
and -Infinity. For example:
  {"nan_val":NaN,"inf_pos":Infinity,"inf_neg":-Infinity}

Note that this commit is a preparation for the built-in support of
floating point values and these are only accepted when compiled with
the flag -DCONFIG_JSON_LIBRARY_FP_SUPPORT.

Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-04-09 22:05:14 +02:00
Christoph Winklhofer
f07f2da8dc json: support scientific notation for numbers
Add support to decode floating point numbers in scientific notation,
e.g. 3.40282347e+38. Only the lower-case specifier 'e' is allowed.

Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-04-09 22:05:14 +02:00
Luis Ubieda
6feb1c639b tests: spi_loopback: Extend RTIO fallback messages to 5
Loopback test requires this in order to properly execute half
transactions. Otherwise, testsuite fails.

It was overlooked when fixing #85894.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-09 21:10:53 +02:00
Sylvio Alves
0e8a324e9f boards: xiao_esp32c6: add multi-core support
ESP32-C6 now supports both HP and LP core app.
This fixes and updates XIAO board to support that as well.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-04-09 21:10:27 +02:00
Sylvio Alves
b1e169f226 boards: esp32c6_devkitc: remove cpp build tests
LP core is not intended to support CPP due to low
footprint. Ignore it.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-04-09 21:10:27 +02:00
Sylvio Alves
b0bb6e1e9c samples: cpp: hello_world: add cpp target tag
Add missing 'cpp' tag to ensure consistent sample tagging.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-04-09 21:10:27 +02:00
Håkon Amundsen
76a825c5fa tests: spi_controller_peripheral: fix CTRLSEL conflict
Both EXMIF and SPIS peripherals are claiming GPIO port 6 pin 0, but
with different CTRLSEL values. This will trigger a build error with
nrf-regtool 9.0.0 as it is not possible to apply this configuration
to hardware.

Fix the issue by disabling the EXMIF node that is enabled by default.

Signed-off-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
2025-04-09 21:10:19 +02:00
Declan Snyder
4c6883b7ab include: spi.h: Fix documentation oddities
The recent change to spi.h doc merged a bit too early on accident and
some oddities were left over, fix them, including:

- Weird command causing strange broken topics section in output
- spi_iodev_api should probably be hidden, looks strange in its own
  section on the doc output
- Fix return values of transceive based functions to match transceive
  description

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-09 21:10:08 +02:00
Adam Openshaw
797e03258b drivers: gicv3: fixed typo
fixed typo

Signed-off-by: Adam Openshaw <quic_adamo@quicinc.com>
2025-04-09 21:09:43 +02:00
Adam Openshaw
1146574b67 drivers: gicv3: Add Support for Extended SPI
Added support to gicv3 driver to utilize the
extended SPI MMIO registers introduced in
GICv3.1 for the extended SPI range.

Documentation for the Extended Shared
Peripheral Interrupts extension can be found
in the ARM General Interrupt Controller
Architecture Specification:

https://developer.arm.com/documentation/ihi0069/latest/

Signed-off-by: Adam Openshaw <quic_adamo@quicinc.com>
2025-04-09 21:09:43 +02:00
Adam Openshaw
b664d3a925 drivers: gicv3: clang-format
Formatting files for compliance

Signed-off-by: Adam Openshaw <quic_adamo@quicinc.com>
2025-04-09 21:09:43 +02:00
Anisetti Avinash Krishna
89623fcae4 boards: acrn: acrn: Add support for ADL-n board
Add support to build zephyr to run on ADL-n board
as a VM on ACRN hypervisor.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-04-09 19:34:22 +02:00
Anisetti Avinash Krishna
a660bcb6b0 boards: acrn: acrn: Updated soc name for acrn_ehl_crb
Updated soc name for acrn_ehl_crb to atom as
CONFIG_ATOM is selected for ACRN_EHL_CRB in
Konfig.acrn_ehl_crb but given soc elkhart_lake
in board.yml

Added common config ACRN_COMMON to enable common
configs of ACRN.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-04-09 19:34:22 +02:00
Jason Yu
530f9163db modules: hal_nxp: mcux-sdk-ng: Fix cmake variable scope error
The CMakeLists.txt files in folders modules/hal_nxp/mcux/mcux-sdk-ng/*/
are loaded in modules/hal_nxp/mcux/mcux-sdk-ng/CMakeLists.txt using
cmake function `add_subdirectory`.

One issue is, when variables defined in one CMakeLists.txt are needed
by another CMakeLists.txt, then the variables need be exposed to parent
scope. This is not convenient.

Another issue is, to expose variables, the function `set_variable_ifdef`
sets the variables as global variables. The CMake global variables
named `CONFIG_xxx` will be collected by Kconfig, and results in build
fail.

The solution is:
1. Replace `add_subdirectory` with `include`, so that the variables will
be in the same file scope, don't need to expose them.
2. Modify the implementation of `set_variable_ifdef`, don't set
variables as global variables.

Resolves #88135

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-04-09 19:34:10 +02:00
Jan Behrens
f75c057e85 drivers: stepper: Renamed DRV8424 to DRV84XX
Renamed the drv8424 stepper driver to indicate its support of the drv8424,
drv8425, drv8426, drv8434 and drv8436 stepper controllors. Also made the
microstep pins optional. All test files are renamed as well.

Signed-off-by: Jan Behrens <jan.behrens@navimatix.de>
2025-04-09 19:34:00 +02:00
Jan Behrens
d486c7794a drivers: stepper: DRV8424 Fault Event
Adds support for the fault event via the fault pin to the drv8424 driver.

Signed-off-by: Jan Behrens <jan.behrens@navimatix.de>
2025-04-09 19:34:00 +02:00
Jan Behrens
c8c79a9fc6 drivers: stepper: Renamed Fault Event + Non Static Event Trigger
Renamed fault event to be more in line with other events and added it to
the stepper shell.
Makes the event callback trigger function of the step-dir implementation
non-static so that step-dir stepper drivers can use it to trigger events
themself.

Signed-off-by: Jan Behrens <jan.behrens@navimatix.de>
2025-04-09 19:34:00 +02:00
Nitin Pandey
2b8af597ce driver: wifi: siwx91x: Handle MFP configuration
- Handled MFP configuration for STA and AP modes
- Updated the MFP configuration based on security modes

Signed-off-by: Nitin Pandey <nitin.pandey@silabs.com>
2025-04-09 19:32:26 +02:00
Nitin Pandey
0259bf56c8 driver: wifi: siwx91x: Add check for SAE password
- Modified conditions in WIFI_CONNECT()
  function to reject SAE password and
  PSK based on length parameter

Signed-off-by: Nitin Pandey <nitin.pandey@silabs.com>
2025-04-09 19:32:26 +02:00
Jordan Yates
c7bc268656 sensor: current_amp: add a noise threshold
ADC output values can have noise, even if the input is 0V. Add a noise
threshold so that raw ADC readings below the threshold can be zeroed
out. By default the threshold is disabled.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-09 19:32:02 +02:00
Furkan Akkiz
98f14b3ef0 samples: subsys: usb: Enable samples for MAX32690EVKIT board
Add max32690evkit board to integration_platforms in a few samples.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-04-09 19:31:24 +02:00
Furkan Akkiz
ce9077e2b5 boards: arm: adi: Add USB to MAX32690EVKIT board
Added 'zephyr_udc0' label to usbhs node and enabled it for MAX32690EVKIT
board.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-04-09 19:31:24 +02:00
Furkan Akkiz
59f709273d dts: arm: adi: Add USBHS instance to MAX32690
Insert USBHS instance to MAX32690 devicetree.
Add bindings for MAX32 UDC driver.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-04-09 19:31:24 +02:00
Furkan Akkiz
65883ed513 drivers: udc: Add MAX32xxx UDC driver
Add UDC driver for MAX32xxx USB device controller.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-04-09 19:31:24 +02:00
Benjamin Cabé
acfe49d75f dts: gpio: fix typo in mikro-bus binding description
There are 6 right-side pins so numbering is 6-11,
not 6-10.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-09 17:33:10 +02:00
Mathieu Choplain
fe9f0a9711 drivers: entropy: stm32: configure prescaler on STM32WB09
The STM32WB09 TRNG has a prescaler that defaults (on reset) to 256, making
the entropy generation process unbearably slow. Change the prescaler value
to 1 instead, in order to make the IP about as fast as other STM32's.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-04-09 17:32:59 +02:00
Gerhard Jörges
fb032af6e9 doc: migration-guide-4-2: http_server: concurrent connections
update to reflect changes in 3ebecd15615197b81efe79fcde6e4bedc0f6b09d

Signed-off-by: Gerhard Jörges <joerges@metratec.com>
2025-04-09 17:32:50 +02:00
Gerhard Jörges
235a363e63 tests: net: http_server: concurrent connections
update to reflect changes in 3ebecd15615197b81efe79fcde6e4bedc0f6b09d

Signed-off-by: Gerhard Jörges <joerges@metratec.com>
2025-04-09 17:32:50 +02:00
Gerhard Jörges
a01f344d64 samples: net: http_server: concurrent connections
update to reflect changes in 3ebecd15615197b81efe79fcde6e4bedc0f6b09d

Signed-off-by: Gerhard Jörges <joerges@metratec.com>
2025-04-09 17:32:50 +02:00
Gerhard Jörges
9d0d7ad3b8 net: lib: http_server: implement concurrent
only accept new connections until the configured value for concurrent
connections is reached. Also set the backlog of the listening socket
to the configured value.

Signed-off-by: Gerhard Jörges <joerges@metratec.com>
2025-04-09 17:32:50 +02:00
Ivar Bjerling
4344b8bc05 boards: add support for IAR STM32F429II-ACA
Adds support for the IAR STM32F429II-ACA evaluation board

Signed-off-by: Ivar Bjerling <ivar@ivarbjerling.com>
2025-04-09 17:32:38 +02:00
Okan Sahin
826ac55454 tests: drivers: build_all: Add build test for AD4130 driver
This commit adds build-only test of ad4130 spi based
adc.

Signed-off-by: Okan Sahin <Okan.Sahin@analog.com>
2025-04-09 17:32:29 +02:00
Okan Sahin
be1218081a drivers: adc: Introduce AD4130 adc driver
This commit introduces ad4130 adc driver.

Signed-off-by: Okan Sahin <Okan.Sahin@analog.com>
2025-04-09 17:32:29 +02:00
Okan Sahin
5785c09255 dts: bindings: adc: Add AD4130 binding
This commit adds bindings and analog inputs
for AD4130 ADC.

Signed-off-by: Okan Sahin <Okan.Sahin@analog.com>
2025-04-09 17:32:29 +02:00
Gerard Marull-Paretas
d0fdd384db maintainers: drop gmarull from device driver model
I won't be able to work on this area.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-04-09 15:24:23 +02:00
Gerard Marull-Paretas
7c89ce0594 maintainers: set gmarull as pin control collaborator
I won't be able to actively maintain this subsystem, but maybe help
reviewing on my spare time. The API has not changed from its
introduction, it's been mostly new drivers.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-04-09 15:24:23 +02:00
Gerard Marull-Paretas
66dfca5267 maintainers: drop gmarull as collaborator from a few areas
I won't be available to collaborate in MFD, Input or GD32 areas, so
let's drop my collaborator entries.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-04-09 15:24:23 +02:00
Gerard Marull-Paretas
117b7582d9 maintainers: set gmarull as docs collaborator
@kartben has been doing a great job maintaining docs, so we're good in
this area. I'll stay as collaborator so I can still follow what's going
on.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-04-09 15:24:23 +02:00
Peter van der Perk
818d9dc286 drivers: serial: uart_mcux_lpuart: RX IRQ Enable RxOverrun flag
If the RX FIFO buffer is full and there's nothing being transmitted
no LPUART interrupt will fire anymore. Thus the application will not
receive any bytes anymore. By enabling kLPUART_RxOverrunInterruptEnable
we will receive interrupts even though RX FIFO is full so we can recover
from this.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-04-09 15:24:11 +02:00
Krzysztof Chruściński
a4a613036c dts: common: nordic: nrf54h20: Update exit-latency-us timing
Update exit-latency-us with newly measured values. Measurement is
taking into account additional timing compared to wakeup from
WFI.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-09 15:24:02 +02:00
Krzysztof Chruściński
a36b154fd1 soc: nordic: nrf54h: power: Enable cache as early as possible
Add nrf_cache_power_up and nrf_cache_power_down functions. In case of
s2ram power up cache as early as possible, before restoring ARM core
registers. It improves restore time from 180 us to 33 us.

As a minor optimization nrf_memconf_ramblock_control_mask_enable_set is
used which allows to control ram blocks for icache and dcache in a
single register write.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-09 15:24:02 +02:00
Emil Gydesen
0270704bcb tests: Bluetooth: Tester: Fix bad check for valid RX
The check was incorrect, and only reported invalid ISO
packages instead of valid.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-09 15:23:39 +02:00
Eivind Jølsgard
ab341e0afe arch: arm: core: cortex_m: Make relocate_vector_table weak
Allow relocate_vector_table() to be overwritten. This is necessary if
the IRQ vector table is handled proprietary, e.g. before the zephyr
kernel is initialized. In this case we want this function to be empty to
avoid overriding the previous configuration.

Co-authored-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Signed-off-by: Eivind Jølsgard <eivind.jolsgard@nordicsemi.no>
2025-04-09 15:23:25 +02:00
Tomasz Moń
33b9811536 drivers: udc_nrf: Remove doxygen comments
Update the comments to reflect refactored driver state.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-09 15:23:12 +02:00
Tomasz Moń
6f08055388 drivers: udc_nrf: Keep track of endpoint armed state
Arm OUT endpoints only when enqueueing first buffer. Disarm IN and OUT
endpoints on endpoint disable. Prevent ISO endpoints from being armed
twice before SOF.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-09 15:23:12 +02:00
Tomasz Moń
229fc1558e drivers: udc_nrf: Simplify control transfer processing
Use USB stack state instead of former HAL state to determine what to do
with control transfer buffers.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-09 15:23:12 +02:00
Tomasz Moń
41ebbe0033 drivers: udc_nrf: Replace driver queue with events
There is finite number of distinct events that are handled in thread
context and the order of handling is flexible. Therefore use events
instead of message queue because it is guaranteed to never get full.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-09 15:23:12 +02:00
Tomasz Moń
5d79ef9f8a drivers: udc_nrf: Do not notify about received OUT data
There is no need in notifying the driver that OUT data has been
received. This was only used for control transfers with OUT data stage
because dma waiting bit was not set when enqueueing buffer to receive
data stage.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-09 15:23:12 +02:00
Tomasz Moń
72f667b416 drivers: udc_nrf: Abort endpoints synchronously
Endpoint abort is guarded with DMA semaphore. The buffers can be freed
by the caller immediately after endpoint is aborted because the driver
won't access them anymore.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-09 15:23:12 +02:00
Tomasz Moń
34299f607f drivers: udc_nrf: Remove duplicate endpoint state
Use UDC endpoint state instead of the legacy hal state. Only functional
change relates to overload condition (buffer is too small to hold data
received on OUT endpoint). Previously the data would be completely
discarded and udc driver error would occur (overload event was
unhandled). Now buffer too small error is logged and as much data as
possible is copied to buffer.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-09 15:23:12 +02:00
Tomasz Moń
a10d00abe0 drivers: udc_nrf: Remove event handler
Post directly to driver queue because there is no longer shim
separation.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-09 15:23:12 +02:00
Tomasz Moń
cc1ef5584b drivers: udc_nrf: Do not use nrf usbd common
This is preparatory commit for former nrfx USBD refactor. The refactor
towards native driver will only be performed on the udc driver (old USB
stack driver will continue to use nrf usbd common until it is removed).

Code is copied from nrf_usbd_common.c with minimal changes:
  * nrf_usbd_common_irq_handler renamed to nrf_usbd_irq_handler
  * usbd_enable renamed to nrf_usbd_peripheral_enable
  * all non-static nrf_usbd_common functions have prefix changed to
    nrf_usbd_legacy and are changed to static
  * functions not used by udc nrf driver are removed
  * braces are moved inside #if to pass compliance checks

No functional changes.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-09 15:23:12 +02:00
Tomasz Moń
afafa149cb drivers: udc_nrf: Do not trigger iso out transfer on SOF
The transfer is queued when buffer is available. There is no point in
delaying the wait until SOF. The check is completely unnecessary.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-09 15:23:12 +02:00
Emil Gydesen
a4f8744ccf Bluetooth: CCP: Client: Add get_bearers
Add bt_ccp_client_get_bearers that will return the bearers of
a client so that the application can always retrieve them if they
do not store them from the discovery callback.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-09 15:23:07 +02:00
Tomáš Juřena
1dd63f42a7 include: dt-bindings: power: stm32_pwr: Use BIT macro
Use BIT to create valid bitfields for wakeup sources.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-04-09 15:22:59 +02:00
Tomáš Juřena
315ea56fef soc: st: common: Rename STM32_PWR_WKUP_PIN_SRC_x
This renames the STM32_PWR_WKUP_PIN_SRC_x symbols to better match
their meaning. It also adds a new symbol (STM32_PWR_WKUP_PIN_NOT_MUXED)
for SoCs without wake-up mux support.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-04-09 15:22:59 +02:00
Benjamin Cabé
1e5cc37ccb boards: doc: add more .. zephyr:board-supported-runners::
Catch up on some of the boards recently added as well as some that were
missed in the previous batch update.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-09 15:22:50 +02:00
Benjamin Cabé
eb2163d643 boards: st: fix typo in sphinx directive name
add missing colon to .. zephyr:board-supported-hw::

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-09 15:22:50 +02:00
Chaitanya Tata
63cfbadc5b tests: wifi: configs: Fix the test tags
When only changes are in the "hostap" module the wifi build tests should
be run. Add the module tag to fix that.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-09 15:22:32 +02:00
Chaitanya Tata
fea0accb84 tests: net: wifi: Move AP to a separate test
AP mode shouldn't be enabled by default, it should be a separate
category.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-09 15:22:32 +02:00
Chaitanya Tata
7014090a46 manifest: sdk-hostap: Pull AP mode build fix
Fixes twister failure in AP mode (it was enabled by default causing all
wifi build tests to fail).

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-09 15:22:32 +02:00
Triveni Danda
b3ea4f8d5c net: Fix Kconfig check for enterprise mode
Fix the kconfig check for enterprise crypto support in AP mode.
Also, remove the unnecessary Hostapd enterprise crypto check in
credentials code.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-04-09 12:37:29 +02:00
Robert Lubos
52eb3e387f doc: migration-guide-4-2: Add entry about dropped IPPROTO_RAW support
Add migration guide entry about dropped IPPROTO_RAW support from
AF_PACKET sockets, with possible alternatives.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-09 12:36:34 +02:00
Robert Lubos
307694f3d9 net: sockets: Remove support for AF_PACKET/IPPROTO_RAW combination
IPPROTO_RAW is not a valid protocol type for AF_PACKET sockets, which
should only use IEEE 802.3 protocol numbers. Therefore remove support
for this type of sockets.

As an alternative, users can use AF_PACKET/SOCK_DGRAM or
AF_INET(6)/SOCK_RAW, depending on the actual use case.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-09 12:36:34 +02:00
Robert Lubos
403d921bfe doc: net: sockets: Add table summarizing supported socket types
Add a table in sockets documentation summarizing what socket types are
being supported.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-09 12:36:34 +02:00
Robert Lubos
e9a2ca1e0d doc: release-notes-4-2: Add entry for raw IP sockets
Add bullet point about raw IP sockets support.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-09 12:36:34 +02:00
Robert Lubos
4f92df61f1 tests: net: socket: Add tests for AF_INET raw sockets
Add test suite verifying AF_INET/AF_INET6 and SOCK_RAW sockets.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-09 12:36:34 +02:00
Robert Lubos
7c87aab783 net: sockets: Add SOCK_RAW support for AF_INET/AF_INET6 sockets
Introduce changes in the networking stack which allow to create raw IP
sockets, so that applications can send and receive raw IP datagrams.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-09 12:36:34 +02:00
Robert Lubos
a713d8ea60 net: connection: Register connection type
Register connection type along with family and protocol, so that it's
possible to differentiate between connection listening for raw IP
datagrams and TCP/UDP/other packets.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-09 12:36:34 +02:00
Tomasz Moń
264e9feca0 drivers: udc_dwc2: Replace transfer events with atomics
There is no need to wait on xfer_new and xfer_finished and therefore
atomic services can be used instead of events.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-09 12:36:04 +02:00
Nhut Nguyen
53f6d8e3b6 tests: drivers: gpio: Add support for RZ/G2L-SMARC
Enable GPIO driver tests for RZ/G2L-SMARC

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-04-09 12:35:54 +02:00
Tien Nguyen
3cba2221ed drivers: gpio: Add support for RZ/G2L
Add GPIO support for RZ/G2L

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-04-09 12:35:54 +02:00
Tien Nguyen
1d736d36ab driver: pinctrl: Add support for Renesas RZ/G2L
Add pinctrl support for Renesas RZ/G2L

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-04-09 12:35:54 +02:00
Tien Nguyen
433a19ccaf boards: renesas: Add minimal support for Renesas RZ/G2L-SMARC
Add minimal support for board Renesas RZ/G2L-SMARC

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-04-09 12:35:54 +02:00
Nhut Nguyen
28d9c8626b dts: arm: renesas: Add support for Renesas RZ/G2L
Add devicetree to support for Renesas RZ/G2L

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-04-09 12:35:54 +02:00
Tien Nguyen
de49dac738 soc: renesas: Add initial support for Renesas RZ/G2L
Add initial support for Renesas RZ/G2L

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-04-09 12:35:54 +02:00
Nhut Nguyen
d3ff6ecd04 manifest: Update commit id for hal_renesas
Update commit id for hal_renesas

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-04-09 12:35:54 +02:00
Khoa Nguyen
f0d3f1c7e1 tests: drivers: adc: Change reference source test for RA
Using DAC_SOURCE_TEST instead of VREF for all available
boards in adc_accuracy_test app

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-04-09 12:35:45 +02:00
Khoa Nguyen
bde068905f tests: drivers: adc: Add config DAC_BUFFER_NOT_SUPPORTED
Add config DAC_BUFFER_NOT_SUPPORTED for adc_accuracy_test

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-04-09 12:35:45 +02:00
Khoa Nguyen
9f822a8e33 tests: drivers: adc: Add select DAC when using DAC_SOURCE_TEST
Add select config DAC when using DAC_SOURCE_TEST
for adc_accuracy_test

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-04-09 12:35:45 +02:00
Hui Bai
58c932cc46 hostap: Relocate hostapd related source code to new files
Created new files and relocate hostapd support code in glue layer to new
files. The new files will be compiled only if hostapd support is enabled.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-04-09 12:35:27 +02:00
Tomasz Moń
4e99b5b1bf drivers: udc_dwc2: Mark endpoint idle on disable while hibernated
When endpoint is disabled while hibernated, the UDC endpoint state has
to be reset. Set the busy to false to keep UDC endpoint state in sync
with peripheral register state.

Fixes: 2be960ad2b ("drivers: udc_dwc2: Disable endpoint while
hibernated")

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-09 11:43:48 +02:00
Jamie McCrae
e4f9afc4f2 boards: nordic: nrf54l15dk: Fix nrf54l10 partitions
Fixes partitions so that they are aligned and set peoperly for
this board target

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-09 11:43:39 +02:00
alperen sener
08459ec165 tests: bluetooth: tester: Fix MESH/SR/PRB/PNID/BV-02-C test case
Private node identity advertisements must stop immediately when
ordered by PTS. To do so; adding enabled parameter to
btp_priv_node_id_get_cmd.

Signed-off-by: alperen sener <alperen.sener@nordicsemi.no>
2025-04-09 11:43:29 +02:00
alperen sener
5b8b94e664 Bluetooth: Mesh: Stop Private NID advs upon subnet removal
Private Node Identity advertisement on a subnet should stop as soon as
the network is removed.

Signed-off-by: alperen sener <alperen.sener@nordicsemi.no>
2025-04-09 11:43:29 +02:00
Tomi Fontanilles
d688e9653c doc: releases: fix "Security Vulnerability Related" section for 4.1
The sentences were not in proper order.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-04-09 11:43:18 +02:00
Tomi Fontanilles
8216d1dfd5 doc: releases: add release notes for Mbed TLS update
Add release notes regarding the Mbed TLS 3.6.3 update.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-04-09 11:43:18 +02:00
Tomi Fontanilles
fc9f5a82a6 modules: mbedtls: update to 3.6.3
Pull in Mbed TLS 3.6.3, updated from 3.6.2.

More details regarding the Mbed TLS 3.6.3 release at:
https://github.com/Mbed-TLS/mbedtls/releases/tag/mbedtls-3.6.3

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-04-09 11:43:18 +02:00
Ryan McClelland
5eb7ae34d4 drivers: i3c: cdns: remove +1 on len for abort limit
The datasheet erroneously suggested to add a + 1 to the abort len.
This was suggested because if a controller gave a EoD, then it was
afraid that the abort would take precedence over the EoD. This was
not true. The EoD will always take precedence over a controller
abort. Remove the + 1 as this can cause issues.

For example, when talking to a part that will auto-increment a read
address, having the +1 can unknownly move this address pointer further
than anticipated.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-09 11:43:08 +02:00
Ryan McClelland
393da0f953 drivers: i3c: cdns: secondary controllers can do_daa
It is most certainly 'okay' for a secondary controller to do a
ENTDAA. Remove the 'block' that was preventing this.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-09 11:43:08 +02:00
Marco Widmer
491e297418 drivers: counter: nrfx_timer: Use shutdown task if available
Add a workaround for NRF52 anomaly 78: "High current consumption when
using timer STOP task only". Use the SHUTDOWN task instead.

For consistency, CLEAR the timer timer after STOPPING on devices that
lack the SHUTDOWN task. This also aligns the behavior with
nrfx_timer_disable().

For devices with the SHUTDOWN task, this restores the behavior previous
to e92323f.

Fixes #87224

Signed-off-by: Marco Widmer <marco.widmer@bytesatwork.ch>
2025-04-09 11:43:01 +02:00
Jordan Yates
6061deba55 doc: gen_boards_catalog: fix crash for OOT boards
Fix a crash when `list_boards.find_v2_boards` finds boards not under
`ZEPHYR_BASE`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-09 09:03:37 +02:00
Sreeram Tatapudi
970460e809 drivers: adc: Update configuration values for CAT1B ADC
- Update resolution and inter reference mV
	- make unused code conditional

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-04-09 09:03:19 +02:00
Tomasz Chyrowicz
062e6e19c0 Revert "boards: nordic: Fix cpuapp_ram0x_region reg value."
This reverts commit 1e69738bf2.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-04-09 09:03:10 +02:00
Tomasz Chyrowicz
db34319d01 Revert "boards: nordic: Rearrange ram0x regions."
This reverts commit a53cb73587.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-04-09 09:03:10 +02:00
Jonathan Nilsen
8c5755cc8a modules: hal_nordic: bump regtool to 9.0.1
Fixes an issue where pinctrl psel properties encoded with
NRF_PSEL_DISCONNECTED() caused a build failure.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-04-09 09:03:00 +02:00
Pieter De Gendt
a41cacdf34 gitlint: Fix dependabot exception
Match the full dependabot author name and ignore all (including user)
rules.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-04-09 09:02:39 +02:00
Lyle Zhu
979b088882 Bluetooth: Classic: Shell: Change acronyms to uppercase
Change `ag` of print message to `AG`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-09 08:06:04 +02:00
Lyle Zhu
3f7224a926 Bluetooth: Classic: HFP_AG: Update the callback sco_disconnected()
Change the arguments of HFP AG callback `sco_disconnected()` to SCO
conn and disconnection reason.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-09 08:06:04 +02:00
The.Thanh Nguyen
4f2dc5f18b boards: renesas: update ek_ra8d1 board doc
Add hardware configuration when using with display shield

Signed-off-by: The.Thanh Nguyen <the.nguyen.yf@outlook.com>
2025-04-09 08:05:53 +02:00
The.Thanh Nguyen
fda588bf1a boards: shields: rtkmipilcdb00000be: update shield doc
Correct doc formatting
Remove platform specific hardware configuration

Signed-off-by: The.Thanh Nguyen <the.nguyen.yf@outlook.com>
2025-04-09 08:05:53 +02:00
The.Thanh Nguyen
82439bb1fe boards: shields: rtk7eka6m3b00001bu: update shield doc
Correct doc formatting
Remove platform specific hardware configuration

Signed-off-by: The.Thanh Nguyen <the.nguyen.yf@outlook.com>
2025-04-09 08:05:53 +02:00
Kuba Gryglak
ce64b1e571 boards: st: add support for JLink in STM32G4 Nucleo board.cmake files
Add missing support for J-Link in board.cmake configuration
for Nucleo G4 boards so they can be
flashed and debugged using J-Link.

Signed-off-by: Kuba Gryglak <gryglak.kuba@protonmail.com>
2025-04-09 06:53:58 +02:00
Haiyue Wang
99f4a078d2 drivers: eeprom: stm32: simplify write error handling
Remove the extra unlock and value return, just print the error code when
failed to do DATAEEPROM_Lock().

Signed-off-by: Haiyue Wang <haiyuewa@163.com>
2025-04-09 06:53:50 +02:00
Robert Perkel
1446416b6d doc: atmel: same54_xpro Fixed broken links in index
doc: same54_xpro Fixed broken links in index

- Updated pdf link to datasheet
- Added html link to datasheet
- Added link to product page
- Updated zip file link
- Added zip file link to newer revision

Signed-off-by: Robert Perkel <robert.perkel@microchip.com>
2025-04-08 22:59:25 +02:00
Lukasz Mrugala
d698209647 twister: Remove C object buildlist from -i test
The disparity in C objects built causes
the test to fail.
This removes those lines from the log
to inline log comparison.

Let's disable it in the relevant test.

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2025-04-08 22:59:12 +02:00
TOKITA Hiroshi
429e3a96c2 shields: display: Add Waveshare Pico OLED 1.3
Added Waveshare 1.3inch OLED module for RaspberryPi Pico.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-08 22:59:01 +02:00
TOKITA Hiroshi
6a7765cfda shields: display: Add Waveshare Pico LCD 1.14
Added Waveshare 1.14inch LCD module for RaspberryPi Pico.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-08 22:58:54 +02:00
Emil Gydesen
ecceec9b28 tests: drivers: SPI: Replace OVERLAY_CONFIG with EXTRA_CONF_FILE
Replace OVERLAY_CONFIG with EXTRA_CONF_FILE as the former
is deprecated.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-08 22:58:43 +02:00
Emil Gydesen
fd3f93ac53 tests: boot: mcuboot_recovery_retention: rm OVERLAY_CONFIG
Replace uses of OVERLAY_CONFIG with EXTRA_CONF_FILE
to follow the rest of Zephyr where OVERLAY_CONFIG was
deprecated in favor of EXTRA_CONF_FILE.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-08 22:58:43 +02:00
Noah Olson
4925e22a67 net: nsos_sockets: Fix incorrect return return on ECONNREFUSED
`nsos_connect_blocking()` is not returning the error as expected. It is
expected to return a negative `NSI_ERRNO_MID_...` value, but it is
returning a positive errno value. `nsos_connect_blocking()` should map
the errno value to a negative `NSI_ERRNO_MID_...`, which `nsos_connect()`
maps back to a -1 return with errno=`ECONNREFUSED`.

the current sequence of events:
- `ECONNREFUSED` occurs during connection
- `nsos_connect_blocking()` returns positive `ECONNREFUSED`
- `nsos_connect()` returns positive `ECONNREFUSED`
- `zsock_connect()` returns positive `ECONNREFUSED`

the expected sequence of events:
- `ECONNREFUSED` occurs during connection
- `nsos_connect_blocking()` returns negative `NSI_ERRNO_MID_ECONNREFUSED`
- `nsos_connect()` returns -1, errno=`ECONNREFUSED`
- `zsock_connect()` returns -1, errno=`ECONNREFUSED`

Signed-off-by: Noah Olson <noah@wavelynx.com>
2025-04-08 19:27:18 +02:00
Andrew Davis
cb24f24fb8 samples: ipc: openamp_rsc_table: Lower logging level
Having the log level set at debug causes a message to be printed
every time a mailbox message is sent or received. If we log this
using the RPMSG shell, then each message sent generates another
message, causing an an infinite message loop.

Do not set the level to debug by default, allow the level to
be set by the config LOG_DEFAULT_LEVEL.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-04-08 19:27:07 +02:00
Andrew Davis
b0aeb04f86 samples: ipc: openamp_rsc_table: Remove configs already set by default
If an option is set in the project default configuration it does not
need to be set again in a board specific configuration overlay. Remove
instances of this.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-04-08 19:27:07 +02:00
Andrew Davis
c8a6bf9733 samples: ipc: openamp_rsc_table: Send virtio ID as message content
The message data field is currently empty, this works for some as the all
available virtqueues can be signaled when any message comes in on the host
side. For TI Mailbox and RemoteProc Linux drivers we do check the content
and expect the message to contain the correct Vring ID to signal.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-04-08 19:27:07 +02:00
Krzysztof Chruściński
226c6ae17c pm: Optimize pre-wakeup in suspend procedure
When core is suspended and power mode has non zero exit_latency_us
a system timeout will be rescheduled to a point in time that is
earlier by exit_latency_us than request. It is to accommodate for
lengthy resuming procedure which would cause requested timeout to
be significantly late. However, setting additional wake up point
has cost, it is one more redundant core wake up and that impacts
performance and power consumption.

Add Kconfig option to chose what conversion method is used. It has
the biggest impact on small exit_latency_us where conversion may
result in 0 ticks (no pre-wake up) or 1 tick (wake up).

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-08 19:26:57 +02:00
Szymon Janc
ddedff7155 tests: bluetooth: tester: Add helper for supported commands response
This makes sure that supported commands are reported correctly.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-04-08 17:37:33 +02:00
Adam Berlinger
b2b7a7ab03 samples: stm32: Add nucleo_u575zi_q support for circular DMA
Add nucleo_u575zi_q support to samples/boards/st/uart/circular_dma

Signed-off-by: Adam Berlinger <adam.berlinger@st.com>
2025-04-08 17:37:24 +02:00
Adam Berlinger
457b6cb427 driver: dma: stm32u5 Optimize circular mode
This removes big structures allocated on stack.
It also moves linked list node to dedicated buffer.

Signed-off-by: Adam Berlinger <adam.berlinger@st.com>
2025-04-08 17:37:24 +02:00
Adam Berlinger
a4b819f953 driver: dma: stm32u5 Optimize stack consumption
Remove InitStructs of LL driver, since they take a lot of space on stack.
This can cause stack overflow in some scenarios.

Signed-off-by: Adam Berlinger <adam.berlinger@st.com>
2025-04-08 17:37:24 +02:00
Yishai Jaffe
71bbe52828 tests: drivers: display: add support for htiled mode
Added test support for htiled displays

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-04-08 17:37:14 +02:00
Yishai Jaffe
b65f0b0fbc drivers: display: sdl: support non-vtiled mono mode
Added support for writing in non-vtiled mono mode to SDL display
emulator driver.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-04-08 17:37:14 +02:00
Maochen Wang
4385aa46d4 samples: net: wifi: shell: split rw612 conf file
Keep the minimum configurations in frdm_rw612.conf and rd_rw612_bga.conf
for basic STA functionality of embedded supplicant case.
Add the superset configurations in nxp/overlay_rw612.conf.
Add the supplicant support in nxp/overlay_hostap_rw612.conf.
Add the basic debug support in nxp/overlay_rw612_debug.conf.
Add the supplicant debug support in nxp/overlay_hostap_rw612_debug.conf.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-04-08 17:36:39 +02:00
Maochen Wang
293f51f3b4 drivers: wifi: nxp: change the default configuration
NET_L2_ETHERNET should be enabled by default.
NXP_WIFI_SHELL should be enabled by default when SHELL is enabled.
NXP_WIFI_TX_RX_ZERO_COPY should not be enabled by default for RW612,
as it has special requirement for NET_BUF_DATA_SIZE.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-04-08 17:36:39 +02:00
Emil Gydesen
7f379fb963 samples: Bluetooth: BAP: Broadcast sink use new USB stack
Refactor the USB of the BAP broadcast sink to use the new
USB stack.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-08 17:36:34 +02:00
Ederson de Souza
e420b21834 share/sysbuild: Support single app slot RAM load mode
Adds a new Kconfig to support MCUboot single application slot RAM load
mode.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-04-08 16:12:33 +02:00
Ederson de Souza
c9a18fd487 mcuboot: Kconfig options for single app slot RAM loading mode
MCUboot has a configuration for single application slot RAM loading, in
which the single loader (or a hook thereof) can load an application from
an arbitrary flash location to RAM. Applications that are to be loaded
in this way need to specify, in their mcuboot header, the load address
in RAM they are meant to be loaded.

This patch adds a new Kconfig for this mode. The load address used comes
from devicetree chosen property "mcuboot,ram-load-dev", if it exists,
and if not, "zephyr,sram".

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-04-08 16:12:33 +02:00
Ryan McClelland
f358f9f6e9 drivers: i3c: run clang-formatter on hdr_ddr.h
run the clang-format on hdr_ddr.h

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-08 16:12:31 +02:00
Ryan McClelland
e8e590eb46 drivers: i3c: fix read flag for i3c_hdr_ddr_read
i3c_hdr_ddr_read is missing the I3C_MSG_READ. Add it.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-08 16:12:31 +02:00
Robert Lubos
3449e224b4 net: openthread: Add missing error checks
Some OpenThread functions were called without verifying the return
value, which not only is not the best practice, but also could lead to
build warnings with llvm. This commit fixes it.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-08 16:12:17 +02:00
Yunshao Chiang
c6fe84caf2 drivers: counter: add ite it8xxx2 timer driver
The IT8xxx2 timer driver uses timer 7 and timer 8 to implement the alarm
timer and the top timer, respectively.

Signed-off-by: Yunshao Chiang <Yunshao.Chiang@ite.com.tw>
2025-04-08 16:12:11 +02:00
Andrzej Głąbek
54d8c80ade dts: bindings: nrf-vpr: Allow specifying pins and not using launcher
Add possibility to use pinctrl to configure pins that should be assigned
to nRF VPR coprocessors and also provide a way of preventing activation
of the nordic_vpr_launcher driver for an enabled VPR so that it can be
supplied with the code to execute and launched in a custom way.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-04-08 16:11:51 +02:00
Andrzej Głąbek
4dded19ad7 soc: nordic: Disable cache for soft peripheral RAM region in nRF54H/nRF92
Add an entry for the RAM region assigned to soft peripherals that will
disable caching for that region. Without this, communication with the
FLPR coprocessor cannot be performed correctly.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-04-08 16:11:31 +02:00
Marcio Ribeiro
de98c3ce78 drivers: bt: esp32 bt controller features supported
Adds features supported by esp32 bt controller

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-04-08 16:10:37 +02:00
Fin Maaß
86a52d9254 drivers: ethernet: litex: use tx interrupt
use tx interrupt to check, if we can send something,
instead of checking the register periodically.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-08 14:23:38 +02:00
Dereje Wassie
e1d2f09898 Bluetooth: pacs: Fixed pacs_get_available_context
Fixed the bt_pacs_get_available_context API to return values of type
bt_audio_context instead of an error type.

Signed-off-by: Dereje Wassie <deiw@demant.com>
2025-04-08 14:23:30 +02:00
Sachin D Kulkarni
b3958717f7 drivers: nrf_wifi: Move util to nrf70 shell
Move the wifi_util to the newly created nrf70 shell as a sub-shell.

Signed-off-by: Sachin D Kulkarni <Sachin.Kulkarni@nordicsemi.no>
2025-04-08 14:23:21 +02:00
Sachin D Kulkarni
ceead4eb0a drivers: nrf_wifi: Add debug shell
Add a debug shell to the driver to provide advanced debug support such
as reading/writing to RPU memory and registers etc.

Signed-off-by: Sachin D Kulkarni <Sachin.Kulkarni@nordicsemi.no>
2025-04-08 14:23:21 +02:00
Tomi Fontanilles
fd538dcb11 secure_storage: its: store: settings: allow using custom setting names
Allow replacing the default naming scheme of the stored settings by
providing a custom function that fills a name buffer based on the ITS
entry UID.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-04-08 14:22:59 +02:00
Tomi Fontanilles
09228de9a1 secure_storage: fix formatting of CMake ifs
The rule says there must not be spaces "between a command and the opening
parenthesis".

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-04-08 14:22:59 +02:00
Alex Bucknall
67dece8474 boards: blues: adds Cygnet
Adds new STM32L433 Feather Board from Blues

Signed-off-by: Alex Bucknall <alex.bucknall@gmail.com>
2025-04-08 14:22:53 +02:00
Jilay Pandya
b53937239f doc: stepper: add information about stepper test suite
Add brief information about how stepper api test suites could be used

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-04-08 11:45:40 +02:00
Jilay Pandya
4838c0f200 drivers: stepper: introduce valid micro-step resolution check
Introduce macro to check for valid microstep resolution in stepper api
Use this macro in tmc50xx driver. Stepper api tests adjusted in order to
accomodate the not implemented stepper api functions.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-04-08 11:45:40 +02:00
Tomáš Juřena
18c6d616c1 dts: arm: st: c0: Add pwr node definition
Defines new pwr node with set of wake-up pins.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-04-08 11:45:24 +02:00
Tomáš Juřena
f1e3784b9d soc: st: stm32: poweroff uses stm32_wkup_pins
Update the poweroff code to use stm32_pwr_wkup_pin_cfg_pupd if enabled.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-04-08 11:45:24 +02:00
Dmitrii Golovanov
067126abcd twister: harness: fix Ztest case summary pattern
Fix missing match on Ztest test case summary log entries, so even
if the test case 'END' log entry is missed or corrupted, its status
will be updated from the Ztest summary log entries, if present.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2025-04-08 11:45:08 +02:00
Fabian Blatz
11b9eba340 drivers: display: sdl: Ensure draw is performed from init thread
Add a thread to the SDL display driver to ensure that init and renderer
calls are performed from the same thread.

Fixes #71410.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-04-08 11:45:01 +02:00
Christoph Winklhofer
061e345972 json: Fix calculation of object size
The calculation of the object size may be incorrect when the size of
a field is smaller than the struct alignment. When such a struct is
used in an array field, the decoded object contains wrong values.

The alignment influences the object size. For example the following
struct has a calculated object size of 8 bytes, however due to
alignment the real size of the struct is 12 bytes:

struct test_bool {
  bool b1; /* offset 0, size 1 */
           /* 3-byte padding */
  int i1;  /* offset 4, size 4 */
  bool b2; /* offset 8, size 1 */
           /* 3-byte padding */
};

This commit changes the object size calculation and computes the size
with the offset and size of the last field in the struct (rounded up
by the struct alignment).

Fixes: #85121
Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-04-08 11:44:51 +02:00
Tom Hughes
1415796bb2 cmake clang/compiler_flags.cmake: Re-enable Wunused-function for clang
All warnings in the code base have been resolved.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-04-08 10:50:08 +02:00
Paul Alvin
a173fceba3 tests: drivers: gpio: gpio_basic_api: Add support for kv260
Add gpio driver testcase support for kv260. The overlay will select the
PS gpio bank to be tested.

For running this testcase on kv260 PS gpio bank 3 has been chosen
because it is EMIO and design is required to connect pins together.

Signed-off-by: Paul Alvin <alvin.paulp@amd.com>
2025-04-08 10:49:34 +02:00
Emil Gydesen
d8e771ded9 tests: Bluetooth: Add BT Tester GAP smoke test
Add a babblesim test of the BT Tester doing a GAP smoke test
connecting 2 BT testers using BTP.

The purpose of this is to further increase the test coverage
of the BT Tester in CI, as it is only being built, and runtime
errors are typically not caught.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-08 10:49:00 +02:00
Benjamin Cabé
39a65c0be2 drivers: sensor: icp201xx: fix channel check logic
Update the channel validation logic to properly check channel against
SENSOR_CHAN_ALTITUDE.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-08 10:48:49 +02:00
Benjamin Cabé
93c52cf0b5 drivers: sensor: icp201xx: fix channel check logic
Update the channel validation logic to avoid using enum constants as
boolean values.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-08 10:48:49 +02:00
Tim Lin
d3c6931252 board: ite/it515xx: Add board of it515xx
Add support for ITE it515xx_evb board.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Tim Lin
a531e71376 drivers/timer: Add timer driver of it51xxx
Add timer driver for ITE it51xxx series.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Tim Lin
d64d87f655 drivers/serial: Add ITE UART wrapper to enable serial driver of ns16550
Add ITE UART wrapper to enable serial driver of ns16550.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Tim Lin
df56c85e94 drivers/clock: Add clock drivers of it51xxx
Add clock drivers for ITE it51xxx series.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Tim Lin
f67c2a3d33 drivers/gpio: Add GPIO driver of it51xxx
Add GPIO driver for ITE it51xxx series.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Tim Lin
8c2f5684bb drivers/flash: Enable flash controller for it51xxx series
Enable flash controller for ITE it51xxx series.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Tim Lin
d9571f6412 soc: ITE: ilm: Enable instruction memory for it51xxx series
Enable instruction memory for ITE it51xxx series.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Tim Lin
f0d21fb497 drivers/pinctrl: Enable pinctrl driver for it51xxx series
Enable pinctrl driver for ITE it51xxx series.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Tim Lin
678adea066 drivers/interrupt: Add interrupt and wake-up control drivers of it51xxx
Add interrupt and wake-up control drivers for ITE it51xxx series.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Tim Lin
7a06df9cc3 soc: ITE: Add ITE it51xxx SoC
Add support for ITE it51xxx SoC.
NOTE: it51526aw is not support RISCV_ISA_EXT_C.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Tim Lin
0e5218cbcc drivers: ITE: Use generic name instead of specific chip name
Use generic name for structure in driver instead of specific chip name
for better compatibility.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Tim Lin
09f25854b3 soc: Separate it8xxx2 related files from the common folder
Some files should be separated from the common folder to
each soc folder for future expansion of the chip.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Tim Lin
c7e6cfb8cb soc/ite/ec: common: Modify the format to comply with check_compliance.py
Modify the format to comply with check_compliance.py.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-08 10:48:26 +02:00
Riadh Ghaddab
15cbe9fd18 zms: fix the detection of gc_done ATE
Previously, when detecting the GC_done ATE the gc_done_marker boolean
variable was not set.
Fix this by setting it to true if the GC_done ATE is found.

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-04-08 10:48:17 +02:00
Khaoula Bidani
00cc4441aa drivers: usb: udc_stm32: Update UDC speed macros
Updated UDC speed definition macros for STM32 series
to handle different speed configurations
based on the SoC compatibility.

Added conditional checks for full-speed definitions
using DT_HAS_COMPAT_STATUS_OKAY for st_stm32_usb.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-08 08:58:18 +02:00
Khaoula Bidani
5f3fce67c6 drivers: usb: device_stm32: Update USB_DC speed macros
Updated USB_DC speed definition macros for STM32 series
to handle different speed configurations
based on the SoC compatibility.

Added conditional checks for full-speed definitions
using DT_HAS_COMPAT_STATUS_OKAY for st_stm32_usb.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-08 08:58:18 +02:00
Lars-Ove Karlsson
76969f82a4 bluetooth: host: Avoid warning for unaligned access
Rewrote places in the bluetooth code that converts objects
larger than one byte by taking the address of an unaligned struct
member and changed it to a function that takes the value directly
and converts it to big endian.

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-04-08 08:58:06 +02:00
Krzysztof Chruściński
e33606f300 drivers: gpio: esp32: Add ESP32_ prefix to CPU_ID() macro
Driver is using local macro to get current CPU ID and it is now
in conflict with generic CPU_ID. Added prefix to avoid conflict.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-08 08:57:57 +02:00
Krzysztof Chruściński
29d9405036 pm: Use fixed cpu id in single core case
When there are no multiple cores than fixing id to 0 saves few
cycles.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-08 08:57:57 +02:00
Krzysztof Chruściński
49337973e0 kernel_structs: Add macro CPU_ID for getting current CPU ID
In case of a single core it resolves to 0. In many cases it reduces
code size and execution time compared to reading id in runtime.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-08 08:57:57 +02:00
Michał Stasiak
aa34fa80aa drivers: clock_control: nrf: Apply fix for nRF54L anomaly 30.
Applied fix for nRF54L anomaly 30, which requires a periodic
calibration of high-frequency clock.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-04-08 08:57:39 +02:00
Jordan Yates
c3139c59d0 bluetooth: hci: SPI backend boot timeout
Add a timeout to the SPI boot process to ensure that `bt_enable` does
not block forever but instead returns an error after an appropriately
large delay. While 1 second would be sufficient under normal operation,
we also want to give the controller time to perform any application
upgrades via a bootloader.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-08 08:57:26 +02:00
Georgios Vasilakis
ce4240f893 samples: tests: Exclude nRF54L15 NS for unsupported tests/samples
The ADC and watchdog samples are not currently supported for the
non secure target of the nRF54L15 DK.

Add exclusions for these until they are supported.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-04-08 01:51:18 +02:00
Georgios Vasilakis
85f281057b samples: tfm: Add nRF54L15 in TF-M samples yaml
Add nRF54L15 non secure target for the config_build and
the tfm_ipc samples.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-04-08 01:51:18 +02:00
Georgios Vasilakis
47c71e35ee boards: Add non-secure target for nrf54L15dk
This adds the nrf54l15dk/nrf54l15/cpuapp/ns board variant to
Zephyr. It allows to build applications for this target.

This is an initial support for the non secure target which allows
building and running tfm_ipc and config_build.

This is NOT full support of the non secure target in upstream
Zephyr.

There are important limitations, such as:
- The hardware Crypto accelerator is not supported and thus the non
  secur target is NOT secure for production applicatiions in upstream
  Zephyr.
- The BL2 is not supported, so no DFU is supported with this support

Most of the code chagnes here are taken from nRF Connect SDK
in order to avoid having noups there.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-04-08 01:51:18 +02:00
Georgios Vasilakis
320505ef39 dts: nordic: Add NRF MPC node in dts
Add the Nordic Memory Privilege Controller (MPC)
in the dtsi of nrf54l15/10/05.

This sets the number of override regions and the
granularity of the regions.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-04-08 01:51:18 +02:00
Georgios Vasilakis
b1842723fd dts: bindings: Add binding for Nordic MPC
Add binding for the Nordic Memory
Privilege Controller (MPC).

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-04-08 01:51:18 +02:00
Georgios Vasilakis
d8b87d6279 manifest: Bring TF-M with nRF54L15 upstream support
Update west

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-04-08 01:51:18 +02:00
Benjamin Cabé
798db0f777 boards: dptechnics: walter: Add mdm-wake-gpios to modem node
Configure wake up pin (IO46) for the model.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-07 21:14:27 +02:00
Benjamin Cabé
b722cc4ce9 dts: bindings: add mdm-wake-gpios to Sequans Monarch 2 GM02S binding
Add DT property for modem's wake-up pin

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-07 21:14:27 +02:00
Daniel Baluta
8bdf533d76 dma: nxp: sdma: Initialize channel capacity with zero
DMA channel capacity wasn't properly initialized and the computation
relies on it being zeroed.

This only works fine only when requesting channel the first time
causing problems when we have multiple cycles of channel
request/release.

Fix this by properly initializing the capacity when requesting the
channel.

Fixes 43a48d4630 ("drivers: dma: sdma: Update buffer descriptor")
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2025-04-07 21:14:16 +02:00
Lukas Gunnarsson
e7201b9f2c drivers: rtc: add nxp pcf2123 driver
Add driver support for the NXP PCF2123 RTC.

Signed-off-by: Lukas Gunnarsson <lukasgunnarsson@protonmail.com>
2025-04-07 21:13:29 +02:00
Titan Chen
5a94a1ca66 drivers: counter: rts5912: add support slow timer counter driver
Port rts5912 slow timer counter driver on Zephyr

Signed-off-by: Titan Chen <titan.chen@realtek.com>
2025-04-07 21:13:10 +02:00
Andrej Butok
8f2f97ce32 tests: littlefs: fix large partition mounting
Fixes a large partition mounting error
for flashes with erase size > 32KB
(e.g. s26ks512s0 has 256KB erase size).

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-07 15:18:30 +02:00
Emil Dahl Juhl
1a3dd63dde drivers: sensor: ti: opt3001: add trigger support
The ti,opt3001 ambient light sensor is capable of asserting its interrupt
gpio upon conversion completion. The interrupt gpio can then be used to
trigger a reading of the conversion result automatically.
Due to this, it makes sense for the driver to implement the sensor trigger
functionality.

Add a devicetree property, int-gpios, to the ti,opt3001 bindings to allow
describing the gpio used for getting interrupts from the ti,opt3001.

Implement the sensor trigger functionality with options for using the
global worker thread or letting the ti,opt3001 create its own thread for
servicing the interrupts.
In both cases, when an interrupt is received the driver will read a new
measurement from the chip and clear the interrupt. The sample is then ready
to be read by the user of the sensor.

When manually triggering a sample_fetch, the trigger handler is not
invoked.

Signed-off-by: Emil Dahl Juhl <emdj@bang-olufsen.dk>
2025-04-07 15:18:21 +02:00
Samuel Chee
c8bcf1b018 boards: arm: v2m_beetle: add pinctrl support for v2m_beetle
Adds initial pinctrl support to arm v2m_beetle board target.

Signed-off-by: Samuel Chee <samche01@arm.com>
Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-04-07 15:18:10 +02:00
Samuel Chee
7e95006abf drivers: pinctrl: add pinctrl drivers for arm v2m_beetle
Adds pinctrl driver for the v2m_beetle board target.

Signed-off-by: Samuel Chee <samche01@arm.com>
Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-04-07 15:18:10 +02:00
Samuel Chee
7b6993ffe8 boards: arm: mps3: add pinctrl support for mps3 board
Adds initial pinctrl support to all arm mps3 board targets.

Signed-off-by: Samuel Chee <samche01@arm.com>
Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-04-07 15:18:10 +02:00
Samuel Chee
a2f0e5d372 drivers: pinctrl: add pinctrl drivers for arm mps3
Adds pinctrl driver for all Arm mps3 targets

Signed-off-by: Samuel Chee <samche01@arm.com>
Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-04-07 15:18:10 +02:00
Samuel Chee
5b7d1e4129 boards: arm: mps2: add pinctrl support for mps2 board
Migrates mps2 targets away from the pinmux driver to
the new pinctrl driver.

Signed-off-by: Samuel Chee <samche01@arm.com>
Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-04-07 15:18:10 +02:00
Samuel Chee
99ae4bf132 drivers: pinctrl: add pinctrl driver for Arm mps2
Adds pinctrl driver for all Arm mps2 targets.

Signed-off-by: Samuel Chee <samche01@arm.com>
Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-04-07 15:18:10 +02:00
Samuel Chee
9bac31e5a2 drivers: uart: adds pinctrl support for Arm cmsdk uart driver
Adds necessary pinctrl support for Arm cmsdk uart driver

Signed-off-by: Samuel Chee <samche01@arm.com>
Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-04-07 15:18:10 +02:00
Samuel Chee
4772e183dc drivers: i2c: add pinctrl support to Arm sbcon driver
Adds necessary pinctrl support to Arm SBCon I2C driver.

Signed-off-by: Samuel Chee <samche01@arm.com>
Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-04-07 15:18:10 +02:00
Remi Buisson
6560f57140 samples: sensor: Barometric pressure interrupt generic example
Reports generic barometric sensor interrupts
* Data ready interrupt
* Pressure threshold interrupt
* Pressure changed interrupt

Signed-off-by: Remi Buisson <remi.buisson@tdk.com>
2025-04-07 15:17:44 +02:00
Remi Buisson
ca7c6be61e samples: sensor: Barometric pressure polling generic example
Polls and reports pressure, temperature and altitude data

Signed-off-by: Remi Buisson <remi.buisson@tdk.com>
2025-04-07 15:17:44 +02:00
Remi Buisson
9dc3b757cc dts: bindings: sensor: Add invensense icp201xx properties
Add I2C and SPI variants for icp201xx.

Signed-off-by: Remi Buisson <remi.buisson@tdk.com>
2025-04-07 15:17:44 +02:00
Remi Buisson
7f0b538d4a drivers: sensor: icp201xx: Add icp201xx support
Use official TDK Invensense driver for icp201xx sensor in tdk_hal module.

Signed-off-by: Remi Buisson <remi.buisson@tdk.com>
2025-04-07 15:17:44 +02:00
Remi Buisson
7a20afba9a modules: hal_tdk: Add icp201xx support
icp201xx are barometric pressure and temperature sensors.
https://invensense.tdk.com/smartpressure

Signed-off-by: Remi Buisson <remi.buisson@tdk.com>
2025-04-07 15:17:44 +02:00
Iuliana Prodan
66ab75ff96 dts: xtensa: nxp: add mailbox node
Add mailbox node used for inter-process communication.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-04-07 15:17:34 +02:00
Iuliana Prodan
ab5c0b5195 soc: nxp: imx: add resource_table section in linker script
Add resource_table section in linker script
for i.MX8ULP, for inter-process communication.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-04-07 15:17:34 +02:00
Iuliana Prodan
54f99bf8b0 dts: xtensa: nxp: fix compile warning
Fix the following compile warning:
"Warning (unique_unit_address_if_enabled):
/cpus/cpu@0: duplicate unit-address (also used
in node /cpus/interrupt-controller@0)"

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-04-07 15:17:34 +02:00
Vinayak Kariappa Chettimada
d8cd8ddc51 samples: Bluetooth: bap_broadcast_source nRF5340 audio dk + nRF21540 FEM
Added overlay file to support nRF5340 audio dk + nRF21540
FEM.

Build the hci_ipc with corresponding overlay file to use the
nRF21540 FEM with the bap_broadcast_source sample on nRF5340
audio kit.

Use the below commandline:
$ west build -b nrf5340_audio_dk/nrf5340/cpuapp --sysbuild \
  samples/bluetooth/bap_broadcast_source \
  -DDTC_OVERLAY_FILE= \
  boards/nrf5340_audio_dk_nrf5340_cpuapp_nrf21540_ek.overlay \
  -Dhci_ipc_DTC_OVERLAY_FILE= \
  boards/nrf5340_audio_dk_nrf5340_cpunet_nrf21540_ek.overlay

Related to commit 35ad653038 ("samples: Bluetooth:
hci_uart/hci_ipc: CI coverage for nRF53+nRF21 FEM").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-04-07 11:23:11 +02:00
Anisetti Avinash Krishna
2933dea4ea boards: intel: Updated TSC frequency values
Updated TSC frequency values of intel boards.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-04-07 11:22:45 +02:00
Anas Nashif
5c8cf1c18c tests: fix various test ids and use existing scheme
Fix IDs and match them to what we have in the MAINTAINERS file.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-07 11:22:36 +02:00
Anas Nashif
65551f2a99 tests: move NRFS tests under tests/boards/nrf
This is not a Zephyr subsystem. It is unique to NRF.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-07 11:22:36 +02:00
Hein Wessels
7d56d6a0b0 lib: os: cbprintf: add initializer for xtensa padding
Hush the compiler warning for missing initializer when compiling
for both Xtensa and C++.

Signed-off-by: Hein Wessels <heinwessels93@gmail.com>
2025-04-07 11:22:21 +02:00
Dipak Shetty
e92c21f2c9 samples: sensor: thermometer: updated to support frdm_rw612
Extended to support on board p3t1755 temperature sensor
on frdm_rw612 board.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-04-07 11:21:58 +02:00
Dipak Shetty
1c33c048cc boards: nxp: frdm_rw612: add ambient temperature sensor
Now added on board p3t1755 temperature sensor node and the
corresponding alias.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-04-07 11:21:58 +02:00
Lothar Felten
8aed16bf85 boards: lilygo: ttgo_tbeam: initial support
adds initial support for Lilygo TTGO TBeam board

Co-authored-by: Jamie <40387179+nordicjm@users.noreply.github.com>
Co-authored-by: Benjamin Cabé <benjamin@zephyrproject.org>

Signed-off-by: Lothar Felten <lothar.felten@gmail.com>
2025-04-07 11:21:51 +02:00
Pavel Vasilyev
fd4cc0e031 bluetooth: host: att: Remove meaningless check
`>= 0` was used when EATT support was implemented (#23199) because
`bt_l2cap_chan_send` could return number of bytes sent. After PR #67528,
`bt_l2cap_chan_send` doesn't return amount of bytes sent or any positive
value, but either 0 or negative value. Thus `>= 0` is not needed. It
also confusing when reading code, especially when the same check is not
implemented in other cases where underlying function `chan_send` is
used.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-04-07 09:59:29 +02:00
Pavel Vasilyev
e53e4cf0a2 bluetooth: host: att: Remove att_sent function
`att_sent` is removed as it does not provide any value. All checks are
already performed in `att_on_sent_cb`, and keeping it only increases
readability complexity.

`att_sent` is removed as doesn't give any value. All checks are done
already in `att_on_sent_cb`. It just increases readness complexity.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-04-07 09:59:29 +02:00
Pavel Vasilyev
18b85290cd bluetooth: host: att: Remove chan_req_send
The extra `bt_att_chan_req_send` does nothing but increases readability
complexity. All checks are already performed by the caller.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-04-07 09:59:29 +02:00
Frank Bintakies
bda045940e boards: kws: Add support for KWS Pico-SPE Boards
Add support for KWS Pico-SPE based on
Raspberry Pi RP2040

Add support for KWS Pico2-SPE based on
Raspberry Pi RP2350

Signed-off-by: Frank Bintakies <fbintakies@kws-computer.de>
2025-04-07 09:59:19 +02:00
Sven Ginka
643a76a38d board: sensry: add starter-kit-board
Add soc support for Sensry's RISCV32 based SY1xx.
Variants of the soc are GBM and GEN1 with the
board support for start kit board, which is
a demo board for both soc variants.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-04-07 09:59:15 +02:00
Emil Gydesen
707c518a92 Bluetooth: CAP: Add better active_proc checks
The existing checks were not thread safe at all.
Replace the checks by using atomic_test_and_set_bit
and then clearing the bit again on error.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-07 09:59:08 +02:00
Jordan Yates
a7106a1f9d boards: nordic: thingy53: specify ble support
Notify twister that the thingy53 supports Bluetooth Low Energy.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-07 08:54:58 +02:00
Aksel Skauge Mellbye
1f6ff7b100 doc: Fix html-live doc command
OUTPUT_DIR was not passed to the html-live target, causing a
Python exception:

```
TypeError: argument should be a str or an os.PathLike object
           where __fspath__ returns a str, not 'NoneType'
```

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-04-07 08:54:49 +02:00
Aksel Skauge Mellbye
90dbc8dfd1 boards: silabs: Add ITM configuration
Configure pinout and frequency for Serial Wire Output to enable use
of the SWO logging backend on Silicon Labs dev kits.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-04-07 08:54:38 +02:00
Aksel Skauge Mellbye
02bcad219c dts: arm: silabs: Add ITM node to cpu core for Series 2
ARM Cortex-M33 has the Instrumentation Trace Macrocell peripheral.
Add it to SoC DTS.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-04-07 08:54:38 +02:00
Aksel Skauge Mellbye
64a4c593e1 drivers: pinctrl: silabs: Add support for fixed routes
Add support for fixed GPIO routes that don't have a configurable
route register, but still require mode configuration and enabling.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-04-07 08:54:38 +02:00
Eve Redero
1ae97f12d6 manifest: hal_atmel: bump hash for missing macro
The ADC_MR_STARTUP and ADC_MR_SETTLING macros are required
by SAM ADC driver, and is missing for sam3x variants.

Signed-off-by: Eve Redero <eve.redero@gmail.com>
2025-04-07 08:54:28 +02:00
Gerard Marull-Paretas
bea0a068e1 drivers: gpio: nrf: add support for gpio_pin_get_config
So that pin configuration can be queried.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-04-07 08:54:20 +02:00
Gerard Marull-Paretas
becf5edb08 manifest: update hal_nordic
So that we have access to the new nrf_gpio_pin_drive_get() API.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-04-07 08:54:20 +02:00
Mark Wang
28ba838cda bluetooth: classic: hfp: sco_conn is null in hfp sco_disconnected callback
In bt_sco_disconnected, chan->sco is set as NULL before callback. Then
hfp disconnection callback use it to callback to application in
hfp_hf_sco_disconnected.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-04-07 07:28:18 +02:00
Jordan Yates
7a6f0a4928 tests: timer: validate K_TIMEOUT_ABS_SEC
Validate that `K_TIMEOUT_ABS_SEC` works the same way as the other
absolute timeout construction macros.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-07 07:28:00 +02:00
Jordan Yates
c042ddde20 kernel: add K_TIMEOUT_ABS_SEC
Add a new absolute timeout construction macro that operates on seconds.
It has the same semantics as `K_TIMEOUT_ABS_MS`, `K_TIMEOUT_ABS_US`,
etc.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-07 07:28:00 +02:00
Alvis Sun
dd578065bc soc: nuvoton: npcx: refactor npcx soc hierarchy for future chip support
This commit refactors the NPCX SoC hierarchy to improve maintainability and
enable future support for upcoming chips.

Key changes include:
1. Introduced a new `npcxn` subdirectory under `common/` to consolidate
shared components across the npcxn series.
2. Renamed and reorganized register access files for improved consistency.
3. Updated relevant Kconfig files, header files, and CMakeLists
for the new structure.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-04-07 07:27:38 +02:00
Marek Matej
f10e7b8395 soc: espressif: esp32: Allow DRAM1 to use for .noinit
Add config to relocate the .noinit section to DRAM1 region.
Remove unused config.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-04-07 07:27:23 +02:00
Thao Luong
1f9f4c8cee MAINTAINERS: Update collaborator for Renesas RA Platform
Add @thenguyenyf as collaborator for Renesas RA Platform

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-04-06 12:18:14 +02:00
Nhut Nguyen
6ca84e3c9a soc: renesas: rz: Fix loader program
Due to a change in linker script cortex_a_r/scripts/linker.ld
, the _image_ram_start has been changed so the Zephyr image
cannot be copied from flash to ram as expected
and cannot run properly.
It is replaced by CONFIG_SRAM_BASE_ADDRESS, the _image_ram_size is also
replaced by _flash_used as a preventive measure.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-04-06 12:18:07 +02:00
Marcio Ribeiro
c2235a727d samples: i2s: add esp32 board overlay files
Adds esp32 board overlay files to i2s samples

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-04-06 12:17:58 +02:00
Marcio Ribeiro
a4a2bb273a boards: esp32: add i2s for non-gdma SoC boards
Adds i2s support for boards based on:
- esp32
- esp32s2

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-04-06 12:17:58 +02:00
Marcio Ribeiro
c01489dadc drivers: i2s: esp32: add support for non-gdma SoCs
Adds support for:
- esp32
- esp32s2

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-04-06 12:17:58 +02:00
Marcio Ribeiro
0cedd4d3d9 drivers: i2s: esp32: code and data refactoring
Code and data refactoring to prepare for adding support for non-gdma SoCs

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-04-06 12:17:58 +02:00
Anas Nashif
130f2ce641 ci: twister: set number of jobs to use
We want to control the number of jobs we run in parallel. Detection on
some runners can be wrong.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-05 22:30:26 +09:00
Benjamin Cabé
207a048811 doc: requirements: switch to uv compile
Use uv compile to generate requirements.txt from requirements.in
This works better to capture dependencies that work for multiple python
versions, not just the one that was used to generate the
requirements.txt file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-05 11:02:21 +02:00
Sylvio Alves
ac0705d59b soc: espressif: update restart procedure
Use esp_restart call to guarantee and registered
shutdown handlers will be triggered before rebooting.
This guarantees that subsystems like Wi-Fi and BLE
will deinit correctly.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-04-05 11:02:13 +02:00
Pieter De Gendt
739066743f gitlint: Add ignored rules for dependabot
Dependabot will have an auto-generated body and is likely to fail the max
line length check.
The bot also does not use a full name for the signed-of-by line.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-04-05 11:01:58 +02:00
Eric Holmberg
487830c380 data: json: remove extra braces causing designated-initializer errors
When compiling in C++, the designated-initializer error:
	Either all initializer clauses should be designated
	or none of them should be

Will occur due to an extra pair of braces in the Z_JSON_DESCR_OBJ() macro.

Remove the extra pare of braces which allows the code to compile and
function in both C and C++.

Signed-off-by: Eric Holmberg <eric.holmberg@northriversystems.co.nz>
2025-04-05 11:01:50 +02:00
Paul Timke Contreras
9c5abb35b5 tests: drivers: build_all: sensor: i2c.dtsi fix address typo
The address of the last i2c device in the build all test has a wrong
address. This fixes that typo.

Signed-off-by: Paul Timke Contreras <ptimkec@live.com>
2025-04-04 21:17:09 +02:00
Yuval Peress
ba9b4f3734 ztest: Fix confusing SKIP log
When CONFIG_ZTEST_FAIL_ON_ASSUME is set, a failed assumption will
cause the suite to fail, but the individual test will be marked as
SKIPPED. We should fail the test so it's clear what's going on.

Fixes #86611

Signed-off-by: Yuval Peress <peress@google.com>
2025-04-04 21:16:34 +02:00
Ivan Wagner
b5adb4457c drivers: sensor: meas: ms5837 supporting 02 and 30 variants via dt
This patch adds support via dt compatible property.

Signed-off-by: Ivan Wagner <ivan.wagner@tecinvent.ch>
2025-04-04 21:16:20 +02:00
IBEN EL HADJ MESSAOUD Marwa
8db85916f2 drivers: ethernet: Integrate GRMII and RMII interfaces
- Added macros `STM32_ETH_PHY_MODE`
  to determine the PHY mode (RGMII, GMII, RMII, and MII)
  from the `phy_connection_type` property in the device tree.
- Removed previous definitions for ETH_MEDIA_INTERFACE_MII
  and ETH_MEDIA_INTERFACE_RMII.
- Updated STM32_ETH_PHY_MODE macro to use ETH_MII_MODE
  and ETH_RMII_MODE.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-04 21:16:02 +02:00
IBEN EL HADJ MESSAOUD Marwa
11a1b89948 boards: st: stm32n6570_dk: Add ethernet node
Add the Ethernet MAC and MDIO nodes in the device tree.
Add Kconfig for Ethernet Support.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-04-04 21:16:02 +02:00
Pisit Sawangvonganan
cc0684351a kernel: system_work_q: make k_work_queue_config cfg as static const
Make `k_work_queue_config cfg` as `static const` to enable
compile-time instantiation instead of runtime allocation.
This modification saves substantial flash memory but has system-wide
effects that should be considered.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-04-04 21:15:40 +02:00
Mathieu Choplain
25fe4745e6 doc: kernel: fatal: update "Build Assertions" section intro paragraph
A long time ago, Zephyr had two macros that could be used for build-time
assertions: BUILD_ASSERT() and BUILD_ASSERT_MSG(). The latter has been
dropped in v2.7 and removed from the documentation; however, the intro
paragraph of the "Build Assertions" section has never been updated to
reflect this, and still confusingly claims that "Zephyr provides two
macros for performing build-time assertions" when only BUILD_ASSERT()
remains.

Update the introductory paragraph of "Build Assertions" section such that
it makes sense now that only one build-time assertion macro exists.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-04-04 21:15:29 +02:00
Peter Mitsis
5c36567c56 tests: Add benchmark for IPI performance
Adds tests to better gauge IPI performance on SMP. In each case, one
CPU is used as the source of IPIs while the remaining CPUs are busy
doing "work". Every 30 seconds the benchmark reports on the amount
of "work" done by the busy CPUs and the amount of work done by the
CPU generating the IPIs.

This can be used to ...
 1. Show how enabling IPI optimization affects system performance
 2. Show the cost of spinlock contention as the number of CPUs increase
 3. Measure the relative performance of scheduler changes on SMP.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-04-04 21:15:14 +02:00
Alberto Escolar Piedras
59b62243fa Bluetooth: HFP_AG: Initialize variable to avoid warning
gcc 11.4.0, seems to believe this variable may be used uninitialized,
and warns about it (causing a test build failure due to warnings
being treated as errors).
Let's just initialize the variable to 0 to avoid the issue, as the
cost is trivial.

subsys/bluetooth/host/classic/hfp_ag.c: In function
  ‘bt_hfp_ag_vts_handler’:
1095
subsys/bluetooth/host/classic/hfp_ag.c:3091:17: error: ‘code’ may be
  used uninitialized in this function [-Werror=maybe-uninitialized]
1096
 3091 |                 bt_ag->transmit_dtmf_code(ag, code);
1097
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1098

The issue can be reproduced for ex. with:
$ mkdir build ; cd build
$ cmake -GNinja -DBOARD=native_sim/native/64 ../tests/bluetooth/shell \
 -DCONF_FILE="prj_br.conf"
$ ninja

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-04-04 18:18:16 +02:00
Mahesh Mahadevan
83efaa7a69 west.yml: Update NXP HAL to fix HIFI DSP build
Get update to the SDK code to fix build on HIFI
DSP.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-04-04 18:17:57 +02:00
Andrej Butok
d4682ff5c9 tests: littlefs: fix test_lfs_basic for medium and large partitions
Fixes failed test_lfs_basic for medium partition > 960KB
and for large partition > 3MB.
Flashes with large erase size require larger test partition sizes
(e.g. s26ks512s0 has 256KB erase size).

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-04 18:17:48 +02:00
Valerio Setti
d75c2113a9 drivers: sensors: bma4xx: add I2C_RTIO Kconfig for I2C
Since #83575 bma4xx driver relies on RTIO to work. This means that
CONFIG_I2C_RTIO should be defined together with CONFIG_I2C in the
Kconfig, otherwise I2C_DT_IODEV_DEFINE() won't be available at
build time.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-04-04 18:17:41 +02:00
Robert Lubos
cf0b6068d2 net: coap_client: Fix CoAP client thread priority
The default thread priority for the CoAP client thread is set to
NUM_PREEMPT_PRIORITIES which is not a valid thread priority, as the
lowest application thread priority is actually
NUM_PREEMPT_PRIORITIES - 1. Because of this, CoAP client library gave an
assert on boot if assertions were enabled.

Kconfig does not allow for arithmetics when setting integer defaults,
therefore handle this at the preprocessor stage by limiting the actual
priority assigned to the CoAP client thread to a valid range.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-04 18:17:30 +02:00
Declan Snyder
0875499664 spi_nxp_lpspi: Remove mcux branding from tokens
Since these drivers mainly do not use MCUX except for the configure
function (which will soon also be changed), change namespace prefix to
lpspi_ instead of spi_mcux_ to avoid confusion.

Also improve descriptions of kconfigs to clarify what they are for.
Not changing the kconfig names for now since they are user-facing.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-04 18:17:19 +02:00
Declan Snyder
fa3a51bc29 spi_nxp_lpspi: Remove SDK items from header file
Remove SDK types and defines from header file.

And since now the common file is the only consumer of SDK header, move
that include there.

Also rename the tristate boolean to be more clean about what it does
rather than trying to be similar to the SDK config name.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-04 18:17:19 +02:00
Declan Snyder
ef60f88162 spi_nxp_lpspi: Refactor validation args to func
Minor refactor to make a separate function to validate configuration
arguments.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-04 18:17:19 +02:00
Declan Snyder
6a283c0a1f spi_nxp_lpspi: Convert CPU version to native code
Convert the CPU-based lpspi driver to native code.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-04 18:17:19 +02:00
Declan Snyder
1c00f368d9 spi_nxp_lpspi: Convert DMA version to native code
Convert the DMA-based LPSPI driver to native code.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-04 18:17:19 +02:00
Declan Snyder
29213b5e7c spi_nxp_lpspi: Fix DMA driver async return
We should not release context until transfer ends. The code previously
would return from wait_for_completion and then release the context. This
is only supposed to be done in the dma callback except for the case of
error in the transceive call. For async transfer this was most likely
always happening wrong and probably broken for multi threads trying to
access the bus due to this premature release of the context.

Also we should not enable CS and leave enabled in case of error, move CS
enable to after the error check.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-04 18:17:19 +02:00
Declan Snyder
5acee4ad9d spi_nxp_lpspi: Prevent edge case causing DMA error
Stop the transfer with error if at any point there is some
execution reached where transfer is being set up for 0 length, this can
cause problems where for example eDMA set up with this nonsense 0 length
channels can get an infinite error interrupt.

And this is probably an erroneously crafted transfer request anyways.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-04 18:17:19 +02:00
Declan Snyder
2f678bd56c spi_nxp_lpspi: Reset/clock peripheral
If there are HAL definitions available, do these two things:

Ungate the clock for the device from the zephyr driver. Eventually it
would be better to have a clocks property in the LPSPI DT node and get
the resources from there rather than the HAL.

Some platforms require the peripheral to be reset at system level, add
code to do this. Eventually it would be more ideal to have Zephyr
reset drivers for all of the NXP platforms and use DT to describe the
reset resources, but for now we can just do this to get the LPSPI
supported.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-04 18:17:19 +02:00
Hank Wang
e11634e733 drivers: i2c: tca954x: add support for idle disconnect
Add support for an optional "idle disconnect" feature in the TCA954x
I2C multiplexer. When enabled via the `i2c-mux-idle-disconnect` device
tree property, the driver will disconnect all channels after each
transfer. This helps avoid address conflicts when multiple multiplexers
are present on the same I2C bus.

Even if the I2C transfer fails, the driver will still attempt to
disconnect the channels to ensure the bus is left in a consistent state.
If the disconnect operation itself fails, its error code will be returned
unless the transfer already failed with a different error.

This implementation is inspired by the Linux kernel driver for PCA954x
I2C multiplexers. Special thanks to Ofir Shemesh for valuable suggestion.

Signed-off-by: Hank Wang <wanghanchi2000@gmail.com>
2025-04-04 18:17:07 +02:00
Emil Gydesen
2dbc10ab6b Bluetooth: BAP: Fix bad cast to void * instead of void for memcpy
The result of memcpy should be cast to (void) and not (void *).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-04 18:16:54 +02:00
Jordan Yates
e661a55044 sensor: bme280: clamp humidity to non-negative
Clamp the returned humidity to a non-negative value. This ensure that
the return value is always within the expected range, even if the
calibration parameters are read out incorrectly or corrupted.

This check is applied in the example Bosch driver for the float
conversion case, so there are situations that warrant it.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-04 14:57:43 +02:00
Aksel Skauge Mellbye
295975019a dts: arm: silabs: Fix clock and interrupt definitions for xg22
The WDOG and IADC clock node definitions were missing for xg22,
and interrupt numbers were wrong for WDOG on xg27.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-04-04 14:57:15 +02:00
Markus Lassila
392fda02b3 net: Add CONFIG_NET_CONN_PACKET_CLONE_TIMEOUT
Add CONFIG_NET_CONN_PACKET_CLONE_TIMEOUT to allow for longer
timeouts. This can be used to prevent dropping packets when
transmitting large amounts of data (with PPP).

Signed-off-by: Markus Lassila <markus.lassila@nordicsemi.no>
2025-04-04 14:57:06 +02:00
Eric Holmberg
84d3cafbce net: websocket: fix masked data when server sends close
When sending the close command as a server, the data is incorrectly
masked which violates RFC6455 section 5.1.

Use the is_client flag to avoid masking if the close is for a websocket
server.

Signed-off-by: Eric Holmberg <eric.holmberg@northriversystems.co.nz>
2025-04-04 14:56:58 +02:00
Lyle Zhu
00ffb5ba97 Tests: Bluetooth: Classic: Bumble power_on() will fail on Linux
On Linux, the function `power_on()` of Bumble will fail when executing
even-numbered test cases.

From the `btmon` log, the controller will not reply the `HCI Command:
Reset` when the issue occurs.

Add a try-except to catch the exception of the function `power_on()`,
and retry to call the function `power_on()` until issue no longer
occurs. Or, the test will fail due to the timeout.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-04 14:56:48 +02:00
Torsten Rasmussen
483c76759d scripts: support quoted sysbuild Kconfig settings in twister
Kconfig settings of string type is passed to CMake with quotes to ensure
they are properly handled, for example when specified in testcase.yml as
>   extra_args:
>    - CONFIG_FOO="bar"

Support sysbuild Kconfig settings `SB_CONFIG` by performing the same
quoting for settings starting with `SB_CONFIG_`.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-04-04 14:56:39 +02:00
Camille BAUD
da45a76fce MAINTAINERS: Introduce WCH platforms
Introduce WCH platforms, assign myself and hal_wch maintainers

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-04-04 14:56:30 +02:00
Aurelie Fontaine
e5d39819c9 MAINTAINERS: add tdk team as TDK Sensors maintainers and collaborators
We would like to take maintainership of TDK drivers as discussed:
 https://github.com/zephyrproject-rtos/zephyr/pull/85963
teburd and MaureenHelm moves to collaborators

Signed-off-by: Aurelie Fontaine <aurelie.fontaine@tdk.com>
2025-04-04 14:56:20 +02:00
Lars-Ove Karlsson
bf29b2a8d7 bluetooth: host: Fixed missing guard for BT_SETTINGS_DEFINE
While linking with the IAR linker using generated linker scripts,
and with errors if unhandled sections are encountered, many of the
bluetooth tests failed because CONFIG_SETTINGS was not set.

The section that was not handled was
'._settings_handler_static.static.settings_handler_bt_ccc_'

Now it's only set if CONFIG_SETTINGS is set.

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-04-04 14:56:10 +02:00
Jimmy Zheng
dbd0ac40ce drivers: interrupt_controller: intc_clic: add indirect access clic reg
Add indirect CSR access to access CLIC register to satisfy the current
CLIC spec (Version v0.9, 2024-06-28: Draf).

Add CONFIG_LEGACY_CLIC_MEMORYMAP_ACCESS for legacy CLIC implementation
with memory-mapped CLIC register.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-04-04 14:55:50 +02:00
Jimmy Zheng
46a828e787 drivers: interrupt_controller: intc_clic: add CLIC parameters
Add support for CLIC hardware parameters based on the hardware
implementation.

  1. CLIC_PARAMETER_INTCTLBITS
    Specifies the number of modifiable bit in interrupt control register.

  2. CLIC_PARAMETER_MNLBITS
    Specifies the number of bits are assigned to interrupt level in the
    interrupt control bits.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-04-04 14:55:50 +02:00
Jimmy Zheng
ed97af9309 drivers: interrupt_controller: intc_clic: add CLIC SMCLICCONFIG extension
Add support for CLIC SMCLICCONFIG extension, allowing user to configure
the number of available interrupt level bits at runtime.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-04-04 14:55:50 +02:00
Jimmy Zheng
8dca182b14 driver: interrupt_controller: intc_clic: fixed access CLIC w/o privileged
Temporarily disabled PMP stack guard to allow access to CLIC M-mode
register, because U-mode load/store (mstatus.MPRV=0x1,MPP=0x0) is
restricted.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-04-04 14:55:50 +02:00
Jimmy Zheng
9349d54074 driver: interrupt_controller: intc_clic: rework to standard CLIC driver
Rework intc_clic to standard CLIC driver with Nuclei ECLIC extention.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-04-04 14:55:50 +02:00
Jimmy Zheng
21f0ee0383 driver: interrupt_controller: rename intc_nuclei_eclic to intc_clic
Rename intc_nuclei_eclic to intc_clic, and separate CLIC register
definitions into intc_clic.h.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-04-04 14:55:50 +02:00
Jimmy Zheng
477d56ecea dts: bindings: interrupt-controller: add riscv,clic yaml
Add RISC-V CLIC (Core-Local Interrupt Controller) yaml.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-04-04 14:55:50 +02:00
Petri Pitkanen
a1a92a20a6 dts: silabs: interrupt levels corrected
Downgrading interrupt priority for non critical interrupts for the
supported SOCs.

Previously almost all interrupts were at level 0 i.e. meaning no interrupt
had priority over the others. In reality only radio interrupts are critical
while others can be served with less haste.

Now the level zero is reserved for interrupts that need higher priority
than the radio without bypassing irq locks (zero-latency interrupts)
Level 1 for radio and levels 2 and 3 for rest of the services.

Signed-off-by: Petri Pitkanen <petri.pitkanen@silabs.com>
2025-04-04 12:14:44 +02:00
Serhiy Katsyuba
7f818b5e72 Revert "drivers: dma: intel_adsp_hda: change L1_EXIT defaults"
This reverts commit c2f02533a6.

DMA_INTEL_ADSP_HDA_TIMING_L1_EXIT should be enabled for all ACE platforms.
Any new platform in the ACE series will likely need it as well.

Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
2025-04-04 12:07:08 +02:00
Yakun Xu
eddb1af9aa openthread: map Thread network interface state
The current mapping gets the network interface into dormant state when
Thread is not attached. While the node is not capable of doing multi-hop
communication when it's not attached, it should be able to do link-local
communication. This commit changes the mapping to look at OpenThread's
own network interface state instead without further checking Thread's
device role, so that link-local communication is supported when a node
in detached state.

Signed-off-by: Yakun Xu <xyk@google.com>
2025-04-04 12:06:59 +02:00
Johann Fischer
1ac9b14804 drivers: udc: fix it82xx2 and numaker drivers compilation
The dev argument is missing.
Introduced in the commit 1cccf28d5e
("drivers: usb: udc: Reduce unnecessary ep config lookups").

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-04 12:06:50 +02:00
Jamie McCrae
2f55dc8add scripts: ci: check_compliance: Disallow board hooks in defconfigs
Adds board hooks to the disallowed defconfig symbol list as
these should be selected, not put in a defconfig

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-04 12:06:38 +02:00
Christopher Cichiwskyj
7dcec3384e soc: add support for STM32F479
This chip shares its design with STM32F469, but with
an added cryptography accelerator.

Signed-off-by: Christopher Cichiwskyj <cichiwskyj@gmail.com>
2025-04-04 12:06:29 +02:00
Emil Gydesen
acd7080350 Bluetooth: BAP: Call bis_sync_req for all BIS sync state changes
Previously bis_sync_req was only called when requested_bis_sync
was changed. However that meant that there were cases where the
requested_bis_sync was the same as the new request, but where
the actual BIS sync state were different. This was mostly
the case when the scan delegator had autonousmly
added or modified the receive state.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-04 12:06:19 +02:00
Emil Gydesen
f39feb8aa7 Bluetooth: BAP: Fix bad overwrite of requested_bis_sync
The scan_delegator_mod_src accidentally may have overwritten
the value of internal_state->requested_bis_sync before the
entire request had been verified, causing a mismatch between
what the application knows and what the stack stored.

Fixed by storing the request in a temporary value until
everything has been verified and accepted.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-04 12:06:19 +02:00
Sven Ginka
18fcf771ef board: sensry: ganymed-bob - add west flash support
Adding support for using west flash to install new firmware
on the board.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-04-04 12:06:07 +02:00
Sven Ginka
de6f1873c8 west: runners: add flash runner for sensry sy1xx socs
With this commit we add a runner that is capable of flashing
the sensry sy1xx socs via uart to support the onboard OTP
bootloader. Added the sy1xx runner to the list for
automated test.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-04-04 12:06:07 +02:00
Chaitanya Tata
4875978d39 modules: nrf_wifi: Remove unnecessary check
The Zephyr base variable is not used below and also is deprecated and
not needed to be set.

Fixes #87950.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-04 09:35:47 +02:00
Adrian Bonislawski
e64cce9053 soc: intel_adsp: ace30: set MMU permissions for rom_ext sections
This patch will set MMU permissions for rom_ext sections
It is possible to call the rom_ext code located in IMR

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-04-04 09:35:29 +02:00
Adrian Bonislawski
368f6cfee4 soc: intel_adsp: ace30: extend hwreg1 MMU mapping
This patch will extend MMU mapping range for hwreg1 entry
because it is required to access lower register addresses

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-04-04 09:35:29 +02:00
Vinayak Kariappa Chettimada
47c7918393 Bluetooth: Controller: Single recv thread for HCI-only builds
Updated implementation to use single receive thread to
enqueue HCI ISO data, ACL data and events towards Host when
building HCI-Only samples/applications, i.e. when building
hci_uart, hci_spi or hci_ipc samples (CONFIG_BT_HCI_RAW=y).

This implementation will serialize HCI events and data as
they occur corresponding to on-air timelines of their
occurrences which is how they are generated by the Link
Layer.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-04-04 09:35:16 +02:00
Julien Racki
ee6bb6e849 boards: st: Add support for stm32mp135f_dk board
Add support for STM32MP135F DK board.

Signed-off-by: Julien Racki <julien.racki@st.com>
2025-04-04 09:35:03 +02:00
Julien Racki
7512391da4 dts: arm: st: mp13: stm32mp13 new series with cortex A7
Put the flash in DDR 0xC0000000
Put the SRAM in DDR 0xD0000000

Signed-off-by: Julien Racki <julien.racki@st.com>
2025-04-04 09:35:03 +02:00
Julien Racki
c888760663 drivers: clock: Add stm32mp13 clock
Add STM32MP13 clock driver.
Supported clocks are HSE, HSI, PLL1 and peripheral clock.

Signed-off-by: Julien Racki <julien.racki@st.com>
Co-authored-by: Arif Balik <arifbalik@outlook.com>
2025-04-04 09:35:03 +02:00
Julien Racki
d508ec42e2 dts: bindings: clock: Add stm32mp13 rcc clocks
Add STM32MP13 RCC clock bindings

Signed-off-by: Julien Racki <julien.racki@st.com>
2025-04-04 09:35:03 +02:00
Julien Racki
9e392c51cf include: dt-bindings: clock: Add stm32mp13 clock
Add STM32MP13 dt bindings for the clock definition

Signed-off-by: Julien Racki <julien.racki@st.com>
2025-04-04 09:35:03 +02:00
Julien Racki
5ee120fade include: dt-bindings: reset: Add stm32mp13 reset
Add STM32MP13 dt bindings for reset

Signed-off-by: Julien Racki <julien.racki@st.com>
2025-04-04 09:35:03 +02:00
Julien Racki
c099e27c06 soc: st: stm32: Provide basic support for STM32MP13 series
Enable basic support to STM32MP13, in single core configuration (A7)
with I and D cache enabled.

Signed-off-by: Julien Racki <julien.racki@st.com>
2025-04-04 09:35:03 +02:00
Julien Racki
87719828ac arch: arm: Adding fault description for the cortex A7
Add support for processing the Fault Status Registers and recoverable
data abort for the cortex A7.

Based on Cortex-A7 MPCore Technical Reference Manual (ARM DDI 0406).
(see https://developer.arm.com/documentation/ddi0406)

Signed-off-by: Julien Racki <julien.racki@st.com>
2025-04-04 09:35:03 +02:00
Julien Racki
695e6d73d4 arch: arm: Use the armv8_timer.h for the Cortex A7
We can't use the timer.h as the arm timer
is within the soc and does not have an address.

Instead we use the armv8_timer.h, renaming it to armv7_v8_timer.h
for the Cortex-A7 as the cp15 access are compatible.

Signed-off-by: Julien Racki <julien.racki@st.com>
2025-04-04 09:35:03 +02:00
Julien Racki
6d1cb00627 arch: arm: Add Cortex-A7 support
Pass the correct -mfpu and -mcpu flags to the compiler when building
for the Cortex-A7.

Signed-off-by: Julien Racki <julien.racki@st.com>
2025-04-04 09:35:03 +02:00
Julien Racki
a65c495362 west.yml: Update west.yml for stm32mp13 hal
Update west.yml for STM32MP13 HAL

Signed-off-by: Julien Racki <julien.racki@st.com>
2025-04-04 09:35:03 +02:00
Stefan Golinschi
a40a4dc300 boards: lilygo: tdongle_s3: initial support
This adds support for Lilygo T Dongle S3 Board.

Signed-off-by: Stefan Golinschi <stefan.golinschi@gmail.com>
2025-04-04 09:34:52 +02:00
Victor Brzeski
a1edfb41fd drivers: gpio: fix pcal6534 by updating register map
The PCAL6534 driver simply doesn't work. This is
due to an incorrect mapping of commands to pcal6534
registers.

Signed-off-by: Victor Brzeski <vbrzeski@meta.com>
2025-04-04 09:34:41 +02:00
Wenxi Xu
7dc2c15fd3 drivers: can: stm32_bxcan: fix filter config
Setting the filter registers in master CAN requires initializing master
CAN first. CONFIG_CAN_MAX_EXT_ID_FILTER banks are reserved for IDE
frames. Previously we set FS1R(CAN filter scale register) at init time,
but it is possible that the master CAN is not initialized at that time.
That is when the filter banks are not set correctly, causing that we get
wrong filter_id from slave CAN. This patch fixes the issue by setting
FS1R at the time of initializing master CAN.

Tested on:
STM32F407IGH6 with 2 std_id and 2 ext_id on each of CAN1 and CAN2.

Signed-off-by: Wenxi Xu <xuwenxi0517@gmail.com>
2025-04-04 09:34:30 +02:00
Krzysztof Chruściński
e7d590568c kernel: timeout: Reduce number of sys_clock_elapsed calls
sys_clock_elapsed requires access to system clock register interface
which is often slow. When new relative timeout is added sys_clock_elapsed()
is called once to calculate delta ticks and then if that triggers setting
new timeout sys_clock_elapsed() is called again. This call is redundant
since everything happens under spin lock so it is better to reuse value
returned by the first call.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-04 07:43:01 +02:00
Peter Mitsis
83f877ae4b tests: intel_adsp/test: Disable test logging defaults
Disables test logging defaults for the intel_adsp/ssp as it
has been found that when they are enabled they interfere
with the proper functioning of the test.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-04-04 07:42:44 +02:00
Peter Mitsis
1df4f6b6b5 tests: intel_adsp/ssp: Improve error checking
Improves error reporting in the intel_adsp/ssp test so that
errors are caught and flagged by the test infrastructure.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-04-04 07:42:44 +02:00
Jun Lin
5e54a64060 tests: kernel/sleep: exclude npcx platforms from the test
According the specification, in extreme cases, the deviation of the APB
clock and LFCLK clock can reach up to +/-1% (+/- 10ms).
Therefore, exclude npcx platforms from the test because it required 1ms
accuracy.

fixes: #66185

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-04-04 07:42:30 +02:00
Anas Nashif
a5413499f1 kernel: thread_monitor: reafactor and remove duplicate code
Refactor code and remove duplication, same code almost being repeated 4
times.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-04 07:42:20 +02:00
Anas Nashif
7c68855053 debug: thread_analyzer: move thread analyzer to own folder
Move to own directory to prepare for new related code.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-04 07:42:20 +02:00
Andrew Featherstone
f289e47ca5 docs: raspberrypi: Avoid abbreviating to RPi
Prefer to use more descriptive terms.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-04-03 15:27:50 -07:00
Andrew Featherstone
ed168d6e7b docs: raspberrypi: Correct capitalization of Pico
In the context of Raspberry Pi's product line, this is Pico, not PICO.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-04-03 15:27:50 -07:00
Andrew Featherstone
a2aa0a3e2b docs: raspberrrypi: Correct names of products
Replace occurrences of "RaspberryPi" with "Raspberry Pi" in
documentation, comment blocks etc. Correct the name of "PicoW" to
"Pico W", matching Raspberry Pi's documentation at
https://www.raspberrypi.com/documentation/microcontrollers/pico-series.html .

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-04-03 15:27:50 -07:00
David Cerrone
bbaaac999f drivers: sensor: current_amp: add calibration option
Allow the option to enable or disable calibration of the ADC.

Signed-off-by: David Cerrone <davidcerrone@gmail.com>
2025-04-03 15:26:36 -07:00
Jordan R Abrahams-Whitehead
d3584b4a46 misc: Restrict linkage for main to freestanding
`extern "C"` is not a valid language linkage for declaring
`int main(...)`, as per the ISO C++ Standard Specification.
This fixes the violations of -Wmain, and brings Zephyr
closer to valid C++.

See the C++ standard wording here:
https://eel.is/c++draft/basic.start.main#3.sentence-5

See also the clang warning -Wmain:
https://clang.llvm.org/docs/DiagnosticsReference.html#wmain

However, for freestanding code (i.e. with -ffreestanding),
main has no special meaning, and we need to prevent name
mangling. So allow this forward linkage when not hosted.

This only applies to C++ as these linkage declarations only
exist inside __cplusplus guards.

Signed-off-by: Jordan R Abrahams-Whitehead <ajordanr@google.com>
2025-04-03 15:26:23 -07:00
Emilio Benavente
26a2478c24 tests: drivers: i2s: Added I2S Testing for RW612
Added Internal pin connection for
I2S Loopback testing when I2S is enabled.
Added I2S testing support for RW612.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-04-03 21:06:14 +02:00
Emilio Benavente
9a893c6bd9 boards: nxp: Added I2S Support for RW612
Added I2S support for RW612.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-04-03 21:06:14 +02:00
Tom Hughes
11e3aa8952 tests: mgmt: mcumgr: Disable clang warning
When building with clang it reports:

tests/subsys/mgmt/mcumgr/settings_mgmt/src/main.c:69:22: error: variable
'test_response_read_data_start' is not needed and will not be emitted
[-Werror,-Wunneeded-internal-declaration]
static const uint8_t test_response_read_data_start[5] = {
                     ^
tests/subsys/mgmt/mcumgr/settings_mgmt/src/main.c:73:22: error: variable
'test_response_read_data_end' is not needed and will not be emitted
[-Werror,-Wunneeded-internal-declaration]
static const uint8_t test_response_read_data_end[1] = {
                     ^

The values of test_response_read_data_start and
test_response_read_data_end are not actually used anywhere in the tests.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-04-03 21:06:02 +02:00
Hao Zhang
e31d3c3172 boards: common: programatically set MAX32_TARGET_CFG
Configuration files such as max32655.cfg is used for openocd purpose
and is stored in variable ${MAX32_TARGET_CFG}. It was set manually
based on whether CONFIG_SOC_MAX32655_M4 is set, now, it gets set
automatically utilizing ${CONFIG_SOC} variable.

Signed-off-by: Hao Zhang <Hao.Zhang@analog.com>
2025-04-03 21:05:49 +02:00
Benjamin Cabé
de13103f0b boards: doc: adopt zephyr:board-supported-runners directive
Add .. zephyr:board-supported-runners:: to the Programming and Debugging
section of the documentation for each board that has one such section,
as this is the most natural place to put it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-03 21:05:39 +02:00
Benjamin Cabé
f06c26a6d0 doc: extensions: boards: add zephyr:board-supported-runners directive
Use runners.yaml from build metadata to gather info regarding board
supported runners, store the info in the board catalog, and allow
to display it as a table in a board's doc page using the
.. zephyr:board-supported-runner:: directive.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-03 21:05:39 +02:00
Benjamin Cabé
76bf0126ff doc: boards: antmicro: adopt zephyr:board-supported-hw directive
Replace manually authored hardware features table with the new Zephyr
board supported hardware directive which automatically generates an
up-to-date table based on the boards' Devicetree.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-03 17:48:47 +02:00
Benjamin Cabé
0cf7b7b265 doc: boards: antmicro: fix heading
Heading was improperly formatting causing glitches in table of contents

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-03 17:48:47 +02:00
Martin Hoff
13bdc3cebd drivers: serial: silabs: add __maybe_unused to eusart dma callback
The callback function for the DMA is not used in the case where no DMA
properties are given in the esuart node in the device tree. It causes
a warning in the CI build.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-04-03 17:48:36 +02:00
Ravi Dondaputi
429bf84542 wifi: nrf_wifi: Adjust default heap size for driver init failures
Reconfigure DATA heap sizes to fix the driver init failures.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-04-03 17:48:28 +02:00
Luis Ubieda
2177b84b7b sensor: dts: Add sensor-device.yaml to all instances
Some were missing them, as pointed out on #86747.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-03 17:48:19 +02:00
Riadh Ghaddab
e8e7290aba tests: zms: decrease verbosity
disable by default the LOG_DBG messages

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-04-03 17:48:09 +02:00
Mark Wang
891e457873 bluetooth: classic: Fix remote name resolving with multiple devices
The error occur when discoverying br devices and need to send request_name
for many found devices.
In system work queue task, bt_hci_inquiry_complete->
report_discovery_results is called, then request_name is called for all
the found devices. The controller gives HCI_Remote_Name_Request_Complete
event for every name request result and one buf is allocated from
hci_rx_pool to save HCI_Remote_Name_Request_Complete. When system work
queue task is blocked to call request_name for every device, many
HCI_Remote_Name_Request_Complete are received for the already sent
request_name, it uses up all the buf of hci_rx_pool, then the bt_rx_thread
task is blocked to get buf from hci_rx_pool when next
HCI_Remote_Name_Request_Complete is received, meanwhile the next
request_name send hci cmd and wait the result, but the hci status/complete
event can't be received because the bt_rx_thread is blocked and
bt_uart_isr is kept in the state to receive last
HCI_Remote_Name_Request_Complete, then bt_dev.ncmd_sem is not released,
then the next request_name send hci cmd again, but the bt_dev.ncmd_sem is
invalid, then bt_hci_cmd_send_sync fail and assert.

resolve it by requesting name one by one.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-04-03 17:48:04 +02:00
Benjamin Cabé
48de4ab111 Revert "dts: bindings: spi: Fix "nordic,nrf-spis" binding"
This reverts commit 7072460c74.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-03 17:47:51 +02:00
James Roy
c47926e911 dts: dma: Simplify the description of the binding
Remove redundant descriptions in DMA bindings, such
as "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:17:16 +02:00
Torsten Rasmussen
a713f79031 cmake: fix Zephyr module ext order
MODULE_EXT_ROOT allows Zephyr modules to provide glue code for Zephyr
modules using `cmake-ext: True` and/or `kconfig-ext:True`.

A module ext root provides a `modules.cmake` file which defines
variables like: `set(ZEPHYR_FOO_CMAKE_DIR  <glue-code-path>/foo)`

It is intended that a downstream module can replace Zephyr's default
glue code, which again can be replaced further downstream.

Setting values in first modules.cmake (Zephyr's) are replaced by later
processed modules.cmake (downstream) when the setting name is identical.

Therefore the module ext root list should not be reversed, and Zephyr
itself should be placed as first entry in the list.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-04-03 13:16:56 +02:00
James Roy
c0586e66fa dts: sram: Simplify the description of the binding
Remove redundant descriptions in SRAM bindings, such
as "... description".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:16:44 +02:00
James Roy
fa8e8b97bd dts: smbus: Simplify the description of the binding
Remove redundant descriptions in smbus bindings, such
as "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:16:44 +02:00
James Roy
18ef7be6fb dts: rng: Simplify the description of the binding
Remove redundant descriptions in RNG bindings, such
as "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:16:44 +02:00
James Roy
56212491cf dts: sdhc: Simplify the description of the binding
Remove redundant descriptions in SDHC bindings, such
as "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:16:44 +02:00
James Roy
a148784fef dts: shi: Simplify the description of the binding
Remove redundant descriptions in shi bindings, such
as "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:16:44 +02:00
James Roy
60c0682502 dts: riscv: Simplify the description of the binding
Remove redundant descriptions in riscv bindings, such
as "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:16:44 +02:00
James Roy
63dcf4e299 dts: sd: Simplify the description of the binding
Remove redundant descriptions in SD bindings, such
as "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:16:44 +02:00
James Roy
0b239bc95a dts: rtc: Simplify the description of the binding
Remove redundant descriptions in RTC bindings, such
as "... node", "... common bindings" and "This binding provides".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:16:44 +02:00
James Roy
74df208bf2 dts: usb: Simplify the description of the binding
Remove redundant descriptions in USB bindings, such
as "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:16:44 +02:00
James Roy
44d3909d74 dts: watchdog: Simplify the description of the binding
Remove redundant descriptions in watchdog bindings, such
as "... node" and " ... driver binding".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:16:44 +02:00
James Roy
52dbcaadbe dts: timer: Simplify the description of the binding
Remove redundant descriptions in timer bindings, such
as "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:16:44 +02:00
James Roy
91b2fc2938 dts: tach: Simplify the description of the binding
Remove redundant descriptions in tach bindings, such
as "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:16:44 +02:00
James Roy
a79ecd5716 dts: spi: Simplify the description of the binding
Remove redundant descriptions in SPI bindings, such
as "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-03 13:16:44 +02:00
Andrzej Głąbek
7072460c74 dts: bindings: spi: Fix "nordic,nrf-spis" binding
The nRF SPIS peripheral is not an SPI controller but an SPI target
device, so its binding should not include "spi-controller.yaml"
(and so far it did, through "nordic,nrf-spi-common.yaml").
Fix this so that it is no longer possible to incorrectly add child
DT nodes as "devices" on the SPIS "bus" and then for example misuse
the SPI_CONFIG_DT() macro for such constructs.

Since this requires a small correction in the "overrun-character"
property in "nordic,nrf-spi-common.yaml", improve also its description
by adding there information from the corresponding property from
"spi-controller.yaml".

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-04-03 13:16:34 +02:00
Dmitrii Golovanov
315ff5dadc tests: logging: logging.thread: add missed LF in logs
Add missed line feed chars at the test's output to fix Ztest's
following status messages corrupted.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2025-04-03 13:16:26 +02:00
Dmitrii Golovanov
125de99433 tests: logging: logging.thread: fix Ztest log corruption
Flush test log messages before waiting for the processing
thread to avoid delayed log output messing with the Ztest's
log output on the test complete.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2025-04-03 13:16:26 +02:00
Dmitrii Golovanov
fc2ea3027d tests: logging: logging.thread: fix race condition
Fix race condition in tests/subsys/logging/log_core_additional
logging.thread test configuration released semaphore before
log message output.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2025-04-03 13:16:26 +02:00
Caio Barz Molinari
e57cf1e5ce drivers: video: ov5640: add support to QVGA and QQVGA in CSI mode
The ov5640 driver already supports QVGA and QQVGA in dvp mode but not
in CSI mode. This PR adds support for these resolutions in CSI mode.

Signed-off-by: Caio Barz Molinari <caioheitor.barzmolinari_1@nxp.com>
2025-04-03 13:16:20 +02:00
Troels Nilsson
c32bf58173 Bluetooth: Controller: Fix an error code in ll_adv_sync_ad_data_set
When an advertising set is not configured for periodic advertising,
the correct error to return is BT_HCI_ERR_CMD_DISALLOWED

Fixes EBQ test failure of HCI/DDI/BI-70-C

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-04-03 13:16:14 +02:00
Matthias Hauser
941a5489d3 dts: boards: we: add board Ophelia-IV
add new board Ophelia-IV

Signed-off-by: Matthias Hauser <matthias.hauser@we-online.de>
2025-04-03 13:16:05 +02:00
Arunmani Alagarsamy
d5b2507a13 drivers: wifi: siwx91x: Add Wi-Fi version command support
Add support for the Wi-Fi version command to retrieve
the Wi-Fi firmware and driver version information.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-04-03 13:15:55 +02:00
Robin Kastberg
216ff00422 cmake: linker: dont place device tree memories at absolute addresses
Avoid placing the device tree memories at an absolute address.
This avoids placing both .rom_start AND SSRAM1 at
the same address on mps2/an521/cpu0.

This seems fine according to ld (since one placement is empty)
but causes a currently non-suppressable diag_warning

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-04-03 13:15:47 +02:00
Murali Thokala
03c5f5f083 drivers: wifi: Swctrl1 configuration for coex
Support to configure swctrl1 as input or output for coexistence.

Signed-off-by: Murali Thokala <Murali.Thokala@nordicsemi.no>
2025-04-03 11:08:15 +02:00
Kapil Bhatt
a934af8f89 drivers: nrf_wifi: Add Kconfig for ps poll and stbc
Add Kconfig in init command for maximum ps poll failures count
and stbc enable in HT.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-04-03 11:08:15 +02:00
Chaitanya Tata
0cf47478ee drivers: nrf_wifi: Add a new stats command that reads from memory
Instead of a command and event mechanism that relies on processors being
active (UMAC/LMAC) add a new command that reads from the RPU memory
directly for all stats, useful in debugging when processors are
crashed/non-functional.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-03 11:08:15 +02:00
Chaitanya Tata
85179fbadf manifest: nrf_wifi: Pull stats from memory support
Gets the stats directly from RPU memory instead of command and event
exchange.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-03 11:08:15 +02:00
Nikodem Kastelik
2e5ac3c65b manifest: update hal_nordic to have nrfx_twim handler setter & getter
Updated hal_nordic revision contains new API for nrfx_twim driver
that allow to set and get handler in runtime.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-04-03 11:08:05 +02:00
Krzysztof Chruściński
24c01a99c9 tests: drivers: uart: uart_pm: Disable device runtime PM
Explicitly disable device runtime PM since this test is expecting
it to be disabled and there are SoC now that turns on it by default.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-03 11:07:55 +02:00
Krzysztof Chruściński
4b1691531b soc: nordic: nrf54h: Change PM_DEVICE_RUNTIME default
nrf54h20 device requires device runtime PM to be enabled when
device PM is in use.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-03 11:07:55 +02:00
Chaitanya Tata
fe32d059af shields: nrf7002ek: Increase default frequency to 16MHz
Now that the clock switching is implemented and most hosts support 16MHz
SPI, increase the default to 16MHz.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-03 11:07:47 +02:00
Chaitanya Tata
4818585006 modules: nrf_wifi: spi: Implement frequency switching
In order to support higher frequencies than 8MHz, we need to implement
frequency switching while waking up the RPU, as it has to be done only
at 8MHz, once RPU is awake, we can switch back to the configured (DTS)
frequency.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-03 11:07:47 +02:00
Guillaume Gautier
6f42911eb0 boards: st: stm32n6570_dk: configure and enable sdmmc2
Configure and enable SDMMC2 for the STM32N6570-DK.
Also configure and enable the PLL2 and the IC4 to use them as a 48MHz
source clock for the SDMMC.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-04-03 11:07:33 +02:00
Guillaume Gautier
2a72cf7f3a dts: arm: st: n6: add sdmmc nodes
Add sdmmc1 and sdmmc2 nodes to STM32N6 dtsi

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-04-03 11:07:33 +02:00
Guillaume Gautier
f9a3c5424c drivers: disk: stm32 sdmmc: add stm32n6 support
Add STM32N6 to the list of series that support HWFC for SDMMC

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-04-03 11:07:33 +02:00
Sai Santhosh Malae
9594af85f0 drivers: dma: siwx91x: Enable scatter-gather transfer support
Implement support for scatter-gather DMA transfers in the siwx917 driver.
This enhancement allows the driver to handle multiple non-contiguous memory
buffers in a single DMA transaction

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-04-03 11:07:12 +02:00
Sai Santhosh Malae
6c9ec8d1c0 drivers: dma: siwx91x: Fix callback assignment for each DMA channel
Updated the driver to ensure that each DMA channel can properly
assign and handle individual callbacks.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-04-03 11:07:12 +02:00
Sai Santhosh Malae
8d3bb53495 drivers: dma: siwx91x: Add chan_filter API for DMA channel assignment
This new API allows the assignment of desired DMA channels for
peripheral transfers, enhancing flexibility and control over DMA
operations.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-04-03 11:07:12 +02:00
Sai Santhosh Malae
8930aed8d4 drivers: dma: siwx91x: Integrate dma_context features
Refactored the driver code to ensure compatibility with the
dma_context API, improving maintainability and consistency
with other DMA drivers in the Zephyr project.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-04-03 11:07:12 +02:00
Sai Santhosh Malae
ab57d54bb0 drivers: dma: siwx91x: Fix burst length processing
1. Corrected the burst length processing to be handled in bytes
   for the siwx917 DMA drivers.
2. Removed overlay and configuration files associated with the
   chan_blen_transfer test application. The chan_blen_transfer
   test application attempted to use 8 and 16 byte bursts, which
   are not supported by the siwx91x UDMA.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-04-03 11:07:12 +02:00
Jiafei Pan
e94a545599 soc: imx9: fix pinctrl drive strength setting
Current code configures the higher bits ahead of drive strength
to be "1", this patch fix this issue.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Lei Xu <lei.xu@nxp.com>
2025-04-03 11:07:01 +02:00
Kevin ORourke
dfe2848aeb style: Fix formatting
CI compliance checks demanded reformatting.

Signed-off-by: Kevin ORourke <kevin.orourke@ferroamp.se>
2025-04-03 11:06:53 +02:00
Kevin ORourke
9e2752d9d8 drivers: eth: phy_mii: Don't block system workqueue
Looping while waiting for auto-negotiation to complete can block the
system workqueue for several seconds.

Signed-off-by: Kevin ORourke <kevin.orourke@ferroamp.se>
2025-04-03 11:06:53 +02:00
Lukasz Mrugala
cf87f97824 ci: Run all Blackbox tests
We've previously restricted Blackbox test
runs to just one test file - test_output.py.
That was a mistake.

This commit makes the relevant workflow run
all of the blackbox test files again.

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2025-04-03 11:06:44 +02:00
Jordan Yates
8f53407fa6 serial: cmsdk_apb: fix irq_is_pending
Implement `irq_is_pending` in terms of the `irq_rx_ready` and
`irq_tx_ready` function calls.

Using `intstatus` directly results in an implementation that does not
conform to the interrupt driven UART API. Since `intstatus` bits are
only only set when a buffer transitions from full to empty, any calls to
`irq_is_pending` before any bytes have been sent will return 0. This is
problematic since the documented implementation for the API IRQ handler
is:
```
while (uart_irq_update(dev) && uart_irq_is_pending(dev)) {
    if (uart_irq_rx_ready(dev)) {
        ...
    }
    if (uart_irq_tx_ready(dev)) {
        uart_fifo_fill(dev, ...);
    }
}
```
If `uart_irq_is_pending` does not return 1 until the first byte is sent,
we never end up pushing data to be transmitted into the `uart_fifo_full`
function.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-03 08:43:37 +02:00
Khaoula Bidani
ba1ad38f99 drivers: usb: udc: simplify code of maximum-speed
Add defines to avoid magic values in the dtsi.
Replace usb_dc_stm32_get_maximum_speed() with device tree property.
- Use DT_INST_STRING_UPPER_TOKEN(0, maximum_speed) to set the USB speed.
- Remove PCD_SPEED_FULL initialization.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-04-03 08:43:29 +02:00
Khaoula Bidani
01ddccdf62 drivers: usb: device: simplify code of maximum-speed
Add defines to avoid magic values in the dtsi.
Replace usb_dc_stm32_get_maximum_speed() with device tree property.
- Use DT_INST_STRING_UPPER_TOKEN(0, maximum_speed) to set the USB speed.
- Remove PCD_SPEED_FULL initialization.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-04-03 08:43:29 +02:00
Khaoula Bidani
e359cc6695 dts: arm: st: add property maximum-speed
On STM32 USB, there are currently four types
of maximum-speed: "super-speed", "high-speed",
"full-speed" and "low-speed" (if present).
To simplify the driver, add maximum-speed if
not present as a dts property.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-04-03 08:43:29 +02:00
Peter Wang
43b6db143f boards: frdm_mcxa166, frdm_mcxa276: add frdm_mcxa166 and frdm_mcxa276 board
enable board support for frdm_mcxa166 and frdm_mcxa276

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-04-03 08:43:16 +02:00
Peter Wang
5309c93944 drivers: flash: update flash_mcux to support all mcxa family device
update flash_mcux driver to support all mcxa family device

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-04-03 08:43:16 +02:00
Peter Wang
aa5781873e dts: mcxa166,mcxa276: add dts for MCXA166 and MCXA276
add dts for device MCXA166 and MCXA276

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-04-03 08:43:16 +02:00
Peter Wang
9580bc5627 soc: mcxa166,mcxa276: add SOC support for MCXA166 and MCXA276
add soc MCXA166 and MCXA276 for board frdm_mcxa166 and frdm_mcxa276

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-04-03 08:43:16 +02:00
Peter Wang
a10dd1d830 manifest: update HAL NXP manifest for MCXA166,MCXA276 pinctrl
update hal_nxp to include device MCXA166 and MCXA276 pinctrl

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-04-03 08:43:16 +02:00
Khanh Nguyen
ceb19935b3 boards: renesas: Add power management support for RA8 boards
Updated DTS files to enable ULPT nodes for:
- `ek_ra8d1`
- `ek_ra8m1`
- `mck_ra8t1`

Updated board documentation in `index.rst` for each board.

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-04-03 08:41:08 +02:00
Khanh Nguyen
fb572d59a2 soc: renesas: Add power management support for Renesas RA8
Updated `CMakeLists.txt` and `Kconfig` to integrate power management
for RA8D1, RA8M1, and RA8T1.

Modified `Kconfig.defconfig` to configure ULPT timer as the system timer
when power management is enabled:
- Adjusted `SYS_CLOCK_HW_CYCLES_PER_SEC` and `SYS_CLOCK_TICKS_PER_SEC`
for ULPT timer.
- Disabled `CORTEX_M_SYSTICK` when ULPT timer is used as the system timer.

Implemented power management logic in the new `power.c` file for:
- RA8D1 (`soc/renesas/ra/ra8d1/power.c`)
- RA8M1 (`soc/renesas/ra/ra8m1/power.c`)
- RA8T1 (`soc/renesas/ra/ra8t1/power.c`)

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-04-03 08:41:08 +02:00
Khanh Nguyen
528153e245 dts: arm: renesas: Add ULPT and power state nodes for Renesas RA8
ULPT nodes:
- Added `ulpt0` at 0x40220000 (channel 0).
- Added `ulpt1` at 0x40220100 (channel 1).
- Included timer sub-nodes with `renesas,ra-ulpt-timer` compatibility.

Power state nodes:
- `stop0`: Runtime idle state mapped to LPM sleep mode.
- `stop1`: Standby state mapped to LPM software standby mode.

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-04-03 08:41:08 +02:00
Khanh Nguyen
7ae800a0c9 drivers: timer: Add ULPT timer for power management on Renesas RA MCUs
drivers:
- Added ULPT timer driver in `renesas_ra_ulpt_timer.c`.
- Updated `clock_control_renesas_ra_cgc.c` for ULPT clock settings.
- Updated `uart_renesas_ra8_sci_b.c` for power management support.
- Updated `CMakeLists.txt` and `Kconfig` to integrate ULPT timer.
- Added `Kconfig.renesas_ra_ulpt` for ULPT-specific configurations.

dts bindings:
- Added `renesas,ra-ulpt.yaml` for ULPT node bindings.
- Added `renesas,ra-ulpt-timer.yaml` for ULPT timer bindings.

modules:
- Updated `Kconfig.renesas_fsp` to support ULPT and LPM.

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-04-03 08:41:08 +02:00
Nhut Nguyen
8f2879a156 drivers: gpio: rz: Fix a build error
Fix a build error of redefinition of a variable in gpio_renesas_rz.h

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-04-03 06:25:06 +02:00
S Mohamed Fiaz
2eb0fb2746 west.yml: Update hal_silabs revision
This commit updates the hal_silabs revision

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-04-03 06:24:54 +02:00
S Mohamed Fiaz
701be0c331 driver: sleeptimer: siwx917: Add siwx91x Sleeptimer driver
This commit enables the Sleeptimer driver support for the siwx917 device.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-04-03 06:24:54 +02:00
Tom Hughes
d5d12f43f8 drivers: dma_wch: Add __used instead of disabling unused function warning
#84065 replaced diagnostic pragmas with TOOLCHAIN_* macros, but we don't
need to use that here since __used is a cleaner way to indicate that the
function is used and will also prevent it from being optimized away at
link time if LTO is enabled.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-04-03 06:24:44 +02:00
Lyle Zhu
c09cf23844 Bluetooth: HFP_AG: Add ACL conn to the connected callback
If the AG works as Data Channel Acceptor, the ACL conn cannot be known
by the application of AG. Similar with HF, add ACL conn as the first
parameter to the `connected` callback of AG.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
ec0d473ec0 Bluetooth: HFP_AG: Remove unnecessary code line __fallthrough
Remove all unnecessary code lines `__fallthrough` from switch-case.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
ded0b176a6 Bluetooth: HFP_AG: Optimize feature access
Add `BOTH_SUPT_FEAT(ag, _hf_feature, _ag_feature)` to check if the
feature is supported by both side.
Add `HF_SUPT_FEAT(ag, _feature)` to check if the feature is supported
by HF.
Add `AG_SUPT_FEAT(ag, _feature)` to check if the feature is supported
by AG.

Use `BOTH_SUPT_FEAT/HF_SUPT_FEAT/AG_SUPT_FEAT` to optimize code that
checks whether a feature is supported.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
9cda31a4ca Bluetooth: HFP_AG: Remove unnecessary lock for feature read access
The lock/unlock for AG/HF feature read access is unnecessary.
For AG feature, it only be changed when creating new AG object.
For HF feature, it only be changed when exchanging feature in SLC
establishment.

Remove the hfp_ag_lock/hfp_ag_unlock for AG/HF feature read access.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
d37f250174 Bluetooth: HFP_AG: Change "-EOPNOTSUPP" to "-ENOEXEC"
There is an error reported in platform `native_sim` that the value of
`EOPNOTSUPP` is same as `ENOTSUP`.
It cause the building error `duplicate case value '-95'` reported.

Use `ENOEXEC` to replace `EOPNOTSUPP` to fix the building issue.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
68d2526130 Sample: Bluetooth: HFP_HF: Update the sample
Due to the interface of HF is updated, update HF sample accordingly.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
eb327af328 Bluetooth: HFP: Divide hfp_internal.h
Divide hfp_internal.h into two parts, HFP HF part hfp_hf_internal.h and
HFP common part hfp_internal.h.

Includes "hfp_internal.h" in file "hfp_ag_internal.h".
Includes "hfp_ag_internal.h" in file "hfp_ag.c".

Includes "hfp_internal.h" in file "hfp_hf_internal.h".
Includes "hfp_hf_internal.h" in file "hfp_hf.c".

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
fcedda6a00 Sample: Bluetooth: HFP_AG: Update the sample
Due to the interface of AG is updated, update AG sample accordingly.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
67e01dfd26 Bluetooth: Shell: BR: Find HFP_HF records on HFP_AG side
Add a option `HFPHF` to find HFP HF SDP records from HFP AG side.

Add a SDP records discovery parameter `discov_hfphf` for this option.

Add a function `sdp_hfp_hf_user` to handle the discovery result.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
eba356d56b Bluetooth: shell: Support HFP HF and AG
Support HFP HF and AG in shell.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
781074c6e2 Bluetooth: HFP_HF: Improve SCO accept
Find HF object according to conn object index directly.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
3723ba1eee Bluetooth: HFP_AG: Support RFCOMM responder
Define SDP records for HFP AG. Register HFP AG SDP service records in
AG initialization.

Register HFP AG RFCOMM server in AG initialization.

Register HFP AG SCO server in AG initialization.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
4833f82a8c Bluetooth: HFP_HF: Verify ability to reject a call
Check the ability of AG to reject a call. If the AG cannot reject the
call, return error `-ENOTSUP`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
507c2e7fc0 Bluetooth: HFP_AG: Ability to reject call
Add a configuration `CONFIG_BT_HFP_AG_REJECT_CALL` for feature
`Ability to reject a call`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
d7cdadc4be Bluetooth: HFP_HF: Initiate SLC establishment
Add function `bt_hfp_hf_connect` to initialize the Service Level
Connection establishment procedure.

Add function `bt_hfp_hf_disconnect` to release the Service Level
Connection.

Clear HF object if the RFCOMM is disconnected.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
f482613478 Bluetooth: HFP_AG: fix typo
Change `Dailing` to `Dialing`.
Change `HFP unit` to `HF`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
d9dd2e476b Bluetooth: HFP_HF: fix typo
Change `HF_SINGNAL_IND` to `HF_SIGNAL_IND`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
0d7eca6955 Bluetooth: HFP_AG: Support HF Indicators
Add configuration `CONFIG_BT_HFP_AG_HF_INDICATORS` to enable feature
HF Indicators.

Add configuration `CONFIG_BT_HFP_AG_HF_INDICATOR_ENH_SAFETY` to
support HF indicator `Enhanced Safety`.

Add configuration `CONFIG_BT_HFP_AG_HF_INDICATOR_BATTERY` to support
HF indicator `Remaining level of Battery`.

Add function `bt_hfp_ag_hf_indicator` to activate/deactivate HF
indicator.

Optimize the handle of AT command `AT+BIND`.

Handle AT command `AT+BIEV`.

Add callback `hf_indicator_value` to notify the value of HF indicator.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
01de855828 Bluetooth: HFP_HF: Support HF Indicators
Add configuration `CONFIG_BT_HFP_HF_HF_INDICATORS` to enable feature
HF Indicators.

Add configuration `CONFIG_BT_HFP_HF_HF_INDICATOR_ENH_SAFETY` to
support HF indicator `Enhanced Safety`.

Add configuration `CONFIG_BT_HFP_HF_HF_INDICATOR_BATTERY` to support
HF indicator `Remaining level of Battery`.

Add function `bt_hfp_hf_enhanced_safety` to transfer enhanced safety
status.

Add function `bt_hfp_hf_battery` to transfer Remaining level of
Battery.

Send AT command to notify AG the supported HF indicators of HF in SLC
initialization sequence.

Send AT command to get the supported HF indicators of AG in SLC
initialization sequence.

Send AT command to get the enabled/disabled state of generic status
indicators from AG in SLC initialization sequence.

Handle unsolicited result code `+BIND`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
04122445bb Bluetooth: HFP_HF: Optimize SLC init procedure
In current implementation, it is difficult to insert new AT commands
in the SLC initialization sequence.

Add a SLC initialization sequence. Send AT command one by one.

It will be easy to insert new AT commands in the appropriate position.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
32e6c21e0d Bluetooth: HFP_AG: Indicators Activation and Deactivation
Improve the process of AT command `AT+BIA` to mask the activated/
deactivated indicators.

Only notify the activated indicator if the value of it is updated.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
2011dcb3ee Bluetooth: HFP_HF: Activate/deactivate AG indicators
Add a function `bt_hfp_hf_indicator_status` to activate/deactivate AG
indicators.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
f915f86761 Bluetooth: HFP_AG: Set service availability
Add a function `bt_hfp_ag_service_availability` to set the service
availability.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
dbd3887b91 Bluetooth: HFP_AG: Set battery level
Add a function `bt_hfp_ag_battery_level` to set the battery level.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
04c4abdcb3 Bluetooth: HFP_AG: Set roaming status
Add a function `bt_hfp_ag_roaming_status` to set the roaming status.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
afa09067ca Bluetooth: HFP_AG: Set signal strength
Add a function `bt_hfp_ag_signal_strength` to set the signal strength.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
b622e748b8 Bluetooth: HFP_AG: Send subscriber number info
Handle AT command `AT+CNUM`.

Add a callback function `subscriber_number` to notify the upper layer
that the HF needs to get subscriber number information from the AG.

If there is subscriber number information needs to be sent, the passed
function `bt_hfp_ag_query_subscriber_func_t func` can be called for
this purpose.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
5dd303620a Bluetooth: HFP_HF: Query subscriber number
Add function `bt_hfp_hf_query_subscriber` to query the AG subscriber
number.

Add callback `subscriber_number` to notify the result of the query of
the subscriber number information.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
1e4c740298 Bluetooth: HFP_AG: Handle DTMF code
Handle AT command `AT+VTS`.

Add a callback `transmit_dtmf_code`. When a valid AT command `AT+VTS`
is received, call the callback to notify the upper layer.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
a3a1b409dc Bluetooth: HFP_HF: Transmit DTMF Code
Add a function `bt_hfp_hf_transmit_dtmf_code` to transmit DTMF Codes.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
43be8b8698 Bluetooth: HFP_AG: Attach a phone number for a voice tag
Add configuration `CONFIG_BT_HFP_AG_VOICE_TAG` to enable the feature
`attach a phone number for a voice tag`.

Handle AT command `AT+BINP=1`.

Add callback `request_phone_number` to notify the request and get the
phone number from the upper layer.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
853b51d3f6 Bluetooth: HFP_HF: Request phone number
Add a function `bt_hfp_hf_request_phone_number` to request phone number
to the AG.

Add a callback `request_phone_number` to notify the result of the
request.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
f842c19ff9 Bluetooth: HFP_AG: Support Voice recognition activation
Add configuration `CONFIG_BT_HFP_AG_VOICE_RECG` to enable Voice
recognition activation feature.

Add configuration `CONFIG_BT_HFP_AG_ENH_VOICE_RECG` to enable Enhanced
Voice Recognition Status feature.

Add configuration `CONFIG_BT_HFP_AG_VOICE_RECG_TEXT` to enable Voice
Recognition Text feature.

Add function `bt_hfp_ag_voice_recognition` activate/deactivate the
Voice recognition activation feature.

Add function `bt_hfp_ag_vre_state` to notify the state of the voice
recognition engine.

Add function `bt_hfp_ag_vre_textual_representation` to notify the
state and textual representation of voice recognition engine.

Add callback `voice_recognition` to notify the upper layer the status
of voice recognition activation.

Add callback `ready_to_accept_audio` to notify the upper layer that
the HF is ready to accept audio.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
b4d4270351 Bluetooth: HFP_HF: Support Voice recognition activation
Add configuration `CONFIG_BT_HFP_HF_VOICE_RECG` to enable Voice
recognition activation feature.

Add configuration `CONFIG_BT_HFP_HF_ENH_VOICE_RECG` to enable Enhanced
Voice Recognition Status feature.

Add configuration `CONFIG_BT_HFP_HF_VOICE_RECG_TEXT` to enable Voice
Recognition Text feature.

Add function `bt_hfp_hf_voice_recognition` to activate/deactivate the
Voice recognition activation feature.

Add function `bt_hfp_hf_ready_to_accept_audio` to indicate that the HF
is ready to accept audio.

Add a callback `voice_recognition` to notify the upper layer the
status of voice recognition activation.

Add a callback `vre_state` to notify the upper layer the state of
voice recognition engine.

Add a callback `textual_representation` to notify the upper layer the
textual representation.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
384483a6e6 Bluetooth: HFP_HF: Fix TX queue broken issue
The TX buf will be removed from TX queue after the data has been sent.

It causes the following TX buffers to be lost.

Fix it by removing TX buffer when sending it.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
a1ea2b266b Bluetooth: HFP_HF: Avoid at status overwrote by sending
There is an issue that the sending of AT+command will overwrite the at
status when the at is handling receiving.

Add a flag `BT_HFP_HF_FLAG_RX_ONGOING` to flag the receiving is
working.

When the flag is set, suspend the TX sending.

Add a worker to restart the tx sending.

After the flag `BT_HFP_HF_FLAG_RX_ONGOING` is cleared, submit the TX
worker to restart the tx sending.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
77b640446f Bluetooth: HFP_HF: Enable 3-way feature
Add a configuration `BT_HFP_HF_3WAY_CALL` to control the feature.

Add a configuration `BT_HFP_HF_MAX_CALLS` to define supported maximum
calls.

Add a configuration `BT_HFP_HF_ECS` to configure the Enhanced Call
Status feature.

Add a configuration `BT_HFP_HF_ECC` to configure the Enhanced Call
Control feature.

Add a structure `struct bt_hfp_hf_call` to manage the call.

Add the call object to callback `outgoing`, and`incoming`.

Use call object to replace AG object for callbacks `remote_ringing`,
`on_hold`, `accept`, `reject`, `terminate`, `call_held`,
`ring_indication`, and `clip`.

Change callback `call_held` to `held`.

Add callback `retrieve` for the retrieved held call.

Add callback `call_waiting` to notify the application a new call is
waiting.

Use call object to replace AG object for function `bt_hfp_hf_accept`,
`bt_hfp_hf_reject`, `bt_hfp_hf_terminate`, and
`bt_hfp_hf_hold_incoming`.

Add functions for 3-way feature, including
`bt_hfp_hf_call_waiting_notify`, `bt_hfp_hf_release_all_held`,
`bt_hfp_hf_set_udub`, `bt_hfp_hf_release_active_accept_other`,
`bt_hfp_hf_hold_active_accept_other`, `bt_hfp_hf_join_conversation`,
`bt_hfp_hf_explicit_call_transfer`, `bt_hfp_hf_release_specified_call`,
and `bt_hfp_hf_private_consultation_mode`.

Add a new function `at_get_raw_string` to get the raw string from AT
response.

Move definitions of AT+CLCC value from hfp_ag_internal.h to
hfp_internal.h.

Monitor unsolicited result code `+CCWA`.

Enable `Call Waiting Notification` if the feature is supported by both
side when the SLC connected.

Get CHLD values supported by AG if the 3-way calling feature is
supported by both side.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
bc6684b745 Bluetooth: HFP_AG: Move CLCC status definitions
Move CLCC status definitions from hfp_ag_internal.h to hfp_internal.h.

And change name from HFP_AG_CLCC_STATUS_XXX to BT_HFP_CLCC_STATUS_XXX.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
0d5cfaab19 Bluetooth: HFP_HF: Use HF object to replace conn object
Use HF object to replace conn object for callbacks `disconnected`,
`sco_connected`, `service`, `outgoing`, `remote_ringing`, `incoming`,
`incoming_held`, `accept`, `reject`, `terminate`, `call_held`,
`signal`, `roam`, `battery`, `ring_indication`, `dialing`, `clip`,
`vgm`, `vgs`, `inband_ring`, `operator`, `codec_negotiate`, and
`ecnr_turn_off`.

Use HF object to replace conn object for functions `bt_hfp_hf_cli`,
`bt_hfp_hf_vgm`, `bt_hfp_hf_vgs`, `bt_hfp_hf_get_operator`,
`bt_hfp_hf_accept`, `bt_hfp_hf_reject`, `bt_hfp_hf_terminate`,
`bt_hfp_hf_hold_incoming`, `bt_hfp_hf_query_respond_hold_status`,
`bt_hfp_hf_number_call`, `bt_hfp_hf_memory_dial`, `bt_hfp_hf_redial`,
`bt_hfp_hf_audio_connect`, `bt_hfp_hf_select_codec`,
`bt_hfp_hf_set_codecs`, and `bt_hfp_hf_turn_off_ecnr`.

Add a parameter `struct bt_hfp_hf *hf` to callback `connected`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
94de015498 Bluetooth: HFP_AG: Enable 3-way feature
Add a configuration `BT_HFP_AG_3WAY_CALL` to control the feature.

Add a configuration `BT_HFP_AG_MAX_CALLS` to define supported maximum
calls.

Add a structure `struct bt_hfp_ag_call` to manage the call.

Add the call object to callback `outgoing`, and`incoming`.

Use call object to replace AG object for callbacks `incoming_held`,
`ringing`, `accept`, `reject`, and `terminate`.

Add callback `held` to notify the call held status.

Use call object to replace AG object for function
`bt_hfp_ag_hold_incoming`, `bt_hfp_ag_reject`, `bt_hfp_ag_accept`,
`bt_hfp_ag_terminate`, `bt_hfp_ag_remote_ringing`,
`bt_hfp_ag_remote_reject`, `bt_hfp_ag_remote_accept`, and
`bt_hfp_ag_remote_terminate`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
bbc0f1fa57 Bluetooth: HFP_HF: Code clean
Remove useless function `bt_hfp_hf_send_cmd`.
And related callback `cmd_complete_cb`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
17b5aad978 Bluetooth: HFP_AG: Handle AT+CCWA command
Add a flag `BT_HFP_AG_CCWA_ENABLE` to keep the status of `Call Waiting
Notification`.

Set/clear the flag according to the value of received command AT+CCWA.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
c91d0f6239 Bluetooth: HFP_AG: Support Enhanced call status
Add a configuration `CONFIG_BT_HFP_AG_ECS` to enable the supported
feature `Enhanced call status`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
3ac6bfeb4a Bluetooth: HFP_AG: Hold incoming call
Add a flag `BT_HFP_AG_INCOMING_HELD` to identify the incoming call is
held.

Add a function `bt_hfp_ag_hold_incoming` to put the incoming call on
hold.

Add a callback `incoming_held` to notify the application the incoming
is held.

Handle AT command `AT+BTRH=x` to hold/accept/reject the incoming call.

Improve function `bt_hfp_hf_accept` to accept the held incoming call.

Improve function `bt_hfp_hf_reject` to reject the held incoming call.

Improve function `bt_hfp_hf_terminate` to terminate the held incoming
call.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
754bc39b07 Bluetooth: HFP_HF: Hold incoming call
Add a flag `BT_HFP_HF_FLAG_INCOMING_HELD` to identify the incoming call
is held.

Add a function `bt_hfp_hf_hold_incoming` to put the incoming call on
hold.

Handle the response `+BTRH` to get the incoming call status.

Add a callback `incoming_held` to notify the application the incoming
is held.

Remove callback `call_setup`. Add callback `outgoing` for call_setup=1,
`incoming` for call_setup=2, and `remote_ringing` for call_setup=3.

Remove callback `call`. Add callback `accept`, `reject`, `terminate`,
and `incoming_held`.
`accept` is triggered if the call is active.
`reject` is triggered if the incoming/
outgoing is not accepted but call is terminated.
`terminate` is triggered if the accepted is terminated.
`incoming_held` is triggered if the incoming call is held.

Improve function `bt_hfp_hf_accept` to accept the held incoming call.

Improve function `bt_hfp_hf_reject` to reject the held incoming call.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
074b8ae409 Bluetooth: HFP_HF: Turn off AG's EC and NR
Add a configuration `CONFIG_BT_HFP_HF_ECNR` to enable "EC and/or NR
function" of HFP HF.

Add a function `bt_hfp_hf_turn_off_ecnr` to turn off AG's EC and NR.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
ee20fc31a3 Bluetooth: HFP_AG: Handle command AT+NREC=0
Add a configuration to support "EC and/or NR function" of HFP AG.

Add a callback `ecnr_turn_off` to notify the application that "EC and/
or NR function" has been turned off.

Handle AT command AT+NREC=0. Only if the feature enabled, and the
callback `ecnr_turn_off` provided, the result code `OK` will be
responded.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
43d048e695 Bluetooth: HFP_HF: Support last number recalling
Add a function `bt_hfp_hf_redial` to initiate outgoing voice calls by
recalling the last number dialed by the AG.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
aec1f563df Bluetooth: HFP_HF: Support memory dialing
Add a function `bt_hfp_hf_memory_dial` to initiate outgoing voice
calls using the memory dialing feature of the AG.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
8164620378 Bluetooth: HFP_HF: Support phone number calling
Add a function `bt_hfp_hf_number_call` to initiate outgoing voice calls
by providing the destination phone number to the AG.

Add a callback `dialing` to notify the application the result from AG.

Add a flag `BT_HFP_HF_FLAG_DIALING` to make sure there is only one
dialing call at the same time.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
c1a856c1bd Bluetooth: HFP_AG: Add number dialing callback
Add phone number dialing callback if the ATDNnnn AT command is
received from HFP HF.
If the callback is NULL, the ATDNnnn AT command cannot be
supported by the HFP AG.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
d074c6a42b Bluetooth: HFP_HF: Add a function to terminate the call
Add a function `bt_hfp_hf_terminate` to terminate the active call.

Add a flag BT_HFP_HF_FLAG_ACTIVE to identify the call is active. Set
the flag if the call value is 1.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
02bcfad64e Bluetooth: HFP_HF: Add a function to reject the call
Add a function `bt_hfp_hf_reject` to reject the incoming call.

Add a flag BT_HFP_HF_FLAG_INCOMING to identify the incoming call.
Set the flag if the call_setup value is 1.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
28d8dc4376 Bluetooth: HFP_AG: Improve inband ringtone setting
Add a function `bt_hfp_ag_inband_ringtone` to enable/disable inband
ringtone.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
6307172cbb Bluetooth: HFP_HF: Improve codec negotiation
Add the configuration `BT_HFP_HF_CODEC_NEG` to configure the codec
negotiation feature.

Add a configuration `BT_HFP_HF_CODEC_MSBC` to support mSBC codec.

Add a configuration `BT_HFP_HF_CODEC_LC3_SWB` to support LC3 SWB codec.

Add a function `bt_hfp_hf_audio_connect` to trigger audio connection
sequence.

Add a function `bt_hfp_hf_select_codec` to response the codec
negotiation request.

Add a function `bt_hfp_hf_set_codecs` to notify the AG supported Codec
IDs of HF.

Handle unsolicited response `+BCS` sent from AG.

Send supported Codec IDs supported by HF if the SLC is established.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
7f791554a6 Bluetooth: HFP_AG: Improve codec negotiation
Add a configuration BT_HFP_AG_CODEC_NEG to configure the feature.

Add a function bt_hfp_ag_audio_connect to setup the codec negotiation
procedure.

Improve AT+BAC and AT+BCC handle.

Add callback codec_negotiate to notify the application of codec
negotiation result.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
62e652152e Bluetooth: HFP_AG: Improve extended error result codes
Add a configuration BT_HFP_AG_EXT_ERR for this feature.

If the feature is not set, response the ERROR to the peer if the AT
command AT+CMEE received.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
9b3013eee6 Bluetooth: HFP_AG: Add dedicated SDP features definition
Add a dedicated SDP features definition.

Set feature "Three-way calling" by default both in SDP features
definition and AT command features definition. Because it is set
by default in Spec.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
4a82422a66 Bluetooth: HFP_HF: Add a function to accept the call
Add a function `bt_hfp_hf_accept` to accept the incoming call.

Add a flag BT_HFP_HF_FLAG_INCOMING to identify the incoming call.
Set the flag if the call_setup value is 1.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
51c3b193cd Bluetooth: HFP_AG: Support network operator update
Expose a function to set the network operator and mode.

Response the AT+COPS? command with set mode and operator.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
4f74344959 Bluetooth: HHF_HF: Support read network operator
Add function `bt_hfp_hf_get_operator` to read the currently network
operator of AG.

Add callback `operator` to notify the application of the response.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
6a13044649 Bluetooth: HFP_HF: Send AT+VGM and AT+VGS after SLC established
Send AT command AT+VGM and AT+VGS after SLC established.

The `VGM` and `VGS` can be set by calling function `bt_hfp_hf_vgs` and
`bt_hfp_hf_vgs` in HF connection callback.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
be482f9555 Bluetooth: HFP_HF: Optimize initialization after SLC established
Add AT command sending structure to queue all AT commander needed to
be sent after the SLC established.

After the SLC established, send AT command line one by one.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
5e588fe3ad Bluetooth: at: support separator "="
Support separator "=".

If the separator is "=", only when result code is VGS" or "VGM", the
result code is valid.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
525e7b805c Bluetooth: HFP_AG: Support remote audio volume control
Handle AT commands AT+VGM and AT+VGS.

Add function to notify microphone and speaker gain.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
c6d2d0e817 Bluetooth: HFP_HF: Notify in-band ring setting
Handle the unsolicited result code +BSIR issued by the AG to indicate
to the HF that the in-band ring tone setting has been locally changed.

Add a callback `inband_ring` to notify the in-band ring tone setting.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
136bef7b36 Bluetooth: HFP_AG: Improve the call terminate
All set flags are cleared when call is terminated. But for case that
SLC is not disconnected, only call related flags should be cleared.

Just clear call related flags if the call is terminated.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
a5b12043bf Bluetooth: HFP_AG: Change log message to LOG_DBG
It is a debug log message. It should be logged by LOG_DBG instead of
LOG_ERR.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
b5f7fbe3a9 Bluetooth: HFP_AG: Fix AT+CLIP parse issue
The AT command `AT+CLIP=1` or `AT+CLIP=0` cannot be parsed correctly.

Check `=` before get AT command value.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
ee5acfe06c Bluetooth: HFP_HF: Add function to set vgm and vgs
Add function bt_hfp_hf_vgm to configure Gain of Microphone.

Add function bt_hfp_hf_vgs to configure Gain of Speaker.

These functions are controlled by configuration
`CONFIG_BT_HFP_HF_VOLUME`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
ad7fd30ecd Bluetooth: HFP_HF: handle unsolicited result code +VGS/+VGM
Handle the unsolicited result code +VGS and +VGM if the configuration
`CONFIG_BT_HFP_HF_VOLUME` is enabled.

Add a callback `vgm` to notify the application speaker microphone
notification if the configuration `CONFIG_BT_HFP_HF_VOLUME` is enabled.

Add a callback `vgs` to notify the application speaker gain
notification if the configuration `CONFIG_BT_HFP_HF_VOLUME` is enabled.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
c8c4c924dd Bluetooth: HFP_HF: Only send AT+CMEE=1 if AG supports
Only send AT command `AT+CMEE=1` if HFP_AG supports "Extended Error
result code".

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
ee2fddefcf Bluetooth: HFP_HF: Add function bt_hfp_hf_cli
Add tx pending queue to queue call AT commands.

Add a function bt_hfp_hf_cli to enable/disable CLI notification.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
8c61b9cea6 Bluetooth: HFP_HF: Support unsolicited result code +CLIP
Handle the unsolicited result code +CLIP.

Add a callback `clip` to notify the application if the configuration
`CONFIG_BT_HFP_HF_CLI` is enabled.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
e6d42cc37e Bluetooth: BR: at: add function at_get_string
Add a function at_get_string to get the string from the received AT
result code.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Lyle Zhu
db37676b41 Bluetooth: HFP_HF: Improve the feature configuration
Add Kconfig to configure the HF `CLI` and `VOLUME` features.

Add a macro `BT_HFP_HF_SDP_SUPPORTED_FEATURES` for SDP HF record.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-03 06:24:32 +02:00
Jeremy Bettis
29dd0144b7 toolchain: llvm: Use clang's __INTN_C/__UINTN_C macros for clang 20.1+
Use the builtin intn macros for 20.1+, as 20.0 doesn't include them.
20.0 wasn't an official release.

Signed-off-by: Jeremy Bettis <jbettis@google.com>
2025-04-02 18:27:00 -07:00
Pieter De Gendt
b2c37e00fc scripts: ci: compliance: Check .pyi files with ruff
Add pyi stub files to be checked by the ruff CI compliance rule.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-04-03 00:07:03 +02:00
Ibe Van de Veire
d890630e02 drivers: eth: native_tap: Add MAC parameter input from cmd line
Add the ability to set the MAC address from the command line when
running a native sim build.

Signed-off-by: Ibe Van de Veire <ibe.vandeveire@basalte.be>
2025-04-03 00:05:47 +02:00
Ian Morris
8a63970ed3 boards: mikroe: clicker_ra4m1: added mikrobus labels
Added mikrobus_i2c, mikrobus_spi and mikrobus_serial node labels
to device tree board definition, allowing compatible shield boards
to be used. Also added User Button 2 definition and refactored
pinctrl defintions into separate file.

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2025-04-03 00:04:49 +02:00
Sylvio Alves
1ffd731265 west.yml: update hal_espressif repository
Updates common locking mechanism used in internal HAL calls,
mainly targetting Wi-Fi/BLE and REGI2C calls. This improves/fixes
scenarios of nested critical sections calls.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-04-03 00:03:56 +02:00
Sylvio Alves
9857f114f8 linker: esp32: move regi2c_ctrl to iram
This prevents boot lock up due to critical sections
calls during bootloader stage.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-04-03 00:03:56 +02:00
Jilay Pandya
6bfea730b1 doc: migration-guide: 4.2: add migration guide entry for enable
- Add migration guide entry for enable->enable/disable function
- Add stepper_disable to stepper.rst

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-04-03 00:03:29 +02:00
Jilay Pandya
d18f49132c drivers: stepper: refactor enable(dev,flag) to enable & disable
refactoring enable function into enable and disable increasing readability
and increasing coherence with other stepper apis in terms of
nomenclature

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-04-03 00:03:29 +02:00
Bjarki Arge Andreasen
3b4383b61c samples: boards: nordic: add audiopll
Add audiopll to sample.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-04-03 00:03:14 +02:00
Bjarki Arge Andreasen
bfd200bdb4 drivers: clock_control: add nrfs_audiopll clock driver
Add NRFS AudioPLL clock control device driver.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-04-03 00:03:14 +02:00
Bjarki Arge Andreasen
d88fa8dd6c dts: common: nordic: nrf54h20: add audiopll node
Add audiopll node to nrf54h20.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-04-03 00:03:14 +02:00
Bjarki Arge Andreasen
791db47d51 dts: bindings: clock: add nordic,nrfs-audiopll
Introduce Nordic NRFS AudioPLL bindings.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-04-03 00:03:14 +02:00
William Tambe
7c2848486c samples: smp: pi: use K_SEM_DEFINE() for simplicity
This change uses K_SEM_DEFINE() instead of calling k_sem_init()
and having to check for its return value.

It makes the smp pi sample a bit simpler to go through.

Signed-off-by: William Tambe <williamt@cadence.com>
2025-04-02 19:03:22 +02:00
Marcin Szymczyk
5a4f0dcd95 boards: nordic: use JLink device for FLPR on nRF54L15 SoC
JLink now supports custom target for nRF54L15 FLPR.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2025-04-02 19:03:07 +02:00
Hao Luo
8b60fa834c drivers: mfd: Add ambiq iom binding file
This commit adds ambiq iom binding file to consolidate
spi and i2c that share the same IO Master module on
Apollo MCUs

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-04-02 19:02:56 +02:00
Luca Burelli
652ee91b7f llext-edk: fix BOARD_TARGET variable generation to be Zephyr-compatible
The board revision is not part of the NORMALIZED_BOARD_TARGET variable
as composed by Zephyr, so it must also not be used in the EDK exported
value to avoid mismatches. The revision is exported as a separate
variable, so it can still be used to differentiate between board
revisions.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-04-02 19:02:45 +02:00
Raffael Rostagno
fa6a9aef7b drivers: dma: esp32: Update for interrupt allocator
Update driver for unified interrupt allocator (Xtensa/RISCV),
to allow using shared interrupts.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-04-02 19:02:27 +02:00
Raffael Rostagno
4b8dc5f3ff drivers: esp32: Update for shared intc
Drivers update to use shared interrupt allocator for Xtensa
and RISCV devices.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-04-02 19:02:27 +02:00
Raffael Rostagno
034c0cb977 drivers: intc: esp32: Shared allocator for Xtensa and RISCV
Update interrupt allocator to use the same driver for both
Xtensa and RISCV devices.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-04-02 19:02:27 +02:00
Raffael Rostagno
eb606a8e7d soc: esp32: Update IRQ config for shared allocator
Update IRQ handling related files to unify interrupt controller
between Xtensa and RISCV devices.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-04-02 19:02:27 +02:00
Raffael Rostagno
3e8b246618 west.yml: hal_espressif: Update for shared intc
Shared allocator for Xtensa and RISCV

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-04-02 19:02:27 +02:00
Adrien Ricciardi
c53fb67f56 task_wdt: Add suspend and resume API functions
The goal is to be able to use the Task Watchdog on a system that is also
using power management to reach low-power modes. In some low-power modes,
the watchdog channels can't be feed anymore.

The task_wdt_suspend() function allows to prepare the Task Watchdog for
a system low-power mode, in which the hardware watchdog (if enabled) is
also suspended.

The task_wdt_resume() function will reschedule the internal timer that
manages the channels, feed all channels and also the hardware watchdog.
Thus, the application is good to go and has enough time to feed the
channels by itself.

Signed-off-by: Adrien Ricciardi <aricciardi@baylibre.com>
2025-04-02 13:05:14 +02:00
Adrien Ricciardi
6ca9bffe48 task_wdt: Kconfig: Allow to pause the hardware watchdog in sleep
The hardware watchdog optionally used by the Task Watchdog can support
being automatically paused when the system enters a sleep power state.

Add a Kconfig flag to enable such feature.

Signed-off-by: Adrien Ricciardi <aricciardi@baylibre.com>
2025-04-02 13:05:14 +02:00
Fin Maaß
36e830f446 drivers: ethernet: stm32: remove hal api v1 ptp code
Only STM32F1X and STM32F2X are using the hal api v1,
both of these soc don't support ptp, so ptp support
for hal api v1 can be dropped.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-02 13:04:48 +02:00
John Barbero Unenge
64fe9344e1 driver: flash: mcux_flexspi_nor: Fix for is25lpxxxd chips
IS25LPXXXD uses the same jedec-id as IS25LPXXX, but the latter has
an extended read register, similar to IS25WPXXX. This change will
attempt to read the extended read register to determine what the
appropriate initialization value for read register should be.

Signed-off-by: John Barbero Unenge <git@lsrkttn.com>
2025-04-02 13:04:38 +02:00
Seppo Ingalsuo
d457a6a5ef Drivers: DAI: Intel: DMIC: Program start symmetrically for PDMx
This change is assumed to fix the random corruption of 4ch
capture for PDM1 channels 3-4 in PTL platform. There are no
solid facts behind this change but assumption that PDMx
controllers are not in sync if the start sequence for PDM1
is further away from PDM0. The PDM0 internal state may be
different from PDM1

The single for loop to handle the CIC and FIR start sequence
is split into two for loops to handle same registers update
tasks symmetrically for all stereo PDM controllers. E.g. two
PDMs for four microphones.

First loop programs the CIC_CONTROL and MIC_CONTROL registers
of the PDMx controllers. These features belong to the CIC block
in DMIC IP. Second loop programs the FIR_CONTROL registers of
the PDMx controllers.

In a stress test of 100 times repeated commands:

arecord -Dhw:0,6 -fS32_LE -r48000 -c4 -d 10 dmic_test_1.wav; \
sleep 0.5; \
arecord -Dhw:0,6 -fS32_LE -r48000 -c4 -d 10 dmic_test_2.wav; \
sleep 1

The corruption occurrence with xt-clang build was e.g. 87/200
fails in one of wav files giving 43.5% occurrence. The test was
done with Zephyr commit fe29c40a93
("llext: add inspection API test suite").

In a gcc build the occurrence of corruption is lower, around 6%
but it is seen that the channels 3-4 pdm1 are swapping randomly.

With this fix the corruption occurred zero times in xt-clang
and gcc builds with same 100 repeats.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2025-04-02 13:04:32 +02:00
Martin Hoff
cb07e991c2 drivers: serial: silabs: introduce pm for silabs eusart
Make use of pm_device_driver_init to perform driver initialization.
Implement PM suspend and resume, which performs the following actions:

* Enables/disables the USART
* Gates the USART clock
* Configures USART pins

Also take PM locks to prevent deep sleep during TX and RX operations.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-04-02 13:04:19 +02:00
Martin Hoff
cb9c27e7ad tests: driver: uart: add xg23_rb4210a board overlay
Add xg23_rb4210a board overlay to test asynchronous api with eusart
driver

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-04-02 13:04:19 +02:00
Martin Hoff
87141ed455 drivers: serial: silabs: introduce asynchronous silabs eusart
Introduce silabs asynchronous eusart with dma support.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-04-02 13:04:19 +02:00
Martin Hoff
4ec3405d16 drivers: serial: silabs: replace prefix in silabs eusart driver
Replace prefix from "uart_silabs_eusart" to "eusart" in order to
simplify the code, and make it more readable.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-04-02 13:04:19 +02:00
Martin Hoff
a1389541ff drivers: serial: silabs: introduce silabs eusart runtime configure
Introduce runtime configuration API for the silabs eusart driver.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-04-02 13:04:19 +02:00
Martin Hoff
02c8d02565 drivers: serial: silabs: harmonize silabs eusart code with silabs usart
Apply code cleaning done in silabs usart driver to silabs eusart driver.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-04-02 13:04:19 +02:00
Martin Hoff
6fc53a6ed2 drivers: serial: silabs: split init in silabs eusart driver
Split of uart_silabs_eusart_init function to have better visibility of
initialization.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-04-02 13:04:19 +02:00
Martin Hoff
3382b6769d drivers: serial: silabs: correction of silabs eusart code indentation
Apply correct indentation to silabs eusart driver.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-04-02 13:04:19 +02:00
TOKITA Hiroshi
bc70d7e101 boards: arduino: uno_r4: Add PWM mapping
Add an `arduino-header-pwm` node to map the PWM channels.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-02 12:56:06 +02:00
TOKITA Hiroshi
02e9ebfba2 dts: bindings: pwm: Add Arduino PWM nexus mapping
Add `adruino-header-pwm` map node to describe well Arduino PWM
pin configuration.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-02 12:56:06 +02:00
TOKITA Hiroshi
1ebffbdabb include: zephyr: dt-bindings: gpio: Add arduino-header-r3 defines
To make the pin names of the Arduino header easier to understand,
we will introduce a macro definition for the pin names.

We will use this to update the definition of `arduino_uno_r4`.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-04-02 12:56:06 +02:00
Andrej Butok
172811b69c tests: nvs: allow to build & run on real platforms
- Allows to build and run NVS tests on real platforms.
- Enables NVS tests designed for a flash-simulator only when
  built for qemu_x86, mps2_an385 or native_sim targets.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-02 12:55:33 +02:00
Andrej Butok
a12f71d5e5 tests: littlefs: fix test_fs_mkfs_custom littlefs_init_cfg() fail
Fixes the littleFS test_fs_mkfs_custom test fail
in littlefs_init_cfg(): "erase size must be multiple of write size".
It happens for platforms with erase size < 2*write size (e.g. lpc55s).

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-02 12:55:18 +02:00
Andrej Butok
b477a60a9c tests: littlefs: fix false negative test_lfs_basic
Fixes the false negative littlefs.test_lfs_basic test that can occur
if the small_partition size > 64KB, and for
platforms with CONFIG_FS_LITTLEFS_PROG_SIZE > 64 (e.g. lpc55s, mcxn).

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-02 12:55:12 +02:00
Lyle Zhu
bfbe764cb3 Bluetooth: Classic: Check LK before clearing it
After SSP has been completed and before LK event notification, the
link key may be invalid when handling the ACL disconnection event.

Check `conn->br.link_key` before calling the function
`bt_keys_link_key_clear()` to clear it.

Fixes #87880.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-02 12:54:58 +02:00
Etienne Carriere
0103de7b51 drivers: i2c: stm32: support DMA when CONFIG_MEM_ATTR=n
Allow STM32 I2C driver v2 to operate with DMA support even when
CONFIG_MEM_ATTR is disabled which happen when CONFIG_ARM_MPU is
intentionally disabled despite the CPU supports MPU.

By the way, remove a #ifdef directive on header files inclusion
that adds noise in the header file inclusion section without any
benefit.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-04-02 12:54:50 +02:00
Etienne Carriere
bec3a6fc98 drivers: adc: stm32: support DMA when CONFIG_MEM_ATTR=n
Allow STM32 ADC driver to operate with DMA support even when
CONFIG_MEM_ATTR is disabled which happen when CONFIG_ARM_MPU is
intentionally disabled despite the CPU supports MPU.

By the way, remove some #ifdef directive on header files inclusion
that add noise in the header file inclusion section without any
benefit. Also remove inclusion of zephyr/arch/cache.h that is not
needed at all.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-04-02 12:54:50 +02:00
Etienne Carriere
bd92d69b64 drivers: spi: stm32: support DMA when CONFIG_MEM_ATTR=n
Allow STM32 SPI driver to operate with DMA support even when
CONFIG_MEM_ATTR is disabled which happen when CONFIG_ARM_MPU is
intentionally disabled despite the CPU supports MPU.

By the way, remove some #ifdef directive on header files inclusion
that add noise in the header file inclusion section without any
benefit.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-04-02 12:54:50 +02:00
Etienne Carriere
4e37a1bb4b drivers: serial: uart_stm32: support DMA when CONFIG_MEM_ATTR=n
Allow STM32 UART driver to operate with DMA support even when
CONFIG_MEM_ATTR is disabled which happen when CONFIG_ARM_MPU is
intentionally disabled despite the CPU supports MPU.

By the way, remove some #ifdef directive on header files inclusion
that add noise in the header file inclusion section without any
benefit.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-04-02 12:54:50 +02:00
Benjamin Cabé
52d8903123 boards: arduino: add twister file for Portenta rev 4.10
Add ability to target rev 4.10 of the M7 core in Twister

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-02 12:54:36 +02:00
James Roy
ee17657ad3 edtlib: binding: Add a title keyword
Add a 'title' keyword to the binding to provide a short
description of the binding, while 'description' serves as
the long description.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-04-02 12:54:24 +02:00
Charles Hardin
b1775914d6 cmake: mcuboot: refactor the checks for west and the key files
As of c952f09a79 the calls to west
sign were replaced with imgtool but a lingering integration with
WEST_TOPDIR was allowed to remain which is not needed when there
are absolute paths available for the configuration. So, this
attempts to refactor the code to allow a few things

- allow a search of relative paths to application config and
  then west topdir
- only fatal error when a west workspace is needed but not found,
  so if the config is all absolute files then a west workspace is
  not required

Fixes: #86438
Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-04-02 12:53:13 +02:00
Jeppe Odgaard
0dffe7cc7e drivers: dac: Add TI DAC161S997 driver
Initial DAC driver for TI DAC161S997. This is a 1 channel 16 bit
DAC designed for 4-20 mA loops.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-04-02 12:53:03 +02:00
Quang Le
da076a9924 drivers: gpio: Add support for RZ/T2M
Add GPIO driver support for RZ/T2M

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-02 12:52:54 +02:00
Quang Le
9736851528 drivers: interrupt controller: Add support for RZ/T
- Add interrupt controller driver support for RZ/T
- Remove a duplicate USE_RZ_FSP_EXT_IRQ in Kconfig

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-02 12:52:54 +02:00
Hieu Nguyen
70f9b46342 drivers: serial: Add support for RZ/T2M
Add serial driver support for Renesas RZ/T2M

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-02 12:52:54 +02:00
Hieu Nguyen
303376a76b drivers: pinctrl: Add support for RZ/T2M
This is the initial commit to support pinctrl driver for Renesas RZ/T2M
Corrected space in the comment.

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-02 12:52:54 +02:00
Nhut Nguyen
df630d6159 boards: renesas: Maintain the minimal support of board RSK+ RZ/T2M
Renesas takes over the maintainer of board RSK+ RZ/T2M to unify with
other RZ boards

- Rename rzt2m_starter_kit to rzt2m_rsk
- Support xSPI boot mode to boot code from flash
- Change to use HAL Renesas

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-02 12:52:54 +02:00
Nhut Nguyen
4c8b47effd MAINTAINERS: Remove an invalid path of RZ Platforms
Since the folder soc/renesas/rzt2m has been moved into soc/renesas/rz
to unify with other RZ devices, so the path soc/renesas/rzt2m must be
removed to pass pipeline.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-02 12:52:54 +02:00
Hieu Nguyen
f961578b7d soc: renesas: Maintain the minimal support of Renesas RZ/T2M
Renesas takes over the maintainer of SoC Renesas RZ/T2M to unify with
other RZ devices

- Move soc/renesas/rzt2m to soc/renesas/rz
- Support xSPI boot mode to boot code from flash
- Change to use HAL Renesas

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-04-02 12:52:54 +02:00
Arnaud Pouliquen
0f852c82f0 west.yml: Update libmetal and open-amp cmake minimum version to 3.16
Update the OpenAMP libraries to the latest commits to support CMake 3.16
as the minimum version.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-04-02 10:37:44 +02:00
Johann Fischer
ec851ba7c7 usb: device_next: avoid false error logging in CDC ACM
The interface descriptor and its associated string descriptor are shared
between different speed configurations. Do not try to add a string
descriptor if it has already been added and the index is not zero.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-02 10:32:25 +02:00
Mahesh Mahadevan
53c3f342b2 boards: rd_rw612_bga: Add power init code for PM3 support
1. Add the power init code.
2. Add code to support Low Power Mode support from the RTC
   1HZ clock.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-04-02 10:31:47 +02:00
Mahesh Mahadevan
5dda6506ce boards: frdm_rw612: Add power init code for PM3 support
1. Add the power init code.
2. Add code to support Low Power Mode support from the RTC
1HZ clock.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-04-02 10:31:47 +02:00
Fin Maaß
abb1076d23 doc: update migration guide for stm32 ethernet driver
update migration guide for changes of the
stm32 ethernet driver.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-02 10:31:34 +02:00
Fin Maaß
116069d8ec drivers: mdio: stm32: set mdio clock for v1 api
unfortunatly HAL_ETH_SetMDIOClockRange() isn't available
in the V1 API, so I had to copy the parts from the hal.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-02 10:31:34 +02:00
Fin Maaß
1097785c4c drivers: mdio: stm32: make driver more independent
make stm32 mdio driver more independent

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-02 10:31:34 +02:00
Fin Maaß
a806ddf488 drivers: ethernet: stm32: remove internal phy code
rewirte code and remove code that use internal phy functions.
A few Kconfig options got removed, that are now set by the
phy via the DT.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-02 10:31:34 +02:00
Fin Maaß
0f636ec2fa drivers: ethernet: mdio: stm32: move stmmaceth clock to parent
move stmmaceth clock to parent, so it can also be
used by mdio and rename it to ``stm-eth``.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-02 10:31:34 +02:00
Fin Maaß
d139d84338 drivers: ethernet: stm32: make mac a child like the mdio node
mac and mdio are now on the same level, this way
phy-handle can be used.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-02 10:31:34 +02:00
Fin Maaß
d74d0f7ac7 boards: dts: stm32: add mdio and phy node
add mdio and phy node to every stm32board that
supports ethernet.
Also set the phy-handle for every ethernet mac.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-02 10:31:34 +02:00
Fin Maaß
3a19dddfe7 drivers: mdio: stm32: remove unused functions
The api takes care, if the mdio bus_enable and bus_disable
are not needed, so there is no need to have tis in the driver.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-02 10:31:34 +02:00
Fin Maaß
dffb356278 drivers: mdio: stm32: add mdio for legacy api
add mdio for legacy stm32 api

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-04-02 10:31:34 +02:00
Mohith Potluri
c1edfbcf4b drivers: reset: Add generic reset MMIO driver
Introduce a generic reset MMIO driver to be used for devices with a
single memory mapped reset bit required to take them out of reset.

Signed-off-by: Mohith Potluri <saimohith@google.com>
2025-04-02 10:31:12 +02:00
Marek Maškarinec
bc4d040e0d drivers: can_mcp251xfd: Add XSTBY option
Adds ability to enable the XSTBY functionality on GPIO0 pin, if enabled
in devicetree.

Signed-off-by: Marek Maškarinec <marek.maskarinec@hardwario.com>
2025-04-02 10:30:59 +02:00
Yishai Jaffe
010d33c239 cfb: typo fixes
Fixed CFB_DISPLAY_HEIGH typo to CFB_DISPLAY_HEIGHT.
Fixed widht typo to width.
Fixed "cfb draw point" shell command's help message to "<x> <y>" instead
of "<x> <y0>".

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-04-02 10:30:50 +02:00
Yishai Jaffe
de9dd989f8 cfb: clear display on init correctly
If the display is MONO01 and invert=false or display is MONO10 and
invert=true the nthe special logic is needed.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-04-02 10:30:50 +02:00
Yishai Jaffe
5119330549 cfb: support text draw for non-vtiled displays
Added support to draw text on non-vtiled displays

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-04-02 10:30:45 +02:00
Jukka Rissanen
db098f5ae8 samples: net: common: Check that tunnel config options are valid
Make sure that we have always a default value for tunnel peer and
local addresses.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-02 10:29:29 +02:00
Jukka Rissanen
43acb93607 net: shell: iface: Do not print DHCPv6 detail info if disabled
No point printing detailed DHCPv6 information if client support
is disabled.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-02 05:30:32 +02:00
Jukka Rissanen
5e17f40178 net: shell: iface: Do not print DHCPv4 detail info if disabled
No point printing detailed DHCPv4 information if client support
is disabled.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-02 05:30:32 +02:00
Josuah Demangeon
5e799193fc drivers: video: gc2145: Add Chip ID 0x2145
The Chip ID field of the GC2145 was assumed to be 0x2155, but sensors
with Chip ID 0x2145 are still present. Rework how chip IDs verification
is done slightly and add support for both.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-04-02 05:30:19 +02:00
Jukka Rissanen
8d94245152 samples: net: echo-server: Refactor tunnel support
Move the common tunnel setup code to samples/net/common directory
so that other network samples can utilize that too.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-04-02 05:29:57 +02:00
Hubert Miś
502982bf03 drv: ft8xx: extend single-letter function argument names
Replace single-letter function argument names in the FT8xx coprocessor
API with full names of the arguments for better code clarity.

The arguments in the ft8xx_reference_api.h are left as single-ltters to
keep the same function declarations as described in the FT8xx
programming guides.

Signed-off-by: Hubert Miś <hubert.mis@gmail.com>
2025-04-02 05:29:46 +02:00
Jordan Yates
784f64650b serial: stm32: unconditional policy locks for async TX
When using the asynchronous TX API, skip the `data->pm_policy_state_on`
checks for PM policy updates. This fixes two issues:
 * State conflicts with the `poll_out` implementation when both APIs are
   used on the same port, resulting in the SoC sleeping while
   transmissions are running.
 * Scheduling a TX from the `TX_DONE` callback resulting in the PM
   policy not being applied, resulting in TX errors.

Every call to `uart_tx` should have a corresponding `TX_DONE` event
generated, which makes the raw (reference counted) calls to
`pm_policy_state_lock_put/get` the correct API to use here.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-02 05:29:36 +02:00
Luis Ubieda
662b75b32a tests: pat9136: Add node to Build-All test
Enabled for basic functionality.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-02 05:29:23 +02:00
Luis Ubieda
c1e75b6c3b sensor: pat9136: Add cooldown timer
This sensor may trigger data at a very fast pace (20,000 fps) and this
may not be useful for the application. Instead, it may affect its
proper functioning. Therefore, this patch includes a cool-down timer
before which time the INT line won't be enabled.

Please note that this sensor accumulates the delta compared to the
last reading, so on its own, not reading data-changes does not imply
losing data, as long as it does not saturate.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-02 05:29:23 +02:00
Luis Ubieda
382fa5d085 sensor: pat9136: Add Streaming mode
Working with DRDY and Motion triggers.
DRDY contains a backup software timer to guarantee checking in with
the sensor.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-02 05:29:23 +02:00
Luis Ubieda
9df68a4c48 sensor: pat9136: Add basic functionality
- Basic support with Read/Decode API for one-shot reads.
- Supported channels:
    - SENSOR_CHAN_POS_DX.
    - SENSOR_CHAN_POS_DY.
    - SENSOR_CHAN_POS_DXYZ.
    - SENSOR_CHAN_POS_DX_MM (private channel).
    - SENSOR_CHAN_POS_DY_MM (private channel).
    - SENSOR_CHAN_POS_DXYZ_MM (private channel).

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-04-02 05:29:23 +02:00
Peggy Chen
9faa7b07ff drivers: sensor: bma4xx: Implement streaming APIs
Add a streaming implementation for the BMA4XX using both
FIFO watermark and FIFO full interrupts. A batch duration of
3,000 have been used for verification.

Signed-off-by: Peggy Chen <peggy.chen@cienet.com>
2025-04-02 05:29:11 +02:00
Peggy Chen
2dff22b0c7 drivers: sensor: bma4xx: Enable and resolve issues with emulator
Enable the sensor emulator and address related issues
to ensure proper functionality.

Signed-off-by: Peggy Chen <peggy.chen@cienet.com>
2025-04-02 05:29:11 +02:00
Peggy Chen
26af8a4b7a drivers: sensor: bma4xx: Refactor submit logic into separate files
Refactor the sensor submit logic into individual files
to enhance maintainability and readability.

Signed-off-by: Peggy Chen <peggy.chen@cienet.com>
2025-04-02 05:29:11 +02:00
Peggy Chen
feb65f6ce1 drivers: sensor: bma4xx: Refactor decoder into separate files
Refactor the sensor decoder code into individual files for
improved maintainability and readability.

Signed-off-by: Peggy Chen <peggy.chen@cienet.com>
2025-04-02 05:29:11 +02:00
Peggy Chen
67e688ee3e drivers: sensor: bma4xx: Update config to use bma4xx_safely_configure
Updated the sensor configuration to use the bma4xx_safely_configure
function for safer and more reliable initialization.

Signed-off-by: Peggy Chen <peggy.chen@cienet.com>
2025-04-02 05:29:11 +02:00
Peggy Chen
551027c5aa drivers: sensor: bma4xx: Split off bma4xx_defs.h
Added register definitions, bit masks, and related constants
for the BMA4XX sensor in a separate header file.

Signed-off-by: Peggy Chen <peggy.chen@cienet.com>
2025-04-02 05:29:11 +02:00
Lyle Zhu
f9e8ecae26 Bluetooth: Classic: shell: Add command bonds
Add shell command `bonds` to list all the bonding information of
classic.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-01 22:18:40 +02:00
Lyle Zhu
8d819954e8 Bluetooth: Classic: Refactor query and deletion of bonding information
In current implementation, the bonding information of classic is
queried by calling the function `bt_foreach_bond()`. And the bonding
information of classic is deleted by calling `bt_unpair()`.

There are two issues if the LE and classic are bonded at same time for
dual mode peer device.
Issue 1, for the function `bt_foreach_bond()`, there are two bonding
information will be found. But there is no way to find which bonding
information belongs to LE or classic.
Issue 2, For the function `bt_unpair()`, all bonding information will
be deleted if the passed address is the public address. But there is
no way to delete the bonding information of LE or classic.

Remove the calling of function `bt_foreach_bond_br()` from the
function `bt_foreach_bond()`. And rename it to `bt_br_foreach_bond()`,
and public it as an API to query the bonding information of classic.

Remove the calling of function `bt_keys_link_key_clear_addr()` from
the function `bt_unpair()`. Add an API `bt_br_unpair()` to delete the
bonding information of classic.

Add a `br_bond_deleted` to structure `bt_conn_auth_info_cb` for
classic. The callback will be triggered if the bonding information has
been deleted by the function `bt_br_unpair()`.

Add a `clear` shell command for classic to delete the bonding
information.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-01 22:18:40 +02:00
Vixay Phimmasane
607f68daaa dts: arm: st: add stm32l071X8 & stm32l071Xz dtsi files
add STM32L071 dtsi files for the 64Kb and 192Kb version

Signed-off-by: Vixay Phimmasane <visuphi@gmail.com>
2025-04-01 22:15:23 +02:00
Camille BAUD
4b9aa72ebc boards: wch: update linkW documentation
Removed somewhat duplicated section and replace supported features
table with new automatic table.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-04-01 22:15:13 +02:00
Patrik Sieverding
3eb6016e74 drivers: i2c: add function to check if an I2C_IODEV is ready
The i2c driver is missing the option to check if a I2C_IODEV is ready for
use. The proposed function works the same as the check for a SPI_IODDEV
to keep the use consistent across different bus systems.

Signed-off-by: Patrik Sieverding <sieverdp@uni-bremen.de>
2025-04-01 22:14:59 +02:00
Krzysztof Chruściński
02644b28e3 soc: nordic: nrf54: Indicate presence of DWT
ARM Cortex-M33 cores in nrf54h20 and nrf54l series have DWT.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-01 22:14:44 +02:00
Dimitrije Lilic
c0e5e5236f drivers: adc: ad405x: Add diff support and res used form adc spec
Added support for differentail or single ended setup.
Reading resolution form dt - adc spec.

Signed-off-by: Dimitrije Lilic <dimitrije.lilic@orioninc.com>
2025-04-01 22:14:31 +02:00
Lyle Zhu
18beac9c57 Bluetooth: Classic: L2CAP: Support L2CAP_COMMAND_REJECT_RSP
In current implementation, when receiving the L2CAP frame
`L2CAP_COMMAND_REJECT_RSP` if the L2CAP is working as client role, the
L2CAP frame `L2CAP_COMMAND_REJECT_RSP` will be sent by the L2CAP
client incorrectly.

When the command response `L2CAP_COMMAND_REJECT_RSP` is received, find
the channel of the command request according to the received `ident`.
If the channel is found, try to disconnect the channel. If fail to
disconnect the channel, remove and delete the channel.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-01 22:14:15 +02:00
Lyle Zhu
384e31977f Bluetooth: Classic: L2CAP: Discard the response with a invalid ident
In current implementation, the `ident` of the command response is not
checked whether it is same as the `ident` sent by the L2CAP command.

Keep the `ident` of the command. If the received `ident` of the
command response is not aligned with the `ident` of the command,
discard the response silently. Or, clear the saved `ident`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-04-01 22:14:15 +02:00
Troels Nilsson
a3b8954ae9 Bluetooth: Controller: Fix assert when flushing multiple CISes
If more than one CIS in the same CIG was shutdown at the same time
(e.g. due to supervision timeout), the mayfly calling cis_tx_lll_flush
would be busy and the assert would be triggered

cis_tx_lll_flush now operates similar to cis_disabled_cb; Loop through
all CISes for a CIG and flush any marked as LLL_CIS_FLUSH_PENDING

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-04-01 22:14:03 +02:00
Patrick Harböck
a7432a1e64 samples: sensor: add esp32c6 board to die_temp_polling
Add board overlay to test internal temperature sensor with esp32c6.

Signed-off-by: Patrick Harböck <patrick.harboeck@tngtech.com>
2025-04-01 22:13:50 +02:00
Patrick Harböck
a67eefd43e drivers: sensor: esp32c6 internal temperature sensor
Support for esp32c6 internal temperature sensor on Zephyr.

Signed-off-by: Patrick Harböck <patrick.harboeck@tngtech.com>
2025-04-01 22:13:50 +02:00
Patrick Harböck
5861cf71bf manifest: esp32: update hal_espressif
Update to support latest features.

Signed-off-by: Patrick Harböck <patrick.harboeck@tngtech.com>
2025-04-01 22:13:50 +02:00
Andrzej Puzdrowski
eab304f0db mcumgr/img_mgmt: Allow erase pending image by default
Allows erasing secondary slot which is marked for test or confirmed.
This is safe as bootloader doesn't make any action on boot-setup yet.

Erase of such pending image might considered like the case when it
was never downloaded as well.

This allow user to not stuck with pending irremovable image.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2025-04-01 22:13:20 +02:00
Nicolas Pitre
11021cdd4f kernel: sys_heap: decouple realloc from aligned_realloc
When sys_heap_realloc() is expressed in terms of sys_heap_aligned_realloc()
it invokes a longer aligned allocation code path with an extra runtime
overhead even though no alignment is necessary.

Let's reference and invoke the aligned allocation code path only when an
actual aligned allocation is requested. This opens the possibility for
the linker to garbage-collect the aligning code otherwise.

Improve realloc documentation while at it.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-04-01 22:13:04 +02:00
Nicolas Pitre
457fa60bfc kernel: mempool: decouple simple alloc from aligned_alloc
When k_malloc() is expressed in terms of k_aligned_alloc() it invokes a
longer aligned allocation code path with an extra runtime overhead even
though no alignment is necessary.

Let's reference and invoke the aligned allocation code path only when an
actual aligned allocation is requested. This opens the possibility for
the linker to garbage-collect the aligning code otherwise.

Also bypass k_heap_malloc() and friends given they're invoked with
K_NO_WAIT. Go directly to sys_heap_*() instead to cut some more unneeded
overhead.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-04-01 22:13:04 +02:00
Nicolas Pitre
7c9f464b70 kernel: kheap: workaround for Percepio's TraceRecorder kludge
In .../modules/debug/percepio/TraceRecorder/kernelports/Zephyr/include/\
tracing_tracerecorder.h there is a concealed non-parameterized direct
reference to a local variable that is no longer in scope. Provide a dummy
stub for compilation to succeed until that module's layering violation is
fixed, after which this could be reverted.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-04-01 22:13:04 +02:00
Nicolas Pitre
9da06456f2 kernel: kheap: decouple simple alloc from aligned_alloc
When k_heap_alloc() is expressed in terms of k_heap_aligned_alloc()
it invokes a longer aligned allocation code path with an extra runtime
overhead even though no alignment is necessary.

Let's reference and invoke the aligned allocation code path only when an
actual aligned allocation is requested. This opens the possibility for
the linker to garbage-collect the aligning code otherwise.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-04-01 22:13:04 +02:00
Nicolas Pitre
31244724a2 kernel: k_aligned_alloc: simplify assertion
Let's avoid division and modulus operations as they're costly... and even
more so when they're unnecessary as in this case the main constraint is
about the alignment being a power of 2 which is a very small subset of
sizeof(void *) multiples.

Then move the assertion to common code for wider coverage.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-04-01 22:13:04 +02:00
Nicolas Pitre
ea7a969204 tests: benchmarks: sys_kernel: add k_malloc() test
Useful to evaluate malloc performance changes.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-04-01 22:13:04 +02:00
Manimaran A
810f549ed4 drivers: eSPI: microchip: Port80 Multibyte
Updated ISR to send multibyte p80 data

Signed-off-by: Manimaran A <manimaran.a@microchip.com>
2025-04-01 22:12:28 +02:00
Dipak Shetty
033679b5d3 samples: sensor: light: add everlight light sensor
Sample extended to support the everlight light sensor on the
frdm_mcxw71 board.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-04-01 22:12:13 +02:00
Dipak Shetty
66966f7211 samples: sensor: light: refactor into generic light polling sample
Moved the grove light sensor into a generic light sensor sample.
Replaced board specific node name for light sensor with an alias.
Refactored project name to reflect generic light sensor.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-04-01 22:12:13 +02:00
Dipak Shetty
eb0050f7c9 drivers: sensor: add everlight light sensor
Adds driver for Everlight ALS-PT19 Ambient Light Sensor.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-04-01 22:12:13 +02:00
Dipak Shetty
8f789f81c3 dts: bindings: sensor: add everlight ambient light sensor binding
Added new binding for Everlight ALS-PT19 Ambient Light Sensor.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-04-01 22:12:13 +02:00
Konrad Sikora
c099a01760 drivers: sensor: liteon: Move to vendor subdirectory
Organizes liteon sensor drivers by vendor to make consistent
with other drivers.

Signed-off-by: Konrad Sikora <kontakt@konradsikora.pl>
2025-04-01 22:12:01 +02:00
Konrad Sikora
8ad2cac1b5 drivers: sensor: Add support for LTR329 sensor
Add support for Liteon LTR329 Digital Ambient Light Sensor

Signed-off-by: Konrad Sikora <kontakt@konradsikora.pl>
2025-04-01 22:12:01 +02:00
Konrad Sikora
85e9cef24e drivers: sensor: Change vendor prefix from 'ltr' to 'liteon'
The vendor prefix has been changed from 'ltr' to 'liteon'.
This change is made to better reflect the actual name of
the vendor, which is LiteOn. The previous prefix 'ltr'
was referring to the LiteOn Optical Sensor family, which
could lead to misunderstandings.

Signed-off-by: Konrad Sikora <kontakt@konradsikora.pl>
2025-04-01 22:12:01 +02:00
Nikodem Kastelik
c3646a34fd soc: nordic: add option for forcing RAM power on reboot
RAM power configuration is preserved through soft reset,
meaning that there is a risk of accessing powered off RAM blocks
when booting in different application (i.e. bootloader).
Add option to force all RAM blocks to be powered on
before triggering soft reset to prevent this from happening.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-04-01 16:28:08 +02:00
Johan Hedberg
39c2605930 Bluetooth: Fix deadlock with settings and bt_hci_cmd_send_sync()
We can't do synchronous HCI command sending in any settings commit()
callback, since we don't know what context the callback is being called
from. One particular deadlock can happen if settings_load() is called from
the preemptible main thread:

main()
 |--> settings_load() (aquire settings_lock mutex)
       |-->commit callback A that defers to system wq
       |-->commit callback B that calls bt_hci_cmd_send_sync()

system wq from the previous deferral from within settings_load():
 |--> work item
       |--> settings_save_one()
             |--> attempt to aquire settings_lock mutex

In the above scenario, the bt_hci_cmd_send_sync() call from the main thread
depends on the system workqueue being processed (since that's what does HCI
command processing by default), while at the same time holding the settings
subsystem's mutex. At the same time, a system wq item tries to store
something into settings, however it deadlocks waiting for the settings
mutex.

The actual scenario that we have in the Bluetooth subsystem is where
"commit callback A" is commit_settings() in host/settings.c, and "commit
callback B" is keys_commit() in host/keys.c.

The solution to the deadlock is to take advantage of deferred bt_id_add()
handling which already exists, i.e. set a flag and deferre the actual
adding to the system workqueue.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-04-01 16:28:00 +02:00
Yassine El Aissaoui
58ea18ed75 bluetooth: hci_nxp: disallow standby usage while sending HCI MSG
Sending an HCI message requires to wake up the controller
core if it's asleep. Platform controllers may send responses using
non wakeable interrupts and those can be lost during standby usage.
Blocking standby usage until the HCI message is sent.

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-04-01 16:27:50 +02:00
Robert Lubos
7fbdc6d734 net: lib: mqtt: Add extra MQTT 5.0 ifdefs to prevent compile errors
Add some extra ifdefs around MQTT 5.0 specific structures to prevent
compiler errors due to undefined symbols in certain configurations.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-01 16:27:41 +02:00
Jonathan Nilsen
8e1f27a9fd modules: hal_nordic: bump regtool to 9.0.0
Added support for VPR GPIOs and a more concise output print.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-04-01 16:27:04 +02:00
Ryan Chu
9ba60d3eb7 bluetooth: host: Apply callback changes of CS complete events
The CS complete callbacks provide both status and params.
In the case of errors, NULL pointer is passed to the params of callbacks.

Signed-off-by: Ryan Chu <ryan.chu@nordicsemi.no>
2025-04-01 16:26:58 +02:00
Ryan Chu
c9240cc99f bluetooth: host: Report status of Channel Sounding complete events
If the HCI status of a complete event is not BT_HCI_ERR_SUCCESS,
the remaining parameters could be invalid.

In this case, the params is passed as NULL pointer to the callbacks.
- LE CS Read Remote Supported Capabilities Complete event
- LE CS Read Remote FAE Table Complete event
- LE CS Config Complete event
- LE CS Security Enable Complete event
- LE CS Procedure Enable Complete event

This change avoids forwarding the invalid fileds to the applications.

Signed-off-by: Ryan Chu <ryan.chu@nordicsemi.no>
2025-04-01 16:26:58 +02:00
Krzysztof Chruściński
aaeb015ec4 logging: frontends: stmesp: Fix sending string location
String location information should only be sent for core which
do not append strings to the log message (PPR, FLPR). Without
this, cpurad was also sending that information and that was
redundant.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-01 16:26:50 +02:00
Krzysztof Chruściński
c8d7d577a6 logging: frontend_stmesp: Fix string addresses from remote core
When decoding logs from a remote core with memory that APP can
access, wrong address of an array with string addresses was used.
Log message contains index of a string and APP strings array was
used instead of remote core. Extend STMESP logging so that address
of string array of a remote core is send during startup to the APP
and APP is using this array to decode strings from remote cores.
Bug applies only to PPR and FLPR as APP has no access to RAD memory.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-04-01 16:26:50 +02:00
Ryan McClelland
19c2c33be6 tests: drivers: spi: add build all for cadence spi
As there is no currently known board that has the cadence spi,
add a test to just build it under the qemu cortex m3.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-01 16:26:38 +02:00
Ryan McClelland
8c5c74cc97 drivers: spi: add cadence spi driver
This provides a driver for the cadence spi.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-04-01 16:26:38 +02:00
Benjamin Cabé
9abfc8301a doc: nxp: adopt zephyr:board-supported-hw directive
Replace manually authored hardware features table with the new Zephyr
board supported hardware directive which automatically generates an
up-to-date table based on the boards' Devicetree.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-01 16:26:30 +02:00
Anas Nashif
f61c94bb1b ci: codecov: remove bsim step from workflow
This is not needed for this specific workflow. We do not do anything
with bsim here.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-01 16:26:22 +02:00
Anas Nashif
4d2ddf06c1 ci: codecov: install pinned python environment
Need gcovr for coverage generation.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-01 16:26:22 +02:00
Anas Nashif
1823c394c3 actions: update requirements-actions.in
pin gcovr to 6.0

See #87899

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-01 16:26:22 +02:00
Sudan Landge
d4d09225ca arch: arm: fix ci failure
This is to fix ci failure caused by commit d5d4d57

In the above commit, it's wrongly assumed that ROM_ADDR and RAM_ADDR
are same **only** when CONFIG_XIP is not defined.
Since aarch64 was taken as reference in the review,
we missed to see that CONFIG_FLASH_SIZE is also part of the condition
to define ROM_ADDR as RAM_ADDR.
CONFIG_XIP is not defined for qemu_cortex_a9/xc7z007s however,
CONFIG_FLASH_SIZE is not 0 so the assumption fails
and the required reset to RAM_ADDR is not applied leading to the test
failure.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-04-01 16:26:12 +02:00
Cla Mattia Galliard
f3a3ad308c thread_analyzer: Allow to override the auto-analysis thread priority
By default the thread priority is still the lowest application thread
priority. Allow the priority to be increase by specifying both, the
`override` option as well as the desired `priority`. This pattern was taken
from the shell thread.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-04-01 11:59:39 +02:00
Armando Visconti
48f7fcd2f0 samples/sensor: stream_fifo: initialize gbias
Add an example of how to initialize gbias. The real application should
restore latest valid values taken from non-volatile memory.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-04-01 11:59:31 +02:00
Armando Visconti
cc9b93d50c sensor: lsm6dsv16x: sensor GBIAS initialization
Use SENSOR_ATTR_OFFSET attribute to initialize the Sensor Fusion GBIAS.
This is useful when the device is not sill (e.g. hold in hand) and so
the gyroscope calibration does not run.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-04-01 11:59:31 +02:00
Armando Visconti
9a8ecf0c0c sensor: lsm6dsv16x: fix place where gyro_freq get set
Move gyro_freq setting inside lsm6dsv16x_gyro_set_odr_raw() routine,
so that it is properly saved in all cases (i.e. from DT configuration
and from runtime ATTR set case).

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-04-01 11:59:31 +02:00
Håkon Amundsen
1fac1b917f boards: nordic: add 'iron' board variant
This is needed for next generation Secure Domain firmware.

Signed-off-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
2025-04-01 11:54:30 +02:00
Tom Hughes
785e36520f tests: subsys: usb: bos: Remove dummy_descriptor struct
When building with clang, it warns:

tests/subsys/usb/bos/src/test_bos.c:24:22: error: variable
'dummy_descriptor' is not needed and will not be emitted
[-Werror,-Wunneeded-internal-declaration]
static const uint8_t dummy_descriptor[] = {
                     ^

Only the size of dummy_descriptor is used, not the contents. Replace the
struct with a constant for the size.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-04-01 11:54:20 +02:00
Jack Chistyakov
dd6adc7cad net: virtual: Clear multicast bit when generating link address
The least significant bit of the first octet of a MAC address is a
unicast/multicast bit. The bit should be cleared when generating a
random link address for a virtual interface. Any frames from such
interface/address will be dropped by the network as invalid if
the multicast bit is set.

Signed-off-by: Jack Chistyakov <jack.chistyakov@outlook.com>
2025-04-01 11:53:02 +02:00
Andrej Butok
efbe756b62 tests: ext2: reduce ram disk size for small.overlay
- Reduces the ram disc sector count from 400 to 220.
- Saves about 90KB of RAM. All tests still passed.
- Allows platforms with less RAM to run
  the ramdisc_small.overlay test.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-04-01 11:52:34 +02:00
Adam Kondraciuk
eb8ab0a937 modules: hal_nordic: nrfx: switch off auto clksel for GRTC
Disable automatic LFCLK selection for GRTC during driver initialization.
For Zephyr applications it is selected by `sys_clock_driver_init()`
depending on configuration and DTS.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-04-01 11:52:26 +02:00
Adam Kondraciuk
042c5c6252 drivers: timer: nrf_grtc_timer: Move up GRTC clock selection
Selection of the LF clock source for the GRTC should be performed
as early as possible, before starting GRTC.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-04-01 11:52:26 +02:00
Tim Wang
25fcfff154 soc: mimxrt1180: Add USB Device support
This was tested on the MIMXRT1180 EVK board

Signed-off-by: Tim Wang <tim.wang@nxp.com>
2025-04-01 11:52:09 +02:00
Benjamin Cabé
daacc8c297 samples: net: wifi: remove redundant options from esp32 conf overlays
A lot of the config options are already set in the prj.conf.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-01 11:51:59 +02:00
Björn Bergman
98ac4becab iar: toolchain: Enable TOOLCHAIN_HAS_BUILTIN_FFS
icc has support for __builtin_ffs() and its friends,
but it was disabled in the toolchain files.

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-04-01 11:51:41 +02:00
Declan Snyder
2eb8cfb7f5 tests: spi_loopback: Fix synchronization mistakes
There are a couple things going wrong in this test code right now.

First of all, there is no syncrhonization of when the async polling
thread should start polling, causing sometimes the poll to fail on tests
before the async test ran. Add a semaphore to fix this.

The lock test was setting up a nonsense NOP transfer of 0 length.
This might cause unexpected behavior and is not the point of
this test case.
But, still we should add a seperate test case specifically for
testing this instead.

Also add a teardown function to release the locks to allow other test
cases to run in case of some failures.

Also a minor change to remove some ARG_UNUSED invocations for some
arguments that are actually used.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-04-01 04:15:31 +02:00
Hakan Jansson
f107dad6e9 west: runners: openocd: Fix version format regression
Change OpenOCD version regex to be compatible again with format strings
not having a space or newline immediately after the version nr.

Modified regex has been verified with the strings listed below.

Ubuntu:
"Open On-Chip Debugger 0.11.0"

ADI:
"Open On-Chip Debugger (Analog Devices 0.12.0-1.1.1)  OpenOCD 0.12.0 (2024-
08-27-17:25)"

Zephyr SDK:
"Open On-Chip Debugger 0.11.0+dev-00728-gb6f95a16c (2024-02-17-23:51)"

Infineon:
"Open On-Chip Debugger 0.12.0+dev-5.2.1.3248 (2024-08-08-17:29)"

Espressif:
"Open On-Chip Debugger v0.12.0-esp32-20240318 (2024-03-18-18:25)"

Fixes: 1c05f2121c

Signed-off-by: Hakan Jansson <hakan.jansson@infineon.com>
2025-04-01 04:14:58 +02:00
James Turton
cd9bcd8b0d dts: rp2350: Fix USB controller base address
Fix USB controller base address.
rp2040 was fixed in a10f2e8 and the rp2350 uses the same base address.

Signed-off-by: James Turton <james.turton@gmx.com>
2025-04-01 04:14:41 +02:00
Scott Worley
9c1cebdb70 manifest: microchip: Update Microchip HAL to latest MEC5 changes
We updated the MEC5 portion of hal_microchip. Update Zephyr west
manifest to use the updated HAL.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-04-01 04:14:26 +02:00
Khoa Nguyen
37c5ac4bce drivers: flash: Update api for migration of FSP to 5.8.0
Update api of Renesas flash-hp driver when FSP has been
migrated from version 5.3.0 to 5.8.0

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-04-01 04:14:14 +02:00
Khoa Nguyen
4cbf568f5e drivers: mipi_dsi: Update api for migration of FSP to 5.8.0
Update api of Renesas mipi_dsi driver when FSP has been
migrated from version 5.3.0 to 5.8.0

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-04-01 04:14:14 +02:00
Khoa Nguyen
3f0ce27cfc manifest: Update hal_renesas revision to migrate FSP 5.8.0
Update hal_renesas revision to migrate FSP 5.8.0

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-04-01 04:14:14 +02:00
Benjamin Cabé
6f4bb7ef62 ci: github: bump the actions-deps group across 1 directory with 8 updates
Bumps the actions-deps group with 8 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [actions/checkout](https://github.com/actions/checkout) | `4.1.7` | `4.2.2` |
| [actions/setup-python](https://github.com/actions/setup-python) | `5.4.0` | `5.5.0` |
| [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) | `8` | `9` |
| [tj-actions/changed-files](https://github.com/tj-actions/changed-files) | `46.0.1` | `46.0.3` |
| [actions/upload-artifact](https://github.com/actions/upload-artifact) | `4.3.5` | `4.6.2` |
| [actions/download-artifact](https://github.com/actions/download-artifact) | `4.1.9` | `4.2.1` |
| [github/codeql-action](https://github.com/github/codeql-action) | `3.28.11` | `3.28.13` |
| [zgosalvez/github-actions-ensure-sha-pinned-actions](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions) | `3.0.22` | `3.0.23` |

Updates `actions/checkout` from 4.1.7 to 4.2.2
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4.1.7...11bd71901bbe5b1630ceea73d27597364c9af683)

Updates `actions/setup-python` from 5.4.0 to 5.5.0
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](42375524e2...8d9ed9ac5c)

Updates `dawidd6/action-download-artifact` from 8 to 9
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](20319c5641...07ab29fd4a)

Updates `tj-actions/changed-files` from 46.0.1 to 46.0.3
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](2f7c5bfce2...823fcebdb3)

Updates `actions/upload-artifact` from 4.3.5 to 4.6.2
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4.3.5...ea165f8d65b6e75b540449e92b4886f43607fa02)

Updates `actions/download-artifact` from 4.1.9 to 4.2.1
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](cc20338598...95815c38cf)

Updates `github/codeql-action` from 3.28.11 to 3.28.13
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v3.28.11...1b549b9259bda1cb5ddde3b41741a82a2d15a841)

Updates `zgosalvez/github-actions-ensure-sha-pinned-actions` from 3.0.22
to 3.0.23
- [Release notes](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions/releases)
- [Commits](25ed13d062...4830be28ce)

---

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-31 20:16:41 -04:00
Kesavan Yogeswaran
aa3d3b0bdb drivers: Fix declaration after label compile error
Fix two instances where switch-case labels were followed immediately by
a declaration, which is generally invalid and can cause compilation
failure.

Signed-off-by: Kesavan Yogeswaran <hikes@google.com>
2025-03-31 19:50:50 -04:00
Xiaoli Ji
30da8b5aa8 soc: nxp: imxrt: imxrt118x: Update lpuart clock
1.Update lpuart0102 clock
2.Enable lpuart0304/0506/0708/0910/1112 clock

Signed-off-by: Xiaoli Ji <xiaoli.ji@nxp.com>
2025-03-31 19:50:27 -04:00
Sean Kyer
93c1c7d066 Samples: Bluetooth: Extend DIS sample
- Extended the DIS sample to showcase all possible
  fields using placeholder values.
- UDI issuer strings use a 'private' ODI which is
   unregistered.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-03-31 19:50:12 -04:00
Sean Kyer
905aed99fa Bluetooth: Fixed null byte check in DIS UDI
Due to sizeof('\0') evaluating to 4 bytes instead of 1:
- Each UDI field had 4 instead of 1 'zero byte' appended
  (as specified by BLE spec).
- Any field of length 4 was being skipped entirely.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-03-31 19:50:12 -04:00
Peter Johanson
89a80525c8 boards: seeed: Add Seeed XIAO RA4M1 board
Initial basic board definition for the XIAO RA4M1 board.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-03-31 19:49:22 -04:00
Peter Johanson
4399d9e3a2 west: runners: rfp: Add Reneses Flash Programmer runner
Add a basic RFP runner that supports the `flash` command targettting
the Renesas Standard Boot Firmware.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-03-31 19:49:22 -04:00
Peter Johanson
f793aafe88 soc: renesas: ra: Add r7fa4m1ab3cne package variant
Add r7fa4m1ab3cne 48-pin package variant of RA4M1

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-03-31 19:49:22 -04:00
Peter Johanson
4c996e2f1d dts: arm: renesas: ra: Add USBFS interrupts
Add the necessary interrupts to USBFS to use it on targets
like ra4m1.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-03-31 19:49:22 -04:00
Emil Gydesen
26e74f75b6 tests: Bluetooth: Tester: Fix typo in PBP announcement
Fixes typo in the event name.
Changes the struct to also use _ev instead of _rp as it
is an event and not a response.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-31 19:48:25 -04:00
Raúl Gotor
39c0c4f43c Bluetooth: Mesh: Shell: fixes publication period calculation
The publication period is defined by Steps and Resolution.
At BLE Mesh protocol level, the period is encoded in a byte
where first LSB 6 bits correspond to PerSteps and the last
two to PerRes. There is an issue on how the code at
`subsys/bluetooth/mesh/shell/cfg.c:model_pub_set` is encoding
these two values into the publication period byte.
This is commit fixes issue #87780

Signed-off-by: Raúl Gotor <raulgotor@gmail.com>
2025-03-31 19:48:10 -04:00
David Brown
0ee1141bba modules: optional: ci-fix for rust
Apply the following patches to the v4.1-branch of rust.  This fixes an
issue with CI.

349164d630a samples: blinky: Remove incorrect integration platform
b0866632d42 samples/tests: Ensure test/sample names are unique

Signed-off-by: David Brown <david.brown@linaro.org>
2025-03-31 19:47:49 -04:00
Shan Pen
6857dcabbf samples: sysbuild: with_mcuboot: fix typo
fixed a minor typo in CMakeLists.txt comment

Signed-off-by: Shan Pen <bricle031@gmail.com>
2025-03-31 22:02:06 +02:00
Troels Nilsson
c64494a32d Bluetooth: Controller: Fix return value for apto with illegal handles
If the connection handle given to a Read/Write Authenticated Payload
Timeout HCI command is a CIS or BIS handle, the error returned has to
be BT_HCI_ERR_CMD_DISALLOWED with the new TCRL

Fixes EBQ test failures in HCI/BIS/BI-14-C, HCI/BIS/BI-15-C,
HCI/CIS/BI-20-C and HCI/CIS/BI-22-C

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-03-31 22:01:46 +02:00
Carles Cufi
f42cef9c81 runners: nrf: Default to ERASE_NONE for the nRF54L series
The Nordic nRF54L series ICs use RRAM instead of flash. This implies
that erasing the internal storage before writing the new firmware is not
required anymore (unlike NOR flash, which does).
Note that RRAM on nRF54L devices is not physically paged, and paging is
only artificially provided, with a page size of 4096 bytes, for an easier
transition of nRF52 software to nRF54L devices.
In order to speed up the flashing operation and avoiding doing wasteful
write operations on the RRAM, default to ERASE_NONE for ICs in these
series.
A new ``--erase-pages`` command-line switch has been added to allow
users to keep erasing the pages that will be written to the firmware.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-03-31 22:01:35 +02:00
Aleksandr Khromykh
69c5c6f40e Bluetooth: Mesh: make corresponding group ID unique
Commit fixes bug when corresponding group ID was never
incremented for independent corresponding relationships.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-03-31 22:01:11 +02:00
Benjamin Cabé
454a1c8844 ci: bsim-tests: Exclude .rst files from path patterns
Updated the bsim-tests workflow to exclude all .rst files.

As per GitHub docs:

The order that you define paths patterns matters:

A matching negative pattern (prefixed with !) after a positive match
will exclude the path.
A matching positive pattern after a negative match will include the path
again.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-31 22:00:55 +02:00
Benjamin Cabé
8e90ba4af9 ci: github: bump action-first-interaction to v1.1.1+zephyr.6
No functional change. This is only so as to adopt a versioning scheme
where the Zephyr version of the action is considered more recent than
the upstream version (here, v1.1.1) by means of using dots instead of
dashes.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-31 22:00:46 +02:00
Jukka Rissanen
e58407c5bf tests: net: dns: packet: Add test case for compression bit in CNAME
Add checks that we will be able to catch invalid compression bit in
response CNAME handling.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-31 22:00:36 +02:00
Jukka Rissanen
137eba4e40 net: dns: Check compression flag properly
Allow only 0xc (0b11) as two highest bit to mark the compression
when parsing the CNAME response. See RFC 9267 ch. 2 for details.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-31 22:00:36 +02:00
Jukka Rissanen
b086c9d0f0 tests: net: dns: packet: Add test case for recursive name in CNAME
Add checks that we will be able to catch recursive name pointers and
abandon the response for CNAME handling.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-31 22:00:36 +02:00
Jukka Rissanen
5746f61d4c net: dns: Check recursive pointers for CNAME handling
Make sure that the CNAME handling checks recursive name pointers
and fails the response if recursion is detected.
See RFC 9267 ch. 2 for details.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-31 22:00:36 +02:00
Sebastian Głąb
f2cf2662c9 tests: drivers: i2c: i2c_target_api: Enable test on nRF54L20 cpuapp
Add Overlay required to run the test on
nrf54l20pdk/nrf54l20/cpuapp.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-03-31 22:00:26 +02:00
Benjamin Cabé
776c0cab9a doc: boards: nordic: Adopt zephyr:board directives
Migrate all Nordic boards to leverage the full extent of zephyr:board
directives.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-31 22:00:02 +02:00
Benjamin Cabé
bb710309ef doc: _scripts: update gen_boards_catalog.py to support sysbuild
Boards that have sysbuild enabled in Twister will have the build folder
for the hello_world sample in a subfolder, so update the code
accordingly.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-31 22:00:02 +02:00
Nitin Pandey
5661a5b25a driver: wifi: siwx91x: Add support for WPA_AUTO_PERSONAL
- Added support for wpa-wpa2 mixed mode in ap enable
- Added support for WPA3 Transition mode in STA connect

Signed-off-by: Nitin Pandey <nitin.pandey@silabs.com>
2025-03-31 21:59:51 +02:00
Mirai SHINJO
93b59a2314 sd: correct mismatched comment for CONFIG_SDMMC_STACK
The closing comment for CONFIG_SDMMC_STACK #ifdef directive was
incorrectly labeled as CONFIG_SDIO_STACK. This commit corrects the
comment to reflect the correct configuration macro and improve code
clarity.

Signed-off-by: Mirai SHINJO <oss@mshinjo.com>
2025-03-31 21:59:40 +02:00
Georgij Cernysiov
1989bef5e3 drivers: clock: stm32: h7: remove power supply config
The power supply configuration is already set during
the early H7 soc init.

Let the clock initialization handle the voltage scaling.

Signed-off-by: Georgij Cernysiov <geo.cgv@gmail.com>
2025-03-31 21:59:28 +02:00
Georgij Cernysiov
b2b6b9be7e soc: st: h7: m7: remove voltage scale setting
The voltage scaling is set during h7 clock initialization.

Signed-off-by: Georgij Cernysiov <geo.cgv@gmail.com>
2025-03-31 21:59:28 +02:00
Benjamin Cabé
f6d11a51e8 doc: _extensions: add board target selector for supported HW features
This show a nice widget to switch between the various board targets and
see their respective list of supported features.

The original HTML content of the page is preserved and JavaScript code
"patches" the page on-the-fly. This is so that the actual HTML content
(that e.g. search engines see) is complete and indexable (as well as to
provide useful information for folks who might have JavaScript disabled
altogether).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-31 21:59:18 +02:00
Benjamin Cabé
38b87905ba doc: _scripts: boards: fix condition for revision
Revision might be `0` so update the condition to not inadvertently
exclude boards with such revision number.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-31 21:59:18 +02:00
Benjamin Cabé
7d1e98db70 doc: _extensions: boards: fix bug in board target name computation
The board revision should appear right after board name, not after the
qualifiers as was previously done.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-31 21:59:18 +02:00
Benjamin Cabé
04e6feb101 doc: css: define the monospace-font-family variable
This probably got lost in previous refactoring but this variable is
used in a few CSS rules so it better point to an actual font stack

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-31 21:59:18 +02:00
Jonathon Penix
e72f35b5bd toolchain: llvm: Use clang's __INTN_C/__UINTN_C macros for clang 20+
clang recently began providing predefined __INTN_C/__UINTN_C macros
resulting in macro redefinition warnings in toolchain/llvm.h. This
change was landed in clang in late Jan. 2025 and clang/LLVM 20 is the
first official release that has this support (see the PR linked below).

Prefer the definitions provided by clang and avoid redefining these macros
for clang versions 20 and later to avoid said warnings.

Link: https://github.com/llvm/llvm-project/pull/123514

Signed-off-by: Jonathon Penix <jpenix@quicinc.com>
2025-03-31 14:43:56 +02:00
Lyle Zhu
3bf18870f9 Bluetooth: Classic: SMP: Store derived LK if SMP_FLAG_BOND is set
When deriving the new LK, remove the old LK if it exists.

Store the derived LK if the flag `SMP_FLAG_BOND` of LE SMP is set.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-31 14:35:50 +02:00
Lyle Zhu
001397653b Bluetooth: Classic: SMP: Set BT_LINK_KEY_SC only if BT_KEYS_SC is set
The flag `BT_LINK_KEY_SC` of LK will also be set when derive LK from
LTK.
It is a incorrect behavior.

The flag `BT_LINK_KEY_SC` should only be set if the flag `BT_KEYS_SC`
of LTK has been set.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-31 14:35:50 +02:00
Lyle Zhu
2695d2228b Bluetooth: Classic: SMP: Avoid stronger LK be overwrote by weaker LTK
Add the function `ltk_derive_link_key_allowed()` to check whether the
LK can be overwrote by the LTK.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-31 14:35:50 +02:00
Tim Lin
8d855a270f soc: ite: it8xxx2: Disable I2C0 alternate function to allow sleep entry
The chip requires a successful sleep entry to change the PLL sequence.
By default, the IT8XXX2 chip enables the I2C0 alternate function, which
can cause the clock/data lines to meet the start condition, preventing
EC from entering sleep mode.

This commit disables the I2C0 alternate function before executing the
PLL sequence change to ensure that the EC can enter sleep mode
successfully.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-03-31 14:35:35 +02:00
Artur Hadasz
38b959e1a3 drivers: flash: nrf: Add possibility to add custom context
This commit adds the possibility to add additional custom
context for flash operations for usage by non-standard
flash drivers.

Signed-off-by: Artur Hadasz <artur.hadasz@nordicsemi.no>
2025-03-31 14:33:56 +02:00
Kapil Bhatt
6f9dbbd54f wifi: utils: Fix crash for scan
The check for index out of bound is missing, It turns into a crash
for input channel more than WIFI_MGMT_SCAN_CHAN_MAX_MANUAL.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-03-31 14:33:22 +02:00
Benedikt Schmidt
0a0e041c9d drivers: fpga: fix build of ICE40 bitbang with PINCTRL
Fix the build of the ICE40 FPGA bitbang driver with PINCTRL=y.
Fixes #87739.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2025-03-31 14:32:35 +02:00
Pieter De Gendt
6f6a687934 ci: compliance: Exclude the Identity check for dependabot
The identity check for dependabot will always fail, skip it for PRs
created by dependabot.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-03-31 14:32:25 +02:00
Tomasz Moń
1cccf28d5e drivers: usb: udc: Reduce unnecessary ep config lookups
UDC API passes struct udc_ep_config to all functions. Some UDC functions
were using endpoint config structure while some were using device and
endpoint number. This API inconsistency led to completely unnecessary
endpoint structure lookups. Remove unnecessary lookups by using endpoint
config structure pointer where it makes sense.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-03-31 14:32:17 +02:00
Emil Hammarström
01ba1bf8ce fs: zms: clarify need to re-mount after zms_clear
Clarify that the file system needs to be re-mounted after clearing.
It was not clear that zms_clear both cleared and unmounted the fs.

Signed-off-by: Emil Hammarström <emil.hammarstrom1@assaabloy.com>
2025-03-31 14:32:08 +02:00
Robin Kastberg
2e2e3a3894 cmake: linker_script: keep .symbol_to_keep
Update to keep in sync with common-rom-misc.ld

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-03-31 14:31:57 +02:00
Krzysztof Chruściński
40ab30f23f drivers: timer: nrf_grtc_timer: Optimize z_nrf_grtc_timer_get_ticks
Converting absolute system ticks to GRTC ticks is simple and algorithm
can be simplified. Legacy algorithm was copied from nrf_rtc_timer which
back then was working on 32 bits only.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-31 14:31:48 +02:00
Krzysztof Chruściński
830a22e48f tests: drivers: timer: nrf_grtc: Fix test_get_ticks
Test was occasionally failing when two types of current time
reading occurred at different system tick. In that case they
were of by one system tick and test was failing.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-31 14:31:48 +02:00
Simon Maurer
d5d4d5791f arch: arm: cortex_a_r/cortex_m: fix text region overlap with ram in !XIP
ROM_ADDR and RAM_ADDR is same when CONFIG_XIP is not defined.
If we reset the location for RAMABLE region to RAM_ADDR text region,
which is part of rom, overlaps with initial ram region.
This commit tries to avoid this incorrect behaviour for cortex_a
and cortex_m

Signed-off-by: Simon Maurer <mail@maurer.systems>
2025-03-31 14:31:36 +02:00
Wilfried Chauveau
fa45bebccf cmake: emu: armfvp: Only add the -a argument if not already present
Some target may need to pass in the application argument. In such case
do not override it.

Signed-off-by: Wilfried Chauveau <wilfried.chauveau@arm.com>
Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-03-31 11:30:55 +02:00
Sudan Landge
a7122cf51f boards: arm: add armfvp support for ns variants
What is the change?
  - Non secure build variants can now be used with ARMFVPs.

Why is this change needed?
  - Running non secure variant of a build doesn't work with FVPs
    previous to version 11.27. The newer version of FVP added the
    support to run the tfm_merged.hex files.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-03-31 11:30:55 +02:00
Sudan Landge
a1e3083def tests: arm: adjust test for relocated rom
Add a memory barrier to make sure write to NVIC is completed
before continuing with the test fails in scenarios where
CONFIG_ROMSTART_RELOCATION_ROM is enabled for boards like MPS3
Corstone310 and k_sem_take is called before the isr's are called.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-03-31 11:30:55 +02:00
Sudan Landge
5f91f17e68 boards: arm: Enable default testing of MPS3 boards
Enable tests by default for CS300 and CS310 since they support
simulation and FVP's are available in upstream docker.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-03-31 11:30:55 +02:00
Sudan Landge
c8aeb41ebb boards: arm: Enable MPS3 Corstone310 for userspace
What is the change?
 - MPS3 Corstone310 can now be used with userspace application.
   This is done by dividing flash into ITCM+ISRAM and using a
   bigger SRAM.

Why do we need this change?
 - ITCM and DTCM for MPS3 Corstone310 are small (32KB) to build
   with userspace. So we need bigger flash and sram.
   We can use the bigger ISRAM as flash but, Cortex-M expects
   vector table to be in 1st few bytes of ITCM.
   So to build for userspace we distribute FLASH between ITCM and
   ISRAM while using SRAM as sram.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-03-31 11:30:55 +02:00
Håvard Reierstad
47f5d1b898 Bluetooth: docs: Add enum names to bt.h and gatt.h
Adds enum names to `bluetooth.h` and `gatt.h` to make them easier to
reference. Adds Doxygen references where relevant.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-03-31 11:30:48 +02:00
Johan Hedberg
4fe9e018d3 drivers: bluetooth: h4: Free RX buffer upon reset
There are cases where reset_rx() is called when rx.buf is set (e.g. when
the buffer was too small to receive the incoming packet). Be sure to free
the buffer, so that it wont get reused for the next packet (which might
require a buffer from a different pool).

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-03-31 11:29:55 +02:00
Lyle Zhu
f25fe59805 Bluetooth: Classic: SMP: Recovery flag SMP_FLAG_BR_CONNECTED
The flag `SMP_FLAG_BR_CONNECTED` is cleared by the function
`smp_br_reset()` and `smp_br_init`. But the flag
`SMP_FLAG_BR_CONNECTED` should not be cleared at this time.

Recovery the flag `SMP_FLAG_BR_CONNECTED` after the all flags of SMP
cleared.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-31 11:29:49 +02:00
Lyle Zhu
b59bc363ea Bluetooth: Classic: SMP: Set secure connection for derived LTK
If the encrypt value of classic connection is
`BT_HCI_ENCRYPTION_ON_BR_AES_CCM`, set the flag `BT_KEYS_SC` for
the derived LTK.

Or, clear the flag `BT_KEYS_SC` for the derived LTK.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-31 11:29:49 +02:00
Lyle Zhu
58f6ca80ca Bluetooth: Classic: SMP: Remove old LE keys before upgrading keys
Remove the old LE keys from resolving list and NVM before upgrading
the keys.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-31 11:29:49 +02:00
Lyle Zhu
3712b96738 Bluetooth: Classic: SMP: Avoid derived LE keys be added multiple times
In current implementation, the flag `local_dist` will be cleared when
the distributed key frame is performed if the local is the SMP
initiator. After the distributed key is sent out, the function
`smp_pairing_br_complete()` will be called if all bits of `local_dist`
are cleared.

It causes the function `smp_pairing_br_complete()` will be called
multiple times.

Add a flag `local_distributed` to flag the all sent keys. Add only the
flag `local_distributed` is not set, preform the key distribution
frame.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-31 11:29:49 +02:00
Lyle Zhu
8bb67c5824 Bluetooth: Classic: SMP: Derived LE keys are not handled correctly
The derived LE keys are not saved to NVM. And the IRK is not added to
controller resolving list. It causes two issues,
Issue 1, the LE connection connection cannot be established if the adv
address of peer is RPA.
Issue 2, the LE keys are missing after the power reset.

For issue 1, add a function `smp_br_id_add_replace` to add LE keys.
For issue 2, check the BR bondable flag `BT_CONN_BR_NOBOND` instead of
`SMP_FLAG_BOND`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-31 11:29:49 +02:00
Ziad Elhanafy
a7ba802dbe drivers: mbox: Add Arm MHUv3 Mailbox driver
This adds new Arm MHUv3 mailbox driver.

The Arm MHUv3 (Message Handling Unit version 3) is a hardware
block designed for inter-processor communication in SoCs.

The ARM MHUv3 can optionally support various extensions to
enable different kinds of transport to be used for communication.

At the moment only the doorbell extension is supported in the
driver.

For more information refer to Arm Message Handling Unit
Architecture
https://documentation-service.arm.com/static/65f01fbab5e3c10fe1335edf

Signed-off-by: Ziad Elhanafy <ziad.elhanafy@arm.com>
2025-03-31 11:29:40 +02:00
Anas Nashif
06f42f6bfa twister: Move prep stage to a github runner
Speed things up by using GH runners, we do not need the power of our own
runners to create the test plan. This also simplifies the workflow
considerably.

PRs now will get queued immediately, ie. no need to wait for a Zephyr
hosted runner to create the plan and then wait again for another round
to get more runners for execution.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-31 11:29:31 +02:00
Anas Nashif
a0d204c1f3 actions: add gitpython to requirements-actions.in
Needed for various workflows.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-31 11:29:31 +02:00
Tom Burdick
c3f67ab976 samples: philosphers: Fix typo in famous name
Dijkstra not djkstra

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-03-31 08:20:19 +02:00
Muhammad Waleed Badar
c6579041d7 dts: boards: st, stm32f3_disco: update user button logic
Updated the stm32f3_disco board user button logic from
active low to active high as per datasheet.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2025-03-31 08:07:37 +02:00
Ta Minh Nhat
50b32eefed boards: renesas: Add ethernet support for ek_ra6m3
Add ethernet support for ek_ra6m3.

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-03-31 08:07:22 +02:00
Ta Minh Nhat
1adce5710e tests: drivers: pwm: Change pwm channel for ek_ra6m3
Change default pwm to pwm0 on ek_ra6m3 in test app pwm_loopback
to avoid pin conflict with ethernet phy.

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-03-31 08:07:22 +02:00
Ta Minh Nhat
ee5b932423 boards: renesas: Change the pwm default node for ek_ra6m3
Change the pwm default node to pwm0 on ek_ra6m3 to avoid
pinsel conflict with ethernet phy.

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-03-31 08:07:22 +02:00
Ta Minh Nhat
33ca45b91e dts: arm: renesas: Add ethernet support for RA6M3
Add ethernet support for RA6M3.

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-03-31 08:07:22 +02:00
Corey Wharton
3aebc9d258 drivers: sensor: tmp112: add support for setting ALERT thresholds
Allows setting tLow/tHigh threasholds via the SENSOR_ATTR_LOWER_THRESH/
SENSOR_ATTR_UPPER_THRESH attributes.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-03-31 08:07:12 +02:00
Corey Wharton
7425070ecc drivers: sensor: tmp112: format file
Format before other changes.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-03-31 08:07:12 +02:00
TOKITA Hiroshi
881c64d2e1 samples: drivers: adc: Update overlay for arduino_uno_r4
Use the `arduino,uno-adc` mapping to change the settings
to make it easier to understand.
Add available A4 and A5 pins.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-31 08:07:01 +02:00
TOKITA Hiroshi
84eadd2ddd boards: arduino: uno_r4: Add ADC mapping
Add `arduino,uno-adc` node for adding ADC mapping.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-31 08:07:01 +02:00
Chew Zeh Yang
fa1e385b77 drivers: udc_ambiq: fix compilation issue after dwc2 header removal
udc_ambiq was using USB test mode definition in dwc2 header, which
the include was removed, hence compilation now fails. This commit
fixes the compilation failure.

Signed-off-by: Chew Zeh Yang <zeon.chew@ambiq.com>
2025-03-31 08:06:47 +02:00
Amneesh Singh
932953d2e6 tests: float_disable: honor custom ARM interrupt controllers
This patch allows checking for any custom ARM interrupt controller to get a
non-enabled IRQ line instead of assuming that GIC is enabled

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-03-31 08:06:36 +02:00
Arkadiusz Cholewinski
9a4104dc28 tests: power_wakeup_timer: Tests the RTC alarm’s ability to wake the CPU
As above, the test verify the ability to wake up CPU
from the lowest power state. The test has been
prepared for stm32l562e_dk board.

Signed-off-by: Arkadiusz Cholewinski <arkadiuszx.cholewinski@intel.com>
2025-03-31 08:06:25 +02:00
Arkadiusz Cholewinski
21f7e5fc28 tests: power_residency_time: Tests the residency time of each power state
This test evaluates the residency time of different power states
on the stm32l562e_dk board and calculates the
RMS (Root Mean Square) current for every detected state.

Signed-off-by: Arkadiusz Cholewinski <arkadiuszx.cholewinski@intel.com>
2025-03-31 08:06:25 +02:00
Arkadiusz Cholewinski
513eb43377 tests: power_states: Verifies the transition to all available power states
During the test, pytest detects each step and calculates
the RMS (Root Mean Square) current for every detected state.
The test then compares the calculated RMS values
against the expected values.

Signed-off-by: Arkadiusz Cholewinski <arkadiuszx.cholewinski@intel.com>
2025-03-31 08:06:25 +02:00
Arkadiusz Cholewinski
35b13e1629 Twister: Add power measurements support for Twister.
Add support for powerShield of stm32l562e_dk board.

Signed-off-by: Arkadiusz Cholewinski <arkadiuszx.cholewinski@intel.com>
2025-03-31 08:06:25 +02:00
Julien Panis
27ddc76247 boards: ti: lp_em_cc2340r5: Add DMA support
Enable DMA.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-03-31 08:05:52 +02:00
Julien Panis
e1ec6de94a dts: arm: ti: cc23x0: Add DMA support
Add support for DMA to cc23x0 SoC.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-03-31 08:05:52 +02:00
Julien Panis
d8dbf5653e drivers: dma: Add support for cc23x0 DMA
Add support for 8-channel configurable DMA controller. The driver
supports the following features:
- memory to peripheral (ch0 to ch5)
- peripheral to memory (ch0 to ch5)
- memory to memory (ch6 and ch7)

Each DMA channel is multiplexed between two or more trigger sources:
- ch0 -> SPI0_TX or UART0_RX
- ch1 -> SPI0_RX or UART0_TX
- ch2 -> LRFD or UART0_TX
- ch3 -> ADC0 or UART0_RX
- ch4 -> AES_A or LRFD
- ch5 -> AES_B or ADC0
- ch6 -> Software Event Channel 0
- ch7 -> Software Event Channel 1

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-03-31 08:05:52 +02:00
Anas Nashif
19c6240b68 tests: twister: disable test_inline_logs temporarily
This test fails on older python versions (3.10) and only on CI.
Disabling it while we investigate. The test itself verifies inline logs
options, so the functionality test is not impacted.

Tracked in #87769

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-29 07:44:46 -04:00
Anas Nashif
2faf62c35c ci: overhaul and pin dependencies on twister_tests_blackbox
Pin dependencies on the workflow and move it from using docker to the
zephyr setup action.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-29 07:44:46 -04:00
Anas Nashif
11ece85d1b ci: workflows: pin python dependencies
Pin python dependencies to hashes and cleanup/unify python setup steps in
various workflows.

We now have one dependency file containing all requirements for github
actions that is managed centrally with hashes. No direct pip installs
are needed in workflow files and everything shall go via the
requirements file.

Pinning to specific version and hashes helps with preventing supply
chain attacks.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-29 07:44:46 -04:00
Anisetti Avinash Krishna
55662b1e82 soc: intel: raptor_lake: soc_gpio: Enabled support for BTL-s
Enabled support for BTL-s platform on RPL soc.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-03-29 07:44:22 -04:00
Anisetti Avinash Krishna
89c57ec931 boards: intel: btl: Adds Bartlett Lake board
Added support for Bartlett lake board with
Raptorlake SOC

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-03-29 07:44:22 -04:00
Tomasz Bursztyka
f17f6af5e6 tests: debug: Add in-memory coredump backend test scenario
Providing the right config options and a new test scenario,
coredump_backends test will run under the in-memory backend.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-03-29 07:44:11 -04:00
Tomasz Bursztyka
e8185990ac include: debug: Fix indentation in coredump.h
A nano fix in the header.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-03-29 07:44:11 -04:00
Tomasz Bursztyka
b4f9242a6a shell: kernel: Add a panic command
For testing purposes only. Testing the fatal error handler or
a coredump backend. Or just out of curiosity.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-03-29 07:44:11 -04:00
Tomasz Bursztyka
6ad72847e9 coredump: Add an in-memory backend
Only meant to be used on platforms that would not wipe the RAM on reboot.
This won't work if the platform is halted and restarted as RAM is
volatile, obviously. A relevant fatal error handler needs to be provided
to reboot.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-03-29 07:44:11 -04:00
Tomasz Bursztyka
9bab18d5c8 coredump: Have a dedicated log module for coredump
To enable/disable any coredump logging while debugging the kernel.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-03-29 07:44:11 -04:00
Tomasz Bursztyka
13abd7fe73 coredump: Generalize the shell module
This might come in handy for other coredump backends too, not only flash
one. Obviously: changing the logic to use the coredump generic API instead
of the flash backend's internal functions.

Adding a better output, following how the coredump is actually created:
parsing and printing headers, and their respective content.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-03-29 07:44:11 -04:00
Johann Fischer
6348ba472c boards: portenta_h7: board must not enable USB device stack
Reintroduced by commit 8c9af42a63
("portenta_h7: enable onboard regulator") and becomes annoying to
remove again and again. There is also no test feature usb_cdc.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-03-29 07:44:01 -04:00
Jérôme Pouiller
ee5baf8163 MAINTAINERS: Recursive globbing is not supported
get_maintainer.py does not support recursive glob.

In the future, get_maintainer.pl could take advantage of
glob.translate()[1]. Unfortunately, glob.translate() is only supported
from Python 3.14 which is not yet widely adopted.

Meanwhile, just avoid to use recursive globs.

[1]: https://docs.python.org/3/library/glob.html#glob.translate

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-03-29 07:43:43 -04:00
TOKITA Hiroshi
352f5d7717 doc: services: logging: Remove reference for nonexistent test
The `tests/subsys/logging/log_stack` test no longer exists.

Remove a reference to the test from the document.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-29 10:47:58 +01:00
Laurentiu Mihalcea
8b5b6ca0c4 modules: hal_nxp: mcux-sdk: add missing entry for MICFIL
Add missing entry for DAI_NXP_MICFIL, which was accidentally removed
during the transition to SDK-NG.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-03-29 06:32:37 +01:00
Laurentiu Mihalcea
1cc2eb3454 modules: hal_nxp: set SDK-NG as unsupported for imx95's cm7
The new SDK-NG is missing some EDMA-related headers/drivers because of
which the 'dma_nxp_edma' driver no longer compiles with it. Mark the new
SDK as unsupported for this platform until this is fixed.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-03-29 06:32:37 +01:00
Vinayak Kariappa Chettimada
dd1c3948ca fixup! Bluetooth: Controller: Fix incorrect CIS payload count at CIS Estab
Fix incorrect payload count at CIS Establish due to existing
CIG event overlapping the ACL event at the instant when the
CIS gets the active flag set.

The overlapping CIG event picked up the new CIS that had its
active flag set in the current CIG event instead of at the
actual CIS offset which is in the next CIG event.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-29 06:32:21 +01:00
Vinayak Kariappa Chettimada
306b6ecdfc tests: bsim: Bluetooth: Enable MIC failure CIS tests
Enable back previously failed CIS tests due to MIC failures.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-29 06:32:21 +01:00
Vinayak Kariappa Chettimada
fcca236e42 Bluetooth: Controller: Fix CIS offset for dissimilar ACL & CIG interval
Fix CIS offset calculation due to use of decremented ACL
event counter, where as the CIS offset is inquired in the
next ACL event.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-29 06:32:21 +01:00
Vinayak Kariappa Chettimada
4ab805b389 Bluetooth: Controller: Fix incorrect CIS offset accepting peer instant
Fix incorrect CIS offset in use if instant is picked from
the peer sent CIS RSP PDU. Instead, keep the instant that
was sent in the CIS REQ PDU as the instant to send in the
CIS IND PDU.

This fixes CIS failed to be established when dissimilar
ACL and ISO intervals are in use.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-29 06:32:21 +01:00
Vinayak Kariappa Chettimada
f2c020f53e Bluetooth: Controller: Fix incorrect CIS payload count at CIS Estab
Fix incorrect payload count at CIS Establish due to existing
CIG event overlapping the ACL event at the instant when the
CIS gets the active flag set.

The overlapping CIG event picked up the new CIS that had its
active flag set in the current CIG event instead of at the
actual CIS offset which is in the next CIG event.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-29 06:32:21 +01:00
Vinayak Kariappa Chettimada
81dd7595f0 Bluetooth: Controller: Fix Peripheral CIS sorted by CIG
Fix Peripheral CIS sorted by CIG implemenation to use CIS
offset stored in LLL context which is the correct offset
from the CIG anchor point. CIS offset in the ULL context
is the offset from the ACL anchor point at the time of
the CIS establishment.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-29 06:32:21 +01:00
Vinayak Kariappa Chettimada
26eedaaf45 Bluetooth: Controller: Fix CIS event_count_prepare use
Fix CIS event_count_prepare use missed as part of fixes
related to commit be91cfedfb ("Bluetooth: Controller: Fix
incorrect event_count when CIG overlaps").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-29 06:32:21 +01:00
Andrej Butok
45fc00431b boards: nxp: lpcxpresso55sXX: set LinkServer as the default runner.
- Sets LinkServer as the default runner for lpcxpresso55sXX boards.
- Unifies the "Configuring a Debug Probe" chapter
  for lpcxpresso55sXX boards.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-03-29 06:32:06 +01:00
Andrej Butok
b38d0eb270 boards: lpcxpresso55s36: fix declared memory region sizes
- Fixes declared memory region sizes in .yaml and .rst.
- Adds SRAMX linker region.
- The lpcxpresso55s36 linker memory regions are:
  FLASH =246KB, RAM=112KB, SRAMX=16KB.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-03-29 06:31:55 +01:00
Tim Gibson
1f754ac009 settings: fix settings shell subcommand helper
The settings shell returned an unhelpful message when provided
the incorrect arguments. This changes the returned message to
provide the correct usage message.

Signed-off-by: Tim Gibson <timmaxgibson@gmail.com>
2025-03-29 06:31:39 +01:00
Krzysztof Chruściński
0b866648e1 debug: cpu_load: Fix CPU_LOAD_USE_COUNTER config
dt_chosen_enabled argument was incorrect and it was always returning
n so option could not be used.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-28 21:52:30 +01:00
Anas Nashif
3d4c7736e1 tests: logging: remove inactive test
This test is being skipped for the last 3 years, had lots of issues when
it was introduced. No need to keep it in the tree.

If fixed and made to work again, we can always add it back.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-28 21:52:13 +01:00
Anas Nashif
1a9a43a7fa tests: unskip some tests
Few tests are being skipped for no goot reason (anymore). Add some
coverage using few platforms that work with intention to expand if all
works well and if needed.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-28 21:52:13 +01:00
Anas Nashif
37c4631a0b tests: remove various filters due to bugs/issue that were fixed
Some platforms were excluded due to issues that were fixed or resolved
themselves. Enable those platforms again and remove the comments related
to the issues.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-28 21:52:13 +01:00
Jukka Rissanen
8e908176c7 net: shell: iface: Print VPN public key
If the interface is a VPN interface, then print
the public key of the interface.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-28 21:51:57 +01:00
Jukka Rissanen
4eac955305 net: if: Add special handling for IPv4/6 address check for VPN
This is a hack that is used until we have proper IP routing
in place. The code has now special check that makes sure that
we only route IP packets to VPN interface when the packet is
destined to that subnet. So if destination IP address does
not belong to VPN interface subnet, it is not routed there.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-28 21:51:57 +01:00
Jukka Rissanen
663867dbb0 net: if: Add helper to get src interface and address from dst address
Instead of calling various network interface API functions to get
the network interface and related source IP address, have a single
function that can return both data.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-28 21:51:57 +01:00
Jukka Rissanen
525b8e58a2 net: l2: virtual: Add support for VPN public/private key set/get
Add support for getting public address and setting private
key for the virtual interface.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-28 21:51:57 +01:00
Jukka Rissanen
c073a01b39 net: shell: events: Print VPN event information
Add VPN events information printouts to event monitor.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-28 21:51:57 +01:00
Jukka Rissanen
e72190a47e net: events: Add VPN connectivity events
Add enablers for sending VPN connectivity events.

Signed-off-by: Jukka Rissanen <jukka.rissanen@gmail.com>
2025-03-28 21:51:57 +01:00
Jukka Rissanen
d95d391968 net: stats: Add VPN statistics support
Enable collection of VPN statistics and allow user to fetch it.

Signed-off-by: Jukka Rissanen <jukka.rissanen@gmail.com>
2025-03-28 21:51:57 +01:00
Jukka Rissanen
b7dec6c195 net: Add option for VPN enablement
Add support for setting up VPN enablers in the network stack.
These are to be used by the VPN implementation like Wireguard.

Signed-off-by: Jukka Rissanen <jukka.rissanen@gmail.com>
2025-03-28 21:51:57 +01:00
Jukka Rissanen
9264c5c941 tests: net: dhcpv4: Fix test case for ignored options
If CONFIG_NET_DHCPV4_OPTION_PRINT_IGNORED is set, then adjust the
tests as we no longer get so many events.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-28 21:51:33 +01:00
Jukka Rissanen
0a8bad7e28 net: dhcpv4: Add parsing of received domain name
Currently we ignore the received domain name but make sure we
print it in order to avoid unknown option prints.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-28 21:51:33 +01:00
Jukka Rissanen
22f15de7a6 net: dhcpv4: Add parsing of received host name
Currently we ignore the received host name but make sure we
print it in order to avoid unknown option prints.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-28 21:51:33 +01:00
Jukka Rissanen
8ec4fba67c net: dhcpv4: Add parsing of broadcast address
Currently we ignore the broadcast address but make sure we
print it in order to avoid unknown option prints.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-28 21:51:33 +01:00
Titan Chen
10f7218df4 drivers: timer: rts5912: Fix RTMR accurate issue.
Fix RTMR_ADJUST_LIMIT and RTMR_ADJUST_CYCLES

Signed-off-by: Titan Chen <titan.chen@realtek.com>
2025-03-28 21:51:08 +01:00
Ibrahim Abdalkader
9cea552250 boards: shields: Add Arduino Giga display shield.
Add board support for the Arduino Giga display shield.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-28 21:50:58 +01:00
Ibrahim Abdalkader
0969dee311 boards: arduino: giga_r1: Add aliases for the display shield.
Aliases used by the Giga display shield.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-03-28 21:50:58 +01:00
Ibrahim Abdalkader
d91cea6ac4 tests: drivers: Add ST7701 test.
Add a test for ST7701 display driver.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-03-28 21:50:58 +01:00
Ibrahim Abdalkader
41a10e41b0 drivers: display: Add Sitronix ST7701 driver.
Display driver for Sitronix ST7701.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-03-28 21:50:58 +01:00
Andriy Gelman
9b1ac989b3 drivers: spi_xmc4xxx: Add delay when changing clock polarity
The passive level of the clock does not change instanteneously when
it's set using function XMC_SPI_CH_ConfigureShiftClockOutput().
This means that the passive level of the clock can be in the wrong
state when the chip select goes low.

Fix this by adding a small delay when the polarity changes to allow
the clock to return to the proper level.

Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
2025-03-28 21:50:48 +01:00
Galen Krulce
5ae9f44825 code_relocation: Cache list of obj files
As part of relocation, this script matches each source file to its
corresponding object file. This matching is done inside of get_obj_filename
which is called once per source file.

get_obj_filename traverses the entire build directory on every invocation.
This is unnecessary since built object files don't change. On a
sufficiently large project (like mine), this script takes over a minute and
the majority of that time is spent needlessly traversing the build
directory again and again.

Caching the list of object files enables this script to run in less than a
second.

I tested by building my project (which enables the relocation script) and
comparing memory breakdown before / after.

Signed-off-by: Galen Krulce <gkrulce@meta.com>
2025-03-28 16:17:11 +01:00
Aleksandr Khromykh
bf22fa697b Bluetooth: Mesh: remove device key candidate
Commit removes device key candidate if provisionee failed
during device key refresh procedure or mesh reset has been
called in between. Otherwise, device key candidate gets
stuck in the internal trusted storage of crypto library.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-03-28 16:11:39 +01:00
Cla Mattia Galliard
eb029b9ee1 net: http: server: Avoid compiler warnings for zero-length-arrays
Avoid compiler warnings for zero-length-arrays in the http-server. By using
memcpy instead of strcpy.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-03-28 16:11:27 +01:00
Marek Slowinski
f764b2159a boards: mpfs_icicle: Set CONFIG_MP_MAX_NUM_CPUS=1 for non-SMP build variant
Besides E51 and U54 SMP variants, one can target
a single core of U54 for testing purposes.

There is already CONFIG_RV_BOOT_HART=1 that specifies
the starting HART ID for the SMP core.
Set CONFIG_MP_MAX_NUM_CPUS=1 as well to limit
the number of physical CPUs visible at build time
so that Zephyr code tries running only on the selected one.

Signed-off-by: Marek Slowinski <mslowinski@antmicro.com>
2025-03-28 16:11:17 +01:00
Chaitanya Tata
e33d9ee45c samples: net: zperf: Fine tune memory to align zero-copy
Now that nRF70 by default uses zero-copy fine-tune the configuration to
get optimal memory while getting peak throughputs.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-03-28 16:11:05 +01:00
Chaitanya Tata
5119f9c379 drivers: nrf_wifi: Implement TX zero-copy feature
This uses the network packet as is without the need for a copy all the
way till the packet is handed over to RPU.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-03-28 16:11:05 +01:00
Krzysztof Chruściński
5cbae7f2b6 tests: kernel: tickless: tickless_concept: Support more frequencies
Test was assuming that CONFIG_SYS_CLOCK_TICKS_PER_SEC=100 but such
frequency is not well supported on SoC which are based on 32768 Hz RTC
clock. Align test to be able to work with different sys_clock
frequency by converting previously 20 ticks to milliseconds.

Set CONFIG_SYS_CLOCK_TICKS_PER_SEC=32768 when system clock is using
Nordic RTC timer driver.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-28 16:10:51 +01:00
Triveni Danda
589333e4d9 wifi: shell: Add support for EAP-TLS method
Add support to read identity and private key password if
configured in Enterprise mode.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-03-28 16:10:36 +01:00
Triveni Danda
7b6f2572e5 net: lib: wifi_credentials: Use getopt API for adding network options
Use getopt API to process arguments for `cred add` command.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-03-28 16:10:36 +01:00
Triveni Danda
c9821ff2c4 include: zephyr: net: Fix docstrings in wifi_credentials header
Fix all docstrings in header to ensure compliance
with Zephyr's documentation guidelines.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-03-28 16:10:36 +01:00
Fin Maaß
b8eda4d6e7 drivers: ethernet: litex: support more than 2 slots
This adds support for more than 2 slots in the LiteX liteeth
driver.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-28 16:10:23 +01:00
Fin Maaß
62cbfbcb27 drivers: ethernet: litex: add remove irq_lock on rx
It is already ensured in the fpga logic, that there is only one
interrupt per liteeth dev at a time. So we can remove the irq_lock on rx.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-28 16:10:23 +01:00
Fin Maaß
a080df5dfc drivers: ethernet: litex: add mutex for tx
This patch adds a mutex for the eth_tx() function to prevent multiple
threads from calling the function at the same time.
Also remove the unneded irq_lock in that function.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-28 16:10:23 +01:00
Fin Maaß
31648d5fcc drivers: ethernet: litex: correct return value
correct return value for litex liteeth driver in eth_tx().

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-28 16:10:23 +01:00
Zihao Gao
a0efdb2112 Bluetooth: AVRCP: Move the handling of transaction labels to the App.
According to AVCTP v1.4: On the controller and the target side,
handling of transaction labels is dependent on the application.

Signed-off-by: Zihao Gao <gaozihao@xiaomi.com>
2025-03-28 16:10:05 +01:00
Zihao Gao
7822bf7628 Bluetooth: AVRCP: Remove AVRCP timeout.
Remove the transaction label mechanism because:
1. Not necessary at stack, typically an application can handle the
timeout mechanism if required (very rarely).
2. It is a burden on memory size to record all pending commands.

Signed-off-by: Zihao Gao <gaozihao@xiaomi.com>
2025-03-28 16:10:05 +01:00
Zihao Gao
3f747839c5 Bluetooth: AVRCP: expose macros to upper layer.
This patch expose BT_AVRCP_COMPANY_ID_SIZE to applications.

Signed-off-by: Zihao Gao <gaozihao@xiaomi.com>
2025-03-28 16:10:05 +01:00
Zihao Gao
a4790aeab8 Bluetooth: AVRCP: use spec defined structures on APIs.
This patch replaced the structures defined by zephyr APIs
by those defined by AVRCP Spec.

Signed-off-by: Zihao Gao <gaozihao@xiaomi.com>
2025-03-28 16:10:05 +01:00
Zihao Gao
6fe6326bea Bluetooth: AVRCP: implementation of Get Capabilities command.
This patch allows the upper layer to acquire the remote AVRCP
capabilities. These capabilities can be further used in register
notifications.

Signed-off-by: Zihao Gao <gaozihao@xiaomi.com>
2025-03-28 16:10:05 +01:00
Mathieu Anquetin
fa3da27f15 boards: st: add support for the nucleo_f439zi
Add support for the nucleo_f439zi board.

Signed-off-by: Mathieu Anquetin <mathieu.anquetin@groupe-cahors.com>
2025-03-28 16:09:50 +01:00
Mathieu Anquetin
334b169cab dts: arm: st: f4: add stm32f439 dtsi files
Since this SoC is equivalent to the STM32F429 SoC, simply include its
device tree and add the 'cryp' node for the hardware cryptographic
accelerator.

Signed-off-by: Mathieu Anquetin <mathieu.anquetin@groupe-cahors.com>
2025-03-28 16:09:50 +01:00
Mathieu Anquetin
bd0de75090 soc: st: stm32: add support for stm32f439
STM32F439 SoC is an STM32F429 with an integrated crypto/hash processor
providing hardware acceleration for encryption (AES and TDES) and hash
(MD5, SHA-1 and SHA-2).

Signed-off-by: Mathieu Anquetin <mathieu.anquetin@groupe-cahors.com>
2025-03-28 16:09:50 +01:00
James Roy
9b795840f9 style: edtlib: Remove the redundant keys() method
Remove the redundant keys method when using the
in statement on a dict to fix the Ruff SIM118
warning.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-28 12:22:00 +01:00
James Roy
8a2cde9688 style: edtlib: Use from to chain the exception
Use the from keyword to chain exceptions in
order to fix the Ruff B904 warning.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-28 12:22:00 +01:00
James Roy
826ddaed97 style: edtlib: Use the more readable not-equal operator
Replace 'not xx == xx' with 'xx != xx' to
fix the Ruff SIM201 warning.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-28 12:22:00 +01:00
James Roy
b543c26548 style: edtlib: Reorganize the single-line if statement block
Move the statement in the single-line if block
to a new line to fix the Ruff E701 warning.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-28 12:22:00 +01:00
James Roy
8bf5fd9668 style: edtlib: Remove the redundant call arguments
Remove the redundant positional argument in
open function to fix the Ruff UP015 warning.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-28 12:22:00 +01:00
James Roy
7207e91972 style: edtlib: Merge redundant if statements
Merge redundant if statements to fix the Ruff
SIM102 warning.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-28 12:22:00 +01:00
James Roy
20d8a47ad1 style: edtlib: Use a more readable not in statement
Replace 'not xx in xx' with the more readable
'xx not in xx' syntax to fix the Ruff E713 warning.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-28 12:22:00 +01:00
James Roy
8b142ded55 style: edtlib: Sort the import statements
Sort the import statements to fix the
Ruff I001 warning.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-28 12:22:00 +01:00
James Roy
f2eb205d6d style: edtlib: Add an explicit strict argument to the zip
Add an explicit strict parameter to the zip
function to fix the Ruff B905 warning.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-28 12:22:00 +01:00
James Roy
9e46536a1f style: edtlib: Remove deprecated packages
Remove imported deprecated packages and replace
with new packages to fix Ruff UP035 warning.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-28 12:22:00 +01:00
James Roy
1425de54e7 style: edtlib: Remove unnecessary quotes
Remove unnecessary quotes from deferred type
annotations to fix the Ruff UP037 warning.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-28 12:22:00 +01:00
Declan Snyder
c69fe0ef55 drivers: spi: improve API documentation
Enhance SPI API documentation.

The improvements include:
- Reorganize the doxygen into logical sections
- Add clear explanations of the CS behavior
- Improved descriptions of buffers and transfers
- Better descriptions of operational modes (master/slave)
- More clear explanation of clock polarity and phase configurations
- More clear explanation of SPI data word concepts and configurations

These changes make the API easier to understand for developers
implementing drivers or applications using the SPI interface.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-28 12:21:48 +01:00
Radosław Koppel
26e3e82e60 ipc_service: ipc_icbmsg: Update backend API return values
Update release_rx_buffer return value to match API documentation.
Cleanup register_ept workflow - remove unused variable.

Signed-off-by: Radosław Koppel <radoslaw.koppel@nordicsemi.no>
2025-03-28 12:21:30 +01:00
Ravi Dondaputi
58591c6f2c net: wifi: shell: Fix alloc failures during cert validation
Memory allocation failures during certificate validation causes
connection termination. Increase MBEDTLS_HEAP_SIZE to fix this.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-03-28 12:21:20 +01:00
Ravi Dondaputi
d073e622f5 modules: hostap: Fix issue with enterprise mode connection
Increase stack size of supplicant thread to fix crash seen during
enterprise mode connection. Increase heap requirement of hostap
to handle TLS processing failures.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-03-28 12:21:20 +01:00
Anisetti Avinash Krishna
139211772c include: zephyr: sys: time_units: Make z_clock_hw_cycles_per_sec unsigned
Convert z_clock_hw_cycles_per_sec to unsigned int to increase
supported frequency range.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-03-28 12:21:07 +01:00
Anisetti Avinash Krishna
98dba7da7c include: zephyr: sys: time_units: Type cast SYS_CLOCK_HW_CYCLES_PER_SEC
Type case CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC to uint32_t
while defining sys_clock_hw_cycles_per_sec_runtime_get()
to extend the range of frequency to 0xffffffff.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-03-28 12:21:07 +01:00
Jukka Rissanen
38caff2886 snippets: Add Wi-Fi IPv4 and IPv6 snippet
Introduce a snippet for configuring IPv4 and IPv6 over Wi-Fi support
in networking samples.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-28 12:20:54 +01:00
Jukka Rissanen
7d8fad2fef snippets: Add Wi-Fi IPv6 snippet
Introduce a snippet for configuring IPv6 over Wi-Fi support in
networking samples.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-28 12:20:54 +01:00
Henrik Brix Andersen
5b63242e75 tests: boards: neorv32: add build_all test for the NEORV32
Add a dedicated "build_all" test for the NEORV32 and its peripheral
drivers. These drivers depend on the NEORV32 SYSINFO (syscon) and thus
cannot easily be built for non-NEORV32 board targets.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-28 12:20:41 +01:00
Benjamin Cabé
33e06e1ed1 doc: adi: adopt zephyr:board-supported-hw directive
Replace manually authored hardware features table with the new Zephyr
board supported hardware directive which automatically generates an
up-to-date table based on the boards' Devicetree.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-28 12:20:32 +01:00
Benjamin Cabé
faab4437ba boards: adi: doc: remove redundant images
zephyr:board:: directly already automagically includes board image in
the overview card, no need to also have it in the body of the doc.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-28 12:20:32 +01:00
Sebastian Głąb
dd882dc14d samples: drivers: mbox: Add mbox IRQ configuration
The mbox sample uses bellboard events enabled by default
in the nRF54H20dk board definition.
Thus, it's not easily obvious that IRQ bitmask must be aligned
when other mbox/bellboard channel is used.

Add comment to the nRF54H20 overlays.
Inform that bellboard channel used for RX must be enabled in
the 'nordic,interrupt-mapping' property.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-03-28 12:20:22 +01:00
Emil Gydesen
c6e7420d52 Bluetooth: TBS: Client: Fix sizeof('\0')
sizeof('\0') is misleading as it will return 4 instead of 1,
since it will evaluate to sizeof(0), which returns the size
of the `int` type. Modify the expression to use sizeof(char)
with a comment.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-28 12:20:10 +01:00
Daniel Mangum
87d7fcf6c2 bluetooth: host: fix GATT writable Kconfig descriptions
Fixes typos in the BT_DEVICE_NAME_GATT_WRITABLE_SECURITY and
BT_DEVICE_APPEARANCE_GATT_WRITABLE descriptions.

Signed-off-by: Daniel Mangum <georgedanielmangum@gmail.com>
2025-03-28 08:50:05 +01:00
Jordan Yates
32229d0b6c serial: stm32: block sleep modes while RX is active
Block the SoC from re-entering sleep modes while the RX line is active,
if the RX activity previously woke the device from the sleep states.
This stops the device from continuously transitioning between the two
modes and improves responsiveness.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-28 08:41:31 +01:00
Jordan Yates
83ea0f7f80 serial: stm32: fix dropped UART_TX_DONE events
Fix dropped `UART_TX_DONE` events when poll out and async APIs are used
on the same port. Clearing `tx_poll_stream_on` is required to prevent
`uart_stm32_isr` from prematurely clearing the TC status bit.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-28 08:41:31 +01:00
Etienne Carriere
cc28f5072b samples: code_relocation_nocopy: fix stm32 flash size info
Fix typos in stm32 flash sizes value introduced by commit 0e1ffc7beb
("samples: code_relocation_nocopy: update macro to get flash size").

Fixes: 0e1ffc7beb
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-28 08:36:23 +01:00
Andrej Butok
fe3abd1cb9 boards: lpcxpresso55s28: fix low RAM region size
- Fixes RAM region size to 192KB for lpcxpresso55s28. It was 64KB.
- Adds SRAMX linker region.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-03-28 08:36:08 +01:00
Andrej Butok
6f853a5d76 boards: frdm_mcxn236: enable MCUboot support
Enables MCUboot support for frdm-mcxn236.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-03-28 08:35:40 +01:00
Nhut Nguyen
ea00582873 drivers: gpio: rz: Fix whitespaces and typo
- Add spaces around /* ... */
- Fix a typo and remove a stray space in the description of
renesas,rz-gpio.yaml to make it visible in doc html

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-28 08:35:13 +01:00
Nhut Nguyen
f3d3b361d7 tests: drivers: gpio: Add support for RZ/V2L-SMARC
Enable GPIO driver tests for RZ/V2L-SMARC

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-28 08:35:13 +01:00
Quang Le
379dcc719e drivers: gpio: Add support for RZ/V2L
Add GPIO driver support for RZ/V2L

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-28 08:35:13 +01:00
Quang Le
7c27e576a0 drivers: pinctrl: Add support for RZ/V2L
This is the initial commit to support pinctrl driver for Renesas RZ/V2L

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-28 08:35:13 +01:00
Nhut Nguyen
62a721f1fd boards: renesas: Add minimal support for board RZ/V2L-SMARC
This adds minimal support for board RZ/V2L-SMARC

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
2025-03-28 08:35:13 +01:00
Nhut Nguyen
cee2ca9dfc dts: arm: renesas: Add support for Renesas RZ/V2L
Add devicetree to support for Renesas RZ/V2L

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-28 08:35:13 +01:00
Hieu Nguyen
5e967abcf3 soc: renesas: Add support for Renesas RZ/V2L
Add support for Renesas RZ/V2L

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-28 08:35:13 +01:00
Jiafei Pan
573a712bed arm64: reset: disable cache and MMU for safety
When Zephyr boot from EL2, D-Cache, I-Cache and MMU should be disabled
by default, but in some cases, for example use U-Boot "go" command
to boot Zephyr Image, Cache and MMU are already been enabled by U-Boot.
So disable them at reset code to make it safety when the code goes
into C code.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-03-28 08:34:59 +01:00
Appana Durga Kedareswara rao
b4f4528ad5 boards: amd: Add board support for the versalnet rpu on Versal net SOC
Add generic board support for the RPU, real-time processing
unit on Versal NET SoC. It is based on Cortext-R52 processor.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
Signed-off-by: Mubin Sayyed <mubin.sayyed@amd.com>
2025-03-28 08:34:38 +01:00
Appana Durga Kedareswara rao
76aa4f07d6 soc: amd: Add support for AMD Versal NET RPU
Add support for the RPU, real-time processing unit on Versal NET SoC.
It is based on Cortext-R52 processor.

The patch contains initial wiring and configuration for generic board
with OCM(1MB) and DDR(2G) memories, cpu, interrupt controller, global
timer and UART.

versalnet.dtsi contains common peripherals integrated into Versal NET
SoC, and versalnet_r52.dtsi has peripherals which are private to
Cortex-R52 processor.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
Signed-off-by: Mubin Sayyed <mubin.sayyed@amd.com>
2025-03-28 08:34:38 +01:00
Adam Kondraciuk
b6d208d292 snippets: nordic: Add nRF54L09 FLPR
Add nrF54L09 FLPR core support.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-03-28 08:34:23 +01:00
Adam Kondraciuk
d63f8a1498 boards: nordic: Add nRF54L09 FLPR
Add nrF54L09 FLPR core support.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-03-28 08:34:23 +01:00
Adam Kondraciuk
dec7da15f9 modules: hal_nordic: Add nRF54L09 FLPR
Add nrF54L09 FLPR core support.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-03-28 08:34:23 +01:00
Adam Kondraciuk
5aa0827960 soc: nordic: Add nRF54L09 FLPR
Add nrF54L09 FLPR core support.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-03-28 08:34:23 +01:00
Adam Kondraciuk
4e1b310698 dts: nordic: nrf54: Add nRF54L09 FLPR
Add nrF54L09 FLPR core support.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-03-28 08:34:23 +01:00
Benjamin Cabé
cc0729c93a samples: boards: st: uart: update code sample reference to be unique
Not sure why this wasn't caught before but this sample needs a unique name
It conflicts with drivers/uart/echo_bot/README.rst

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-27 21:34:03 +01:00
Etienne Carriere
d0d8fa444f drivers: i2c: stm32: don't manage cache aside DMA support
Fix STM32 I2C driver to not call cache management related functions
when DMA is not used. This change fixes an issue introduced by
commit 42c3a78148 ("i2c: stm32: Add cache memory support"). The issue
makes boards embedding this driver with both CONFIG_I2C_STM32_V2_DMA
and CONFIG_ARCH_MPU disabled to fail to build with an error trace message
like the below:
   .../i2c_ll_stm32_v2.c:701: undefined reference to `mem_attr_check_buf'

Fixes: 42c3a78148
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-27 21:33:53 +01:00
Cla Mattia Galliard
72fcca0304 net: virtual: Fix compiler warnings related to interface name
Fix compiler warning by adjusting the number of chars copied to the
destination. Compiler does not like if the destination size of the
`strncpy`-operation is the same as the number of characters written. Even
though it is not a bug in this case. Only copying size-1 characters fixes
the warning and exhibits the same behavior.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-03-27 21:33:40 +01:00
Marek Matej
c9e1ff3876 samples: net: wifi: esp32: Enable config by driver
Move repeated config NET_L2_ETHERNET under the driver Kconfig.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-03-27 21:33:24 +01:00
Marek Matej
4d78218091 boards,samples: espressif: enable wifi by default
Enable wifi node in all procpu dts, so Wi-Fi could be enabled simply by
enabling the CONFIG_WIFI. In turn some sample code overlay files can be
dismissed.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-03-27 21:33:24 +01:00
Benedek Kupper
f5b3362c79 samples: usb: hid-keyboard: enable and use remote wakeup on button press
USB remote wakeup capability is a common feature of keyboards,
allowing them to wake up a suspended host. Currently there is no USB sample
that demonstrates remote wakeup, which makes basic evaluation of the
functionality non-trivial.

Modify the hid-keyboard sample with a minimalistic solution
of demonstrating remote wakeup capability. While it is not required to have
been configured prior to suspend to issue a wakeup request, from usability
perspective I'd say it makes sense.

Signed-off-by: Benedek Kupper <kupper.benedek@gmail.com>
2025-03-27 21:32:42 +01:00
Valerio Setti
5309e11df2 boards: lilygo: add initial support for T-Watch S3
Most of the functionalities of the board are already supported in this
commit and they can easily be tested thought various Zephyr's samples and
tests.

What's still missing are:
- LoRA radio
- audio amplifier
- microphone
but these will be added in follow-up commits.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-03-27 17:22:46 +01:00
Fin Maaß
651d6a3b58 net: dhcpv4: remove redundant dependencys
Remove ``depends on NET_DHCPV4`` on options,
that are inside a ``if NET_DHCPV4``.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-27 17:18:49 +01:00
Matthias Hauser
8b2d02d35a boards: we: unify vendor name of WE boards
unify the vendor name of all WE boards

Signed-off-by: Matthias Hauser <matthias.hauser@we-online.de>
2025-03-27 17:18:38 +01:00
Anas Nashif
66b04f9198 tests: sensors: fix identifier
Use drivers.sensor for all tests related to sensors.

Also change MAINTAINER file to reflect that. It was using
drivers.sensors

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-27 17:18:27 +01:00
Martino Facchin
68fdefc332 dts: arm: renesas: ra: ra6: add Ethernet support
Define Ethernet and MDIO nodes in the RA6 Cortex-M33 SoC device tree
files in a similar manner to the RA8 SoC device tree files.

Removed those nodes from R6E2 SoC as it does not have Ethernet support.

Signed-off-by: Martino Facchin <m.facchin@arduino.cc>
2025-03-27 17:18:13 +01:00
Luca Burelli
775f5126f0 soc: renesas: ra: allow removal of option_bits sections
Check if the option bits DT nodes are enabled before including them in
the linker script for all RA SoCs. These must be disabled for targets
that provide a separate bootloader.

This commit adds the DT_NODE_HAS_STATUS_OKAY gates to all RA-series SoC
linker scripts, converting existing ones to the new macro.

The changes in this commit have been mechanically generated using find
and awk tools.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-27 17:18:13 +01:00
Martino Facchin
f6f2e57ab9 soc: renesas: ra: ra6m5: clear NVIC->ITNS at startup for non TZ
Otherwise, interrupts will trigger a very funny fault
See https://github.com/arduino/ArduinoCore-renesas/blob/main/cores/arduino/main.cpp#L49-L57

Signed-off-by: Martino Facchin <m.facchin@arduino.cc>
2025-03-27 17:18:13 +01:00
Reto Schneider
67834a84c9 twister: Add missing spaces
This adds some missing whitespaces, thus improves the output of `twister
--help`.

Signed-off-by: Reto Schneider <reto.schneider@husqvarnagroup.com>
2025-03-27 17:18:04 +01:00
Bjarki Arge Andreasen
5386a64cb5 boards: nordic: nrf54h20: disable sec ipc
The secure domain IPC node statuses are being used to generate UICRs
which tell the secure domain to attempt connecting to the app and
radio cores. secure domain should only be enabled if used, so the
nodes should default to disabled.

Without this change, the H20 is unable to go to sleep since secure
domain stays awake, persistanly trying to connect to both cores.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-03-27 17:17:54 +01:00
Kapil Bhatt
5f3bd5dfd4 manifest: Update nrf_wifi revision to fix doxygen comments
Fix doxygen comments of arguments.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-03-27 17:17:42 +01:00
Kapil Bhatt
3ef187dee6 drivers: nrf_wifi: Add prompt to Kconfig
Add prompt to Kconfig NRF70_SYSTEM_WITH_RAW_MODES.
It is assigned in a configuration file, but is not directly
user-configurable (has no prompt). It gets its value
indirectly from other symbols.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-03-27 17:17:42 +01:00
Andrzej Kuros
d15c9fe9a6 drivers: i2c_nrfx_twim: add exclusive access API
This commit provides an extension to the i2c_nrfx_twim driver.
It introduces possibility to acquire/release exclusive access to the
i2c bus. While the exclusive access to the i2c bus is acquired
you can access the underlying nrfx_twim driver directly.

Signed-off-by: Andrzej Kuros <andrzej.kuros@nordicsemi.no>
2025-03-27 17:17:32 +01:00
Björn Bergman
fe0b16583c cmake: linker generator: ld: Files for section input patterns
For CONFIG_USERSPACE the input from gen_app_partitions.py there is
a need to be able to specify input files as well as input sections
patterns for zephyr_linker_section_configure().  This is used for
app partitions from libraries (which generate input patterns like
foo.a:*(.data*)).

This adds documentation to zephyr_linker_section_configure() to clarify
what INPUT allows, and also adds some parsing tricks to ld_script.cmake
to properly add the file patterns when they are missing.

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-03-27 17:17:03 +01:00
Björn Bergman
9ac12b68b5 cmake: linker generator: ld: Fix alignment bug
It seems as if ld_script.cmake hasnt handled
zephyr_linker_section_configure( ALIGN ...) due to a typo
in a variable name,

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-03-27 17:17:03 +01:00
Björn Bergman
128698fd36 cmake: userspace: A stab at USERSPACE + CMAKE_LINKER_GENERATOR
All in all this makes cmake linker generator able to work for at least
most of the kernel tests and samples, on cortex m4.

Make the cmake linker generator have a file-structure more similar to
the ld-skeletons.

Add or edit groups, sections and logic to make the generator reflect
what the ld-skeletons do, esp. for kobjects and APP_SMEM, nonint and
some other details are also effected.

Use the new zephyr_linker_include_generated() and
zephyr_linker_include_var() functions to to handle
${DEVICE_API_LINKER_SECTIONS_CMAKE}, the kobject-prebuilt-*.h files and
APP_SMEM partition. Essentially the output from gen_app_partitions.py,
gen_kobject_placeholders.py.

Add ALIGN_WITH_INPUT on sections being put into DATA_REGION. This makes
the init layout work for ld.

This leverages the updates in gen_app_partitions.py to generate its
output as cmake linker generator sections too, and puts them into a
group defined in linker.cmake

Setup generator variables for alignment of APP_SMEM. Note that this does
not yet handle MPU_ALIGN which depends on the size of the section...

Fix broken k_object_assignment iterable section

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-03-27 17:17:03 +01:00
Björn Bergman
6c197f8961 scripts: Make gen_app_partitions.py cmake linker generator savvy
Tweak gen_app_partitions.py to be able to generate cmake linker
generator output as well as ld-script fragments.

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-03-27 17:17:03 +01:00
Björn Bergman
6f74d6fa90 cmake: linker generator: Functions for input from prev linker pass
Add methods for the linker-script generator to pick up information
from previus linkerpasses:
 * zephyr_linker_include_generated(FILE f.cmake [PASS X]  [KCONFIG])
   cmake-includes f.cmake in the relevant PASSes. This allows scripts
   to generate any content (e.g. sections or section configs) as if
   it was generated by the main cmake machiery. This is intended to
   cover the case of ld-script snippets generated by e.g.
   gen_app_partitions.py
   It can also parse KCconfig files to capture @CONFIG_FOO@ variables
 * @FOO[,undef:v]@ in an value or expression in the zephyr_linker_*
   inputs. This looks for a defintion of FOO (se below), and uses its
   value if found. If FOO is not defined, the whole @@ thing is left
   untouched, unless ,undef: is used, in which case v is used instead.
 * zephyr_linker_include_generated(FILE f.h [PASS x]) greps for f.h
   for #define FOO value to be accessed as @FOO@
 * zephyr_linker_include_var(VAR FOO VALUE V) allows the main
   cmake-script to set a @FOO@ variable.

Note that the #define support is VERY basic, and does not use a proper
pre-processor. It works for the current use of files generated by e.g.
gen_kobject_placeholders.py but is not a general solution.

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-03-27 17:17:03 +01:00
Björn Bergman
8382d67a9b cmake: linker generator: Refactor generator input file creation
Move creation of the generator arguments file from each target.cmake
into a function (zephyr_linker_generate_linker_settings_file).

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-03-27 17:17:03 +01:00
Björn Bergman
0b40dfa013 cmake: linker generator: ld: Implement MIN/MAX_SIZE for sections in ld
Implement the MIN_SIZE and MAX_SIZE options for the ld linker file
generator

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-03-27 17:17:03 +01:00
Björn Bergman
acdd816bdb cmake: linker generator: Add MIN/MAX_SIZE to zephyr_linker_section()
Add MIN_SIZE and MAX_SIZE options to zephyr_linker_section()
and zephyr_linker_section_configure().
This allows padding (for MIN_SIZE) and link-time checking (for MAX_SIZE)
of sections (and parts of sections).

Clarify comments for zephyr_linker_section_configure

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-03-27 17:17:03 +01:00
Björn Bergman
d3a88f7bfe cmake: linker generator: Handle NOT PASS and multiple PASS options
Make it possible to have multiple PASS parameters to
zephyr_linker_section() and zephyr_linker_section_configure() sections
(oring them) OR to have multiple PASS NOT p options (in which case the
sections applies in neither of the passes)

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-03-27 17:17:03 +01:00
Jérôme Pouiller
35fb417698 boards: silabs: siwx91x: Fix compatibility with BTP
The serial pipe driver is required when the Zephyr device acts as the
remote of a host application. Especially, frameworks like BTP rely on
this driver.

Until now, the "zephyr,uart-pipe" attribute was missing. So the serial
pipe driver was unable to start.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-03-27 14:02:23 +01:00
Ingar Kulbrandstad
db84181c22 Bluetooth: Mesh: Fix proxy after board reboot
When the board has been provisioned and the board is rebooted
it was not possible to connect to the board through the proxy
servcie. This fixes that the Mesh Proxy servive is restarted
after the board is rebooted.

Signed-off-by: Ingar Kulbrandstad <ingar.kulbrandstad@nordicsemi.no>
2025-03-27 14:02:12 +01:00
Andrej Butok
235a28318b tests: fat_fs_api: fix main-stack overflow for the RAM-disk case
- Fixes the main stack overflow for the fat_fs_api
  RAM disk configuration on real platforms.
- Sets CONFIG_MAIN_STACK_SIZE=3072. By default it is 1KB,
  but the stack usage is about 2KB.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-03-27 14:02:03 +01:00
Bartosz Miller
90299f0b0a tests: drivers: flash: Add non-Quad mode test for nrf52 and nrf53
QSPI NOR driver non-Quad mode was not tested before.
Add configuration that uses driver in the non-Quad mode.

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-03-27 14:01:54 +01:00
Elliott Cutmore
1788c701cb drivers: adc: adc_ads1x4s0x remove duplicated initialiser
Removed duplicated "vbias_level" initialiser in driver

Signed-off-by: Elliott Cutmore <elliott.cutmore@gmail.com>
2025-03-27 14:01:32 +01:00
Philipp Steiner
5ef4e8a128 boards: adafruit: esp32s2_feather: add support
add board support for adafruit_esp32s2_feather board series

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-03-27 14:01:21 +01:00
Fin Maaß
2260111cc6 drivers: i2c: litex: add mutex in litei2c
add mutex for the litei2c driver

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-27 14:01:11 +01:00
Fin Maaß
f874253166 boards: litex: vexriscv: add litei2c controller
add litei2c controller.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-27 14:01:11 +01:00
Fin Maaß
f7a0a54c31 drivers: i2c: litex: add driver for litei2c
add driver for litei2c.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-27 14:01:11 +01:00
Benjamin Cabé
43e8f11d94 doc: wemos: fix ReST underline
Use `=` sign instead of `-` to adhere to doc guidelines

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-27 09:52:43 +01:00
Benjamin Cabé
91489a7846 doc: wemos: adopt zephyr:board-supported-hw directive
Add hardware features table for Wemos boards

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-27 09:52:43 +01:00
Sylvio Alves
924c7cddf7 samples: ipm_esp32: do not skip CI test
This sample was skipped during hwmv2 bring up. Turn in back on.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-03-27 09:51:45 +01:00
Seppo Takalo
18b1af8b86 samples: net: lwm2m: Refactor to use NET_SAMPLE Kconfig prefix
It is easier to separate a sample application Kconfig
values from ones that configure something inside Zephyr.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-03-27 09:51:31 +01:00
Seppo Takalo
f9737e016f samples: net: lwm2m: Add support for nRF52840 on nRF9160DK
Add support for running LwM2M client on nRF52840 chip
using nRF9160 as a modem through serial port.
nRF9160 should run Serial LTE Modem application build
from nRF Connect SDK.

nRF9160DK board has two MCU, nRF9160 and nRF52840.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-03-27 09:51:31 +01:00
Tahsin Mutlugun
d4e87247f0 logging: backends: xtensa_sim: Drop SoC dependencies
Make Xtensa simulator logging backend depend on more generic
SIMULATOR_XTENSA setting instead of individual SoCs.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-03-27 09:51:17 +01:00
Daniel Mangum
36661dc9d4 mgmt: mcumgr: transport: remove dup LoRaWAN smp_reassembly_init
The LoRaWAN SMP transport uses MCUMGR_TRANSPORT_LORAWAN_REASSEMBLY to
enable reassembly. It selects MCUMGR_TRANSPORT_REASSEMBLY, which causes
smp_transport_init to call smp_reassembly_init on the passed transport.
This makes the subsequent call to smp_reassembly_init in the LoRaWAN
transport initialization redundant.

Signed-off-by: Daniel Mangum <georgedanielmangum@gmail.com>
2025-03-27 09:51:08 +01:00
Eric Holmberg
d7bf4b3ddd logging: backend_fs: disable ANSI color for filesystem logging
Before the fix for #77150 was merged, with LOG_BACKEND_SHOW_COLOR=n and
CONFIG_SHELL_VT100_COLORS=y the shell would still display colors by
enabling the flag in the shell_log_backend.c.

Now, LOG_BACKEND_SHOW_COLOR has to be enabled to allow shell logging
color, but that writes ANSI escape sequences to the log files.

Explicitly disable ANSI color output for the filesystem logging backend.

Signed-off-by: Eric Holmberg <eric.holmberg@northriversystems.co.nz>
2025-03-27 09:50:59 +01:00
Anas Nashif
56c5e93cb7 ci: add empty CODEOWNERS file
Add an empty codeowner file redirecting to MAINTAINERSS.yml file for
clarity and to make some tooling happy.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-27 09:50:45 +01:00
Kiara Navarro
9207a1bcd7 fs: update module logging registration
All modules registered in fs subsystem uses:

LOG_MODULE_REGISTER(<module>, <log level>)

Lets update fs to follow same logic.

Signed-off-by: Kiara Navarro <knavarro@paltatech.com>
2025-03-27 03:50:22 +01:00
Dominik Ermel
fb71031445 modules: mbedtls: Expose MBEDTLS_RSA_C
Allow enabling MBEDTLS_RSA_C without key exchange enabled.
This allows to use RSA without enabling x509 support too.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-03-27 03:50:15 +01:00
Hake Huang
6eb176a279 samples: ipc_service: remove fatal_error when platform not supported
remove the FATAL_ERROR message, and leave it just as a message.
also enhance filter for this case with "1pc0" anmd "1pc1"

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-03-27 03:50:04 +01:00
Hake Huang
c5aacbc22a twister: runner: --prep-artifacts-for-testing protection
need add protection when check with sysbuild filter out
application, the domains is NULL

fixes: #87163

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-03-27 03:50:04 +01:00
Hake Huang
e469565244 openamp: remote: change platform allow to filter
change paltform allow to filter in align with the main
core application

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-03-27 03:50:04 +01:00
Dominik Ermel
350a223321 modules: mbedtls: Expose MBEDTLS_PLATFORM_NO_STD_FUNCTIONS
The commit adds Kconfig options that allows users to select
 - MBEDTLS_PLATFORM_NO_STD_FUNCTIONS
 - MBEDTLS_PLATFORM_SNPRINTF_ALT
allowing Mbed TLS to use alternative definitions of STD functions.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-03-27 03:49:53 +01:00
Robert Budai
d7e363e358 drivers: gpio: max22190: add max22199 extended support
The MAX22199 is an IEC 61131-2 compliant industrial digital input device.
The MAX22199 translates eight 24V current-sinking industrial inputs to a
serialized SPI-compatible output that interfaces with 3V to 5.5V logic. It
can operate as eight Type 1/Type 3 digital inputs or four Type 2 digital
inputs. The device provides diagnostic functions, including thermal
shutdown, 24V under voltage alarm, 24V missing voltage alarm, and SPI and
CRC communication error detection.

Signed-off-by: Robert Budai <robert.budai@analog.com>
2025-03-27 03:49:44 +01:00
Jukka Rissanen
17a4315998 net: mdns_responder: Print return value if error in socket call
If socket call fails when mdns_responder creates listeners, then
print the return value to make it easier to figure out what is
wrong. Typically one needs to increase the size of
CONFIG_ZVFS_OPEN_MAX if errno is ENFILE.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-26 21:57:18 +01:00
Derek Snell
725c0ebc50 doc: tests: drivers: spi_loopback: frdm_rw612 add comment
Document the signals to short to pass this test.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-03-26 21:57:05 +01:00
Tom Hughes
a9c5b72a6f tests: net: lib: http_server: Check response
Building with clang, it warns:

tests/net/lib/http_server/core/src/main.c:1400:19: error: variable
'http1_header_capture_common_response' is not needed and will not be
emitted [-Werror,-Wunneeded-internal-declaration]
static const char http1_header_capture_common_response[]
                  ^                             = "HTTP/1.1 200\r\n"

Add a check to make sure the response actually matches the expected
response.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-26 21:56:51 +01:00
Helmut Lord
1b6feab090 scripts: west: commands: completion: zsh: add "west shields" completion
Adds west shields completion to zsh, matching funtionality found in bash
autocomplete.

Signed-off-by: Helmut Lord <kellyhlord@gmail.com>
2025-03-26 21:56:33 +01:00
Muhammad Waleed Badar
4eec25814e dts: renesas: smartbond: Add DA14697 dtsi
- Add new device tree source include file for DA14697 SoC
- Update Kconfig and soc.yml to support the new device

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2025-03-26 21:56:22 +01:00
Chaitanya Tata
be4c79b01e samples: net: zperf: Optimize heap for nRF70 Series
Fine-tune the heap to get peak UDP (TX and RX) results but with minimal
heap consumption.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-03-26 21:56:14 +01:00
Sylvio Alves
9a6423baf2 samples: openamp: filter out esp32 appcpu core
ESP32xx appcpu board should only be built with procpu.
Stand alone AMP support makes no sense.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-03-26 21:56:01 +01:00
Sadik Ozer
478ced8149 modules: trusted-firmware-m: Use bl2_signed.bin image
If CONFIG_TFM_BL1 config has been enabled
bl2_signed.bin/hex image will be be generated during build tf-m
these binaries shall be used while generating tfm_merged.hex

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-03-26 21:55:50 +01:00
Sadik Ozer
dd71a2d2db modules: trusted-firmware-m: Define BL1 flags
Define BL1 and sign key for BL2 configs and pass them to the TF-M
This will allow to trigger BL1 over zephyr and specify BL2 sign key

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-03-26 21:55:50 +01:00
Nidhal BEN OTHMEN
a584534791 boards: st: nucleo_wba52cg: Remove the support of Nucleo WBA52CG board
Remove the support of the Nucleo WBA52CG board since it is NRND
(Not Recommended for New Design) and it is not supported anymore
in the STM32CubeWBA from version 1.1.0 (July 2023).

Signed-off-by: Nidhal BEN OTHMEN <nidhal.benothmen@st.com>
2025-03-26 21:55:39 +01:00
Sven Ginka
d02bc50375 board: sensry: ganymed_bob_sy120 - doc update
In this commit we updated the document page for the sensry
ganymed_bob_sy120 boards.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
Co-authored-by: Benjamin Cabé <kartben@gmail.com>
2025-03-26 16:26:54 +01:00
Torsten Rasmussen
6384f28a2d cmake: support directory as argument to zephyr_library_amend()
Extend `zephyr_library_amend()` to support an optional directory
argument.
The current `zephyr_library_amend()` works well when used inside a
Zephyr module with same structure, but fails when the macro is called
from Zephyr module integration code is located in a Zephyr
`MODULE_EXT_ROOT` because in this case the CMake code being executed
is not present in the Zephyr module itself, in which case the dir name
creation based on relative to module dir give wrong result.

For this use-case then support a base directory.
This also allows for use-cases in Zephyr modules where the directory
structure matching Zephyr's own structure is placed in a sub-folder.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-03-26 16:26:40 +01:00
Zhaoxiang Jin
7ed7cd191a modules: hal_nxp: Move hal_nxp glue layer to zephyr repo
Move hal_nxp glue layer to zephyr repo.
Fix build warnings and failures caused by hal_nxp upgrade.
Update manifest to contain hal_nxp changes.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-03-26 16:26:34 +01:00
Maximilian Deubel
916897f59e lib: tls_credentials: return size even if too big
The simple backend returns the size of the credential,
even if it is too big.
The secure backend should do the same,
our libraries depend on this behaviour.

Signed-off-by: Maximilian Deubel <maximilian.deubel@nordicsemi.no>
2025-03-26 16:22:28 +01:00
Jukka Rissanen
618ec363f2 samples: net: zperf: Add frdm-rw612 board
Set minimal set of options to enable running zperf with
NXP frdm-rw612 board.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-26 16:22:14 +01:00
Jukka Rissanen
2e3f564a95 wifi: shell: Allow setting band to 0 in connect
The help text for connect says

[-b, --band] 0: any band (2:2.4GHz, 5:5GHz, 6:6GHz]

but it disallows setting band to 0. Change this and allow
band 0 option when doing normal connect. Disallow setting
the band 0 when enabling AP mode.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-26 16:22:01 +01:00
Jukka Rissanen
a8da7d652f wifi: shell: Map negative status code to valid status codes
The negative status code is actually the errno which we might
get returned from lower levels. For example if user sets -t
(timeout) option, the -ETIMEDOUT might be returned. In this case
map the errno value to connection timeout status value.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-26 16:22:01 +01:00
Jukka Rissanen
92da8cb69f wifi: shell: Return text description of connection error
If "wifi connect" fails, tell user why in textual format.
This helps debugging connectivity issues.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-26 16:22:01 +01:00
Niek Ilmer
86c4b8d1f6 drv: bluetooth: Renesas: add Zephyr_blobs_verify
Add a Zephyr blobs verify check for Renesas HAL

Signed-off-by: Niek Ilmer <niek.ilmer.aj@renesas.com>
2025-03-26 16:21:46 +01:00
Erwan Gouriou
a98e3181b8 drivers: gpio: stm32: Cleanup unused defines
These defines are unused since 8d97f67159.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-03-26 16:21:34 +01:00
Alberto Escolar Piedras
38895d2bc0 manifest: Update nRF hw models to latest
Update the HW models module to:
fe4ff0e191a52de4f85ecc3475f0253eca6fc5bf

Including the following:
fe4ff0e CLOCK: Support having or not LFCLK
22f1642 54L CLOCK: Add option to control instantiation of POWER
        registers

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-26 16:21:09 +01:00
Peter van der Perk
c09a4baca0 spi_nxp_lpspi: Fix DMA not releasing lock on error
When spi_mcux_dma_next_fill failed it return without releasing
the lock

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-03-26 16:20:53 +01:00
Peter van der Perk
9f10418b8a spi_nxp_lpspi: Reset peripheral on startup
Ensure that LPSPI is in POR state when initializing

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-03-26 16:20:53 +01:00
Peter van der Perk
e086678d86 spi_nxp_lpspi: Fix ISR handler filling TX
Fixes wait for completion problems where the ISR was not sending
out TX NOP's when needed causing the transfer to timeout

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-03-26 16:20:53 +01:00
Emil Gydesen
092367cc8a samples: net: Replace OVERLAY_CONFIG with EXTRA_CONF_FILE
OVERLAY_CONFIG has been deprecated and replaced by
EXTRA_CONF_FILE. Update samples to reflect that.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-26 16:20:36 +01:00
Emil Gydesen
4fe81ec398 samples: Bluetooth: Replace OVERLAY_CONFIG with EXTRA_CONF_FILE
OVERLAY_CONFIG has been deprecated and replaced by
EXTRA_CONF_FILE. Update samples to reflect that.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-26 16:20:36 +01:00
Tom Hughes
918ae79522 net: mdns_responder: Replace pragma with TOOLCHAIN_DISABLE macro
These macros were recently introduced and replaced everywhere (#84065),
but this was missed.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-26 16:20:26 +01:00
David Schneider
8b65862a83 cmake: mcuboot: Flash confirmed file if available
In case a confirmed image gets generated, it should be used during
flash process.

If there is a valid application in second image slot, flashing
*.signed.hex will result in a unconfirmed image in first slot.
After reboot MCUboot will replace the unconfirmed image by swaping
the confirmed application from the second into the first slot.

Signed-off-by: David Schneider <schneidav81@gmail.com>
2025-03-26 16:20:13 +01:00
Corey Wharton
a7f6cee9de drivers: sensors: lsm6dsv16x: add support for lsm6dsv32x variant
The LSM6DSV32X part is nearly identical to the LSM6DSV16X but has different
sensitivity scales for the accelerometer (4-32G versus 2-16G). This commit
adds support for this part via the "st,lsm6dsv32x" compatible string.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-03-26 16:19:54 +01:00
Robert Lubos
e3804731b0 doc: mqtt: Add mention of MQTT 5.0 support
MQTT 5.0 is now supported so reflect this in the library documentation.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
9b7d5b8b00 doc: release-notes-4-2: Add entry for MQTT 5.0 support
Add bullet for 4.2 release notes about MQTT 5.0 support.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
8d59e44552 doc: migration-guide-4-2: Add entry regarding MQTT 5.0 API change
Update migration guide for 4.2 release with an entry about the API
change related to MQTT 5.0 support.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
f9b4e27856 net: mqtt: Make sure MQTT 5.0 is visible in API documentation
Make sure conditionally compiled parts of the public header related to
MQTT 5.0 support are rendered by doxygen.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
347653e72a tests: net: mqtt: Add MQTT 5.0 packet encoder/decoder tests
Add new test suite covering MQTT 5.0 packet format.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
8935579d0a net: mqtt: Improve disconnect error notification for MQTT 5.0
As MQTT 5.0 allows to specify the disconnect reason in the Disconnect
packet, use this new feature to improve error notification to the
broker, according to the error guidelines in the MQTT 5.0 spec.
For most cases, a generic arbitrary mapping between errno values and
reason codes is used, however the parser can specify the disconnect
reason code manually to better handle certain corner cases (like invalid
topic alias used).

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
e9da3b3e0c net: mqtt: Add support for MQTT 5.0 topic aliases
Add support for handling topic aliases received from the broker.
The MQTT client implementation will store received topic for further use
in case consecutive PUBLISH received from the broker contains no topic
but alias only.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
1d743fa65a net: mqtt: Add support for MQTT 5.0 AUTH packet
Add support for a new AUTH message introduced in MQTT 5.0.
This is a new mechanism specified by MQTT 5.0, which allows clients and
brokers for enhanced authentication in between CONNECT and CONNACK
exchange. An additional MQTT event (MQTT_EVT_AUTH) was specified which
is triggered when the AUTH packet arrives from the broker.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
55e1c10894 net: mqtt: Add MQTT 5.0 support for DISCONNECT
Add support for DICONNECT message specified in MQTT 5.0.
As with MQTT 5.0, the disconnect can now also be initiated by the
broker, it was needed to add decoder support for the message.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
2459ffae41 net: mqtt: Add MQTT 5.0 support for SUBACK/UNSUBACK
Add support for SUBACK/UNSUBACK messaged specified in MQTT 5.0.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
efd795b066 net: mqtt: Add MQTT 5.0 support for SUBSCRIBE/UNSUBSCRIBE
Add support for SUBSCRIBE/UNSUBSCRIBE messages specified in MQTT 5.0.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
c21e64251b net: mqtt: Add MQTT 5.0 support for PUBLISH ACKs
Add support for PUBACK, PUBREC, PUBREL and PUBCOMP specified in MQTT
5.0. As all of these acknowledgment packets have similar format,
introduced a common encoder/decoder to handle ACK packets.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
15ad90aceb net: mqtt: Add MQTT 5.0 support for PUBLISH
Add support for PUBLISH message specified in MQTT 5.0. The message
encoder and decoder were updated to support MQTT properties.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
6038676b83 net: mqtt: Add MQTT 5.0 support for CONNACK
Add support for CONNACK message specified in MQTT 5.0, along with
property decoders required to decode MQTT properties. Decoded properties
are provided to the application within mqtt_connack_param structure,
accompanying the CONNACK event.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
8fe2965500 net: mqtt: Add MQTT 5.0 support for CONNECT
Add support for CONNECT message specified in MQTT 5.0, along with
property encoders required to encode MQTT properties which is a new
concept in MQTT 5.0. Connect and will properties can be specified by the
application in the mqtt_client structure before connecting.

Introduce a helper function which allows to verify whether MQTT 5.0 is
used or not, so that it's still possible to use MQTT 3.1 even if MQTT
5.0 support is enabled in Kconfig.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
1eb9a5c241 net: mqtt: Fix helper macro for encoded binary data length
The macro did not take into account the 2-byte binary data length
encoded before the actual binary data.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
08f8e2f956 tests: net: lib: mqtt: v3_1_1: Add test variant with MQTT 5.0 enabled
Add test variant which enables MQTT 5.0 support. MQTT 3.1.1 should still
work just fine in such case, so it needs to be verified that's the case.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Robert Lubos
f31a45f57c net: mqtt: Add Kconfig to select maximum supported MQTT version
It should be possible to select maximum supported MQTT version, so that
for example MQTT 5.0 features can be compiled-out in case they're not
needed.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-26 16:19:42 +01:00
Håvard Reierstad
acccd46306 Bluetooth: Mesh: Test pb cancelling in bsim
Adds a provision test to check that provisioning bearers are cancelled
when a provisioning link is opened. Modifies the functionality for
receiving unprovisioned beacons to fail the test if a unprovisioned
beacon is received from the current provisionee after a threshold.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-03-26 16:19:31 +01:00
Håvard Reierstad
062fdc30bd Bluetooth: Mesh: Fix typo in prov bsim
Changes Brearer --> Bearer.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-03-26 16:19:31 +01:00
Håvard Reierstad
200628e8d0 Bluetooth: Mesh: Disable prov bearers on link
Previously, PB-GATT unprovisioned advs would continue being sent if a
device is provisioned or in the process of being provisioned (an active
provisioning link) over PB-ADV.

This commit introduces the `link_cancel` callback for the `prov_bearer`
struct. When a provisioning link is established over a prov bearer, all
other (active) prov bearers will be suspended through this callback, and
re-enabled when the link is closed. An exception is made for PB-REMOTE,
which can utilize the other bearers.

The call to `bt_mesh_pb_gatt_srv_disable` in settings.c is removed. This
is called in `mesh_commit`, and is not needed as this is only used
during boot, at which point the Mesh provisioning service has not yet
been enabled/registered, meaning the function does nothing.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-03-26 16:19:31 +01:00
Vinayak Kariappa Chettimada
1dfc53fd21 Bluetooth: Controller: Fix ull_hdr_get_cb for Peripheral role
Fix ull_hdr_get_cb() for advanced scheduling to return
ticks_slot for Peripheral role.

Relates to commit d6c3e04eb8 ("Bluetooth: Controller:
Central maximum data PDU size time spacing").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-26 16:19:19 +01:00
Etienne Carriere
54ca6aecd4 tests: drivers: device clock controls for stm32n6 series
Add device clock configuration tests for STM32N6 series boards.
These tests cover ADC, I2C and SPI, using ADC1, I2C1 and SPI5 that are
connected on nucleo_n657x0_q and stm32n6570_dk boards.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Etienne Carriere
b6bbc46610 tests: drivers: core clock controls for stm32n6 series
Add core clock configuration tests for STM32N6 series boards.
These tests covers CPU clock, system clock, PERCLK and LSE/HSE CSS
configuration.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Etienne Carriere
a4e00505dc drivers: clock_control: get_status handler for stm32n6
Add clock_control get_status handler for stm32n6 platforms.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Etienne Carriere
105d729aee drivers: clock_control: add TIMG prescaler on STM32N6
Add support for TIMG clock domain as clock source on STM32N6 SoCs.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Etienne Carriere
056d8ea25f dts: bindings: clock: stm32n6 TIMG prescaler
Add DT bindings for configuration of STM32N6 SoCs TIMG clock domain
prescaler.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Etienne Carriere
adc36f8cda drivers: clock_control: add HSI_DIV on STM32N6
Enable support for HSI_DIV and its use as a clock source on STM32N6 SoCs.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Etienne Carriere
0926bdb444 drivers: clock_control: add HCLKx and PCLKx source clocks on STM32N6
Enable support for HCLK, PCLK1, PCLK2, PCLK4 and PCLK5 as subsystem
clock sources identifiers on STM32N6 SoCs. HCLKx relates to the AHBx
buses clock and PCLKx relate to the APBx buses clocks.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Etienne Carriere
b78ada18b1 include: zephyr: dt-bindings: clock: stm32u5: fix refman reference
Correct references to STM32U5 series reference manual.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Etienne Carriere
175662eb72 include: zephyr: dt-bindings: clock: stm32n6: fix refman reference
Correct references to STM32N6 series reference manual.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Etienne Carriere
b228c075ad include: zephyr: dt-bindings: clock: stm32n6: add clock source IDs
Add some clock source identifiers that were missing for stm32n6xx
platforms.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Etienne Carriere
ce63ccfc5d include: drivers: clock_control: stm32n6 CPU clock selection macros
Add STM32_CPUCLK_SRC_* macros as helper macros to select which source
clock feeds the CPU clock on a STM32N6 SoC.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Tomasz Moń
75109707e3 usb: device_next: Do not add serial number without HWINFO
For many devices iSerialNumber is not required. The only device class
currently supported in Zephyr that requires iSerialNumber is MSC. If the
serial number is not available then iSerialNumber must be 0. Failure to
read the string descriptor for non-zero iSerialNumber fails USB Command
Verifier Chapter 9 tests.

When USBD_DESC_SERIAL_NUMBER_DEFINE() was used without CONFIG_HWINFO
then it did lead to runtime failure when requesting the string (thus
failing certification).

Fail USBD_DESC_SERIAL_NUMBER_DEFINE() at build-time if CONFIG_HWINFO is
not set to prevent the surprise at runtime. Only define serial number
descriptors if CONFIG_HWINFO is enabled.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-03-26 16:18:56 +01:00
cyliang tw
ca0f5f6924 tests: drivers: spi: spi_loopback: support numaker_m55m1
Add support for Nuvoton numaker board numaker_m55m1.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-03-26 11:34:17 +01:00
cyliang tw
30be9dae6f dts: arm: nuvoton: add spi nodes for numaker m55m1x
Update m55m1x.dtsi for spi support.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-03-26 11:34:17 +01:00
Sebastian Głąb
0d7f6d156c tests: boards: nrf: qdec: Add nRF54L20pdk to platform_allow
Enable test execution on nRF54L20pdk.
Overlay was already added.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-03-26 11:33:20 +01:00
Jamie McCrae
5c027f270e drivers: sensors: kconfig: Add sort
Adds sort to individual sensor Kconfigs and sorts them

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-03-26 11:33:11 +01:00
Jamie McCrae
f6730f7db3 drivers: serial: kconfig: Fix unsorted additions
Fixes Kconfig files that have not been added in the right place

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-03-26 11:33:11 +01:00
Ivan Iushkov
ded9c1f44d bluetooth: CS: add bt_le_cs_get_antenna_path()
added function to calculate antenna path
based on the antenna permutation index and
total number of antenna paths

Signed-off-by: Ivan Iushkov <ivan.iushkov@nordicsemi.no>
2025-03-26 11:32:57 +01:00
Michał Stasiak
99198dc550 dts: nordic: nrf54l20: add comparator node
Added missing comparator node to nRF54L20 devicetree.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-26 11:32:47 +01:00
Tomasz Moń
6e3f8d4967 drivers: udc_dwc2: Set control endpoint CNAK only when necessary
SETUP data is unconditionally ACKed by the controller. Other DATA
packets sent to OUT control endpoint 0 (i.e. OUT Data Stage packets
and OUT Status Stage packet) are ACKed by the device only if the
endpoint was enabled with CNAK bit set.

In Buffer DMA mode controller will lock up in following scenario:
  * OUT EP0 is not enabled, e.g. OUT Status Stage has finished
  * Host starts Control Write transfer, i.e. sends SETUP DATA0 and
    device ACKs (regardless if endpoint is enabled or not)
  * host sends OUT Data Stage (OUT DATA1)
      - software enables endpoint to be able to receive next SETUP data
	while host is transmitting the OUT token. If CNAK bit is set
        alongside the EPENA bit, the device will ACK the OUT Data Stage.
        If CNAK bit is not set, the device will NAK the OUT Data Stage.

When the lockup occurs, from host perspective the OUT Data Stage packet
was successfully transmitted. This can result in host starting IN Status
Stage if there was only one OUT Data Stage packet. This in turn results
in device never getting the DOEPTINT0 SetUp interrupt. Besides just not
getting the SetUp interrupt, any subsequent control transfer won't be
noticed by device at all.

The lockup was first observed while stress testing. The host was issuing
endless sequence of Control Write, Control Read, Control Write, Control
Read, ... commands. When the controller did lock up in Buffer DMA mode,
from host perspective the device was timing out all control transfers.

Avoid the Buffer DMA lockup by setting CNAK bit only when necessary.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-03-26 11:32:33 +01:00
Seppo Takalo
05abdf5d0b net: lwm2m: Deprecate LWM2M_ENGINE_MESSAGE_HEADER_SIZE
Kconfig value LWM2M_ENGINE_MESSAGE_HEADER_SIZE added
an extra headroom for CoAP packet sizes so that
if CoAP Block-Wise transfer block-size is configured
to be same as LWM2M_COAP_MAX_MSG_SIZE, the full
payload block would usually fit to the datagram.

This causes too much confusion to be usable.
CoAP headers and options vary on sizes, and there is
no runtime limitations that we should check the
header size against.

Only real limitation is the CoAP packet size, which
must fit into the UDP datagram with typical DTLS headers.

Only limitation for CoAP block-size then is that
it must fit into the CoAP message with all the headers
and options. But as the option sizes, like path, vary,
it must be checked runtime.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-03-26 11:32:23 +01:00
Pieter De Gendt
044a94f06a net: lib: coap: coap_server: Use eventfd instead of socket pair
Convert the socket poll logic to use a more lightweight eventfd file
descriptor instead of a socket pair.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-03-26 08:55:45 +01:00
Martin Thiede
338371e483 boards: nucleo_h755zi_q: fix debugging
This fix uses the stm32h745i-disco openocd configuration instead of the
st_nucleo_h745zi configuration as the latter seems to be broken in
openocd as shipped by zephyr-sdk-0.17.0.

Signed-off-by: Martin Thiede <martin.thiede@accenture.com>
2025-03-26 08:55:37 +01:00
Martin Thiede
5f935da80d boards: nucleo_h755zi_q: add CAN support on M7
Add CAN support by configuring fdcan1 in the device tree for the M7
core. As with other H7xx boards, it will be clocked by pll2 which is
also turned on.

Updated documentation.

Tested on nucleo_h755zi_q board.

Signed-off-by: Martin Thiede <martin.thiede@accenture.com>
2025-03-26 08:55:27 +01:00
Henrik Brix Andersen
b933c4ec65 doc: releases: migration-guide: 4.2: mention NEORV32 board variants
Mention that NEORV32 processor templates are now supported via board
variants and clarify the NEORV32 version compatibility entry.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-26 08:55:10 +01:00
Henrik Brix Andersen
348faba41f boards: others: neorv32: update documentation
Update the NEORV32 board documentation to list the supported board targets
and describe how to customize these to match custom NEORV32
implementations.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-26 08:55:10 +01:00
Henrik Brix Andersen
957ecf3a42 boards: others: neorv32: add minimalboot board variant
Add a MinimalBoot board variant for the NEORV32 board. The software
configuration of this board matches the NEORV32 "MinimalBoot" processor
template.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-26 08:55:10 +01:00
Henrik Brix Andersen
d866ca9018 boards: others: neorv32: add up5kdemo board variant
Refactor the existing NEORV32 board to become a UP5KDemo board variant for
the NEORV32 board. The software configuration of this board matches the
NEORV32 "UP5KDemo" processor template.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-26 08:55:10 +01:00
Henrik Brix Andersen
c2b3a2e393 boards: others: neorv32: do not enable CONFIG_GPIO by default
Do not remove CONFIG_GPIO by default for the NEORV32 board.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-26 08:55:10 +01:00
James Roy
e38cc894e3 drivers: counter: Fix incorrect error codes
Unimplemented interfaces should return
-ENOSYS instead of -ENOTSUP.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-26 08:54:58 +01:00
James Roy
d9f3ee4bb0 doc: releases: Add a counter release entry
Add the counter_reset function in the counter
subsystem to reset the counter value to zero.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-26 08:54:58 +01:00
James Roy
bcbf69ed9f drivers: counter: nrf: Add nrfx-timer implementation
Implement the '.reset' interface in the nrfx-timer driver
to allow the upper layers to use the counter_reset
function.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-26 08:54:58 +01:00
James Roy
d019aea47b drivers: counter: Add native-posix implementation example
Implement the '.reset' interface in the native-posix driver
to allow the upper layers to use the counter_reset
function.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-26 08:54:58 +01:00
James Roy
355d904c67 drivers: counter: Add counter_reset function
Add a counter_reset function to the counter subsystem
to reset the counter value to zero. Introduce
a reset interface at the driver layer to implement
the counter_reset function.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-26 08:54:58 +01:00
Jonas Spinner
a65e93a47d device: fix typo in device_deinit
Fix minor typo s/responsability/responsibility.

Signed-off-by: Jonas Spinner <jonas.spinner@burkert.com>
2025-03-26 07:09:00 +01:00
Håvard Reierstad
77b6035fce Bluetooth: Host: Doc: Name enums in gap.h
Names the enums declared in `gap.h` and replaces references to them
with Doxygen references (@ref).

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-03-26 07:08:44 +01:00
Jakob Riepler
7512eb0b65 drivers: fix support for U-Blox M10 modules with M8 driver
The U-Blox M10 seems to interleave UBX and NMEA messages in a way that
confuses the M8 driver leading to missing the same message that directly
follows the UBX part every time (leading to no navigation updates).
As the driver does not parse the UBX blocks during normal operation anyways
it can just be disabled.

Signed-off-by: Jakob Riepler <jakob+zephyr@chaosfield.at>
2025-03-26 07:08:27 +01:00
Ryan McClelland
248f7971e4 drivers: i3c: stm32: fix ibi build issue
Use the correct 'place' for the hj_pm_lock variable

Signed-off-by: Ryan McClelland <rymcclel@gmail.com>
2025-03-26 07:08:17 +01:00
Johann Fischer
21f4a7db60 usb: device_next: always reset endpoints to defaults on SetInterface
Disable/enable endpoints even if the new alternate is the same as the
current one, forcing the endpoint to reset to defaults.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-03-26 07:08:06 +01:00
Johann Fischer
87caef4389 usb: device_next: keep loopback function transfers going
Do not report canceled transfers as an error and continue the transfers
regardless of the previous transfer status.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-03-26 07:08:06 +01:00
Dat Nguyen Duy
8c1b7acaf8 west.yml: Pick up the change to fix the ETH1 RX clock
Pick up the change from hal_nxp to fix the ETH1 RX clock on NXP S32Z

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2025-03-26 07:07:55 +01:00
Ryan McClelland
9628d97ad9 drivers: i3c: remove group addr definition
The i3c group address support is rather very incomplete here. Remove
references to it. This could all easily come back when/if group support
comes in.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-03-26 00:47:00 +01:00
Benjamin Cabé
ca8ad7aa4e ci: doc: bump sphinx from 8.1.3 to 8.2.3 in /doc in the doc-deps group
Bumps the doc-deps group in /doc with 1 update: [sphinx](https://github.com/sphinx-doc/sphinx).

Updates `sphinx` from 8.1.3 to 8.2.3
- [Release notes](https://github.com/sphinx-doc/sphinx/releases)
- [Changelog](https://github.com/sphinx-doc/sphinx/blob/master/CHANGES.rst)
- [Commits](https://github.com/sphinx-doc/sphinx/compare/v8.1.3...v8.2.3)

---
updated-dependencies:
- dependency-name: sphinx
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: doc-deps
...

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-26 00:46:47 +01:00
Anas Nashif
7f62d193fc ci: use gh managed tokens in workflows
Do not use custom tokens, rely on GH provided and managed tokens.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-26 00:46:32 +01:00
Anas Nashif
f812de81e6 ci: workflows: rename do_not_merge workflow
Add more functionality to the workflow, it is not only about not-merging
anymore.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-26 00:46:20 +01:00
Anas Nashif
7b1e610cc7 ci: move PR body check to a different workflow
Move PR body check to a workflow that monitors editing of PRs.
Avoids rerunnin compliance check and other heavy weights workflows on
just an edit of the PR body.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-26 00:46:20 +01:00
Anas Nashif
66fa04962f ci: twister: convert to pull_request
Convert twister workflow to use pull_request.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-26 00:46:20 +01:00
Camille BAUD
42d36867cf MAINTAINERS: Add VynDragon to relevants
Adding myself to zones I want to help support

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-26 00:46:08 +01:00
Anas Nashif
e98105d9db doc: releases: update LTS3 EOL date
Based on change of LTS life time and life cycle decided by the TSC.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-25 22:16:43 +01:00
Benjamin Cabé
9b60782ac8 ci: github: Add workflow to ensure all GH actions are pinned
This commit introduces a new workflow that checks for SHA-pinned GitHub
Actions on pull requests.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-25 22:16:32 +01:00
Jan Behrens
411ca58146 drivers: stepper: Added fault event
Adds a fault event to stepper_event for stall unrelated problems.

Signed-off-by: Jan Behrens <jan.behrens@navimatix.de>
2025-03-25 22:16:17 +01:00
Lars-Ove Karlsson
becfd02203 toolchain: Add IAR warning macros
Add warning macros for IAR tools analogue to CLANG and GCC.

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-03-25 22:15:32 +01:00
Lyle Zhu
22ea55c7a0 Bluetooth: Classic: Move classic functions from conn.c to conn_br.c
Move functions `bt_sco_cleanup()`, `bt_conn_create_br()`,
`bt_hci_connect_br_cancel()`, and `bt_conn_get_dst_br()` from `conn.c`
to `conn_br.c`.

Change the function `bt_hci_connect_br_cancel()` to internal public
function.

Add a header file `conn_br_internal.h`. And declare the function
`bt_hci_connect_br_cancel()` in the header file.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-25 22:15:19 +01:00
Fabrice DJIATSA
0e1ffc7beb samples: code_relocation_nocopy: update macro to get flash size
The flash size is the second part (size) of the first reg value,

not the first part (address) of a nonexistent second reg value.

DT_REG_SIZE get a node's (only) register block size instead
DT_REG_ADDR_BY_IDX .

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-03-25 22:15:07 +01:00
Håvard Reierstad
c77587a76b Bluetooth: Host: Clarify use of identity in docs
Clarifies the use of identity in `bluetooth.h` by specifying whether the
documentation refers to the identity address, i. e. the actual address
`bt_addr_le_t`, or the identity handle, i. e. an index corresponding to
a specific identity address.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-03-25 22:14:55 +01:00
Fabian Blatz
a924b133a3 boards: native_sim: Associate sdl touch instance with display
Adds the device handle for the display to the zephyr,input-touch-sdl
instance.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-03-25 22:14:40 +01:00
Fabian Blatz
9564780564 drivers: input: sdl_touch: Associate display with instance
Make the zephyr,input-sdl-touch driver be multi instance and add the
possibility to associate it with a display. The input events are only
emitted if the events occured on this display.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-03-25 22:14:40 +01:00
Fabian Blatz
fdf9a6172b drivers: display: sdl: Store dev inside of window user_data
Adds storing of the zephyr display device struct inside of the windows
user_data, so it can be used inside of the SDL touch driver context for
checking the origin window of a received event.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-03-25 22:14:40 +01:00
Hake Huang
1847b882a2 tests: ztest: enable ztest_no_yield for all in PM
if CONFIG_PM=y, board will enter low power,
which will cause problem for debugger.
So for ztest cases, we need enable this to avoid problem.
This used to apply to soc/platform level, now remove them.

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-03-25 22:14:20 +01:00
Troels Nilsson
e486a06f0b Bluetooth: Controller: Remove unneeded members from ull_hdr
Several members of the ull_hdr can be removed, saving 12 bytes
from all ULL instances used (and a bit of code as well)

ticks_active_to_start is always 0 and can be removed completely

ticks_prepare_to_start is always set to
HAL_TICKER_US_TO_TICKS(EVENT_OVERHEAD_XTAL_US), so replace usage
of it by this constant

ticks_preempt_to_start is always set to
HAL_TICKER_US_TO_TICKS(EVENT_OVERHEAD_PREEMPT_MIN_US), so replace
usage of it by this constant

In addition, remove logic handling usage of XON_BITMASK since it
was only used by the long removed legacy LL

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-03-25 22:13:58 +01:00
Troels Nilsson
a87e8dce7d Bluetooth: Controller: Fix lost_payloads calculation for FT > 1
The lost_payloads calculation in ull_conn_iso_start() could easily
end up negative for CIS with FT > 1; Add a check to avoid this

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-03-25 22:13:45 +01:00
Andrew Davis
d56da370de MAINTAINERS: Add @glneo as collaborator for TI K3 platforms
This change adds @glneo as a collaborator for TI K3 platforms.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-03-25 22:13:33 +01:00
Andrew Davis
cb10eb1310 MAINTAINERS: Add @glneo as collaborator for BeagleBoard platforms
This change adds @glneo as a collaborator for BeagleBoard platforms.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-03-25 22:13:33 +01:00
Khoa Nguyen
c875ce71b0 samples: dac: Add DAC support for Renesas RA4 boards
Add support DAC for ek_ra4m1, ek_ra4w1, fpb_ra4e1,
voice_ra4e1, ek_ra4l1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-25 22:13:12 +01:00
Khoa Nguyen
c8027298ed tests: drivers: dac: Add support test app DAC for RA4
Add support test app dac_api, dac_loopback for Renesas
ek_ra4l1, ek_ra4w1, ek_ra4m1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-25 22:13:12 +01:00
Khoa Nguyen
538e797777 boards: renesas: Add DAC support for Renesas RA4 boards
Add support DAC for Renesas ek_ra4m1, ek_ra4w1, fpb_ra4e1,
voice_ra4e1, ek_ra4l1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-25 22:13:12 +01:00
Khoa Nguyen
f20b381fe1 dts: arm: renesas: ra: Add DAC support for Renesas RA4
Add support DAC for Renesas ra4-cm4 (RA4M1, RA4W1),
RA4E1, RA4L1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-25 22:13:12 +01:00
Khoa Nguyen
9093598d86 drivers: dac: Update Renesas DAC driver to support for RA4
Update Renesas DAC driver to support DAC for RA4

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-25 22:13:12 +01:00
Robert Budai
1489038f3b drivers: gpio: add max14917
MAX14917 is an eight high-side switch, specified to deliver up to 700mA
(min) continuous current per channel. The high-side switches have
on-resistance of 120mΩ (typ) at 25°C ambient temperature

Signed-off-by: Robert Budai <robert.budai@analog.com>
2025-03-25 22:13:01 +01:00
Tilmann Unte
224b5b744d drivers: sensor: mpu6050: scale settings to DT, adds sample rate setting
Moves the MPU6050 accel/gyro scale settings from KConfig to Devicetree.
Adds a new setting for the MPU6050 sample rate divider register and
transmits it to the sensor upon initialization.
This helps to reduce the interrupt firing rate when combined with the
data ready trigger.
A default division factor is provided which ensures compatibility with
existing applications.
The MPU6050 sample application is extended and used for hardware tests.

Signed-off-by: Tilmann Unte <unte@es-augsburg.de>
2025-03-25 22:12:49 +01:00
Neil Chen
41d5eed0d6 boards: nxp: frdm_mcxa156: Add config TEST_RANDOM_GENERATOR
Add config TEST_RANDOM_GENERATOR to support function sys_rand_get

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-03-25 22:12:36 +01:00
Neil Chen
3f6925d8bf boards: nxp: frdm_mcxa156: Support i3c for NXP frdm_mcxa156 board
Support i3c for NXP frdm_mcxa156 board.
Test it using samples/sensor/thermometer.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-03-25 22:12:36 +01:00
Neil Chen
bb1036fea7 dts: arm/nxp: Add i3c nodes to NXP MCXA156 dtsi file
Add i3c nodes to NXP MCXA156 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-03-25 22:12:36 +01:00
Neil Chen
cec2bf0eee drivers: syscon: support mcxa156 i3c clock in syscon driver
Add mcxa156 i3c clock support

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-03-25 22:12:36 +01:00
Valerio Setti
c9d8d57eb0 mbedtls: rename tls-generic Kconfig and configuration header file
Since there's now a single Kconfig and header file for Mbed TLS it makes
more sense to name them:
- Kconfig.mbedtls (instead of Kconfig.tls-generic)
- config-mbedtls.h (instead config-tls-generic.h)

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-03-25 22:12:25 +01:00
Valerio Setti
470f404eb6 mbedtls: remove unnecessary headers
These headers are basically a copy of those found in the official
Mbed TLS repo in the "configs" folder. However these are unmaintaned
(i.e. not updated when Mbed TLS is bumped to a new version) and
also unused in Zephyr. Therefore there's no benefit in keeping
them around.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-03-25 22:12:25 +01:00
Fredrik Gihl
e6ed809a07 drivers: sensor: tmp114: device tree support for setting oversample
Add support for setting oversample from `attr_set` and device tree

Signed-off-by: Fredrik Gihl <fgihl@hotmail.com>
2025-03-25 22:12:11 +01:00
Fredrik Gihl
83b1422f9c drivers: sensor: tmp114: Support setting odr
Add support for setting the sample frequency via `attr_set` and the
output data rate from device tree source.

Signed-off-by: Fredrik Gihl <fgihl@hotmail.com>
2025-03-25 22:12:11 +01:00
Fredrik Gihl
af0367f295 drivers: sensor: tmp114: Correct clang warning
Corrected clang warning introduced on commit 9eaf488

Signed-off-by: Fredrik Gihl <fgihl@hotmail.com>
2025-03-25 22:12:11 +01:00
Krzysztof Chruściński
1ac19d3e98 sys: cbprintf: logging: Fix opaque struct pointer warning
Use compiler trick to allow operations with all types of arguments.
Previous solution was using arg+0 with suppressing compiler warning
about pointer arithmetic operations but it was not covering for
opaque struct pointers.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-25 11:00:42 +01:00
Jukka Rissanen
f7d37ea87c net: ipv4: Add DiffServ DSCP code point definitions
Add DSCP defines for cases where the IPv4 packets need
classification.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-25 11:00:33 +01:00
Jukka Rissanen
0a0297229d net: Add helper to get sockaddr from sockaddr_storage struct
As one should not instantiate sockaddr struct (only have pointers
to it), but only use struct sockaddr_storage to store the
socket address information. In order to simplify the casting,
create net_sad() macro that casts a "struct sockaddr_storage *" to
"struct sockaddr *" which can then be used by other macros in the
networking stack.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-25 11:00:33 +01:00
Jukka Rissanen
95d352779e net: virtual: Add capability flag for VPN type interface
Allow user to mark the virtual interface as a VPN one.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-25 11:00:33 +01:00
Aleksandr Khromykh
928208cf36 Bluetooth: Mesh: to not set valid state if mesh is not valid yet
Commit sets valid state when mesh is actualy provisioned.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-03-25 11:00:22 +01:00
Francois Ramu
7bb0d75bdc west.yml: Update hal_stm32 with new pinctrl DTSI files
Update the hal_stm32 with the new pinctrl DTSI files
based on the stm32cubeMX 6.14.0
Especially defining the debug_njtrst_pb4 of the swj_port

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-03-25 11:00:17 +01:00
Ryan McClelland
9bce73a6e0 drivers: i3c: cleanup const
There is const used in a few places and some hacks to get around
that const. Just remove the const as well as remove the hacks.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-03-25 08:44:02 +01:00
Alvis Sun
79b526f65a drivers: i2c: npcx: add support for multi-address in target mode
This commit introduces support for the NPCX I2C driver to handle up to
8 addresses in target mode

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-03-25 08:43:52 +01:00
Emil Gydesen
a15cc2d37c tests: Bluetooth: BAP: Make RX checks less strict
Modify stream_rx.c so that the calls to FAIL are guarded
by the newly added valid_rx_cnt.

This helps prevent timing issues, especially with
broadcast, where the first SDU(s) may be delayed from
the application, and thus may be missed/contain errors.
Now it will only treat missing or error SDUs as a FAIL
if we have received a valid SDU. All fails, will still be
logged. We now also log both valid and total count.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-25 08:43:44 +01:00
Li Feng
3d9ac793be west.yml: update hal_intel to latest version
Update hal_intel to include more ish warm reboot handling.

Signed-off-by: Li Feng <li1.feng@intel.com>
2025-03-25 06:00:05 +01:00
Hao Luo
a460479ff7 drivers: ambiq: Correct peripheral instance calculation
This commit corrected ambiq peripheral instance calculations

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-03-25 05:59:42 +01:00
Yangbo Lu
660035d45d boards: nxp: imx95_evk: update doc and yml for NETC support on M7
Updated imx95_evk doc and yml for NETC support on M7.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-25 05:59:30 +01:00
Yangbo Lu
0238bc25b2 boards: nxp: imx95_evk: enable NETC PSI0 for M7
Enabled NETC PSI0 for M7.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-25 05:59:30 +01:00
Yangbo Lu
833cea98d5 boards: nxp: imx95_evk: add board init for NETC
Added board init for NETC.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-25 05:59:30 +01:00
Yangbo Lu
95f314734f soc: nxp: imx95: support M7 soc init for NETC
Added support for soc init for NETC.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-25 05:59:30 +01:00
Yangbo Lu
1ecf5698f6 tests: arm: exclude i.mx95 m7 for some interrupt tests
i.MX95 M7 is using multi-level interrupts with custom
interrupt handling. So, arm_custom_interrupt and
arm_irq_vector_table tests should exclude it.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-25 05:59:30 +01:00
Yangbo Lu
3d109d65ee soc: nxp: imx95: enable multi-level interrupts for m7
Enabled multi-level interrupts for m7 since IRQSTEER is used.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-25 05:59:30 +01:00
Yangbo Lu
95b638fcd2 dts: arm: nxp_imx95_m7: add NETC node and IRQSTEER node
Added NETC device tree node, and IRQSTEER node.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-25 05:59:30 +01:00
Yangbo Lu
ded3ce2974 dts: arm: nxp_imx95_m7: add power domain node and definitions
Added power domain node and i.MX95 power domain header file.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-25 05:59:30 +01:00
Yangbo Lu
605de63571 drivers: ethernet: eth_nxp_imx_netc: get irq from dts node
Added support to get irq from dts node, because some platforms may
use multi-level interrupts, and the system INTID may not be connected
directly to interrupt controller.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-25 05:59:30 +01:00
Yangbo Lu
af7ba736df west.yml: update hal_nxp to support i.MX95 NETC
Updated hal_nxp to support i.MX95 NETC.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-25 05:59:30 +01:00
Mahesh Mahadevan
bc5a60c812 boards: mimxrt700_evk: Fix USB failures
1. Update the USB clock init code
2. Pass a flag to USB HAL driver for cache
   management

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-25 00:32:14 +01:00
Sven Ginka
d7f6aa2f3c drivers: gpio: fixed - pin toggle (output reading)
Before that fix we read the inpupt register when toggling
gpios. With this fix, we now read the output register for
toggling a pin.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-03-25 00:32:01 +01:00
Pisit Sawangvonganan
a89060be0d drivers: i2c: shell: use shell_fprintf_normal instead of shell_fprintf
Due to the introduction of `shell_fprintf_normal` in PR #77192, we can
minimize caller overhead by eliminating direct `color` parameter passing.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-03-25 00:31:48 +01:00
Pisit Sawangvonganan
1991e57814 drivers: i2c: shell: align struct shell * argument name to sh
Aligned the `struct shell *` argument name from `shell_ctx` to `sh`
for consistency with other drivers' usage of `sh`, and to match
the `shell_cmd_handler` argument name.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-03-25 00:31:48 +01:00
Benjamin Cabé
2587bc2aa3 doc: releases: Intermediate update for new 4.2 boards/samples/drivers
Add new boards, drivers, samples added to 4.2 to date.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-24 19:34:18 +01:00
Fabio Baltieri
a6fabc04dd doc: releases: add a note about the kscan removal
Add a note about the removal of the kscan subsystem.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-03-24 19:34:10 +01:00
Fabio Baltieri
f00e3bd6ae doc: releases: fix a markdown title issue
Something got in between a chapter and its marker in a commit, fix it.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-03-24 19:34:10 +01:00
Valerio Setti
13270a43c1 cmake: modules: dts: print error message if DTC fails
Currently stderr is printed only if dtc encounters warnings, but it's
not printed in case of errors. However this information can be useful
to quickly identify and resolve the problem.

To solve this let's add "COMMAND_ERROR_IS_FATAL ANY" to execute_process()
so that CMake will fail in case of errors and a proper message will be
printed on the output.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-03-24 19:33:18 +01:00
Seppo Takalo
15b0f9033b modem: cmux: Do not return error on low buffer space
If we end up writing zero bytes to cmux output, we can return
zero instead of -ENOMEM as it would break various modules when
using small buffers. For example modem_chat.c does not tolerate
-ENOMEM but handles zero OK.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-03-24 19:33:07 +01:00
Seppo Takalo
4501ca1afe modem: modem_cellular: Migration guide for CMUX
Add migration guide for configuring MTU for CMUX.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-03-24 19:33:07 +01:00
Seppo Takalo
c78081e5cf modem: modem_cellular: Configurable MTU for CMUX
Allow configuring MTU for CMUX.
Some AT manual and specification define this as a
frame size. Linux ldattach default to 127 bytes,
3GPP TS 27.010 defaults to 31.

We should limit our CMUX frames to a size that
remote end is capable of handling.
Linux silently drops oversized frames.

Also, remove MODEM_CELLULAR_CMUX_MAX_FRAME_SIZE as
this was only limiting a buffer sizes, and resulted
CMUX frames to be capped to same value.
Use MODEM_CMUX_WORK_BUFFER_SIZE and MODEM_CMUX_MTU instead.

Also rename CONFIG_MODEM_CELLULAR_CHAT_BUFFER_SIZES to
CONFIG_MODEM_CELLULAR_CHAT_BUFFER_SIZE as it is now
only used as a Chat module. DLCI pipes use
CONFIG_MODEM_CMUX_WORK_BUFFER_SIZE.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-03-24 19:33:07 +01:00
Niek Ilmer
2df9e371f5 doc: Renesas: Remove manually inserted pictures
Get rid of the devkit pictures that where included in the old way

Signed-off-by: Niek Ilmer <niek.ilmer.aj@renesas.com>
2025-03-24 19:24:28 +01:00
Lyle Zhu
b78b855d04 Bluetooth: Classic: L2CAP: Fix building warnings
Use `UINT_TO_POINTER` to convert a number to pointer.
Use `POINTER_TO_UINT` to get a number from a pointer.

Fixes #87527.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-24 19:24:16 +01:00
Roudy Dagher
c67f17de0e boards: st: nucleo_l152re: fix LED polarity in device tree
Fix incorrectly defined LED polarity (GPIO_ACTIVE_LOW → GPIO_ACTIVE_HIGH)
to match hardware schematic and ensure consistent GPIO API behavior.

Fixes: #87424
Link: https://www.st.com/en/evaluation-tools/nucleo-l152re.html#cad-resources

Signed-off-by: Roudy Dagher <roudy.dagher@gmail.com>
2025-03-24 19:24:06 +01:00
Daniel Hajjar
a4e139b9f8 drivers: intc_ioapic: Fix Out of Bounds shift
Hexadecimal integer literals are signed if they can fit into a signed int,
which causes undefined behavior.

This happens here because 0xFF can fit into a signed int and then gets
left-shifted by 24, undefined behavior for signed integers.

Signed-off-by: Daniel Hajjar <daniel.hajjar16@gmail.com>
2025-03-24 19:23:55 +01:00
Ingar Kulbrandstad
a65a16424b Bluetooth: Mesh: Fix proxy advertiser handling with GATT server enabled
When the GATT server is enabled the proxy advertiser
server need to be stopped. This solved a bug where the
Mesh Proxy Service is not restared.
This fix is done to fix several failing PTS test that
was failing when CONFIG_BT_MESH_ADV_EXT_GATT_SEPARATE
was enabled. Calling the stop_proxy_adv was left out
in a prevouis commit when doing code cleanup.

Signed-off-by: Ingar Kulbrandstad <ingar.kulbrandstad@nordicsemi.no>
2025-03-24 19:23:45 +01:00
Grzegorz Chwierut
3acfeafa35 doc: twister: update the quarantine section
Update the quarantine section in the twister.rst documentation
to include information about excluding specific platforms,
architectures, and simulators

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-03-24 19:23:31 +01:00
Grzegorz Chwierut
5d049b6451 twister: Fix quarantine filtering simulations
Quarantine filter was not correctly identifying the simulator name.
Now it uses the simulator name from the Platform object,
ensuring that quarantined tests are properly excluded or verified

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-03-24 19:23:31 +01:00
Martin Durietz
022903f01b samples: boards: Add MCO support for nucleo_wl55jc
Added overlay and modified sample.yaml to support the nucleo_wl55jc
board in the MCO example.

Signed-off-by: Martin Durietz <martin.durietz@gmail.com>
2025-03-24 19:23:09 +01:00
Martin Durietz
17403aa14a dts: arm: st: wba: Add MCO1 peripheral to STM32WLdevice tree
Added MCO1 peripheral definition to the STM32WL device tree to enable
MCO functionality.

Signed-off-by: Martin Durietz <martin.durietz@gmail.com>
2025-03-24 19:23:09 +01:00
Martin Durietz
c7453da082 dt-bindings: clock: Add MCO register definition for STM32WL
Added MCO register definition to support MCO functionality in the STM32WL
series. This update also includes the addition of MCO_PRE_DIV and MCO_SEL
defines.

Signed-off-by: Martin Durietz <martin.durietz@gmail.com>
2025-03-24 19:23:09 +01:00
Michał Stasiak
1e97295622 tests: drivers: flash: extend support for nRF54L09 and nRF54L20
Added missing nodes, configurations and filters in
testcase.yaml.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-24 19:22:56 +01:00
Derek Snell
b259b18752 drivers: serial: uart_mcux_lpuart: add DTR, DSR, and DCD signals
Add support for additional line control signals.  Improved configuring
uart_config_flow_control options.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-03-24 19:22:42 +01:00
Mathieu Choplain
7288223a28 drivers: entropy: stm32: clear data available IRQ flag on WB09
The STM32WB09 TRNG does not clear FIFO_FULL IRQ flag in hardware once the
FIFO is no longer full, a behavior which differs from all other series.
This results in spurious IRQs, as the TRNG IRQ line effectively remains
high forever once a single interrupt has been generated.

Clear the flag in software after reading from the FIFO on STM32WB09 SoC.

N.B.: the error IRQ flag is already handled properly, as this flag must
also be cleared by software on other series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-24 19:22:30 +01:00
Mathieu Choplain
6cdc3ada3c drivers: entropy: stm32: simplify WB0-related #ifdef in LL wrappers
CONFIG_SOC_STM32WB09XX implies CONFIG_SOC_SERIES_STM32WB0X, making it
pointless to assert the latter is defined before checking the former.

Simplify #ifdef checks in the entropy driver's LL wrappers thanks to
this observation, by removing unnecessary nesting.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-24 19:22:30 +01:00
Khoa Tran
e1b90bf3d9 tests: i2c: add support for i2c sci-b on Renesas RA boards
Add Renesas RA board support for i2c test use sci_b_i2c:
- tests/drivers/i2c/i2c_api

Example for i2c use sci_b_i2c:

west build -b ek_ra8m1 tests/drivers/i2c/i2c_api/ -p always \
 -DDTC_OVERLAY_FILE=boards/ek_ra8m1_sci_b_i2c.overlay \
 -DCONF_FILE="boards/ek_ra8m1_sci_b_i2c.conf"

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-03-24 19:22:18 +01:00
Khoa Tran
ed65eb43d4 boards: renesas: add support for i2c sci-b driver on Renesas RA boards
Enable support of i2c sci-b driver on these boards: ek_ra8m1,
ek_ra8d1, mck_ra8t1

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-03-24 19:22:18 +01:00
Khoa Tran
be41f80e72 dts: arm: add i2c device node to sci device for Renesas RA family
This commit to add i2c device node to support i2c sci-b driver
on Renesas RA SoCs

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-03-24 19:22:18 +01:00
Khoa Tran
d0c0f1d036 drivers: i2c: initial support for i2c sci-b driver on Renesas RA family
First commit to add support for Renesas RA i2c sci-b driver

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-03-24 19:22:18 +01:00
David Lim
459a078d22 drivers: spi: cc13xx_cc26xx: Allow clocks below 2 MHz
Remove unnecessary check that the SPI clock is being set to a frequency
above 2 MHz to allow devices running at common lower frequencies (i.e.
1.2 MHz and 400 kHz).

Replace with check that the frequency is not below the minimum frequency
supported by the chipset to prevent overflow error which can occur if
the HAL sets a frequency too low resulting in a SPI clock much larger
than expected.

Fixes #69986

Signed-off-by: David Lim <dlim04@qub.ac.uk>
2025-03-24 15:11:01 +01:00
Troels Nilsson
0448f4bd55 MAINTAINERS: Add Tronil as collaborator for Bluetooth Controller
Also removes mtpr-ot from collaborators (account is no longer active)

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-03-24 15:10:49 +01:00
Pavel Vasilyev
7592b049ef bluetooth: mesh: pb_adv: Fix resending Generic Transaction Ack PDU
The Generic Provisioning protocol requires that a transaction must be
acknowledged before the next Generic Provisioning PDU is processed
(section 5.3.3, MshPRT_v1.1).

In the current PB-ADV implementation, if there is an ongoing transaction
(link.tx.adv points to a valid advertisement), any received Generic
Provisioning Start and Continuation PDUs are ignored.

This creates a scenario where a remote device misses the Transaction
Acknowledgment PDU and retransmits the last PDUs, but they are ignored
by the local device because the local device has already started sending
the next Provisioning PDU.

In particular, in the observed failure, the Provisioner missed the
Generic Transaction Acknowledgment PDU during the transmission of the
Provisioning Data PDU.

This commit modifies the processing logic for Generic Provisioning Start
and Continuation PDUs by checking if the received PDU has already been
received. If so, it attempts to re-send the Generic Transaction
Acknowledgment PDU.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-03-24 15:10:39 +01:00
Tomasz Moń
2aa26ad261 drivers: udc_dwc2: Optimize endpoint event clear
There is no point in calling k_event_test() to determine what events are
posted and then passing that value to k_event_clear(). Simply pass
UINT32_MAX to k_event_clear() and use the return value to slightly
reduce overhead.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-03-24 15:10:25 +01:00
Tomasz Moń
2395452656 drivers: udc_dwc2: Reset core on shutdown
OUT endpoint 0 cannot be disabled and therefore the only way to forcibly
reclaim the buffer is to reset the core. The reset does not finish if
PHY clock is not running, but just triggering the reset seems to be
enough to be able to reclaim the buffer.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-03-24 15:10:13 +01:00
Tomasz Moń
437983e2c9 drivers: udc_dwc2: Ensure overlapping USBHS reset
Wait for PHY clock before triggering START task to ensure overlapped
reset for PHY and DWC2 core.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-03-24 15:10:13 +01:00
Tomasz Moń
2be960ad2b drivers: udc_dwc2: Disable endpoint while hibernated
When the endpoint is disabled while the core is hibernated, there are
timeouts waiting for interrupts. It is not clear how the stack should
behave when class and/or application wants to disable the endpoint while
device is suspended. The problem was originally observed when the
endpoints were disabled as a result of usbd_disable() call.

Avoid the timeouts by modifying the backup values instead of the real
registers (which are not accessible when hibernated).

Split the 32-bit txf_set variable into two 16-bit variables (txf_set and
pending_tx_flush) because maximum number of TxFIFO instances is 16.
The txf_set variable is used as-is, while the pending_tx_flush is used
to keep track of TxFIFOs that have to be flushed on hibernation exit.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-03-24 15:10:13 +01:00
James Roy
afb75959e8 doc: releases: Add a new migration guide entry to espi
Add the following property renaming entries to
the migration:

* io_girq
* vw_girqs
* pc_girq
* poll_timeout
* poll_interval
* consec_rd_timeout
* sus_chk_delay
* sus_rsm_interval

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-24 15:10:06 +01:00
James Roy
32d5ad75c1 dts: bindings: espi: Change the property names in the DTS
Rename the following properties in bindings and DTS:

-- io_girq =>io-girq
-- vw_girqs => vw-girqs
-- pc_girq => pc-girq
-- poll_timeout => poll-timeout
-- poll_interval => poll-interval
-- consec_rd_timeout => consec-rd-timeout
-- sus_chk_delay => sus-chk-delay
-- sus_rsm_interval => sus-rsm-interval

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-24 15:10:06 +01:00
Evgenii Kosenko
c8e28d15b8 bluetooth: tester: btp_gap: adds set rpa timeout cmd
Adds BTP_GAP_SET_RPA_TIMEOUT command to btp, it allows dynamically set
Resolvable Private Address timeout.

Signed-off-by: Evgenii Kosenko <Evgenii.Kosenko@silabs.com>
2025-03-24 15:09:53 +01:00
Guillaume Gautier
3b8e472039 boards: st: stm32n6570_dk: enable xspi psram
Enables XSPI PSRAM on the STM32N6570-DK board.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-03-24 15:09:47 +01:00
Guillaume Gautier
3a7f4f70cc dts: arm: st: n6: add xspi1 node
Add XSPI1 node for STM32N6

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-03-24 15:09:47 +01:00
Guillaume Gautier
33b2b1481b drivers: memc: add driver for stm32 xspi psram
Add a driver for STM32 XSPI PSRAM in memory mapped mode.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-03-24 15:09:47 +01:00
Guillaume Gautier
d4153320de dts: bindings: memc: add bindings for stm32 xspi psram
Add bindings for STM32 XSPI PSRAM

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-03-24 15:09:47 +01:00
Lyle Zhu
9b8297545a tests: Bluetooth: BR: Add test suite sdp_server
IUT works as a SDP Server. The peer device, SDP client, is a PC with
running `bumble` on it.

Define 10 SDP records. 8 normal SDP records. one SDP record with large
service name that cannot be discovered by peer since the data length
exceeds the MTU of SDP. And one SDP record with large service name
that can be discovered by peer but `continuation state` needs to be
involved.

By default, no SDP record will be registered.
Add shell command `register_sdp` to register specific SDP record.
Add shell command `register_sdp_all` to register all normal SDP
records.
Add shell command `register_sdp_large` to register SDP record with
large service name that cannot be discovered by peer.
Add shell command `register_sdp_large_valid` to register SDP record
with large service name that can be discovered by peer.

In the test suite, there two test cases,
Case 1, discover the IUT.
Case 2, connect to the IUT. And send serial SDP discovery requests.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-24 15:09:26 +01:00
Andre Heinemans
2338f8efc5 samples: openamp_rsc_table: enable support for imx95_evk
openamp_rsc_table will run on the i.MX95 M7 core and can communicate
to the A55 that runs linux-imx.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-03-24 12:17:53 +01:00
Andre Heinemans
0da69b11aa dts: nxp_imx95_m7: Add mu7 to dts
The Messaging Unit 7 peripheral is made available for
use with IPC such as OpenAMP/RpMsg. MU7 connects
to the A55 core

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-03-24 12:17:53 +01:00
Andre Heinemans
ad65b81024 lib: open-amp: optional copy of rsc_table to memory region
Option OPENAMP_COPY_RSC_TABLE is added for cases where the placement of the
.resource_table section is not controlled by the remote. This option lets
zephyr do the copying of the .resource_table section to a specified memory
region.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-03-24 12:17:53 +01:00
Andre Heinemans
f0134cdd83 soc: nxp: imx: add .resource_table section for imx95
Add .resource_table section to the linker script for the
i.MX95. This section is used by intercore communication to
publish features and configurations to the remote

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-03-24 12:17:53 +01:00
Anas Nashif
be18415fc3 ci: codeql: enable on PRs
Enable CodeQL on PRs to catch issues before they are merged.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-24 12:17:19 +01:00
Emil Gydesen
1a2ea57885 Bluetooth: Classic: Shell: Remove last use of ctx_shell
The Bluetooth Classic sdp_client was the last user
of the ctx_shell, which could easily be removed.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-24 12:14:42 +01:00
Emil Gydesen
5fa78d09fe MAINTAINERS: Add tests/bluetooth/classic/ to Classic
Add the tests/bluetooth/classic/ path to the Bluetooth Classic
label and exclude it from the host (LE) label.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-24 12:14:34 +01:00
Benjamin Cabé
b2c2f905fb tests: lwm2m: add ignored vulnerabilities for CoAPthon3
CoAPthon3 is only used for testing, ignore PYSEC-2019-166.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-24 12:14:20 +01:00
Michał Stasiak
3f76006327 tests: drivers: counter: basic_api: Add nRF54L20 FLPR
Added common overlay for nRF54L20 cores.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-24 12:14:13 +01:00
Carles Cufi
98bea0d957 doc: getting started: windows: Switch to winget
Winget has become the standard Windows package manager, and it already
contains all the packages required for Zephyr development. Switch to it
from Chocolatey for simplicity and consistency with the OS.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-03-24 12:13:56 +01:00
Florijan Plohl
78f05163d6 drivers: audio: Add driver for tlv320aic3110
Add driver for the Texas Instruments TLV320AIC3110 audio codec.

Signed-off-by: Florijan Plohl <florijan.plohl@norik.com>
2025-03-24 12:13:51 +01:00
Krzysztof Chruściński
8d13b6b65b tests: drivers: uart: async_api: Align test to gcov
When CONFIG_COVERAGE is enabled then performance is degraded.
In that case higher baudrates shall be avoided because CPU may
not have enough time to handle UART interrupts. Limit baudrate
to 115200 when CONFIG_COVERAGE=y.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-24 09:58:57 +01:00
Jukka Rissanen
ff769d4c40 net: hostap: Set names for the threads
The interface workq thread and supplicant handler thread
did not had names set to them. Set the names so that it is
easier to find them from "kernel thread stacks" list.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-24 09:54:42 +01:00
Hao Luo
4744d138c2 drivers: ambiq: Change the way to power on ambiq drivers
This commit changes to use ambiq hal power control APIs
to replace the previous register settings to power on
ambiq drivers.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-03-24 09:54:17 +01:00
AbdElRahman Khalifa
b11703623c net: Add support for IPv4_MULTICAST_LOOP in net_context
Add support for the IP_MULTICAST_LOOP socket option to control
multicast packet loopback.

Signed-off-by: AbdElRahman Khalifa <abdelrahman.5alifa@gmail.com>
2025-03-24 09:54:05 +01:00
Irfan Ahmad
58d5e35f0d toolchain: Add assembly-side counterpart of __aligned
Zephyr toolchain abstraction provides a macro __aligned(x) to add specified
alignment, in bytes, to a chosen symbol for C/C++ source files but there is
no portable counterpart available for symbols defined in assembly source
files. This change-set adds a new macro ALIGN(x) for this purpose.

Signed-off-by: Irfan Ahmad <irfan.ahmad@siemens.com>
2025-03-24 09:53:55 +01:00
Eric Ackermann
4342d7108b drivers: ethernet: Add Xilinx AXI Enet driver
The Xilinx AXI Ethernet subsystem is commonly found in FPGA designs.
This patch adds a driver and device tree bindings for the Ethernet MAC
core and its MDIO controller.
The driver was tested on a RISC-V softcore in an FPGA design, with an
RGMII phy and Ethernet subsystem version 7.2 Rev. 14. Device tree
bindings match the device tree generated by Vitis hsi. Note that Vitis
generates one of the two included compatible strings depending on
version.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-03-24 09:53:43 +01:00
Josh DeWitt
c05cfbf15e kernel/sched: Re-sort waitq on priority change
k_thread_priority_set() on a pended thread wasn't re-inserting into the
waitq, causing the incorrect thread to run based on priority. When using
the scalable waitq config, this can also break assumptions of the tree
and leave the owner of a waitq still being in the waitq tree, cycles in
the tree, or a crash.

Remove and re-add a thread to a waitq to ensure the waitq remains in
order and the tree's assumptions are not violated.

To illustrate the issue, consider 4 threads in decreasing priority
order: A, B, C, and D along with two mutexes, m0 and m1. This is
implemented in the new complex_inversion mutex_api test.
1. D locks m1
2. C locks m0
3. C pends on m1
4. B pends on m1
5. A pends on m0, boosts C's priority, now tree on m1 is not sorted
6. D unlocks m1, left-most thread on tree is B. When removing B from
   tree it cannot be found because it searches to the right of C due to
   C's boosted priority when the node is actually on the left. rb_remove
   silently fails.
7. B unlocks m1, left-most thread on tree is still B and it tries to
   unpend itself, resulting in a NULL pointer dereference on
   B->base.pended_on.

Signed-off-by: Josh DeWitt <josh.dewitt@garmin.com>
2025-03-24 07:58:36 +01:00
Emil Gydesen
159de4c0b9 Bluetooth: Controller: Fix dependency for connected ISO Kconfigs
The options for BT_CTLR_CENTRAL_ISO and
BT_CTLR_PERIPHERAL_ISO did not have the proper defaults not
dependencies when BT_LL_SW_SPLIT=y

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-24 07:58:00 +01:00
James Roy
a07eb18755 doc: Add a new migration guide entry to DMA
Rename the nxp,a_on and dma_channels properties
to nxp,a-on and dma-channels in the devicetree
and bindings of the DMA subsystem.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-24 07:57:50 +01:00
James Roy
7b5af294a7 dts: bindings: dma: Change the property names in the DTS
Unify property names in bindings and DTS, using
hyphens (-) instead of underscores (_) as separators.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-24 07:57:50 +01:00
Jamie McCrae
cc453dfed8 cmake: Remove previously deprecated look-ups
Removes functions that would handle deprecated variables and
functionality from CMake within Zephyr that were deprecated in
Zephyr 3.1 onwards but before 3.7

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-03-24 07:53:31 +01:00
Johann Fischer
f6d338c1b1 usb: host: fix set/clear feature shell commands
Implement Set/Clear Feature endpoint halt request and
fix the corresponding commands in the shell.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-03-24 07:53:21 +01:00
Johann Fischer
9be4c0fed3 usb: host: fix shell device commands
The device command is broken due to the overhaul of how USB devices are
handled in the host stack. Add a device address argument to all device
commands and obtain a pointer to the USB device during command
execution.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-03-24 07:53:21 +01:00
Tom Hughes
424b255dd7 test: posix: timers: Fix unused function warning
Building with clang warns:

tests/posix/timers/src/clock.c:37:20: error: unused function 'tv_to_ts'
[-Werror,-Wunused-function]
static inline void tv_to_ts(const struct timeval *tv, struct timespec *ts)
                   ^
tests/posix/timers/src/clock.c:51:16: error: unused function 'tp_eq'
[-Werror,-Wunused-function]
_decl_op(bool, tp_eq, ==);     /* a == b */
               ^
tests/posix/timers/src/clock.c:52:16: error: unused function 'tp_lt'
[-Werror,-Wunused-function]
_decl_op(bool, tp_lt, &lt;);      /* a &lt; b */
               ^
tests/posix/timers/src/clock.c:53:16: error: unused function 'tp_gt'
[-Werror,-Wunused-function]
_decl_op(bool, tp_gt, &gt;);      /* a &gt; b */
               ^
tests/posix/timers/src/clock.c:54:16: error: unused function 'tp_le'
[-Werror,-Wunused-function]
_decl_op(bool, tp_le, &lt;=);     /* a &lt;= b */

tests/posix/timers/src/clock.c:59:20: error: unused function
'tp_diff_in_range_ns' [-Werror,-Wunused-function]
static inline bool tp_diff_in_range_ns(const struct timespec *a,
                   ^                   const struct timespec *b,

tests/posix/timers/src/clock.c:49:20: error: unused function
'tp_diff_in_range_ns' [-Werror,-Wunused-function]
static inline bool tp_diff_in_range_ns(const struct timespec *a,
                   ^                   const struct timespec *b,

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-24 07:53:10 +01:00
Lukasz Mrugala
52964cf0ab doc: Inform of option removal
We remove the --disable-unrecognized...,
so we should inform the users of that fact.

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2025-03-24 07:53:01 +01:00
Lukasz Mrugala
6ef4db88dd twister: Remove unrecognised sections test
The section lists that govern whether the ELF
section is recognised or not are out of date.

A programming bug has rendered the unrecognised
section check unrunnable for years.

Thus, the practically dead code of the
unrecognised section check is removed
in this commit.

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2025-03-24 07:53:01 +01:00
Anas Nashif
961593d152 Revert "ci: twister: move weekly to sunday [REVERT ME]"
This reverts commit c99325a8a5.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-23 10:24:07 -04:00
Anas Nashif
c99325a8a5 ci: twister: move weekly to sunday [REVERT ME]
Previous job failed, let's give it another try.

Should be reverted once workflow has started.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-23 10:15:49 -04:00
Anas Nashif
173468ca53 twister: filters: fix processing of platform scope
Optimize code and fix process being killed when llaunched with --all.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-23 10:15:30 -04:00
Perry Hung
5bbc6eef9f soc: atmel: samx7x: implement main oscillator bypass mode
Enable support for using an external clock as the main clock.
When bypass mode is enabled, the external crystal oscillator is bypassed,
and the main clock is directly driven by an external clock signal.

Signed-off-by: Perry Hung <perry@mosi.io>
2025-03-23 13:20:13 +01:00
Emil Gydesen
f6b54b1ce5 doc: Bluetooth: Audio: Update table of spec versions
Changed all to use the full version (e.g. 1.0.0 instead of
1.0).
Add version for the ones that were missing.
Changed version of CAP to 1.0.1.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-23 13:20:02 +01:00
Emil Gydesen
69b6679613 Bluetooth: tester: Fix name of btp_ascs_ase_found_ev
The event is a BAP event, and has been renamed to
btp_bap_ase_found_ev.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-23 13:19:51 +01:00
Tomas Groth Christensen
941c031238 boards: st: add initial support for the stm32h757i eval board
Add initial support for the STM32H757I-EVAL board.
Largely based on the STM32H747I-DISCO board

Signed-off-by: Tomas Groth Christensen <tgc@foss.dk>
2025-03-23 13:19:40 +01:00
Tom Hughes
53f17c1d78 cmake clang/compiler_flags.cmake: Re-enable -Wsometimes-uninitialized
All warnings in the code base have been resolved.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-23 13:19:27 +01:00
Tom Hughes
b4f8a7f711 tests: lib: cmsis_dsp: Fix -Wsometimes-uninitialized warning
Building libraries.cmsis_dsp.distance with clang warns:

tests/lib/cmsis_dsp/distance/src/f32.c:99:3: error: variable 'val' is
used uninitialized whenever switch default is taken
[-Werror,-Wsometimes-uninitialized]
                default:
                ^~~~~~~
tests/lib/cmsis_dsp/distance/src/f32.c:104:19: note: uninitialized use
occurs here
                output[index] = val;
                                ^~~
tests/lib/cmsis_dsp/distance/src/f32.c:57:16: note: initialize the
variable 'val' to silence this warning
                float32_t val;
                             ^
                              = 0.0

Not really necessary since there is a zassert_unreachable, but doesn't
hurt to initialize the variable.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-23 13:19:27 +01:00
Fin Maaß
7c11db9801 tests: drivers: mfd: add maxq10xx device
add maxq10xx mfd device to tests

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-23 13:18:44 +01:00
Fin Maaß
2a4b3148ed drivers: entropy: add maxq10xx
add maxq10xx entropy device.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-23 13:18:44 +01:00
Anas Nashif
56f7dc4c2e scripts: make sure we do not install vulunerable python packages
Make sure we install packages with no issues, some of the issues being
reporting on packages we might install using pip:

Warn: Project is vulnerable to: PYSEC-2019-41 / GHSA-qfc5-mcwq-26q8
Warn: Project is vulnerable to: PYSEC-2014-14 / GHSA-652x-xj99-gmcc
Warn: Project is vulnerable to: GHSA-9wx4-h78v-vm56
Warn: Project is vulnerable to: PYSEC-2014-13 / GHSA-cfj3-7x9c-4p3h
Warn: Project is vulnerable to: PYSEC-2018-28 / GHSA-x84v-xcm2-53pg
Warn: Project is vulnerable to: PYSEC-2017-74
Warn: Project is vulnerable to: GHSA-55x5-fj6c-h6m8
Warn: Project is vulnerable to: PYSEC-2014-9 / GHSA-57qw-cc2g-pv5p
Warn: Project is vulnerable to: PYSEC-2021-19 / GHSA-jq4v-f5q6-mjqq
Warn: Project is vulnerable to: GHSA-pgww-xf46-h92r
Warn: Project is vulnerable to: PYSEC-2022-230 / GHSA-wrxv-2j5q-m38w
Warn: Project is vulnerable to: PYSEC-2018-12 / GHSA-xp26-p53h-6h2p
Warn: Project is vulnerable to: PYSEC-2024-4 / GHSA-2mqj-m65w-jghx
Warn: Project is vulnerable to: PYSEC-2023-165 / GHSA-cwvm-v4w8-q58c
Warn: Project is vulnerable to: PYSEC-2022-42992 / GHSA-hcpj-qp55-gfph
Warn: Project is vulnerable to: PYSEC-2023-137 / GHSA-pr76-5cm5-w9cj
Warn: Project is vulnerable to: PYSEC-2023-161 / GHSA-wfm5-v35h-vwf4
Warn: Project is vulnerable to: GHSA-3f63-hfp8-52jq
Warn: Project is vulnerable to: GHSA-44wm-f244-xhp3
Warn: Project is vulnerable to: GHSA-56pw-mpj4-fxww
Warn: Project is vulnerable to: GHSA-j7hp-h8jx-5ppr
Warn: Project is vulnerable to: PYSEC-2023-175
Warn: Project is vulnerable to: PYSEC-2018-34 / GHSA-2fc2-6r4j-p65h
Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6
Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf
Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc
Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f
Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm
Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52
Warn: Project is vulnerable to: GHSA-c6fm-rgw4-8q73

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-22 14:03:56 -04:00
Quy Tran
4bbb617d25 manifest: hal_renesas: Update hal_renesas revision
Update hal_renesas revision to fix the Zephyr library warning

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-03-22 13:45:00 -04:00
Nikodem Kastelik
8b77098ca1 tests: drivers: spi: add test case for nRF54H20 SPIS120
New test case is for building an application simultaneously
utilizing SPIM120, SPIM120, SPIS120 and SPIS13x.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-03-22 13:38:34 +01:00
Nikodem Kastelik
f13c8a59e2 drivers: spi: nrf: add support for SPIS120 instance
SPIS120 is a SPI slave device with >8 MHz SCK compatibility.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-03-22 13:38:34 +01:00
Krzysztof Chruściński
125e5d8334 drivers: spi: nrfx_spis: Extend support for device runtime PM
Extend runtime PM to support fast instance (spis120) which requires
additional action in suspend/resume phase.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-22 13:38:34 +01:00
Nikodem Kastelik
d8506af12a soc: nordic: add support for SPIS120 instance
It is defined as spis120 rather than spi120,
because spi120 is already used for SPIM120 hardware instance,
but their base address is different.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-03-22 13:38:34 +01:00
Mathieu Choplain
c0362a98ae boards: st: nucleo_wb09ke: add and enable IWDG
Enable IWDG in board DTS and document as available.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-22 13:38:22 +01:00
Mathieu Choplain
4266136e3c boards: st: nucleo_wb07cc: add and enable IWDG
Enable IWDG in board DTS and document as available.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-22 13:38:22 +01:00
Mathieu Choplain
01f85d8ddd boards: st: nucleo_wb05kz: add and enable IWDG
Enable IWDG in board DTS and document as available.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-22 13:38:22 +01:00
Mathieu Choplain
d0639fedcf drivers: watchdog: iwdg_stm32: add support for STM32WB0
Add support for the STM32WB0 series to the existing STM32 driver for
Independent Watchdog peripheral.

NOTE: this commit only includes basic support for the watchdog.
STM32WB0 specificities such as the different possible clock sources, LSI
frequency measurement or window support are left for future implementation.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-22 13:38:22 +01:00
Mathieu Choplain
f4ee5fa48b dts: arm: st: wb0: add IWDG node to STM32WB0 series
Add a node for the Independent Watchdog to STM32WB0 series DTSI.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-22 13:38:22 +01:00
Jilay Pandya
b4b5d8b236 drivers: stepper: a4979: add stop function
add stop function to a4979 stepper controller

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-22 02:41:23 +01:00
Katarzyna Giądła
cefd85d16f samples: subsys: settings: Extend sample timeout
Defined timeout has not been enough for some platforms.
The change extendes timeout.

Signed-off-by: Katarzyna Giądła <katarzyna.giadla@nordicsemi.no>
2025-03-22 02:41:15 +01:00
Alberto Escolar Piedras
72502938b3 samples/drivers/mbox: Fix test regex
In 9d7ee123a5
the regex used to verify the sample is doing what it should was changed
in a way in which it cannot possibly pass.
Let's fix it.

While at it, in the same commit, the simulator version of the test was
merged with the real_hw version, but the test name kept "real_hw" which
is now missleading => let's fix it.

And let's set as integration platform the simulated target, so it
can actually be runtime tested in CI.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-22 02:41:05 +01:00
Damian Krolik
fa8eef0fbc settings: shell: improve reading and writing string values
Make reading and writing string values more flexible:
1. Eliminate the intermediate buffer when saving a string
   setting. This needlessly limited the maximum string
   length that could be saved using the shell command.
2. Do not add nor assume that a string saved in the settings
   includes the null-terminator. The settings subsystem uses
   metadata for encoding the value length, so there it is
   redundant to also store the null-terminator in flash.

By the way, also make sure the command handlers only return
-EINVAL and -ENOEXEC error codes as documented in the
handler type description.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2025-03-22 02:40:56 +01:00
Luca Burelli
766122f0cd doc: llext: add note on the loader types
Add a note on the new loader types available in LLEXT..

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>

Signed-off-by:
2025-03-21 14:41:30 -04:00
Luca Burelli
3fcd90339d llext: optimize allocations for read-only sections
When loading an extension, read-only sections that do not have
relocations and whose data is accessible from the ELF buffer can be
directly mapped as-is in the extension memory. This avoids the need to
allocate and copy unmodified data from the ELF buffer to the LLEXT heap.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-21 14:41:30 -04:00
Luca Burelli
e5594891ac llext: stricter alignment checks for MPU/MMU regions
This patch moves the alignment checks for MPU and MMU regions to the
beginning of the llext_copy_region() function. This is done to ensure
that the correct region alignment and size are used even in the case
where the region is reused from the ELF file buffer, avoiding MMU/MPU
configuration issues.

This also relaxes the same checks for regions that are accessed by the
kernel only (e.g. symbol and string tables), which do not need special
MMU/MPU treatment. This exposed an inconsistency in the MMU code, which
was setting the permission on the correct regions, but later restoring
the default permissions on every region, including the now-unaligned
ones.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-21 14:41:30 -04:00
Luca Burelli
9fa6a95e30 llext: add storage-specific buffer loaders
This patch adds three new macros to initialize an llext_buf_loader
structure with a specific storage type. The existing LLEXT_BUF_LOADER
macro is discouraged, since its storage type is not explicitly defined
in the code but relies on the CONFIG_LLEXT_STORAGE_WRITABLE option.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-21 14:41:30 -04:00
Luca Burelli
6c2b5f6c92 llext: introduce 'enum llext_storage_type'
This patch introduces an 'enum llext_storage_type' that defines the
storage type of the ELF data that will be loaded:

- LLEXT_STORAGE_TEMPORARY: ELF data is only available during
  llext_load(); even when the loader supports directly accessing the
  memory via llext_peek(), the buffer contents will be discarded
  afterwards.
  LLEXT will allocate copies of all required data into its heap.

- LLEXT_STORAGE_PERSISTENT: ELF data is stored in a *read-only* buffer
  that is guaranteed to be always accessible for as long as the
  extension is loaded.
  LLEXT may directly reuse constant data from the buffer, but may still
  allocate copies if relocations need to be applied.

- LLEXT_STORAGE_WRITABLE: ELF data is stored in a *writable* memory
  buffer that is guaranteed to be always accessible for as long as the
  extension is loaded.
  LLEXT may freely modify and reuse data in the buffer; so, after the
  extension is unloaded, the contents should be re-initialized before a
  subsequent llext_load() call.

To keep full compatibility with existing code, the storage type of
LLEXT_BUF_LOADER is determined by the CONFIG_LLEXT_STORAGE_WRITABLE Kconfig
option between LLEXT_STORAGE_PERSISTENT and LLEXT_STORAGE_WRITABLE.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-21 14:41:30 -04:00
Luca Burelli
63142a377a llext: (cosmetic) add allocated size to debug message
Adding this information allows easy cross-reference of the effects of
memory optimization changes between subsequent commits.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-21 14:41:30 -04:00
Declan Snyder
3a477c56dd tests: spi_loopback: Remove logging module
Since we are using ZTest, if we use the ZTest paradigm properly, we
don't need a logging module, since ZTest already logs what it does.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-21 14:41:02 -04:00
Declan Snyder
6bcee13d9b tests: spi_loopback: Use ZTest properly
Instead of having a bunch of giant if conditions and just running
all the test cases from one actual ZTest case, convert all the test
cases into proper ZTest test cases.

Removing the returns is now required because otherwise there will be
compiler warnings, and they were never doing anything anyways in the
event of zassert fail. ZTest cases are meant to report pass or fail with
ztest paradigm, not with return values and log messages.

Also move the test of the spi lock/release to a separate test suite
since it is not really testing an actual bus transfer, but rather a
that a feature in the SPI API is respected.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-21 14:41:02 -04:00
Declan Snyder
8b8765982a tests: spi_loopback: Standardize buffer defines
More boy scout rule, I noticed every single test case was using
different variations of C syntax to declare the buffers, this is
inconvenient to the reader, make a standard way to declare buffers used
for the test.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-21 14:41:02 -04:00
Declan Snyder
b0197282f9 tests: spi_loopback: Create transceive ztest wrapper
There was a lot of copy paste of this code:

int ret;
ret = spi_transceive_dt(spec, &tx, &rx);
if (ret) {
       LOG_ERR("Code %d", ret);
       zassert_false(ret, "SPI transceive failed");
       return ret;
}

This is quite redundant and can be simplified.
Also, return is not needed because a failed zassert
will not continue to return anyways.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-21 14:41:02 -04:00
Declan Snyder
362218c900 tests: spi_loopback: Clean up file defines
Following the boy scout rule, since I am using this test a lot lately
and going to improve it, the first step will be to clean up the
structure of the file. The following changes are made:

- Remove unused #includes
- Condense some #if #else macro defines or make into single line, to
  simplify the readability of the preprocessor code
- Move definitions around so that related things are all next to
  each other, instead of randomly scattered around the file
- Create section header comments for broadly related things in the file
  to improve developer navigation experience
- Introduce macro for copy pasted print buf size calculation
- A few minor comment edits

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-21 14:41:02 -04:00
Etienne Carriere
04ffa4edd1 drivers: clock_control: remove inline attributes in stm32 clock drivers
Remove the inline attribute from stm32 clock drivers functions
especially for functions that are only referenced in the clock API
operation structure and therefore cannot be inline. As a generic
comment, today compiler are smart enough to optimize embedded software
without needing inline function attributes in the source files.

This change hopes that next stm32 clock driver will no more replicate
this bad habit when using existing source files as implementation
examples.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-21 14:40:36 -04:00
Etienne Carriere
dcf4855fa4 drivers: clock_control: fix IN_RANGE() use in stm32 clock drivers
IN_RANGE() macro from zephyr/sys/util.h returns a boolean value
so it should be treated as such and not compared to a decimal value.
Fix stm32 clock drivers accordingly and simplify places where the
value is compared to true.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-21 14:40:36 -04:00
Etienne Carriere
6c2d354d9c drivers: clock_control: fix typo in STM32H7* clock init
Correct typo in STM32H7 HSI clock calibration directives introduced
in commit 6b167f2596 ("drivers: clock_control: add calibration for
h7 pllx_hsi") that currently has no functionnal impact but is worth
to be fixed for consistency.

No functional change,

Fixes: 6b167f2596
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-21 14:40:36 -04:00
Etienne Carriere
a6ae1d9268 drivers: clock_control: remove STM32H7RSX unused function
Remove function exported stm32_system_clock_update() defined in
STM32H7RS series clock driver but that is not used and not even declared.
There already exists a CMSIS SystemCoreClockUpdate() function in
STM32 HAL drivers for the exact same purpose one may use if needed.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-21 14:40:36 -04:00
Anas Nashif
3b6fe8677b ci: Add codeql workflow for python, actions, js
Integrate codeql code scanning from github to do basic static code
analysis on python, actions, js.

c/cpp to be added later.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-21 14:39:50 -04:00
Benjamin Cabé
911d803291 doc: ci: github: Require hashes during pip install
require hashes in doc ci workflow

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 14:39:29 -04:00
Benjamin Cabé
d794fe42f9 ci: doc: github: drop unused env variable
We get West from the action-zephyr-setup action

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 14:39:29 -04:00
Benjamin Cabé
df2bdb9a6f ci: doc: github: Build PDF from vanilla ubuntu
Moved away from a texlive docker container to a vanilla ubuntu runner
so that we can better track the actual dependencies a user needs to
build the PDF rather than relying on the gigabytes of random stuff
that the texlive docker container pulls in.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 14:39:29 -04:00
Benjamin Cabé
0bc512fa84 ci: github: update dependabot.yml to manage documentation dependencies
Added a new configuration for pip dependencies in the doc/
Groups all updates into one PR.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 14:39:29 -04:00
Benjamin Cabé
d161e29a12 ci: doc: update documentation dependencies to include coverxygen
Removed coverxygen installation from the CI workflow and added it to the
requirements.txt/.in files and make it easier for anyone to potentially
use it locally.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 14:39:29 -04:00
Benjamin Cabé
d64ed911f3 ci: doc: pin Python dependencies to specific versions/hashes
Use secure install for ̦Python documentation dependencies.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 14:39:29 -04:00
Benjamin Cabé
1185942575 ci: doc: github: check Doxygen MD5 checksum
Add a check that we're installing a legit Doxygen binary

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 14:39:29 -04:00
Andrzej Głąbek
a117d12ba6 include: spi: Restore warning in spi_config structure documentation
It was added in commit 7a8a4c9b3e,
but then, presumably unintentionally, was removed in commit
4c4e2c5213.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-03-21 17:06:29 +01:00
Nazar Palamar
e2af9e38e3 soc: infineon: update default IDLE_STACK_SIZE for PM
Update default IDLE_STACK_SIZE to 1024 for PM

Signed-off-by: Nazar Palamar <nazar.palamar@infineon.com>
2025-03-21 17:06:21 +01:00
Randy Scott
66e0bcc117 boards: ezurio: Fix FEM name for BL654PA DVK
For Kconfig auto-configuration of the FEM in the MPSL,
the node in the device tree MUST be named
"nrf_radio_fem".

Signed-off-by: Randy Scott <randy.scott@ezurio.com>
2025-03-21 17:06:10 +01:00
Aleksander Wasaznik
b2d21f9b87 Bluetooth: Host: Improve documentation of bt_le_ext_adv_start_param
This clarifies the documentation of `bt_le_ext_adv_start_param` and
`bt_le_ext_adv_cb.sent`, and links them by via references.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2025-03-21 17:05:50 +01:00
Niek Ilmer
1d65c4c5ed doc: Renesas: adopt board-supported-hw directive
Replace the old manual supported features block with
the awesome new directive.

Signed-off-by: Niek Ilmer <niek.ilmer.aj@renesas.com>
2025-03-21 17:05:32 +01:00
Lucas Tamborrino
054aced95c samples: boards: espressif: ulp
Add ULP directory for samples related to the
Ultra Low Power Coprocessor.
Add a sample to demonstrate the debug process of the LP Core

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-03-21 17:05:20 +01:00
Lucas Tamborrino
c6f84d0ba2 boards: espressif: esp32c6: Add LP Core board support
Add ULP Coprocessor board support for C6.
This requires a change in the board qualifier depending on the build
target.
Update esp32c6 overlay and configuration files to the proper name.

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-03-21 17:05:20 +01:00
Lucas Tamborrino
0b9e4e013a soc: espressif: esp32c6: Add LP Core
Add ULP Coprocessor support for ESP32C6.

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-03-21 17:05:20 +01:00
Jukka Rissanen
cc282e56e8 net: mdns_responder: Use memcpy instead of strncpy for iface name
Following warning is printed if using strncpy(), so use memcpy()
instead. Note that this is false positive as there is no error here but
in order to avoid the warning, change the copy function.

subsys/net/lib/dns/mdns_responder.c:1371:25: warning:
'strncpy' output may be truncated copying 7 bytes from a string
of length 8 [-Wstringop-truncation]
 1468 | strncpy(if_req.ifr_name, name, sizeof(if_req.ifr_name) - 1);
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

subsys/net/lib/dns/mdns_responder.c:1468:25: warning:
'strncpy' output may be truncated copying 7 bytes from a string
of length 8 [-Wstringop-truncation]
 1468 | strncpy(if_req.ifr_name, name, sizeof(if_req.ifr_name) - 1);
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-21 17:05:10 +01:00
Benjamin Cabé
1e75b82244 sensors: lsm6dsv16x: fix double-promotion warning
use roundf instead of round in Q31_SHIFT_VAL macro to avoid
double-promotion warning

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 17:03:53 +01:00
Sayooj K Karun
273d60164d net: sockets: IPv6_MULTICAST_LOOP Support
Add support for the IPV6_MULTICAST_LOOP socket option.
This option allows enabling or disabling the consumption of multicast
packets by the sender. By default, the socket option will be enabled.

Co-authored-by: Pieter De Gendt <pieter.degendt@gmail.com>

Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2025-03-21 14:19:08 +01:00
Robert Lubos
a61287e876 net: lib: tls_credentials: Rename TLS_CREDENTIAL_SERVER_CERTIFICATE
TLS_CREDENTIAL_SERVER_CERTIFICATE credential type is misleading, as in
fact it just represents a public certificate, it does not matter if the
certificate belongs to a server or a client. And actually, it was
already used in-tree for clients as well, for example in LwM2M.

Therefore rename the credential type to a more generic
TLS_CREDENTIAL_PUBLIC_CERTIFICATE and deprecate the old one.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-21 14:18:52 +01:00
Jukka Rissanen
82b43d50ea net: l2: dummy: Update sent statistics
Update dummy interface sent statistics as that was missing.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-21 14:18:25 +01:00
Jukka Rissanen
5076f5eee0 net: l2: virtual: Handle the packet if no attached interfaces
If there are no virtual interfaces attached to this virtual
interface, check if there is a RX handler for this virtual
interface and pass data to it.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-21 14:18:25 +01:00
Cla Mattia Galliard
799742a77b net: sockets_service: Always clear old events when registering
Clear all previous events when register is called a second time. This is
the same behavior as before, if the call happens with `len` equal or
greater then the previous call but in the case if `len` is less then the
first call, now, all events are cleared. This is more predictable behavior.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-03-21 14:18:08 +01:00
Valerio Setti
e2344739ac drivers: rtc: pcf8563: some fixes to the driver
- Define alarm_set_callback() only when CONFIG_RTC_ALARM is set otherwise
a warning will be generated at runtime for the function not being
used.

- add "static" keyword to all internal functions.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-03-21 14:17:45 +01:00
Abderrahmane JARMOUNI
4aaf463158 drivers: display: sdl: clear display only for supported pixel formats
Clear display only when display pixel format is actually supported
since buffer size depends on it.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-03-21 14:17:36 +01:00
The Nguyen
abde41911e samples: display: lvgl: add support for rtk7eka6m3b00001bu shield
Enable build support for samples/subsys/display/lvgl on rtk7eka6m3b00001bu

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-21 14:17:21 +01:00
The Nguyen
78c63263f5 samples: display: add support for rtk7eka6m3b00001bu shield
Enable samples/drivers/display build support for rtk7eka6m3b00001bu
display shield

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-21 14:17:21 +01:00
The Nguyen
6a7356f09c boards: renesas: remove unused pins defined on ek_ra8d1
Remove pinsels define for GLCDC Parallel LCD

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-21 14:17:21 +01:00
The Nguyen
6592d399ff samples: modules: lvgl: add support for rtk7eka6m3b00001bu shield
Add support for lvgl demo on rtk7eka6m3b00001bu display shield

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-21 14:17:21 +01:00
The Nguyen
81470023f8 tests: drivers: display: add support for rtk7eka6m3b00001bu shield
add build support for display_read_write on rtk7eka6m3b00001bu shield

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-21 14:17:21 +01:00
Danh Doan
582c931a8e boards: shields: add support shield rtk7eka6m3b00001bu
Add display shield rtk7eka6m3b00001bu support

Signed-off-by: Danh Doan <danh.doan.ue@bp.renesas.com>
Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-21 14:17:21 +01:00
The Nguyen
62ef40312d dts: bindings: add header map for Renesas RA Parallel Graphics Expansion
Add a pin header map for Renesas RA Parallel Expansion shield

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-21 14:17:21 +01:00
Danh Doan
0eef4fe150 drivers: display: extend support for renesas,ra-glcdc driver
Change pinctrl-0 dts prop as optional in case DSI display is used
Add these APIs support: set_brightness, set_contrast, get_framebuffer
Add a new config to select frame buffer section

Signed-off-by: Danh Doan <danh.doan.ue@bp.renesas.com>
2025-03-21 14:17:21 +01:00
Mark Wang
e5742b2405 bluetooth: avdtp: avoid that the ret and err exist together
Keep the err in code as it is convention in Bluetooth code, remove ret,
change error_code as avdtp_err_code for avdtp protocol error.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-03-21 09:53:49 +01:00
Jukka Rissanen
2f1a134f81 net: core: Free packet properly if TTL/hop limit is 0
We drop the packet if TTL or hop limit is 0, but we should
also unref the packet in this case because we return 0 to
the caller which is not then able to free the packet because
it thinks that the packet was sent properly.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-21 09:53:44 +01:00
Ruibin Chang
dcbd0d1397 drivers/sensor/ite/tach_ite_it8xxx2: run clang format
Run clang format.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-03-21 09:53:22 +01:00
Ruibin Chang
cbe1932a20 drivers/sensor/ite/tach_ite_it8xxx2: don't clear both tach status at once
When two tach use simultaneously, I find that the both tach status will
be cleared at once, which causes one of tach not to get rpm speed.
So I change it to clear status only one tach at a time.

This issue is reported by Huaqin:
https://partnerissuetracker.corp.google.com/issues/404067663?pli=1

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-03-21 09:53:22 +01:00
Jukka Rissanen
7752def63d test: net: ipv6_fragment: Set link layer protocol type for a packet
The test_send_ipv6_fragment_without_hbho() test did not set link layer
protocol type for the packet. It is needed in this case because we
are sending a ready made packet and the protocol type is unknown
otherwise.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-21 09:52:42 +01:00
Jukka Rissanen
fc16c42bf7 net: core: Do IPv4/6 packet checks only for those packet types
The check_ip() in net_core.c did not check that the packet
Ethernet type is either IPv4 or IPv6. This meant that we for
example checked TTL also for ARP packets which is pointless as
those are not IPv4 packets.

Fix this by checking the link layer protocol type of the packet
to be either IPv4 or IPv6 before doing L3 checks.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-21 09:52:42 +01:00
Jeppe Odgaard
62e1d4b449 drivers: rtc: rtc_ll_stm32: rework lock usage in rtc_stm32_set_time
Lock just before and just after accessing functions that modifies register
values.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-03-21 09:51:56 +01:00
Jeppe Odgaard
7c996c84ce drivers: rtc: rtc_ll_stm32: replace k_mutex with k_spinlock
This allows using this RTC driver from contexts where `k_mutex` use is not
allowed.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-03-21 09:51:56 +01:00
TOKITA Hiroshi
230280e0e9 boards: arduino: uno_r4: Add ADC, PWM, I2C, SPI, and TRNG
Add support for basic peripherals.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-21 09:51:47 +01:00
Mahesh Mahadevan
380494af38 samples: button: Enable PM Mode 3 on NXP RD_RW612
Enable testing this sample with PM Mode 3

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
97f1fd832d tests: pm: Enable standby power mode support on NXP RW612 Boards
Enable PM mode 3 on NXP FRDM_RW612 and RD_RW612 boards.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
c107859fca boards: nxp_rw6xx: Enable RTC counter support for RW6XX.
This is used as wakeup source to wakeup from Power Modes
3 and 4.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
8a3dc68996 soc: nxp_rw6xx: Add code to fire the GPIO callback
Call the API provided to fire a GPIO interrupt
if registered on wakeup from PM Mode 3.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
0cd23dc5b7 drivers: gpio_mcux_lpc: Provide an API to fire callbacks
Provide an API for other drivers to fire GPIO callbacks

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
419853f674 soc: nxp_rw6xx: Enable Power Domain Kconfig
Power Domains are used to re-enable peripherals
when exit Power Mode 3 (Standby).

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
f5ab199bb3 soc: nxp_rw6xx: Do not enable unused clocks
Update the clock init code to gate off unused clocks.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
1e492e8f91 soc: nxp_rw6xx: Add support for Power Mode 3
This maps to Zephyr power state Standby. In this power
state the OS Timer cannot be used as a wakeup source as
it will be powered off. Hence the counter is enabled
and RTC is used to keep track of system ticks and wakeup
the system.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
15d8fd2ad3 soc: nxp_rw6xx: Update SYS_CLOCK_TICKS_PER_SEC for PM mode 3
Since the clock source when running in PM mode 3 is the
slower 1KHx clock, we adjust the SYS_CLOCK_TICKS_PER_SEC
value to get better accuracy.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
8fde2b75d7 soc: nxp_rw6xx: Add support for XTAL32K clock
This clock is used for certain peripherals such
as RTC.
On certain RW612 boards such as rd_rw612_bga, XTAL32K
and ENET share pins. Add code to check if ENET and
XTAL32 are enabled at the same time.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
296716c850 dts: nxp_rw6xx: Add Power Domain Support
This is required to re-initialize the peripherals on
exit from Power Mode 3.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
a3d42ff1e9 dts: nxp_rw6xx: Add support for standby power mode
This maps to Power Mode 3 in the SoC.
Add RTC node that is used to wakeup from this mode.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
90042077b8 drivers: uart: Add PM action for NXP UART Flexcomm driver
Add power action callback handlers to the driver.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
d035847e0b drivers: gpio: Add PM Action for MCUX LPC driver
Add PM action for MCUX LPC driver

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 09:51:38 +01:00
Mahesh Mahadevan
d4d81637fb drivers: nxp: Fix selection of NOCACHE_MEMORY
Update how NOCACHE_MEMORY Kconfig is selected to
be based on CPU_HAS_DCACHE Kconfig.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-21 06:31:56 +01:00
Lyle Zhu
30c1ba17e3 test: Bluetooth: Classic: Rename SDP client test case
Change the test case name from `sdp.c` to ` bluetooth.classic.sdp.client`

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-21 06:31:40 +01:00
Ryan McClelland
8bf6dac549 drivers: i3c: dw: add rtio callbacks
Add the missing api callbacks for i3c and i2c rtio.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-03-21 06:31:07 +01:00
Ryan McClelland
28676ae9be drivers: i3c: shell: fix getmxds fmt3 defbyte check
Fix the checking on the getmxds for format 3.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-03-21 06:31:03 +01:00
Ryan McClelland
30b4b1bdf8 drivers: i3c: shell: fix getcaps fmt2 defbyte check
Fix the checking on the getcaps for format 2.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-03-21 06:31:03 +01:00
Johan Hedberg
0837ad5be8 Bluetooth: Host: Remove unused include
There's no need for scan.h in direction.c.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-03-20 21:58:44 +01:00
Chaitanya Tata
8fe1df6f59 samples: net: zperf: Remove fixed size config for nRF70
nRF70 now by default uses variale buffers.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-03-20 21:58:36 +01:00
Chaitanya Tata
0b8601cfbe samples: net: zperf: Fix RAM overflow for nRF70
nRF70 driver now uses a separate heap, so, no need to explicitly
configure the kernel heap.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-03-20 21:58:36 +01:00
Chaitanya Tata
71931a0864 drivers: nrf_wifi: Add a config option for variable bufs override
We need a way to disable the variable buffers override.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-03-20 21:58:36 +01:00
Chaitanya Tata
a409d31169 drivers: nrf_wifi: Fix get config
Only a single condition is specific to RAW mode, rest should be
unconditional.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-03-20 21:58:36 +01:00
Timothy Keys
02b4c1ba4c doc: releases: Fix merge issue
ref #87022

This line moved during merge. Move to right section.

Signed-off-by: Timothy Keys <timothy.keys@nordicsemi.no>
2025-03-20 21:58:23 +01:00
Lars-Ove Karlsson
4edb8af70c cmake: linker: Removed unnecessary regexp in link generator
In the linker script generator there was one error checking
construct that used regexp and that ended up in the generated
linker file, which caused parsing problems with the IAR
linker. It was unnecessary. Also updated
common-rom-kernel-devices.ld.

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-03-20 21:58:14 +01:00
Mahesh Mahadevan
4ef64e7ac0 boards: frdm_rw612: Add Display support
Add support to work with the LCD-PAR-S035 display
that is connected over the PMOD interface.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-20 21:57:58 +01:00
Mahesh Mahadevan
bde0a78d7c boards: shields: lpc_par_s035: Add Support to communicate over SPI
Add support for the LCD-PAR display to communicate over
the SPI bus which is available on the PMOD connection interface.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-20 21:57:58 +01:00
Tom Hughes
15411747e7 everywhere: Use correct macro for gcc-specific warnings
Many warnings were disabled for all compilers, even though they are
gcc-specific warnings. Now that clang has -Wunknown-warning-option
enabled, this can cause compilation failures when building with clang
toolchains.

Use TOOLCHAIN_DISABLE_GCC_WARNING for all gcc-specific macros.

https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
https://clang.llvm.org/docs/DiagnosticsReference.html

Fixes: #84138

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-20 21:57:47 +01:00
Tom Hughes
11d70c61e5 everywhere: Replace diagnostic pragmas with TOOLCHAIN_* macros
The TOOLCHAIN_DISABLE_WARNING/TOOLCHAIN_ENABLE_WARNING macros are easier
to read and compiler agnostic.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-20 21:57:47 +01:00
Tom Hughes
6f6d6d0f76 toolchain: Replace TOOLCHAIN_IGNORE_WSHADOW_BEGIN/END
The TOOLCHAIN_IGNORE_WSHADOW_BEGIN and TOOLCHAIN_IGNORE_WSHADOW_END
macros can be replaced with the more generic
TOOLCHAIN_DISABLE_WARNING(TOOLCHAIN_WARNING_SHADOW) and
TOOLCHAIN_ENABLE_WARNING(TOOLCHAIN_WARNING_SHADOW) macros.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-20 21:57:47 +01:00
Fabio Baltieri
c60ffe1e1b linker: update section names to be unambiguous
Recently 0ae0c3dc44 allowed for three digit priorities, this resulted
in objects potentially matching multiple sections, for example:

.z_init_PRE_KERNEL_2_0_0_
.z_init_PRE_KERNEL_2_?_*
.z_init_PRE_KERNEL_2_???_*

This does not seem to be detected by ld, but the IAR linker emits a
warning.

Add some extra qualifiers in the object section name to make it
unambiguous, this has the extra value of making it easier to interpret,
for example going from:

.z_init_POST_KERNEL_90_00012_

to

.z_init_POST_KERNEL_P_90_SUB_00012_

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-03-20 12:20:55 -04:00
Adrian Warecki
3df1ffe1d5 xtensa: mmu: Fix partition permission definitions
Fix K_MEM_PARTITION_P_RX_U_RX definition to allow code execution from
userspace. Add K_MEM_PARTITION_P_RX_U_NA definition that allows code
execution only by kernel.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2025-03-20 17:18:44 +01:00
Jukka Rissanen
fceb30d935 samples: net: vlan: Refactor VLAN support
Move the common VLAN setup code to samples/net/common directory
so that other network samples can utilize that too.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-20 17:16:10 +01:00
Jukka Rissanen
6dd239098b samples: net: txtime: Refactor VLAN support
Move the common VLAN setup code to samples/net/common directory
so that other network samples can utilize that too.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-20 17:16:10 +01:00
Jukka Rissanen
f47c5a6c6d samples: net: mdns_responder: Refactor VLAN support
Move the common VLAN setup code to samples/net/common directory
so that other network samples can utilize that too.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-20 17:16:10 +01:00
Jukka Rissanen
723cbb6df3 samples: net: echo-client: Refactor VLAN support
Move the common VLAN setup code to samples/net/common directory
so that other network samples can utilize that too.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-20 17:16:10 +01:00
Jukka Rissanen
3c6d3ed6c2 samples: net: echo-server: Refactor VLAN support
Move the common VLAN setup code to samples/net/common directory
so that other network samples can utilize that too.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-20 17:16:10 +01:00
Jukka Rissanen
4909faf705 tests: net: utils: Add tests for IP address string with mask
Add tests that will verify that IP address with an optional mask
string is properly parsed.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-20 17:16:10 +01:00
Jukka Rissanen
410bd4b0be net: utils: Add helper to parse ip address string with a mask len
Adding a helper to parse one or more IPv4/6 strings with optional
netmask or prefix length.

Example of the string:

   2001:db8::1/64,192.0.2.1,2001:db8::2,192.0.2.2/24

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-20 17:16:10 +01:00
Matthias Hauser
2c082445a1 boards: we: correct board name
correct board name in documentation

Signed-off-by: Matthias Hauser <matthias.hauser@we-online.de>
2025-03-20 17:16:00 +01:00
Troels Nilsson
35371e8db1 Bluetooth: Controller: Fix possible unaligned read for ISO timestamp
Use net_buf_pull_le32() to avoid alignment issues for the ISO timestamp

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-03-20 17:15:48 +01:00
Jukka Rissanen
cd1091bc0a net: shell: conn: Print all connection information
All connection information was printed only if connection debugging
was enabled which then did not print information about Wireguard or
DHCP handlers. Limiting the printouts like this is not really needed
so print all connection information with "net conn" command.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-20 17:15:36 +01:00
Jukka Rissanen
0341d6bf0c net: shell: iface: Allow user to set the default interface
It is useful in testing to allow user to change the default
network interface by "net iface default <index>".
Also print out the default interface for "net iface" and
"net iface default" commands.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-20 17:15:36 +01:00
Jukka Rissanen
62963396e0 net: shell: iface: Print low level information if iface dbg is enabled
Sometimes it is useful to view low level network interface information
in the network shell. Enable such prints if network interface debugging
is enabled.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-20 17:15:36 +01:00
Alberto Escolar Piedras
5295e10c26 tests/bsim/run_parallel: Fail if an explicitly listed test is missing
Instead of just printing a warning, fail (return != 0 to the shell)
if a test is missing, or a pattern does not match any test.

Also, warn (and return != 0) if no tests are found when SEARCH_PATH
is provided.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-20 17:15:27 +01:00
Alberto Escolar Piedras
865c881ed0 tests/bsim: UART: Do not attempt to run empty set of multidevice tests
We never got to add any multidevice tests to the UART driver tests.
So let's not try to run that empty set in CI.

(we have some multidevice UART tests for BT).

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-20 17:15:27 +01:00
Alberto Escolar Piedras
78e772660c tests/bsim/bluetooth: Fix BIS test for 54L15 an 5340
tests/bsim/bluetooth/ll/bis/tests_scripts/broadcast_iso.sh
was split in two in 872b19321f
but for the 54L15 and 5340 it was forgotten in the list of
tests to run.
Let's fix it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-20 17:15:27 +01:00
James Roy
242cb3d6e2 doc: releases: Restore the wrongly removed entry
Restore the migration entry that was magically
removed in PR-86332.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-20 17:15:03 +01:00
Krzysztof Chruściński
37fe7504ce soc: nordic: nrf54h: power: Add idle tracing calls
Add calls to sys_trace_idle and sys_trace_idle_exit in nrf54h specific
idle states to allow measuring CPU load on nrf54h20 when power
management is enabled.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-20 17:14:52 +01:00
Krzysztof Chruściński
29bc28a09a tests: debug: cpu_load: Extend filtering with riscv
Allow test execution for riscv since it now supports cpu_load module.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-20 17:14:52 +01:00
Krzysztof Chruściński
4026daa42e arch: riscv: Add support for CPU load measuring
Add sys_trace_idle_exit to RISCV cpu_idle functions and allow
enabling CPU_LOAD module for RISCV and disable it for SMP.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-20 17:14:52 +01:00
Martin Hoff
80f0801ef8 samples: Add silasb xg29_rb4412a to some sample.yaml with overlay
Enable to test samples on silabs xg29_rb4412a board.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-03-20 17:14:35 +01:00
Martin Hoff
2aca436791 boards: silabs: Update xg29_rb4412a.yaml file
Add new tag to xg29_rb4412a.yaml file and remove pm ignore tag in order
to enable more tests for the xg29_rb4412a board.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-03-20 17:14:35 +01:00
Martin Hoff
eeb709927f tests: drivers: add overlay/testcase for silabs xg29_rb4412a board
Add some overlay files for the silabs xg29_rb4412a board to enable tests
on the board. Also add the platform to some testcase.yaml files.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-03-20 17:14:35 +01:00
Declan Snyder
b990f96feb dts: counter: Remove old kinetis lptmr binding
Remove deprecated nxp,kinetis-lptmr compatible string
which is superseded by nxp,lptmr compatible due to
removing family specific name.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-20 17:14:28 +01:00
Declan Snyder
f013e20bc5 soc: nxp: Add missing resolve of system timer cfg
These socs were missing a config line to disable SYSTICK if the LPTMR is
configured for the system timer, similar to how other SOCs do this for
alternative system timers than systick.

This fixes build errors in the case where that lptmr kconfig is enabled.

Also, the LPTMR kconfig should be default no because it is a secondary
option for the system timer, being lower resolution than systick. This
also resolves build errors.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-20 17:14:28 +01:00
Emil Gydesen
d19abff476 Bluetooth: CSIP: Add support for dynamically setting set size
The set size can now be dynamically set and notified.
The rank is added as a argument in the case that changing
the set size, also affects the device's rank, as ranks
in a coordinated set needs to be continuous.

The set coordinator implementation has been updated
to support receiving the new set size, and providing
this information to the upper layers.

This commit adds a babblesim test for the new API,
as well as a shell command.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-20 14:23:40 +01:00
Troels Nilsson
30df4762e7 Bluetooth: Controller: Fix overhead check in ull_scan_aux for SLOT_AGNOSTIC
The current overhead check needlessly flushes some events for
CONFIG_BT_TICKER_SLOT_AGNOSTIC resulting in some lost or incomplete
advertising events; Use a lower overhead value for this configuration
to avoid that

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-03-20 14:23:21 +01:00
Emil Gydesen
f783e54160 tests: Bluetooth: Tester: Add mutex for uart_send
Since tester_send_with_index may be called in different threads,
we need to guard the 2 calls to uart_send to avoid
sending partial btp message from 2 or more threads.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-20 14:23:02 +01:00
Troels Nilsson
b6d32b94a0 Bluetooth: Controller: Fix missing initialization of expire_info_id
The scanner doesn't use the expire_info_id feature, so it needs to
be set to TICKER_NULL

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-03-20 14:22:38 +01:00
Nidhal BEN OTHMEN
a3d259e18c manifest: Update hal_stm32 revision with the commit cleaning the LL
Update the hal_stm32 revision with the commit cleaning the linklayer.

Signed-off-by: Nidhal BEN OTHMEN <nidhal.benothmen@st.com>
2025-03-20 14:22:21 +01:00
Nidhal BEN OTHMEN
9a82e95d72 soc: stm32wbax: hci_if: Re-write enable/disable IRQs
Migrate LINKLAYER_PLAT_EnableIRQ and LINKLAYER_PLAT_DisableIRQ
from linklayer_plat.c (hal/stm32 module).

Signed-off-by: Nidhal BEN OTHMEN <nidhal.benothmen@st.com>
2025-03-20 14:22:21 +01:00
Nidhal BEN OTHMEN
b357f81ce9 soc: stm32wbax: hci_if: Re-write enable/disable Radio IRQ with irq API
Migrate LINKLAYER_PLAT_EnableRadioIT and LINKLAYER_PLAT_DisableRadioIT
from linklayer_plat.c (hal/stm32 module) and adapt it using irq
Zephyr APIs.
Correct casting of irq type between using NVIC APIs or irq Zephyr APIs

Signed-off-by: Nidhal BEN OTHMEN <nidhal.benothmen@st.com>
2025-03-20 14:22:21 +01:00
Nidhal BEN OTHMEN
1b3feecfd8 soc: stm32wbax: hci_if: Increase the link layer thread priority
Increase the link layer thread priority to be more than the BLE CTRL
thread and more than the Zephyr BLE stack threads.

Signed-off-by: Nidhal BEN OTHMEN <nidhal.benothmen@st.com>
2025-03-20 14:22:21 +01:00
Nidhal BEN OTHMEN
43c00e5b6c soc: stm32wbax: hci_if: Clean code
Clean the code, rename some constants and variables for more
consistency.

Signed-off-by: Nidhal BEN OTHMEN <nidhal.benothmen@st.com>
2025-03-20 14:22:21 +01:00
Simon Gilbert
42c3a78148 i2c: stm32: Add cache memory support
Add basic cache memory support

Signed-off-by: Simon Gilbert <srdgilbert@gmail.com>
2025-03-20 12:17:50 +01:00
Simon Gilbert
26a8b36513 i2c: stm32: Added DMA stop for various i2c comms conditions
Added stop DMA fot transmit complete or other master end conditions

Signed-off-by: Simon Gilbert <srdgilbert@gmail.com>
2025-03-20 12:17:50 +01:00
Simon Gilbert
446a5ec49d i2c: stm32: Minor refactor of i2c_stm32_transfer function
Tidy up of i2c_stm32_transfer and added TX and RX semaphore inits

Signed-off-by: Simon Gilbert <srdgilbert@gmail.com>
2025-03-20 12:17:50 +01:00
Simon Gilbert
c38a938c32 i2c: stm32: Add DMA settings to yaml file
Add DMA options (phandle-array and names) to yaml file

Signed-off-by: Simon Gilbert <srdgilbert@gmail.com>
2025-03-20 12:17:50 +01:00
Simon Gilbert
8dbc30a0d5 i2c: stm32: Add macros to get settings from device tree
Add macrobatics to pull DMA settings from device tree

Signed-off-by: Simon Gilbert <srdgilbert@gmail.com>
2025-03-20 12:17:50 +01:00
Simon Gilbert
ce0358692a i2c: stm32: Add dma settings structs to config and data structs
Add initial DMA settings structs to stm32 i2c config and data structs

Signed-off-by: Simon Gilbert <srdgilbert@gmail.com>
2025-03-20 12:17:50 +01:00
Simon Gilbert
5fb27671fa i2c: stm32: Add config option to enable DMA support
Add option to enable DMA support

Signed-off-by: Simon Gilbert <srdgilbert@gmail.com>
2025-03-20 12:17:50 +01:00
Maximilian Deubel
878ab53698 drivers: sensor: add Bosch BMM350 magnetometer driver
Add driver for Bosch BMM350 magnetometer sensor.

Signed-off-by: Maximilian Deubel <maximilian.deubel@nordicsemi.no>
2025-03-20 12:17:41 +01:00
Guillaume Gautier
63840968e1 boards: st: stm32n6: add xspi ext flash
Enable XSPI external Flash for STM32N6570-DK and Nucleo N657X0 boards.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-03-20 12:17:32 +01:00
Guillaume Gautier
feb4c839ed dts: arm: st: n6: add xspi2
Add XSPI2 support to STM32N6

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-03-20 12:17:32 +01:00
Guillaume Gautier
c46f2beee7 drivers: flash: stm32: xspi: fix xspi driver for stm32n6
Add some ifdef to fix compilation error on STM32N6

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-03-20 12:17:32 +01:00
Guillaume Gautier
a8ae1dcdcc soc: st: stm32: n6: set vddio voltage
Set VddIO 2 and 3 voltage to 1.8V

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-03-20 12:17:32 +01:00
Arunmani Alagarsamy
601a9fab80 drivers: wifi: siwx91x: Add Wi-Fi status and statistics
This commit adds support for Wi-Fi status and statistics
functionalities:
- wifi status	  : Displays the current mode status.
- wifi statistics : Provides details on the transmitted and
                    received packet counts.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-03-20 12:17:22 +01:00
Arunmani Alagarsamy
2f29cb67b7 drivers: wifi: siwx91x: Add AP station disconnect functionality
This commit adds support the following wifi commands:
- wifi ap disconnect: Disconnect a specific station from the AP.
- wifi ap stations: List connected devices.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-03-20 12:17:22 +01:00
Arunmani Alagarsamy
7fc0a7b2d4 drivers: wifi: siwx91x: Add Access Point (AP) mode support
This commit introduces Access Point (AP) mode support
It enables the following AP-related commands:
- ap enable: Enable the AP mode.
- ap disable: Disable the AP mode.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-03-20 12:17:22 +01:00
Arunmani Alagarsamy
b578b06970 drivers: wifi: siwx91x: Add run time opermode
This commit enables the device to change its operating mode
at runtime.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-03-20 12:17:22 +01:00
Sudan Landge
0161118913 tests: arch: arm: verify Armv8.1-M MPU PXN
Adds a test to verify Armv8.1-M MPU architecture's PXN attribute.

Verify PXN via static mpu config by utilizing existing __ramfunc MPU region
Since previous commit changes the behaviour of __ramfunc region,
executing userspace code in this region in privileged mode will
result in an MPU fault while execution in unprivileged mode should
work fine.

Verify PXN via DT by creating a custom section in the unused SRAM region.
Since the overlay sets the PXN attribute for the SRAM, executing code
in this region in privileged mode will result in an MPU fault while,
execution in unprivileged mode should work fine.
Also, instead of testing DT config for each board, do it only for MPS3
boards that which can be tested with simulation.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-03-20 12:17:11 +01:00
Sudan Landge
637bd8f587 arch: arm: Add PXN attr for userspace MPU regions
What is the change?
 - PXN attributes is set for static mpu regions such that
   __ramfunc and __ram_text_reloc having userspace code
   cannot be executed in privileged mode.
 - Updated the notable change section to inform about the change in
   behaviour of code executed from __ramfunc and __ram_text_reloc MPU
   regions.

Why do we need this change?
 - The current static MPU regions allows executing userspace/unprivileged
   code from privileged mode which may not be expected and can lead to
   secure privileged escalation attacks.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-03-20 12:17:11 +01:00
Sudan Landge
d7c629696d arch: arm: Add PXN support for Armv8.1-M
What is the change?
This commit adds support for Armv8.1-M MPU architecture's PXN attribute.
This includes support for configuring MPU regions with PXN via
custom mpu_config, devicetree and static mpu_config.
The existing MPU region attribute macros are updated to retain existing
behaviour with this change with an addition of REGION_RAM_ATTR_PXN to be
used if one needs to configure a RAM region with PXN MPU attribute.

Why do we need this change?
Armv8.1-M architecture introduced a new MPU region attribute called
Privilege eXecute Never (PXN).
If an MPU region is configured with the PXN attribute set and if the,
processor attempts to execute code in this region while at
privileged level, a Memory Management Fault exception is triggered.

This ensures that specific tasks are executed only in unprivileged mode
and helps in preventing secure privilege escalation attacks.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-03-20 12:17:11 +01:00
Troels Nilsson
d028532fe9 Bluetooth: Controller: Select TICKER_LAZY_GET for PAST sender
BT_CTLR_SYNC_TRANSFER_SENDER does not work without BT_TICKER_LAZY_GET;
Add a select to the config

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-03-20 12:17:02 +01:00
Sergei Ovchinnikov
32b79cfd1c drivers: mfd: mfd_npm2100: add open drain and pull up config to int pin
Add possibility to configure open drain and pull up on nPM2100's
interrupt output through DTS flags.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-03-20 12:16:51 +01:00
Vineeta S Narkhede
fc974e36b0 net: mdns: Add support for iOS.
The query type used by iOS is HTTPS-65,
Adding HTTPS query type to support iOS.

Signed-off-by: Vineeta S Narkhede <VineetaSNarkhede@Eaton.com>
2025-03-20 12:16:43 +01:00
Grzegorz Ferenc
1bdffce3b2 doc: nrf5340dk: replace nrfjprog with nrfutil
Changed the runner in the west flash command to nrfutil.
NCSDK-30157.

Signed-off-by: Grzegorz Ferenc <Grzegorz.Ferenc@nordicsemi.no>
2025-03-20 09:33:54 +01:00
Troels Nilsson
334764d2fa Bluetooth: Controller: Use event_offset = 2 for large CIG Sync Delays
For a CIG with a CIG Sync Delay larger than a SDU interval, we cannot
be sure that we can target the very next ISO event when the CIG event
is ongoing; Only reduce event_offset if CIG Sync Delay is smaller
than an SDU interval

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-03-20 09:33:40 +01:00
Hao Luo
3b0d11dc65 drivers: i2c: Add cache support for ambiq i2c driver
This commit adds cache support for ambiq i2c driver

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-03-20 09:33:02 +01:00
Hao Luo
76d0552e09 drivers: spi: Add cache support for ambiq spic driver
This commit adds cache support for ambiq spic driver

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-03-20 09:33:02 +01:00
Khaoula Bidani
0364dd3512 drivers : rtc: clean up usage of "select USE_STM32_LL"
clean up usage of select USE_STM32_LL_RCC and
select USE_STM32_LL_PWR from Kconfig.stm32
this modifications due to the include unconditionally of
stm32xxxx_ll_rcc.h and stm32xxxx_ll_pwr.h in HAL.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-03-20 09:32:56 +01:00
Khaoula Bidani
c91e54ebb0 drivers : ipm: clean up usage of "select USE_STM32_LL_ipcc"
clean up usage of select USE_STM32_LL_IPCC from Kconfig.stm32
this modifications due to the include unconditionally of
stm32xxxx_ll_ipcc.h in HAL.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-03-20 09:32:56 +01:00
Khaoula Bidani
6fe0430017 drivers : entropy: clean up usage of "select USE_STM32_LL_rng"
clean up usage of select USE_STM32_LL_RNG from Kconfig.stm32
this modifications due to the include unconditionally of
stm32xxxx_ll_rng.h in HAL.
Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-03-20 09:32:56 +01:00
Khaoula Bidani
4d3cce4872 drivers : counter: clean up usage of "USE_STM32_LL"
clean up usage of select USE_STM32_LL_RCC, USE_STM32_LL_EXTI
and USE_STM32_LL_PWR from Kconfig.stm32
this modifications due to the include unconditionally of
stm32xxxx_ll_rcc.h, stm32xxxx_ll_exti.h and
stm32xxxx_ll_pwr.h in the HAL.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-03-20 09:32:56 +01:00
Khaoula Bidani
d6ebf10ef8 drivers : spi: clean up usage of "select USE_STM32_LL_spi"
clean up usage of select USE_STM32_LL_spi from Kconfig.stm32
this modifications due to the include unconditionally of
stm32xxxx_ll_spi.h in the HAL.
Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-03-20 09:32:56 +01:00
Jun Lin
a60d88e5cc drivers: bbram: npcx: bypass npcx49nf errata rev1.5 No.2.30
This commit workarounds the BBRAM status register write issue in npcx4:
A write operation to the BKUP_STS register might disable write to all
the Battery-Backed RAM (BBRM). The workaround is to perform a fake read
from the BKUP_STS register after every write to this register.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-03-20 07:21:23 +01:00
TOKITA Hiroshi
dbd1449132 samples: net: http_server: add extra config for enable DHCPv4
Add `overlay-dhcpv4.conf` for using this sample with DHCPv4.

When the DHCPv4 client is enabled, we must have a large number
for `CONFIG_ZVFS_EVENTFD_MAX`.
This sample may be frequently used with the DHCPv4 client,
so we'll add the extra config file.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-20 07:21:15 +01:00
TOKITA Hiroshi
0206dc2aaf drivers: i2c: dw: Enable PINCTRL conjuction with dt prop 'pinctrl-0'
If there is a pinctrl-0 property, PINCTRL will be enabled in
conjunction with it.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-20 07:21:03 +01:00
Josuah Demangeon
61a1cdf03f drivers: video: emul_imager: use a "PRIV" video CID
Use a video control ID in the private range rather than using an existing
CID, as the emulated imager does not effectively applies these properties
to the image feed and are just for API test purpose.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-03-20 07:20:55 +01:00
Josuah Demangeon
5c05fd5d2a drivers: video: api: do not wait the timeout
Fail immediately during tests rather than letting K_FOREVER trigger a CI
timeout.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-03-20 07:20:55 +01:00
Josuah Demangeon
283e502b07 drivers: video: emul_imager: remove the test pattern support
Remove the test pattern generator implemented inline in video_emul_imager,
as this feature is overlapping with VIDEO_SW_GENERATOR, and does not add
value to the driver.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-03-20 07:20:55 +01:00
Josuah Demangeon
b0712d0022 drivers: video: emul_imager: deduplicate the registers
Deduplicate the registers of "modes": only a single definition of each:
pixelformats, resolutions, framerate.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-03-20 07:20:55 +01:00
Josuah Demangeon
dfdbcbb12a drivers: video: emul_imager: remove dev->name from logs
Depending on the log mode selected, the device name will be visible
for every log message, so not useful to add it again in the log payload.
Various other log improvements also added.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-03-20 07:20:55 +01:00
Josuah Demangeon
a86da87a52 drivers: video: emul: store only one line of data
Only store a single line of the full frame. This allows to support a
large enough frame size to remove the Kconfig option, which simplifies
the implementation (fewer checks needed).

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-03-20 07:20:55 +01:00
Benjamin Cabé
c9a149349a ci: Update GitHub Actions workflows to follow principle of least privilege
Default to `permissions: read-all` in all workflows and then add
additional permissions as needed at the job level

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 18:53:52 -04:00
Josh DeWitt
0ae0c3dc44 linker: Allow for 999 priority levels in init levels
Some projects may have needs for more than 99 priority levels, so add
a third linker input section for each obj level.

Signed-off-by: Josh DeWitt <josh.dewitt@garmin.com>
2025-03-19 18:53:22 -04:00
Josh DeWitt
da867dbcfc tests: Ensure the maximum expected SYS init priority works
Add a test to ensure that the max expected 2-digit SYS init priority
works.

Signed-off-by: Josh DeWitt <josh.dewitt@garmin.com>
2025-03-19 18:53:22 -04:00
Josh DeWitt
0f46359cbf linker: Add underscore between the init level and priority
Ensure the priority is surrounded by underscores for clarity. This makes
sections show up as
z_init_PRE_KERNEL_1_0_0_ instead of
z_init_PRE_KERNEL_10_0_

Signed-off-by: Josh DeWitt <josh.dewitt@garmin.com>
2025-03-19 18:53:22 -04:00
Josh DeWitt
a87f6fef60 linker: Fix clang-format breaking linker macros
clang-format will remove the space after the equals sign causing link
issues. Disable clang-format for some linker macros since they should
not be formatted as C code.

Signed-off-by: Josh DeWitt <josh.dewitt@garmin.com>
2025-03-19 18:53:22 -04:00
Nidhal BEN OTHMEN
fe8a089a3f manifest: Update hal_stm32 to add released binaries of stm32wb
Update hal_stm32 to add the history of the released binaries
to be flashed in the Cortex-M0 coprocessor.

Signed-off-by: Nidhal BEN OTHMEN <nidhal.benothmen@st.com>
2025-03-19 18:52:22 -04:00
Ofir Shemesh
1be0d07b56 drivers: ethernet: phy_mii: Return -ENOTSUP for fixed-link config
Return -ENOTSUP in phy_mii_cfg_link when a fixed-link configuration is set,
indicating that MDIO read/write operations are not supported.

Signed-off-by: Ofir Shemesh <ofirshemesh777@gmail.com>
2025-03-19 18:51:42 -04:00
Ofir Shemesh
2eabbcc084 drivers: ethernet: nxp_enet: Handle -ENOTSUP for fixed-link in PHY config
Modified nxp_enet_phy_configure to handle -ENOTSUP returned by the PHY
driver, indicating a fixed-link setup. If -ENOTSUP is returned, a warning
is logged, and PHY configuration is skipped without causing initialization
to fail.

Signed-off-by: Ofir Shemesh <ofirshemesh777@gmail.com>
2025-03-19 18:50:55 -04:00
Benjamin Cabé
f254b5775a ci: doc: do not prevent running doc CI in forks
Building docs just works on vanilla GH runner so it can be convenient
to not prevent the workflow to run on forks.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 18:50:30 -04:00
Benjamin Cabé
e82ab80574 doc: do not trigger doc-build on PR touching tests/
There is no need to trigger a doc build when tests are being
changed.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 18:50:30 -04:00
Benjamin Cabé
8ce24da0cf ci: doc: bump and pin tj-actions/changed-files action
Ensure we run the latest version of this action (and align with what is
already used for bsim-tests)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 18:50:30 -04:00
Benjamin Cabé
2eec91d527 ci: doc: pin actions/checkout GH action
Following the revert in the previous commit, pin the actions/checkout
action to align with what is now the accepted practice in the project.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 18:50:30 -04:00
Benjamin Cabé
1baaaafabd Revert "ci: doc-build: do not check for changed files"
This reverts commit b80526658c
and restores the original use of looking for changed files
before triggering a documentation build.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 18:50:30 -04:00
Corey Wharton
1dd9308e2f drivers: i2c_dw: issue transfer abort on timeout
On timeout, it's possible for the controller to be in a bad state.
This change initiates the transfer abort sequence which can recover
from these cases and make the bus usable again.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-03-19 20:31:25 +01:00
Jilay Pandya
71947627ce tests: stepper_api: add a4979 to common stepper api tests
Add a4979 to common stepper api test

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-19 20:27:35 +01:00
Anisetti Avinash Krishna
15a45e6fa8 include: zephyr: sys: time_units: Fix precision bug in z_tmcvt_32
Fixing the precedence of the cast in z_tmcvt_int_div_32 and
z_tmcvt_int_mul_32 functions so the final result is of type
uint32_t.

Fixes #87226

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-03-19 20:27:26 +01:00
Sylvio Alves
d8a02b8708 boards: esp32: yaml: ignore bluetooth tests
ESP32-S2 and ESP32-C6 does not have or support
bluetooth. Ignore any tests cases related to this peripheral.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-03-19 20:27:11 +01:00
Peter van der Perk
d2160e4f3b kinetis-tpm: don't enable AON/WU clocks on IMX9596
On IMX9596 the AON/WU clocks aren't controllable are on by default.
But TPM1 and TPM3 uses the clocks, by not enabling these clocks
on both TPM1/TPM3 will initialize succesfully.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-03-19 20:26:55 +01:00
James Roy
4f7e049ea1 doc: releases: Add a i2c release entry
Add the i2c_configure_dt function in the i2c
subsystem to simplify calls through spec by
eliminating unnecessary member references.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-19 20:26:45 +01:00
James Roy
a6f5897e21 drivers: i2c: Add an i2c_configure_dt function
Add an i2c_configure_dt function, that is equivalent
to calling i2c_configure(spec->bus, dev_config) to
simplify the calling.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-19 20:26:45 +01:00
Ram Mahesh
66b2a6ad2d drivers: ethernet: stm32: Add get_config() support
Implementation of get_config() api added
Fixes: #84898

Signed-off-by: Ram Mahesh <rammaheshram1234@gmail.com>
2025-03-19 20:26:09 +01:00
TOKITA Hiroshi
a191bf6bda dts: bindings: i2c: dw: Make included reset-device.yaml
The DesignWare I2C driver has already implemented supporting reset device
behavior.
However, the support is incomplete because the `snps,designware-i2c.yaml`,
does not contain a `reset-device.yaml`.

Add include directive to `snps,designware-i2c.yaml` to including
`reset-device.yaml` to complete the support for reset device.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-19 20:25:56 +01:00
Armin Brauns
bd98e0199b drivers: flash_stm32_qspi: fix DT accessor for flash size
The flash size is the second part (size) of the first reg value, not the
first part (address) of a nonexistent second reg value.

Signed-off-by: Armin Brauns <armin.brauns@embedded-solutions.at>
2025-03-19 20:25:37 +01:00
Benjamin Cabé
c1531b24e7 drivers: sensors: adxl367: fix clang compilation error
Added missing braces to case statements causing clang compilation errors

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 20:25:20 +01:00
Fin Maaß
fb43d75062 drivers: ethernet: phy: add zephyr-keep-sorted-start
add zephyr-keep-sorted-start to ethernet phy
CMakeLists.txt.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-19 17:16:17 +01:00
Fin Maaß
814421162f drivers: ethernet: dsa: move to own subdirectory
move dsa drivers to its own subdirectory

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-19 17:16:17 +01:00
Zafer SEN
7efbc7cde3 drivers: modem: modem_cellular: fix HL7800 communication timeout
HL7800 may enter sleep, blocking init without proper config.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-03-19 17:14:41 +01:00
Kyra Lengfeld
2ae411017d Bluetooth: Host: Improve bluetooth documentation
This commit imrpoves the bluetooth.h documentation by adding @briefs and
@details to all the structs and enums lacking such, as well as
clarifying the existing documentation.

Signed-off-by: Kyra Lengfeld <kyra.lengfeld@nordicsemi.no>
2025-03-19 17:14:31 +01:00
Jordan Yates
65bc07c95e soc: st: stm32: build warning for STM32_ENABLE_DEBUG_SLEEP_STOP
Add a warning in the build system if both `CONFIG_PM` and
`STM32_ENABLE_DEBUG_SLEEP_STOP` are enabled at the same time. The first
is likely only enabled if the SoC is intended to be driven into low
power states to save power, while the later prevents the SoC from being
as low power as it can be.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-19 17:14:19 +01:00
Chaitanya Tata
f790f1035c manifest: hostap: Pull fix for secure associations
commit 0e4cf09b55 has modified the
protocol to be encoded in network order, pull the fix to convert to host
order before using protocol field.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-03-19 17:12:57 +01:00
Alex Fabre
3c4c6fae2e kernel: add missing member initializer
This commit eliminates warning message raised by GCC when option
'-Wmissing-field-initializers' or '-Wextra'  is used.

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-03-19 17:12:15 +01:00
Lin Yu-Cheng
2d541a0777 driver: input: add input driver for rts5912
Add input driver for Realtek rts5912.

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-03-19 17:11:23 +01:00
Lukasz Fundakowski
d45396a6bb twister: Cleanup twister loggers
Removed logger.setLevel(...) from all twister modules, becasue
there should be only one place where twister loggers are configured,
and the log level should be set in that place.
This should be done in twister_main.py in setup_logging function.

Signed-off-by: Lukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-03-19 09:08:00 -04:00
Marek Slowinski
9946c358fc soc: miv: polarfire: Increase NUM_IRQS to cover 1st and 2nd level irqs
It was detected by test_sw_isr_irq_parent_table_idx in arch.interrupt:

ASSERTION FAIL [table_idx < (186 - 0)]
@ WEST_TOPDIR/zephyr/arch/common/multilevel_irq.c:91
table_idx(186) < IRQ_TABLE_SIZE(186)

NUM_IRQS was previously set to the same value as MAX_IRQ_PER_AGGREGATOR
and it didn't take into account the number of 1st level interrupts
specified by 2ND_LVL_ISR_TBL_OFFSET. In the generated __sw_isr_table,
Level 2 interrupts start at the offset specified by 2ND_LVL_ISR_TBL_OFFSET.

For PolarFire SoC, upper interrupt sources for PLIC correspond to
Bus Error Unit and Fabric Interface. They are currently not used by
platforms in Zephyr, so the previous value of NUM_IRQS hasn't caused
issues for regular applications.

As it doesn't look like an explicit memory optimization, increase NUM_IRQS
to allow kernel interrupt tests to pass.

Note:

2ND_LVL_ISR_TBL_OFFSET=13 and NUM_IRQS=199 don't include additional
48 Local Interrupts supported by cores. In total, there are
64 bits in Machine Interrupt Pending Register (mip)
which can be used to configure 1st level interrupts.

As a further extension to the platform, values could be extended to
2ND_LVL_ISR_TBL_OFFSET=64 and NUM_IRQS=250. This commit increases
NUM_IRQS by a minimal value required to pass kernel interrupt tests.

Link: https://ww1.microchip.com/downloads/aemDocuments/documents/FPGA/ProductDocuments/ReferenceManuals/PolarFire_SoC_FPGA_MSS_Technical_Reference_Manual_VC.pdf

Signed-off-by: Marek Slowinski <mslowinski@antmicro.com>
2025-03-19 09:02:06 -04:00
Lyle Zhu
11fc9642c0 Bluetooth: Classic: Add a function bt_conn_get_dst_br()
Add a function `bt_conn_get_dst_br()` to get the peer address of the
classic connection.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-19 09:01:51 -04:00
Anas Nashif
d13ccfd74c ci: clang: add workflow on push
Change workflow to work on push events.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-19 08:55:43 -04:00
Anas Nashif
ed222a9f1f Revert "ci: drop clang workflow, use main twister flow instead"
This reverts commit ecaa30329e.

Restore as a push workflow.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-19 08:55:43 -04:00
Benjamin Cabé
d5b2fcffa5 ci: scorecard: bump actions to latest as per dependabot
Apply dependabot suggested updates to the `scorecard` workflow to pull
latest versions of the actions.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 08:53:00 -04:00
Benjamin Cabé
078ac84db0 ci: pin "actions/" GitHub Actions to SHAs
This commit follows up on e808ccfxy and completes the pinning of *all*
GitHub Actions to SHAs, including GitHub-owned `actions/*` actions.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 08:53:00 -04:00
Lyle Zhu
773298893f Bluetooth: BR: Shell: clang-format
Clang-format subsys/bluetooth/host/classic/shell/bredr.c

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-19 08:52:07 -04:00
Lyle Zhu
0e792d4271 Bluetooth: BR: Shell: L2CAP mode support
Add more parameters to command `connect` and `register`, including mode,
mode_optional, extended_control, and hold_credit.

Add command `credits` to give the rx credit.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-19 08:52:07 -04:00
Lyle Zhu
bba7efa941 Bluetooth: BR: Shell: Add L2CAP basic function commander
Add a sub-command set `l2cap` for command set `br`.

Move command `l2cap-register` to sub-command set. And rename it to
`register`.

Add command `connect`, `disconnect`, and `send` for command set
`l2cap`.

Remove original net buffer pool from `data_pool` to `data_rx_pool`.
Add a net buffer pool `data_tx_pool` for command `send`.

Do not wait anymore if no net buffer can be allocated from
`data_rx_pool`.

Dump all received data in L2CAP data received callback.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-19 08:52:07 -04:00
Lyle Zhu
5fd98e10bd Bluetooth: L2CAP_BR: Sending multiple SDU at same time
Improve the retransmission and flow control to support sending
multiple SDU at the same time if the TX windows is not full.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-19 08:52:07 -04:00
Lyle Zhu
88bd18b6cd Bluetooth: L2CAP_BR: Add mode optional support
Add mode optional support for BR l2cap connect initiator role.

If `chan->rx.optional` is true, set the mode to basic mode instead of
return error code `-ENOTSUP`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-19 08:52:07 -04:00
Lyle Zhu
d2a10833dd Bluetooth: L2CAP_BR: Enable Retransmission and Flow control
Enable signaling channel configuration for retransmission and Flow
control feature.

Send I-frame and S-frame. Support retransmission and Flow control for
sending.
Receive and handle I-frame and S-frame.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-19 08:52:07 -04:00
Anas Nashif
ddcb8611ed ci: twister: use ci specific test configuration
Use a CI specific test configuration that forces samples to be built in
integration mode.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-19 08:51:50 -04:00
Anas Nashif
b0792bbfa2 twister: config: test on integration plaforms if defined
Add option to force integration mode on a defined list of tests, for
example tests for sample that are identified with 'sample.'.

A sample per definition shall be tested on documented and supported
platforms listed in the sample documentation. Samples shall not be used
as tests to verify functionality of a feature on all available plaforms
in Zephyr.

To still allow testing on platforms not listed in the doc, and when such
platforms are covered by the provided filter, we should still be able to
build/run the tests on those platforms (not directly listed in
integration_platforms).

We detect a sample by its test identifier, i.e., it starts with 'sample.'.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-19 08:51:50 -04:00
Łukasz Stępnicki
2bac5eec84 nrfs: added audiopll service
Added configuration for new audio PLL service.
Pull in new service implementation in new hal nordic.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-03-19 08:51:36 -04:00
Kapil Bhatt
9f7307fe84 drivers: wifi: Set reorder buffer size to half of RX buffers
For different values of reorder buffer throughputs are consistent,
Setting reorder buffer size to half of the RX buffers configured.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-03-19 08:51:09 -04:00
Lothar Felten
e4679e4e37 doc: lilygo: adopt zephyr:board-supported-hw directive
Replace manually authored hardware features table with the new Zephyr
board supported hardware directive which automatically generates an
up-to-date table based on the boards' Devicetree.
Removed some typos.

Co-authored-by: Benjamin Cabé <benjamin@zephyrproject.org>

Signed-off-by: Lothar Felten <lothar.felten@gmail.com>
2025-03-19 10:58:38 +01:00
Lyle Zhu
18b0ac9b9a Bluetooth: conn: Make bt_conn_lookup_addr_br() public
Move the declaration of the function `bt_conn_lookup_addr_br()` from
`conn_internal.h` to `conn.h`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-19 10:58:29 +01:00
Maochen Wang
cb65dfbd2b net: lib: zperf: improve UDP RX throughput
The original flow of socket_service thread handling the Zperf UDP RX
packets is: zsock_poll() polls all sockets for events, if ctx->recv_q
of Zperf is not empty, it will call trigger_work() -> udp_recv_data()
-> zsock_recvfrom() to read only one UDP packet from ctx->recv_q, then
go back to zsock_poll() and run the same process again, which is
inefficient.
The alternative solution is, in udp_recv_data(), it should exhaust all
the packets in the current ctx->recv_q, and then go back to
zsock_poll() to run the same process again.
In our Wi-Fi test case, for WPA3 security mode of 5GHz, the STA UDP RX
throughput can be improved from 91.48 Mbps to 99.87 Mbps, the SAP UDP
RX throughput can be improved from 85.97 Mbps to 96.00 Mbps.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-03-19 10:58:16 +01:00
Fabian Blatz
1ba9e4d707 drivers: display: sdl: Add support for L8 pixel format
Adds support for the 8bit grayscale pixel format to the SDL
display driver.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-03-19 10:58:06 +01:00
Lars-Ove Karlsson
bd278514e7 cmake: Fix warning levels for IAR
Rewrote the warning levels for toolchain IAR as IAR tools just turn
off warnings, not on. Also did some minor cleanup for coding
guidelines.

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-03-19 10:57:41 +01:00
Krzysztof Chruściński
a5d023a496 samples: drivers: adc: adc_sequence: Update nrf54h20 configuration
Add AIN9 pin in nrf54h20dk to verify AIN8-AIN13 inputs.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-19 10:57:33 +01:00
Krzysztof Chruściński
f2e1ac0da5 drivers: adc: nrfx_saadc: Add support for AIN8-AIN13 on nrf54h20
Extend support in dt bindings and in the driver to allow use of
AIN8 to AIN13 analog inputs.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-19 10:57:33 +01:00
Kapil Bhatt
1179014e10 drivers: nrf_wifi: Disable mgmt buffer offload
During raw scan, Need to disable NRF_WIFI_MGMT_BUFF_OFFLOAD.
UMAC will send beacon and probe responses directly to the host,
regardless of the mgmt_buff_offload flag's value.
Host needs to resubmit buffers to LMAC.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-03-19 10:57:27 +01:00
Michał Stasiak
32a4c9cb79 bluetooth: controller: remove select of ENTROPY_NRF_CRACEN_CTR_DRBG
ENTROPY_NRF_CRACEN_CTR_DRBG symbol is based on devicetree
node with compatible nordic,nrf-cracen-ctrdrbg. It does not
have to be selected explicitly.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-19 10:57:18 +01:00
Michał Stasiak
c3ca1aecb9 soc: nordic: enable west commands for nRF54L20 Enga cpuflpr
Enabled west flash and west erase for nRF54L20 PDK FLPR core.
Added missing reset qualifier for nRF54L20 and nRF54L09.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-19 10:57:18 +01:00
Michał Stasiak
9f3e8b6f4a snippets: add nRF54L20pdk FLPR core snippet
Add snippet to boot nRF54L20pdk FLPR from application core.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-19 10:57:18 +01:00
Michał Stasiak
1f72cd5a77 boards: nordic: add FLPR core to nRF54L20pdk
Added support for FLPR core in nRF54L20pdk board.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-19 10:57:18 +01:00
Michał Stasiak
6ad4d92694 modules: hal_nordic: nrfx: add nRF54L20 FLPR core
Added configuration files for nRF54L20 FLPR core.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-19 10:57:18 +01:00
Michał Stasiak
ce8a66dd65 soc: nordic: nrf54: add nRF54L20 FLPR core
Added support for nRF54L20 FLPR core in soc dir.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-19 10:57:18 +01:00
Michał Stasiak
b9bcda55c8 dts: nordic: nrf54: add nRF54L20 FLPR core
Added support for nRF54L20 FLPR core in devicetree.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-19 10:57:18 +01:00
Emil Gydesen
065dca7e92 Bluetooth: ISO: Make setting ISO data explicit
The stack will no longer implicitly set the data path
for ISO channel, and the responsibility for doing that is
now for the upper layers/applications.

This provides additional flexibility for the higher layers
as they can better control the values and timing of the data
path, as well as support removing and even reconfiguring the
data path at will.
This also removes some complexity from the stack.

This commit also fixed a inconsistency in the disconnected
handler. CIS for centrals as well as BIS were still valid
bt_iso_chan channels in the disconnected callback,
but CIS for peripherals were completely cleaned up at this
point. This issue is fixed by moving the disconnected callback
handling to before the code to cleanup the channel for
peripherals.

Since there is a difference in how you remove data paths
depending on the GAP role (central/peripheral), the
iso_info struct type has been expanded to be more
concise of which type of CIS it is.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-19 10:56:57 +01:00
cyliang tw
2ca0f5fa9e boards: nuvoton: add support for numaker m55m1
Add new development board numaker_m55m1 for m55m1x series.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-03-19 08:30:23 +01:00
Andrew Davis
89e950ecab boards: ti: Add SK-AM64 M4 support
Add initial support for the SK-AM64 MCU domain Cortex-M4F core.

SK-AM64: https://www.ti.com/tool/SK-AM64B

Signed-off-by: Andrew Davis <afd@ti.com>
2025-03-19 08:24:31 +01:00
Florijan Plohl
a8ea86d277 boards: norik: adopt zephyr:board-supported-hw directive
Convert Norik's boards documentation to use the zephyr:board-supported-hw
directive to specify supported hardware features.

Signed-off-by: Florijan Plohl <florijan.plohl@norik.com>
2025-03-19 08:24:22 +01:00
Jordan Yates
acdb8a82cf boards: remove BT_CTLR usage
Remove usage of the `BT_CTLR` symbol, as it is now deprecated.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-19 08:24:13 +01:00
Pieter De Gendt
7cd38b1b20 doc: releases: releases-notes: 4.2: Add CONFIG_NET_IPV4_MTU entry
Add a release note entry for the newly introduced networking option
CONFIG_NET_IPV4_MTU.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-03-19 03:34:26 +01:00
Pieter De Gendt
1d62d835ac net: ip: Configurable IPv4 MTU
Allow to configure the initial IPv4 MTU needed to support packets without
fragmentation.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-03-19 03:34:26 +01:00
Nhut Nguyen
a853460382 tests: arch: arm64: arm64_high_address: Exclude Renesas RZ/A3UL SMARC
Exclude RZ/A3UL SMARC board as the redefined CONFIG_SRAM_BASE_ADDRESS
degrades the BUILD_OUTPUT_ADJUST_LMA option that will generate a bin
file >10GB

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-19 03:34:15 +01:00
Nhut Nguyen
16c77ba448 drivers: gpio: Add support for RZ/A3UL
Add GPIO driver support for RZ/A3UL

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-03-19 03:34:15 +01:00
Nhut Nguyen
9ae595db9d drivers: serial: Add support for RZ/A3UL
This is the initial commit to support UART driver for Renesas RZ/A3UL.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-03-19 03:34:15 +01:00
Nhut Nguyen
33d9487efc drivers: pinctrl: Add support for RZ/A3UL
This is the initial commit to support pinctrl driver for Renesas RZ/A3UL

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
2025-03-19 03:34:15 +01:00
Nhut Nguyen
5abfb0950b boards: renesas: Add minimal support for board RZ/A3UL-SMARC
This adds minimal support for board RZ/A3UL-SMARC

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-03-19 03:34:15 +01:00
Phuc Pham
e185b053f3 soc: renesas: Add support for Renesas RZ/A3UL
Add support for Renesas RZ/A3UL

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-19 03:34:15 +01:00
Nhut Nguyen
7079dfa7f0 manifest: Update commit id for hal_renesas
Update commit id for hal_renesas

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-19 03:34:15 +01:00
Mathieu Choplain
dc1aaa6672 boards: st: nucleo_wb05kz: enable RTC
Enable the RTC on Nucleo-WB05KZ and update documentation accordingly.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-19 01:32:43 +01:00
Mathieu Choplain
bbf07089c3 boards: st: nucleo_wb07cc: enable RTC
Enable the RTC on Nucleo-WB07CC and update documentation accordingly.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-19 01:32:43 +01:00
Mathieu Choplain
dbbdc2d140 boards: st: nucleo_wb09ke: enable RTC
Enable the RTC on Nucleo-WB09KE and update documentation accordingly.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-19 01:32:43 +01:00
Mathieu Choplain
eec7bb5514 drivers: counter: stm32_rtc: disallow enabling on STM32WB0 series
Don't allow enabling the driver on STM32WB0 series due to hardware erratum.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-19 01:32:43 +01:00
Mathieu Choplain
5af226400d drivers: rtc: stm32: handle STM32WB0 series when RTC_ALARM is enabled
RTC alarm is not supported by the driver for now due to the complexity it
would take to work around an hardware erratum. However, it is not possible
to prevent CONFIG_RTC_ALARM from being enabled at Kconfig level.
Modify the RTC driver such that enabling CONFIG_RTC_ALARM on STM32WB0
series does not cause build errors anymore.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-19 01:32:43 +01:00
Mathieu Choplain
4a9f88378b drivers: rtc: stm32: add support for STM32WB0 series
Modify STM32 RTC driver to support the WB0 series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-19 01:32:43 +01:00
Mathieu Choplain
9f9f48dc6d dts: st: stm32wb0: add RTC node
Add RTC device node to STM32WB0 series DTSI.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-19 01:32:43 +01:00
Jilay Pandya
79221db413 dts: bindings: stepper remove property-allowlist from step-dir drivers
drop property-allowlist and implement invert-direction in step-dir-common

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-19 01:29:24 +01:00
Abderrahmane JARMOUNI
cbced96e2c samples: modules: lvgl: demos: increase native_sim mempool size
Increase native_sim_64 LVGL MEM_POOL_SIZE to accomodate flex_layout demo

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-03-19 01:28:54 +01:00
Kent Stark Olsen
04e3a68f27 drivers: serial: xuartps: removing redundant include
This include seems redundant as the driver builds fine without
it being included. When including soc.h it also causes issues
if one utilises the xenvm board when compiling. I suggest this
is removed completely as it seems unnecessary to create this
tight coupling to a specific SoC as the driver implementation
is describing itself perfectly well, and works well without
this soc.h-file.

Signed-off-by: Kent Stark Olsen <kent.stark.olsen@gmail.com>
2025-03-19 01:27:01 +01:00
Kent Stark Olsen
5599bf5914 drivers: serial: xuartps: fixing set_baudrate function
The Xilinx xuartps driver fails to find the correct pre-scaler
parameters for the BAUDDIV and BAUDGEN registers. This fix
corrects that behaviour. The reason why it fails is due to
the stop condition for the search being ill-conditioned.
The stop condition is based on a baudrate error, and this
was chosen to be 3 percent. This would cause the parameter
search to stop too early returning ill-condotioned pre-scaler
parameters. This has been corrected by setting the stop condition
to be 3 permille instead of 3 percent. This change was tested
with an AMD Zynq Ultrascale+ MPSoC ZU3EG.

Signed-off-by: Kent Stark Olsen <kent.stark.olsen@gmail.com>
2025-03-19 01:27:01 +01:00
Honbo He
954e926e6f boards: fanke: Add support for FK743M5-XIH6
Signed-off-by: Honbo He <hehongbo918@gmail.com>

The following features have been tested to work on the hardware:
- led
- uart1
- spi lcd
- nor flash
2025-03-19 01:26:48 +01:00
Flavio Ceolin
6e9f4bb6d6 samples: task_wdt: Use wdt device if it is ready
hw_wdt_dev may not be NULL and the device not be ready to be used.
If that is the case we explicitely initialize task_wdt_init with
NULL and do not use hw watchdog.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-03-19 01:24:56 +01:00
Mahesh Mahadevan
2b0912951b soc: imxrt5xx: Fix for USB Next
Fix to add support for USB Next Device Stack.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-19 01:24:35 +01:00
Camille BAUD
9ad7f840bf west: runners: Do not ignore --no-reset in command line or arguments
Prevents this code section from enforcing reset even
if --no-reset was passed at some point

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-19 01:24:17 +01:00
Luca Burelli
681c7da7c8 llext: fix fixed-length name buffer usage
This was inspired by the detection of 2 instances of the warning:

   warning: 'strncpy' specified bound 16 equals destination size
            [-Wstringop-truncation]

The current code is already safe with regards to overflows, because
fixed-length string functions are used in the call tree. However, when
given a name 16 chars or larger, the current compare in llext_by_name()
will not work as expected because the stored extension name is truncated
to a max of 15.

Define a global LLEXT_MAX_NAME_LEN constant to simplify all this logic
and also implement name checks in the shell before calling llext_load().

Finally, using strlen() instead of strnlen() gets the real length of the
hex string passed as a parameter, which is important for the next safety
check.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-19 01:23:59 +01:00
Aksel Skauge Mellbye
d2c49544c8 drivers: adc: iadc_gecko: Use pm_device_driver_init
Enable PM device support by making use of the pm_device_driver_init
helper.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-19 01:23:24 +01:00
Aksel Skauge Mellbye
5d08177276 tests: drivers: adc: Add support for xg24_rb4187c
Add overlays and enable support for xg24_rb4187c in ADC tests.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-19 01:23:24 +01:00
Francois Ramu
62f5386518 samples: boards: st: build only this sample for stm32 boards
Makes the sample build only in automatic test CI
Running on the nucleo_f411re board requires hsi enable
Running on the nucleo_wba55cg can still output the console
on the usart1 Tx even if the usart1Rx is used by the MCO output

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-03-18 19:59:17 +01:00
Jukka Rissanen
5ab95a7e09 samples: net: echo_service: Fix documentation
Clarify the documentation in the README.rst file. Also remove the
obsolete comment from main.c as it is no longer correct.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-18 19:58:53 +01:00
Jukka Rissanen
f13555c932 doc: net: Add socket service API usage documentation
Add information how to use socket service API from application
point of view.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-18 19:58:53 +01:00
Yishai Jaffe
71e31a2d33 doc: silabs: adopt zephyr:board-supported-hw directive
Replace manually authored hardware features table with the new Zephyr
board supported hardware directive which automatically generates an
up-to-date table based on the boards' Devicetree.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-03-18 19:54:38 +01:00
Troels Nilsson
48fd8874e9 Bluetooth: Host: Fix missing endianness conversion for ISO ts
The timestamp was missing an endianness conversion

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-03-18 19:54:24 +01:00
Carles Cufi
bb1794bf3a west: runners: jlink: Use registry to locate JLink executable
Instead of hardcoding a set of paths and trying to find the JLink
executable in them, use the corresponding Windows registry to locate it:

`HKEY_CURRENT_USER\\Software\\SEGGER\\J-Link`

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-03-18 19:54:14 +01:00
Carles Cufi
4c12a8c782 west: runners: jlink: Avoid running logic when another runner is used
The logic to detect the default JLink location was placed at the top of
the script, executing whenever the script was imported. The west
extension command framework loads all runners when initializing, and so
this logic was being executed even when using another runner.

Move the logic to a function that is only executed when the JLink runner
is selected, to avoid executing it at all times.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-03-18 19:54:14 +01:00
Jilay Pandya
93191aae77 samples: stepper: extend sample with enable, disable, stop functions
extend stepper generic sample to include enable, disable and stop functions

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-18 19:53:59 +01:00
Amneesh Singh
4958a5fb6c soc: ti_k3: specify soc-specific ctrl partitions
The first two partitions in padconfig mmr regions need to be unlocked for
the pinctrl driver to be able to write. However, the base addresses for the
the registers can be different across SoCs and domains. Besides, currently
this is only done for M4 and that too not in the local (M4's) view.

This patch introduces a file specifying all ctrl partition base addresses
using ifdef directives for different SoCs and variants, and unlocking them
before the kernel and drivers initialize.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-03-18 19:53:21 +01:00
IBEN EL HADJ MESSAOUD Marwa
fb0e6e946c dts: bindings: ethernet: Add stm32n6 ethernet compat
Add the compatible of the STM32N6 series

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-03-18 19:53:05 +01:00
IBEN EL HADJ MESSAOUD Marwa
30937d017b drivers: ethernet: eth_stm32_hal: Add stm32n6 ethernet support
-Update the ETH_STM32_HAL menu configuration to conditionally
 select USE_STM32_HAL_RIF if SOC_SERIES_STM32N6X is enabled.

-Align Ethernet descriptors to 32 bytes for STM32N6 to ensure
 efficient DMA operations and improve cache line efficiency
 and overall performance

-Add RISAF configuration in eth_initialize function for STM32N6
 series to set up master and slave security attributes
 for the Ethernet peripheral.

-Ensure RISAF configuration is done before enabling
 the Ethernet clock to maintain proper security attributes.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-03-18 19:53:05 +01:00
IBEN EL HADJ MESSAOUD Marwa
6281a8b651 boards: st: nucleo_n657x0_q: Add ethernet node
Add ethernet node

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-03-18 19:53:05 +01:00
IBEN EL HADJ MESSAOUD Marwa
6b0f392d70 dts: arm: st: n6: Add the ethernet node
Add the ethernet node

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-03-18 19:53:05 +01:00
IBEN EL HADJ MESSAOUD Marwa
70ca53befa west.yml: hal_stm32: Add stm32n6 ethernet pinctrl
Update STM32N6 pinctrl dtsi files with the ETH pins
Add STM32N6 Ethernet pinctrl config to stm32-pinctrl-config.yaml

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-03-18 19:53:05 +01:00
Christophe Tournery
2ba3bbe0d9 drivers: sensor: tdk: icm42688: fix wrap-around
When converting raw values to integer and fractional (micro) parts, the
fractional part must be a signed integer.

- Fix prototypes where the fractional part was declared as unsigned.
- Fix comments which did not match the declared type.

Signed-off-by: Christophe Tournery <christophe.tournery@freshape.com>
2025-03-18 19:52:42 +01:00
Robert Lubos
20faa0e114 net: l2: ppp: Make PPP L2 work with packet sockets
Currently, the L2 PPP won't work with AF_PACKET socket family as it only
supports packets from AF_INET/AF_INET6 families. Because of this, it's
not possible to use AF_PACKET RAW or DGRAm sockets with PPP interfaces,
as the packets they generate have family field set to AF_PACKET.

Fix this, by verifying the LL protocol field in the PPP L2 before
passing the packet the respective PPP driver. If the AF_PACKET packet is
received, and the protocol field is set to IP/IPv6, update the packet
family to AF_INET/AF_INET6 accordingly.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-18 16:45:53 +01:00
Johan Hedberg
81e7569fa1 Bluetooth: Host: Fix format specifier warnings
Use %zu for size_t and %zd for ssize_t, and don't use those specifiers for
any other type. Also make sure that field width specifiers get typecast to
the expected int type.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-03-18 16:45:29 +01:00
Lyle Zhu
144d329130 test: Bluetooth: BR: Add label platform_allow
Add label `platform_allow` to limit the allowed platforms.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-18 16:45:09 +01:00
Adrian Bieri
6f6a8d1a99 soc: nxp: imxrt: add config ADJUST_DCDC for RT10xx
There is a configuration of the DCDC in the clock_init for the RT10xx.
The RT11xx has a kconfig flag ADJUST_DCDC to enable or disable DCDC
adjust code. This flag is now also used for the RT10xx to be able to
enable or disable the DCDC adjust code.

Signed-off-by: Adrian Bieri <adrian.bieri@loepfe.com>
2025-03-18 16:44:50 +01:00
Jérôme Pouiller
8894fa42c0 soc: silabs: siwx91x: Rename UART instances
Currently, siwx917 have three instances of uart: ulpuart, uart1 and
uart2. However:

  - The other drivers on siwx91x (i2c, dma, i2s, etc...) rather use
    'ulp', '0' and '1'.

  - The reference manual also uses 'ulp', '0' and '1'.

The source of the confusion probably come from the clock driver in
WiseConnect which use clocks USART1 and USART2. However, this probably
not expected.

So, this patch renames uart1 and uart2 in uart0 and uart1. This change
also impacts the names of pins and the names of the clocks.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-03-18 16:43:54 +01:00
Jérôme Pouiller
1f73ca3919 driver: wifi: siwx91x: Fix scan timeout
WiseConnect documentation says:

  Default value of 100 millisecs is used when
  SL_WIFI_DEFAULT_ACTIVE_CHANNEL_SCAN_TIME is passed".

However, this is not true. Currently, DEFAULT_ACTIVE_CHANNEL_SCAN_TIME
is 0xFFFF and the scan time is set to 65 seconds.

To have the default scan time, the value '0' must be used.

Fortunately, '0' is also the value we get when the user does not specify
any default scan time. So the code can be simplified.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-03-18 16:43:44 +01:00
Cla Mattia Galliard
59b02d1772 ethernet: stm32_hal: Allow to configure preemtiveness independent of tc
Allow to configure the preemtiveness of the ethernet rx-thread independent
of the traffic-class queue.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-03-18 16:43:37 +01:00
Aksel Skauge Mellbye
bfdc89b3f1 dts: arm: silabs: Fix GPIO interrupt config for xg22 and xg27
The GPIO interrupt configuration for these devices was not valid.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-18 16:43:16 +01:00
Aksel Skauge Mellbye
a45eeeaa2e dts: arm: silabs: Fix GPIO port addresses for xg27 and xg29
The register addresses of GPIO ports on xg27 and xg29 were off by 0x30.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-18 16:43:16 +01:00
Grzegorz Ferenc
5f8722e338 doc: nrf5340_audio_dk: replace nrfjprog > nrfutil
Replaced the `-r nrfjprog` option with `-r nrfutil` in the flashing
instructions for the nRF5340 Audio DK board.
NCSDK-30139.

Signed-off-by: Grzegorz Ferenc <Grzegorz.Ferenc@nordicsemi.no>
2025-03-18 16:42:54 +01:00
Aksel Skauge Mellbye
4d6efb2302 tests: kernel: sleep: Add Silabs adjustment to max limit
Several devices have hardware-specific additional limits for
how short a sleep cycle can be. Add an entry for devices based
on Silabs sleeptimer when the OS tick rate is equal to the timer
frequency.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-18 16:42:42 +01:00
Aksel Skauge Mellbye
7dc6fb442f drivers: timer: silabs: Fix calculation of next tick
In the case where more than a full tick was unannounced when
sys_clock_set_timeout() was called, the timer driver would
subtract it from the next timeout. However, this is already
done by the caller through the elapsed() function in timeout.c,
leading to the timer interrupt firing too early.

With this fix, SYS_CLOCK_TICKS_PER_SEC can be increased to the
full speed of the low frequency timer. The underlying sleeptimer
API must be called with a timeout of at least 1, and will if needed
increase the value to the minimum value required by the hardware.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-18 16:42:42 +01:00
Aksel Skauge Mellbye
faf40c6a68 soc: silabs: Use configdefault for default values
Use configdefault to avoid weakening dependencies of defconfig
symbols.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-18 16:42:42 +01:00
Thomas Günther
e53435f9d4 boards: add morpho connector support for nucleo_g474re
Add device tree support for ST Morpho connector pins on the
nucleo-g474RE board, enabling access to GPIO pins available
on both left and right morpho headers.

Signed-off-by: Thomas Günther <thomas.guenther@limatica.com>
2025-03-18 16:42:25 +01:00
Dong Wang
872f363696 logging: Ensure atomic update of log filter slot in LOG_FILTER_SLOT_SET
Replaced the read-modify-write sequence with a single read and write
operation, preventing the intermediate value is wrongly used to filter
out logs of another thread with higher priority that preempts the current
thread.

Signed-off-by: Dong Wang <dong.d.wang@intel.com>
2025-03-18 16:42:18 +01:00
Dong Wang
3fac83151d logging: Assign IDs to log backends early during log_core_init
This commit moves the assignment of backend IDs from the 'z_log_init'
function to the earlier 'log_core_init' function. This ensures that
backend IDs are assigned before they are used in the 'log_backend_enable'
function, preventing incorrect settings of log dynamic filters.

Signed-off-by: Dong Wang <dong.d.wang@intel.com>
2025-03-18 16:42:07 +01:00
Michał Stasiak
def5f8ee07 soc: nordic: allow use of TWIM frequency workaround
Added Kconfig options to allow use of TWIM frequency
workaround in NRFX for nRF52 and nRF53.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-18 16:41:48 +01:00
Jilay Pandya
2fc2c6a55f docs: release-notes: 4.2: add stop func entry
Add entry of the newly added stop function in stepper subsystem

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-18 16:41:31 +01:00
Jilay Pandya
649ca563ab drivers: stepper: add stop function to common step-dir lib
add stop function to common step-dir lib

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-18 16:41:31 +01:00
Tomasz Leman
6249470b66 intel_adsp: ace30: mm: Set write permissions during memory mapping
The adsp_mm_save_context function was previously mapping memory without
explicitly setting write permissions, which could lead to a "store
prohibited" exception when attempting to write to the memory. This patch
adds the K_MEM_PERM_RW flag to the arch_mem_map call to ensure that the
memory is mapped with write permissions.

This change resolves the issue of accessing memory without the necessary
permissions, preventing potential exceptions and ensuring correct memory
operations. The issue was found when running the firmware on a
simulation with the MMU enabled.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-03-18 16:41:22 +01:00
Keith Short
d2969dca20 doc: Add guidance for copyright notices on new files
Add language indicating that new files should include a specific
copyright notice.

Signed-off-by: Keith Short <keithshort@google.com>
2025-03-18 16:41:12 +01:00
Benjamin Cabé
3281b5add6 boards: arduino: Update binding description for gpio-power-switches compat
Make binding description more concise

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-18 16:40:59 +01:00
Benjamin Cabé
f7ad282504 boards: arduino: doc: Adopt Sphinx custom board directives
Adds zephyr:board and zephyr:board-supported-hw directives to the
Arduino docs in order to generate more of the boards' documentation
automatically.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-18 16:40:59 +01:00
Benjamin Cabé
e2370dd4d6 boards: arduino: add Uno R4 image
Adds a picture of the R4 Minima

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-18 16:40:59 +01:00
Francois Ramu
1f3ffc3111 samples: code relocation for the stm32f746 disco kit
Add the configuration for using the external FLASh Memory
and execute the samples/application_development/code_relocation_nocopy/
on the stm32f746g_disco board

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-03-18 16:40:47 +01:00
Francois Ramu
f03c5bf5db boards: st: stm32f746g_disco with external flash for code execution
Add the configuration to download and execute code in the
external flash of the stm32f746 disco kit :
ext memory attribute to support code execution and external flash loader

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-03-18 16:40:47 +01:00
Sebastian Głąb
13ede4ecc1 tests: drivers: spi: Tests SPI at 16 and 32 MHz on nRF54 devices
Extend spi_loopback test on nRF54 chip family.
Add configurations to run this test at 8/16/32 MHz.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-03-18 16:40:37 +01:00
Sebastian Głąb
c42513a134 tests: drivers: i2s: Add tests at typical audio sample rates
Add short transfer test at 8000, 16000, 32000, 44100, 48000, 88200
and 96000 frame clock frequency.

Add KConfigs to skip test cases based on value of sample rate.

Add configuration for nrf5340dk where i2s peripheral is clocked
from ACLK.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-03-18 16:40:28 +01:00
Jilay Pandya
0a4acd8ee8 dts: bindings: spi: use hyphen instead of underscore
use hyphen instead of underscore in order to comply with device tree
specification.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-18 16:40:19 +01:00
Emil Gydesen
351805435c Revert "include: util: Add generic function to count bits set in a value"
This reverts commit d05de070db.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-18 16:39:47 +01:00
Emil Gydesen
fb68b4be7e Revert "Bluetooth: Audio: Use generic count_bits to count bits"
This reverts commit ee335399c1.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-18 16:39:47 +01:00
Emil Gydesen
fadaae42f0 Revert "tests: kernel: adopt new count_bits util function"
This reverts commit e34270519e.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-18 16:39:47 +01:00
Emil Gydesen
60a980185d Revert "drivers: adc: adopt new count_bits util function"
This reverts commit 17c42550f3.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-18 16:39:47 +01:00
Lucien Zhao
3d2059f9b6 boards: nxp: mimxrt700_evk: enable sc_timer as pwm function
enable sc_timer for cm33_cpu0 core.
test tests/drivers/pwm/pwm_api case passed.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-03-18 08:27:20 +01:00
Lucien Zhao
c2ea1ac951 dts: arm: nxp: add sc_timer0 for rt700 cm33_cpu0 core
add sc_timer0 for rt700 cm33_cpu0 core

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-03-18 08:27:20 +01:00
Raymond Lei
847ab22882 dts: arm: nxp: rt10xx/rt11xx: wrong interrupts array for eDMA
eDMA interrupts number should be from 0 to 0xf totally 16 instead of 17.

Signed-off-by: Raymond Lei <raymond.lei@nxp.com>
2025-03-18 08:27:12 +01:00
Raymond Lei
8199a247a6 boards/soc: nxp: MCXA, imxrt11xx: reconfigure clock source of lpspi
In spi loopback test, high bandrate is 16Mbps while some source of lpspi
are too low to support this bandrate. According the reference mannual,
to support 16Mbps, Input frequency at least should be 2*16MHz.
Update LPSPI input freq to maximum to get more accurate band rate
because band rate must be divisible by input freq.

Signed-off-by: Raymond Lei <raymond.lei@nxp.com>
2025-03-18 08:27:12 +01:00
Raymond Lei
3610724174 test: spi: spi_loopback: fix a typo in frdm_mcxn236.overlay
Fix a typo in the comments of how to connect HW pins for loopback test.

Signed-off-by: Raymond Lei <raymond.lei@nxp.com>
2025-03-18 08:27:12 +01:00
Marcin Niestroj
82b614062f samples: net: echo_server: add runtime test for NSOS net init
Expect that networking is properly setup, by expecting
NET_EVENT_L4_CONNECTED event and listening for TCP/UDP incoming traffic on
both IPv4 and IPv6.

Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-03-18 08:27:06 +01:00
Marcin Niestroj
7290dd2a57 net: ipv6: set NET_ADDR_PREFERRED before network event if !DAD
Set NET_ADDR_PREFERRED before network event is generated, so that conn_mgr
properly generates NET_EVENT_L4_CONNECTED and NET_EVENT_L4_IPV6_CONNECTED
events.

Fixes: 1a5e13a79b ("net: if: Release the interface lock early when
  starting IPv4 ACD")
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-03-18 08:27:06 +01:00
Marcin Niestroj
3fcd25c8f8 net: ipv4: set NET_ADDR_PREFERRED before network event if !ACD
Set NET_ADDR_PREFERRED before network event is generated, so that conn_mgr
properly generates NET_EVENT_L4_CONNECTED and NET_EVENT_L4_IPV4_CONNECTED
events.

Fixes: 1a5e13a79b ("net: if: Release the interface lock early when
  starting IPv4 ACD")
Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-03-18 08:27:06 +01:00
Henrik Brix Andersen
4d6280a1a0 soc: neorv32: list NEORV32 v1.11.2 as currently supported version
List NEORV32 v1.11.2 as the currently supported version. No changes to the
in-tree drivers needed for the changes between v1.11.1 and v1.11.2.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-18 08:26:52 +01:00
The Nguyen
2f6d4f6969 samples: watchdog: add support for renesas,ra-wdt
Add Renesas RA WDT support for samples/drivers/watchdog

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-18 08:26:40 +01:00
The Nguyen
e2780b2642 tests: watchdog: add support for Renesas RA boards
Add Renesas RA board support for this tests:
- tests/drivers/watchdog/wdt_basic_reset_none

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-18 08:26:40 +01:00
The Nguyen
a37f54cc9f boards: renesas: add support for watchdog driver on Renesas RA boards
Enable support of watchdog driver on these boards:
- RA8: ek_ra8m1, ek_ra8d1, mck_ra8t1
- RA6: ek_ra6e2, ek_ra6m1, ek_ra6m2, ek_ra6m3, ek_ra6m4, ek_ra6m5,
  fpb_ra6e1, fpb_ra6e2
- RA4: ek_ra4l1, ek_ra4e2, ek_ra4m1, ek_ra4m2, ek_ra4m3, ek_ra4w1,
  fpb_ra4e1, voice_ra4e1
- RA2: ek_ra2a1, ek_ra2l1

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-18 08:26:40 +01:00
The Nguyen
8561ab65d9 dts: arm: renesas: add wdt device node for Renesas RA family
This commit to add wdt device node to support watchdog driver on
Renesas RA SoCs

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-18 08:26:40 +01:00
The Nguyen
22b9a06327 soc: renesas: ra: enable wdt support on RA4M1
Add config to enable wdt after reset reflect wdt Kconfig value

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-18 08:26:40 +01:00
The Nguyen
710fb596df drivers: watchdog: initial support for watchdog driver on Renesas RA family
First commit to add support for Renesas RA watchdog driver

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-18 08:26:40 +01:00
The Nguyen
b72b271682 soc: renesas: ra: allocate default NMI handler for Renesas RA SoC
Allocate NMI_Handler as default NMI handler for Renesas RA family

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-18 08:26:40 +01:00
Declan Snyder
9cc3676c75 boards: nxp: convert board sys_inits to hooks
Convert the nxp boards that have general init functions
as SYS_INITs to use board_early_init_hook instead.

Also standardize selection of CONFIG_BOARD_EARLY_INIT_HOOK in the
Kconfig file across NXP boards.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-18 08:25:06 +01:00
Tom Hughes
481a3c77c9 tests: lib: cmsis_dsp: Fix -Wsometimes-uninitialized warning
Building with clang warns:

tests/lib/cmsis_dsp/distance/src/u32.c:82:3: error: variable 'val' is
used uninitialized whenever switch default is taken
[-Werror,-Wsometimes-uninitialized]
                default:
                ^~~~~~~
tests/lib/cmsis_dsp/distance/src/u32.c:87:19: note: uninitialized use
occurs here
                output[index] = val;
                                ^~~
tests/lib/cmsis_dsp/distance/src/u32.c:47:16: note: initialize the
variable 'val' to silence this warning
                float32_t val;
                             ^
                              = 0.0

Hitting the default switch will assert, so this won't cause any problems
as written, but it doesn't hurt to initialize the variable.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-18 08:24:56 +01:00
Benjamin Cabé
e34270519e tests: kernel: adopt new count_bits util function
Adopt new count_bits helper from util.h and avoid
having conflicting definition

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-18 08:24:16 +01:00
Benjamin Cabé
17c42550f3 drivers: adc: adopt new count_bits util function
Adopt new count_bits helper from util.h and avoid
having conflicting definition

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-18 08:24:16 +01:00
Emil Gydesen
ee335399c1 Bluetooth: Audio: Use generic count_bits to count bits
Instead of re-implementing or assuming that POPCOUNT is available
we now use the generic function from Zephyr.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-17 21:03:56 -04:00
Emil Gydesen
d05de070db include: util: Add generic function to count bits set in a value
Adds a generic function that will count the number of bits set in
a value.

It uses POPCOUNT (e.g. __builtin_popcount for GCC) if available,
or else it will use Brian Kernighan’s Algorithm to count bits.

POPCOUNT will likely always support unsigned ints, but the function
was implemented to use it with uint8_t for the sake of simplicity
and compatibility with Brian Kernighan’s Algorithm.

A generic solution was chosen rather than a macro/function per
type (e.g. uint8_t, uint16_t, etc.) as that is easier to maintain
and also supports array types (e.g. counting the number of bits
in 128 or 256 octet arrays).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-17 21:03:56 -04:00
Jan Gałda
4b622a256e ci: Use Ubuntu 24 in GH actions
Ubuntu 20.04 will be deprecated soon

Signed-off-by: Jan Gałda <jan.galda@nordicsemi.no>
2025-03-17 21:02:38 -04:00
Hake Huang
1383d5cadd tests: ztest: rd_rw612_bga: add ZTEST_NO_YIELD
Add ZTEST_NO_YIELD to keep test case output consist.
The log may missing, as the soc goes to low power.

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-03-17 21:02:10 -04:00
Benjamin Cabé
9279bddc2d boards: arduino: use revisions for Arduino Uno R4 Minima and WiFi
Use revisions instead of making these two different boards.
Deprecate old board names

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-17 21:01:57 -04:00
Pete Johanson
0e8ea4d12a boards: common: Enable debugging MAX32 with pico + OpenOCD
Explicitly set the OpenOCD target-handle so `west debug` will work
as expected on MAX32 targets using a supported OpenOCD version.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-03-17 21:01:41 -04:00
Pete Johanson
1c05f2121c west: runners: openocd: Handle ADI OpenOCD fork version format
The ADI fork of OpenOCD prints a modified version line; adjusting the
regex to account for that different format when checking the OpenOCD
version.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-03-17 21:01:41 -04:00
Derek Snell
3598c413ed doc: boards: nxp: Add footer to board doc pages
Adds common footer to NXP boards.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-03-17 21:00:46 -04:00
Scott Worley
beab500c42 soc: microchip: mec5: Disable PM in mec174x, mec175x, and mech172x
We disable power management by removing select HAS_PM. At this time
these new SoC do not have any power management code. With HAS_PM
selected the zephyr test runner will choose PM tests which fail to
build.  PM support will be enabled in the future once we decide
which of the many Zephyr PM implementations we will support.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-03-17 20:58:52 -04:00
Benjamin Cabé
e808ccf013 ci: pin GitHub Actions to SHAs
This commit updates all GitHub Actions workflows to use specific
SHAs for the actions when they're not GitHub owned (`actions/*`)
instead of using tag-based versioning since tags are mutable.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-17 20:58:39 -04:00
Alex Fabre
ef9548355e net: lladdr: add default case to switch
This commit only eliminates warning message raised by GCC when option
'-Wswitch-default' is used.

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-03-17 20:05:09 +01:00
Benjamin Cabé
258b89bd63 doc: _extensions: handle custom bindings in board catalog
Boards might have local bindings for which generating links using the
dtcompatible role doesn't work -- update the code accordingly so that
we can still provide a description of these custom bindings in the table
of supported features (but with no hyperlink).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-17 20:04:10 +01:00
Henrik Brix Andersen
d6d0c1c4cd soc: neorv32: only allow reading frequency at runtime with a system clock
CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME depends on
CONFIG_SYS_CLOCK_EXISTS, so CONFIG_SOC_NEORV32_READ_FREQUENCY_AT_RUNTIME
needs to depend on CONFIG_SYS_CLOCK_EXISTS for selecting it.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-17 20:01:31 +01:00
Andrei-Edward Popa
b1833e8588 boards: wch: add support for ch32v003f4p6 development board
Added support for the CH32V003F4P6 Development Board, which
features QingKe RISC-V2A MCU.

Signed-off-by: Andrei-Edward Popa <andrei.popa105@yahoo.com>
2025-03-17 20:01:20 +01:00
Peter Mitsis
0a7fde2afd arch: x86: Restrict direct IPI support
It has been discovered that direct IPI support does not work
correctly when CONFIG_X2APIC is enabled. Until that can be
fixed, restrict this feature on x86 to platforms that do not
enable CONFIG_X2APIC.

Fixes #87046

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-03-17 20:01:09 +01:00
Emilio Benavente
fc1a65d162 boards: nxp: frdm_mcxw72: Add Button Support
Add Button Support for frdm_mcxw72 and mcxw72_evk.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-03-17 20:00:59 +01:00
Vinayak Kariappa Chettimada
0a4480ce61 Bluetooth: Controller: Fix connection update interval_us variables
Fix connection update microsecond interval variable data
type, to use 32-bit so that a value upto 2000 seconds, i.e.
4 seconds interval and 499 peripheral latency can be stored.

Regression in commit abfe5f17a9 ("Bluetooth: Controller:
1 ms connection").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-17 20:00:42 +01:00
Emilio Benavente
2df6b7fd2d boards: nxp: frdm_rw612: Added Button Support
Updated dts to add Button Support. SW2

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-03-17 20:00:09 +01:00
Bartlomiej Buczek
c08edf7a72 samples: boards: nrf: system_off: Print reset reason.
Add printing reset reason at the beginning of the sample. Makes it easier
to determine if sample correctly wakes up from LP mode.

Signed-off-by: Bartlomiej Buczek <bartlomiej.buczek@nordicsemi.no>
2025-03-17 19:59:15 +01:00
James Roy
394c78538f doc: Add a new migration guide entry to DAI
Add the following property renaming entries to
the migration:

* dai_id
* afe_name
* agent_disable
* ch_num
* mono_invert
* quad_ch
* int_odd

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-17 19:58:53 +01:00
James Roy
17bf487da5 dts: bindings: dai: Change the property names in the DTS
Rename the following properties in bindings and DTS
to implement RFC-53506:

-- dai_id =>dai-id
-- afe_name => afe-name
-- agent_disable => agent-disable
-- ch_num => ch-num
-- mono_invert => mono-invert
-- quad_ch => quad-ch
-- int_odd => int-odd

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-17 19:58:53 +01:00
Ole Morten Haaland
160ae23cd6 drivers: ethernet: stm32: Allow disabling carrier checking
On Zephyr devices that has an Ethernet switch IC with the Zephyr device
connected to the CPU port, there aren't necessarilly any register to
check the link state on that port. If the check is kept on such devices,
Zephyr will believe the link disappears
CONFIG_ETH_STM32_CARRIER_CHECK_RX_IDLE_TIMEOUT_MS after last message was
received, until a new message is received. If the application tries to
send data while the link is considered gone, sending returns an error,
sometimes indicating that the interface is down.

It also seems conceptually meaningless to try determining link state on
such devices, since as long as both the microcontroller and the switch
IC is powered, the link should always be up.

This commit therefore introduces a new Kconfig to allow disabling the
entire checking of link state, so that on devices where there is no
relevant PHY register to read, the check can be disabled.

Signed-off-by: Ole Morten Haaland <omh@ixys.no>
2025-03-17 19:58:42 +01:00
Luca Burelli
a6584d5b2b llext: add test for section and symbol alignment
Add a test case for the alignment support in loadable extensions. This
test case creates a set of constants with specific alignment requirements
and verifies that they are placed in memory as expected.

Fix the detached section test to use a more standard syntax for the
section attribute, avoiding issues with different toolchains.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-17 19:58:15 +01:00
Luca Burelli
959f1b352d llext: support alignment requirements for sections
This patch adds support for alignment requirements for sections in the
loader. The alignment requirements are taken from the ELF file and
checked when the section is mapped to a memory region and when the
region is copied to memory (or directly used from the ELF buffer).

Supporting a larger alignment requirement than the region's current
alignment is done by adjusting the region's start address. This needs
care to avoid detecting false overlaps with other regions and to ensure
that the region address and size reported by the inspection APIs are
correct. The extra offset needed to re-adjust these values is stored in
the 'sh_info' field of the region descriptor.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-17 19:58:15 +01:00
Luca Burelli
1b48f74346 llext: avoid redundant 'ldr_parm' checks
Since commit 0aa6b1c9de, the 'ldr_parm' pointer is guaranteed to be
valid inside all the functions of the llext_load() call tree.

This commit fixes the only exception of llext_copy_strings(), which was
not passed the 'ldr_parm' pointer, and remove the redundant checks.

No functional change is intended by this commit.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-17 19:58:15 +01:00
Luca Burelli
c0c8f778f7 llext: refactor llext_copy_region()
This commit adjusts the logic of the LLEXT memory allocation routine by:

 * defining 'align' and 'alloc' variables once and updating them in the
   following code;

 * swapping the condition, converting it to an 'if(IS_ENABLED(...))' and
   using a direct calculation for the size to make the code easier to
   read;

 * updating and extending a few comments.

No functional change is intended.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-17 19:58:15 +01:00
Luca Burelli
219cde6621 llext: avoid direct llext_string() usage
Since 3466dab804 the generic llext_symbol_name() function abstracts
the use of llext_string() for (non-section) symbols. Define a similar
llext_section_name() function and replace current occurrences of
llext_string() with the proper abstraction.

By extending llext_symbol_name(), this commit also allows to print the
correct name of sections that are referred to by a symbol.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-17 19:58:15 +01:00
Luca Burelli
79a9ff0264 llext: (cosmetic) cleaner region overlap checks
Rewrite the overlap checks in llext_map_sections() to use a pair of
macros to calculate the top and bottom of a region. This makes the
code more readable and less error-prone.

No functional change is introduced in this commit apart from a log
message format change.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-17 19:58:15 +01:00
Luca Burelli
8f9ab18ce2 llext: (cosmetic) log uniformity cleanups
Use the more compact %#x format for printing out hexadecimal values in
the LLEXT subsystem. This also uses a clearer wording for the
llext_link() log message that avoids repeating information.

No functional change is introduced by this commit.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-17 19:58:15 +01:00
Luca Burelli
111d7c3754 llext: (cosmetic) rename llext_copy_section() to llext_copy_region()
llext_copy_section() is a misnomer, as it is copying a region of memory,
not a section. Rename it to llext_copy_region() and use 'region' in the
internal variables to better reflect their purpose.

No functional change is introduced in this commit.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-17 19:58:15 +01:00
Luca Burelli
4b34163faa llext: (cosmetic) llext_map_sections() cleanups
Add a 'continue' statement when the first section of a region is
detected, to avoid unnecessary indentation.

No functional change is introduced in this commit.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-17 19:58:15 +01:00
Benjamin Cabé
05c3775fa9 doc: boards: renesas: fix Sphinx directive typo
Remove a stray space in zephyr:board-supported-hw Sphinx directive

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-17 16:25:49 +01:00
Alberto Escolar Piedras
1dab77b49f Bluetooth: Host: ATT: Fix build warning with clang
Fix the following warning
att.c:734:3: warning: label followed by a declaration is a C23 extension
[-Wc23-extensions]
  734 |                 k_tid_t current_thread = k_current_get();
      |                 ^
By wrapping that code as a compound statement

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-17 16:25:33 +01:00
Jamie McCrae
ed1faa262a west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  c8470fb145f8aff92696d05396fb77c3b8068b32

Brings following Zephyr relevant fixes:

  - 2f294d1f zephyr: Use flash_area_flatten in
    bs_custom_storage_erase
  - 2346d69c zephyr: Add support for devices without erase and
    reduced erases
  - 2a2b562b bootutil: Add support for devices without erase and
    reduced erases
  - 1ead4a67 boot: zephyr: kconfig: Remove superflous default n
    lines
  - e5d8640c zephyr: Add missing selection for allowed SHA
    algorithms
  - f523c60d zephyr: Fix ED25519 compilation with mbedTLS
  - 0ba80ffb zephyr: Prevent selecting MBEDTLS_ASN1_PARSE_C when
    not needed
  - ec86244a zephyr: Do not compile ASN1 code when bypassed
  - a01ca4cf bootutil: Fix ASN1 bypass not building
  - 4535ad98 boot: Additional flash_area_open removals
  - c0bb1337 boot: zephyr: boards: Add frdm-mcxn236 configuration

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-03-17 16:25:29 +01:00
Jukka Rissanen
152a03b62c doc: net: Add link address change info to migration guide
Add information about "struct net_linkaddr" changes to 4.2
migration guide to help the developers to handle issues if
they access the net_linkaddr struct fields directly in their
code.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-17 16:25:22 +01:00
Jukka Rissanen
ac3cb9dac0 net: Change the net_linkaddr struct to not use pointers
Previously the net_linkaddr struct had pointers to the link address.
This is error prone and difficult to handle if cloning the packet as
those pointers can point to wrong place. Mitigate this issue by
allocating the space for link address in net_linkaddr struct. This will
increase the size of the net_pkt by 4 octets for IEEE 802.15.4 where the
link address length is 8, but there no increase in size if link address
is 6 bytes like in Ethernet/Wi-Fi.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-17 16:25:22 +01:00
Jukka Rissanen
fedd815c1e tests: net: utils: Verify src and dst link addresses
Make sure that source and destination link addresses are correct
after cloning and pulling net_pkt.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-17 16:25:22 +01:00
Sudan Landge
06847b5801 modules: tf-m: fix Ethos-U Cmake warnings
This is to fix the below compiler warning from TF-M builds
   that don't use the Ethos-U driver.
```
CMake Warning:
  Manually-specified variables were not used by the project:

    ETHOS_DRIVER_PATH
```

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-03-17 16:25:12 +01:00
Lars-Ove Karlsson
413c06b1ea arch: arm: Replaced __volatile__ with volatile
IAR doesn't support the __volatile__ keyword, and since the
toolchain.h isn't included by these arm-specific files and
other arm-specific files already uses volatile, I've made
them all use volatile.

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-03-17 16:24:51 +01:00
TOKITA Hiroshi
a54d4ac83d docs: migration-guide-4.2: Add note about Renesas RA4M1 migration
The Renesas RA4M1 has moved to an FSP-based implementation.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-17 16:24:42 +01:00
TOKITA Hiroshi
cbcf36e1a7 dts: arm: renesas: ra: Remove old R7FA4M1AB3CFM configurations
Due to historical reasons, there were two implementations of
R7FA4M1AB3CFM. However, the migration has been completed,
so the old one is now being removed.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-17 16:24:42 +01:00
TOKITA Hiroshi
1ef5dfce63 boards: Migrate Renesas RA4M1 to the new configuration
Migrate to the new GPIO and Interrupt drivers based on FSP.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-17 16:24:42 +01:00
TOKITA Hiroshi
b313342696 dts: arm: renesas: ra: Reorganize RA4M1 files
Extract common parts from `dts/arm/renesas/ra/ra4/r7fa4m1ab3cfp.dtsi`
to support R7FA4M1AB3CFM.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-17 16:24:42 +01:00
Vinayak Kariappa Chettimada
64ea1b8696 tests: bsim: Bluetooth: broadcast_audio_source interleaved/sequential
Test broadcast audio source sample in interleaved and
sequential packing.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-17 16:24:33 +01:00
Vinayak Kariappa Chettimada
872b19321f tests: bsim: Bluetooth: Test for single BIS with interleaved packing
Test for single BIS with interleaved packing or sequential
packing requested.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-17 16:24:33 +01:00
Vinayak Kariappa Chettimada
6d5658684f samples: Bluetooth: Support interleaved packing in BIS samples
Add Kconfig options in Broadcast ISO related samples to
support enabling interleaved packing use in subevents.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-17 16:24:33 +01:00
Vinayak Kariappa Chettimada
027fc01fe3 samples: Bluetooth: hci_uart hci_ipc configuration update
Updates to project configuration extras to build with
Zephyr Controller.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-17 16:24:33 +01:00
Vinayak Kariappa Chettimada
374d41a9c1 Bluetooth: Controller: ISO Receive interleaved packing support
Add ISO Receive interleaved packing support in Lower Link
Layer implementation.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-17 16:24:33 +01:00
Vinayak Kariappa Chettimada
5b74950857 Bluetooth: Controller: ISO Broadcast interleaved packing support
Add ISO Broadcast interleaved packing support in Lower Link
Layer implementation.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-17 16:24:33 +01:00
Vinayak Kariappa Chettimada
4243cb5df6 Bluetooth: Controller: Fix BIS interleaved packing sub_interval calc
Fix BIS sub_interval calculation for interleaved packing.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-03-17 16:24:33 +01:00
Lyle Zhu
1708574d0a Bluetooth: BR: Add a function bt_br_bond_exists()
Add a function `bt_br_bond_exists()` to check if the address of the
classic device has been bonded.

Update release-notes-4.2.rst

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-17 14:08:04 +01:00
Andrej Butok
94c9cc98a9 sample: nvs: add NVS sample Kconfig
- adds the ability to change the NVS sample "Maximum reboot counter",
  "Reboot countdown" and its "Sleep time" parameters via Kconfig,
  without manually modifying the source code.
- reduces the default number of resets to 5 (was 400).
- adds the ability to reduce flash memory wear on real devices
  by reducing the number of write iterations.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-03-17 13:57:54 +01:00
Alexander Svensen
33b4faed9c test: bluetooth: tester: Fix regression in PBP
- Allocate source in PBP first time adv is created
- Only set_adv_data in adv_setup if ext_adv already exists
- Fixes regression in PTS for PBP tests

Signed-off-by: Alexander Svensen <alexander.svensen@nordicsemi.no>
2025-03-17 13:57:41 +01:00
Sebastian Schoch
a21ec50f5c net: lwm2m: Call the lwm2m_send_cb callback on context close
Fix that a lwm2m message is reset without executing a registered
callback on lwm2m_engine_context_close.

Signed-off-by: Sebastian Schoch <sebastian.schoch@husqvarnagroup.com>
2025-03-17 13:57:31 +01:00
Triveni Danda
3a3f4ab3ea drivers: nrf_wifi: Set default stack size of net_mgmt thread
Fixes overflow issue in the net_mgmt thread
during network interface state changes.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-03-17 13:57:22 +01:00
Yassine El Aissaoui
12e2aeda11 drivers: entropy: mcux_trng: Add PM device action
The entropy driver shall re-init trng when
a power state turns off the device.

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-03-17 13:57:13 +01:00
Timothy Keys
7ef8116969 bluetooth: host: Remove experimental flag from LE Connection Subrating
The API has not changed since it was introduced so should no longer be
considered experimental.

Signed-off-by: Timothy Keys <timothy.keys@nordicsemi.no>
2025-03-17 13:57:03 +01:00
Charles Hardin
bee0f202eb dts: nucleo_f413zh: add partition support for bootloader
Define the partition layout in nucleo_f413zh.dts to handle what
can be built in the application directory following the same
pattern used in the nucleo_f401re.dts but scaled for 2 sectors
of 128KB for the slots.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-03-17 13:56:52 +01:00
Luis Ubieda
8258cba2c6 sensor: icm45686: Add Streaming Mode
Enable Streaming mode with the following modes:
- DRDY
- FIFO Watermark
- FIFO Full

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-03-17 13:56:41 +01:00
Luis Ubieda
356480c4cb sensor: icm45686: Simplify decoder to directly receive fs
Instead of requiring the edata struct, just receive full-scale
parameter. This simplifies the decoding process for FIFO data
during streaming.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-03-17 13:56:41 +01:00
Sai Santhosh Malae
c6198008f5 drivers: watchdog: siwx91x: Add siwx91x WDT driver
Implement Watchdog driver for siwx91x device

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-03-17 13:56:24 +01:00
Andrew Davis
741a1a6e54 soc: ti: k3: am6x: m4: Adjust default RAT configuration
The current default RAT configuration puts the first 512MB of
address space on top of the first 512MB of DRAM. This DRAM
can include the carveout region assigned for IPC with the
host core, for instance the M4 on AM62 uses 0x9cc00000.

Split this first translation from 0x80000000 to 0x60000000 and
0xc0000000. Shrink the 0x40000000 translation and move down
to 0x70000000. This provides the same system IP coverage without
blocking access to the first 512MB of DRAM.

While here, fix typo with leading 0 for a couple BASE_ADDR
translations, no functional change.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-03-17 13:55:59 +01:00
Arif Balik
5d3113e5e1 tests: misc: added stm32 tsc driver test implementation
integration tests for stm32 tsc

Signed-off-by: Arif Balik <arifbalik@outlook.com>
2025-03-17 13:55:48 +01:00
Arif Balik
1c8f06c7c2 driver: input: added input_tsc_keys
input_tsc_keys to detect key press releases
using STM32 TSC

Signed-off-by: Arif Balik <arifbalik@outlook.com>
2025-03-17 13:55:48 +01:00
Arif Balik
9aea8f48aa boards: st: added tsc peripheral to U0 series
update stm32u0 and stm32u083c_dk for TSC
peripheral

Signed-off-by: Arif Balik <arifbalik@outlook.com>
2025-03-17 13:55:48 +01:00
Arif Balik
6c6d8d888f dts: bindings: added stm32 tsc driver bindings
Added tsc pripheral bindings

Signed-off-by: Arif Balik <arifbalik@outlook.com>
2025-03-17 13:55:48 +01:00
Benjamin Cabé
06e86e95da Revert "drivers: gpio_cc13xx_cc26xx: Update for latest sdk"
This reverts commit 99e7223a1c.

Breaks CI with the following compilation error in SPI.c:52:
error: 'SPI_MASTER' undeclared here (not in a function)

Failing tests (cc3220sf_launchxl/cc3220sf)
- sample.net.sockets.echo.offload.simplelink
- sample.net.sockets.http_get.offload.simplelink
- sample.net.wifi

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-17 13:55:34 +01:00
Thomas Gagneret
d6c59f0b4d scripts: zephyr_module: Fix purl regex
Remove root domain from PURL type
Nested PURL namespaces were not correctly detected.

Signed-off-by: Thomas Gagneret <thomas.gagneret@hexploy.com>
2025-03-17 09:32:46 +01:00
Mika Braunschweig
cc6eaa0cf9 drivers: gpio: davinci: fix config layout
Zephyr GPIO drivers require the pin mask `struct gpio_driver_data` to be
the first element of the driver config. Reordering fixes failures in ASSERT
statements of the GPIO driver due to the base address being interpreted as
supported pin mask.

Signed-off-by: Mika Braunschweig <mika.braunschweig@siemens.com>
2025-03-17 09:26:45 +01:00
Jilay Pandya
16614b4e3e MAINTAINERS: add jbehrensnx as collaborator in stepper driver subsystem
In regards to the contributions to stepper driver subsystem, i would like
to propose Jan Behrens as collaborator in stepper driver subsystem

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-17 09:26:33 +01:00
Kiara Navarro
4ee8c00494 dts: charger: bq24190: expand description
Briefly describe the main features of the charger.

Also, provide an example of how the charger can be placed
as a child node within device tree.

On the other hand, detail the meaning the of the properties,
including their range.

Signed-off-by: Kiara Navarro <knavarro@paltatech.com>
2025-03-17 09:26:21 +01:00
Nhut Nguyen
9077d46c5d drivers: gpio: Add support for RZ/T2L
Add GPIO driver support for RZ/T2L

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
2025-03-17 09:26:13 +01:00
Nhut Nguyen
6a5ccb6358 drivers: interrupt_controller: Add support for RZ/T2L
Add interrupt controller for RZ/T2L

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
2025-03-17 09:26:13 +01:00
Nhut Nguyen
0c8ab73468 drivers: serial: Add support for RZ/T2L
Add serial driver support for Renesas RZ/T2L

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
2025-03-17 09:26:13 +01:00
Nhut Nguyen
be6abc3208 drivers: pinctrl: Add support for RZ/T2L
This is the initial commit to support PINCTRL driver for Renesas RZ/T2L

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
2025-03-17 09:26:13 +01:00
Nhut Nguyen
ba028433a8 boards: renesas: Add minimal support for board RSK+ for RZ/T2L
Add minimal support for board RSK+ for RZ/T2L

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
2025-03-17 09:26:13 +01:00
Hieu Nguyen
31397c2c76 soc: renesas: Add support for Renesas RZ/T2L
Add support for Renesas RZ/T2L

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-17 09:26:13 +01:00
Ian Morris
997c6e4a56 dts: arm: renesas: fixed duplicate interrupt numbers
The following pairs of peripherals mistakenly used the same
interrupts numbers, causing issues if both are used: sci6/sci9,
spi0/sci7 and spi1/sci8.

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2025-03-17 09:26:02 +01:00
Ayush Singh
99e7223a1c drivers: gpio_cc13xx_cc26xx: Update for latest sdk
- It seems that the mask variants of GPIO functions are not present in
  the latest sdk, so replace those with direct register access.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-03-17 09:25:58 +01:00
Flavio Ceolin
7431e52f1d github: templates/ext: Add security section
Add a security section in the external source code issue template
requesting information about known vulnerabilities and cryptographic
usage.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-03-17 07:05:56 +01:00
Tom Chang
81bb229960 dts: arm: npcx: update revision register for npcx9m7fb
This commit updates the revision register for the npcx9m7fb chip.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-03-17 07:05:46 +01:00
Peter Mitsis
1c5072780f tests: thread_metric: Fix cooperative for SMP
The thread metric cooperative benchmark had a subtle flaw on
SMP enabled systems. The reporting/main thread was running at
a higher priority than the "cooperative" threads. When that
reporting thread woke up from its 30 second sleep, there was a
chance that it would change the ordering of the "cooperative"
threads before the test expected it.

This ordering change is not present on UP systems as the current
thread is always in the ready queue. However, on SMP systems the
current thread is not in the ready queue and is re-added to the
end of the list when it is preempted by a higher priority thread.

To work around this, we make the priority of the main/reporting
thread to be the same as the "cooperative" threads. Thus when
the reporting thread wakes, it is added to the end of list and
no longer introduces an unexpected schedule point.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-03-17 07:05:36 +01:00
Lyle Zhu
d42294d809 Bluetooth: SMP_BR: Use macros instead of hard code
Define macros for encryption value,
#define BT_HCI_ENCRYPTION_OFF           0x00
#define BT_HCI_ENCRYPTION_ON_LE_AES_CCM 0x01
#define BT_HCI_ENCRYPTION_ON_BR_E0      0x01
#define BT_HCI_ENCRYPTION_ON_BR_AES_CCM 0x02

Use the macros to replace the hard code.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-17 07:04:58 +01:00
Lyle Zhu
af86a35b61 Bluetooth: SMP_BR: Avoid to derive LTK from invalid BR LK
The LTK should not be generated from BR link key if there is a LTK
exists and BR LK is weaker.

Do not drive LTK from BR LK in the case.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-17 07:04:58 +01:00
Ryan McClelland
705491e306 drivers: gpio: shell: fix warning
A warning is generated due to a cast-function-type. Remove the unused
arg.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-03-17 02:21:37 +01:00
Nicolas Pitre
023daf2331 tests/lib/heap_align: improve test some more
- Make sure the align-and-rewind feature is explicitly tested.

- Add sub-unit allocations to the mix.

- Rely on some heap internal facilities  to determine heap boundaries
  (32- vs 64-bit builds do cause a difference).

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-03-17 02:21:27 +01:00
Utsav Munendra
9379c35dbf portability: cmsis: Clarify Kconfig set max limit on dynamic objects
Clarify that all max limit on RTOS objects set by Kconfig only apply
to objects whose control blocks were dynamically allocated. The
CMSIS-RTOSv2 impl layer itself does not restrict the number of
statically created RTOS objects.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-03-17 02:21:15 +01:00
Utsav Munendra
c006922b22 portability: cmsis: Remove max limit on new statically created threads
Clarify thread Kconfigs to denote the maximum number of dynamically
allocated control blocks and stacks for threads. Allow application to
create any number of threads with statically allocated control block
and stack.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-03-17 02:21:15 +01:00
Peter Mitsis
701aab92e2 kernel: Add Z_IS_TIMEOUT_RELATIVE() macro
Introduces the Z_IS_TIMEOUT_RELATIVE() macro to help ensure that
checking for relative/absolute timeouts is consistent. Using this
macro also helps ensure that we get the correct behavior when using
32-bit timeouts (CONFIG_TIMEOUT_64BIT=n).

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-03-17 02:21:02 +01:00
Robert Hancock
61ae560e73 arch: arm: cortex_a_r: Flush entire I-cache on arch_icache_invd_range
Previously, the arch_icache_invd_range function simply returned
-ENOTSUP for Cortex A/R. However, this causes a correctness issue when
the processor modifies memory and then executes it as instructions, like
the LLEXT subsystem does. The CPU might not see the up-to-date instructions
in memory.

This caused an LLEXT test failure when running on an emulated Cortex-R5
in QEMU with caches enabled. QEMU doesn't actually emulate the cache,
but it does seem to need the ISB barrier that is executed as part of the
cache invalidate operation in order to handle self-modifying code
properly.

These CPUs do in fact support a selective I-cache invalidate operation
(ICIMVAU) but the CMSIS library doesn't currently support it. For now,
just invalidate the entire I-cache when an icache_invd_range operation
is performed.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-03-17 02:20:50 +01:00
Robert Hancock
7a276208aa soc: xlnx: zynqmp: Enable I/D caches
On ZynqMP, the RPU Cortex-R5 cores come up by default without
instruction and data caches enabled. Enable them as part of
soc_early_init_hook when CONFIG_CACHE_MANAGEMENT is enabled.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-03-17 02:20:50 +01:00
Robert Hancock
e36d4fafd2 arch: arm: cortex_a_r: Cortex-R5 has I/D caches
Cortex-R5 has instruction and data caches present so update Kconfig
accordingly.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-03-17 02:20:50 +01:00
Martin Stumpf
d7d6038cfb fs: shell: Refactoring
- Run reformat
- Fix ifs not containing bool expressions (coding guideline 85)
- Fix error codes
- Fix missing error handling in `cmd_read`
- Fix incorrect handling of `fs_read` in `cmd_read_test`

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-03-17 02:20:40 +01:00
Ajay Neeli
d012b14f17 drivers: i2c: xilinx_axi: Remove nested spinlock
Removed nested spinlock acquisition in i2c_xilinx_axi_write to prevent
ztest failures due to invalid spinlock usage.
Ensured spinlocks are not consecutively acquired without unlocking,
preventing potential deadlocks.

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-03-17 02:20:20 +01:00
Anas Nashif
b80526658c ci: doc-build: do not check for changed files
Remove check for changed files for now until we have a better way to do
that without the 3rd party action.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-15 11:39:28 -04:00
Jordan Yates
826e598218 console: winstream: add missing Kconfig dependency
Add a missed dependency to all sub-symbols of `WINSTREAM_CONSOLE`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-15 13:08:03 +01:00
Alex Fabre
01b0dec496 west: boards: add board revision support in format string
The following board revision properties can now be used as part
of the format string in the 'west boards -f ...' command.

- board.revisions with format {revisions}
- board.revision_default with format {revision_default}

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-03-15 13:07:52 +01:00
Carlo Kirchmeier
08d652db56 test: fs: enable fstab devicetree integration for fatfs
Added tests in order to verify the functionality of the
newly added fatfs fstab integration.

Signed-off-by: Carlo Kirchmeier <carlo.kirchmeier@zuehlke.com>
Co-authored-by: Carlo Kirchmeier <carlo.kirchmeier@zuehlke.com>
Co-authored-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-03-15 13:07:40 +01:00
Carlo Kirchmeier
1ea0267a31 fs: enable fstab devicetree integration for fatfs
In order to use fstab with fatfs in addition to
littlefs a new driver fstab,fatfs was introduced
containing the required logic to detect and if
needed automount fatfs devices specified in fstab.
Additionally as the partition phandle is not needed
by fatfs and currently is specific to littlefs it
was moved from the common dts binding into the
littlefs binding.

Signed-off-by: Carlo Kirchmeier <carlo.kirchmeier@zuehlke.com>
Co-authored-by: Carlo Kirchmeier <carlo.kirchmeier@zuehlke.com>
Co-authored-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-03-15 13:07:40 +01:00
Robert Hancock
df5ffc9165 drivers: serial: uart_xlnx_ps: Fix interrupt mode issues
This driver had some issues with interrupt-driven operation, which
manifested by the console breaking when enabling the Zephyr shell on the
kv260_r5 target for example. Fixed the following:

-Ensure device is fully hardware reset during initialization

-Changed poll_out to be more consistent with other drivers, i.e. only
wait for the UART to accept the character, not for it to be fully
transmitted.

-Added implementation for err_check function, as otherwise there was no
way to detect or clear the error interrupts enabled by irq_err_enable.

-Fixed logic for enabling/disabling interrupts. This should only be done
by explicit enable/disable calls, not as part of fifo_fill etc.

-This hardware does not produce interrupts for TX FIFO empty or RX FIFO
threshold when enabling them if the TX FIFO is already empty or RX FIFO
already contains data. When enabling interrupts in these cases, use a
timer to trigger a user callback to match the normal UART API usage,
similar to the xlnx_uartlite driver.

-Other minor cleanups to interrupt-driven functions.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-03-15 13:07:28 +01:00
Robert Hancock
a52230b8be drivers: serial: uart_xlnx_ps: run clang-format
Updated code formatting with clang-format. No functional change
intended.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-03-15 13:07:28 +01:00
Jordan Yates
f4fda91e0b watchdog: cmsdk_apb: don't reconfigure after start
Do not allow attempting to install new channels after the watchdog has
been started.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-15 13:07:05 +01:00
Jordan Yates
1f02f39b9e watchdog: cmsdk_apb: reset state before starting
Reset the watchdog back to the initial state before enabling the
expiry interrupt. This prevents the watchdog expiring immediately if
there is a long gap between `wdt_install_timeout` and `wdt_setup`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-15 13:07:05 +01:00
Ayush Singh
8a4fd9bb1f drivers: cc13xx_cc26xx: pwm: Fix pm bug
- The current code will cause stall if some other subsystem (like subg)
  also needs to manage pm states.
- So add a check to only re-enable suspend if it was disabled by PWM.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-03-15 13:06:39 +01:00
Sai Santhosh Malae
935c8e4701 drivers: pwm: siwx91x: Add siwx91x PWM driver
Implement PWM driver for siwx91x device

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-03-15 06:43:58 +01:00
Sai Santhosh Malae
128ba4490d drivers: pwm: siwx91x: PWM pinctrl name changes
Change PWM pin function names to align with wiseconnect 3.4.0

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-03-15 06:43:58 +01:00
Chia-Yang Lin
bd365a0bae drivers: rtc: rts5912: add rtc driver
Add rtc driver for Realtek rts5912.

Signed-off-by: Chia-Yang Lin <cylin0708@realtek.com>
2025-03-15 06:43:46 +01:00
Michael Feist
63623915af doc: update Rust documentation to say support Rust instead of CMake
Seemed to be a typo in the Rust doc page saying to enable CMake support
in your CMakeLists.txt. Swapped to say Rust.

Signed-off-by: Michael Feist <michael.feist@etcconnect.com>
2025-03-15 00:36:11 +01:00
Gerard Marull-Paretas
c93860fae2 soc: nrf54l: fix LFXO INTCAP calculation formula
The formula has been changed in latest version of the PS, adjust code
accordingly.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-15 00:36:00 +01:00
Evgenii Kosenko
03f41eb40b include: sys: sys_heap: fix ifdef guards
Ifdef guard of CONFIG_SYS_HEAP_RUNTIME_STATS prevents using IS_ENABLED
macro, preferred way of guarding code. This commit fixes that by
removing ifdef macro.

Signed-off-by: Evgenii Kosenko <Evgenii.Kosenko@silabs.com>
2025-03-15 00:35:50 +01:00
Evgenii Kosenko
a133ef8f19 include: sys: sys_heap: fix doc generation
Documentation comments describes sys_heap_runtime_stats_get function to
have stats_t argument, hoever function has stats. The commit fixes typo
introduces in a71cd8790f

Signed-off-by: Evgenii Kosenko <Evgenii.Kosenko@silabs.com>
2025-03-15 00:35:50 +01:00
Henrik Brix Andersen
d96e95ee76 drivers: serial: uart: neorv32: neorv32_uart_config_get() can be unused
Guard the neorv32_uart_config_get() function to avoid compilation warning
with CONFIG_UART_USE_RUNTIME_CONFIGURE=n.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-15 00:35:36 +01:00
Anas Nashif
78b114afba samples: hash_map: use sample identifier for samples
Use 'sample' in the identifier to mark this as a sample.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-15 00:35:23 +01:00
Adrian Bonislawski
e7f2e1412d soc: intel_adsp: set MMU permissions for .cold* sections
This patch will set MMU permissions for .cold* sections
Fixes cold section execution if MMU is enabled

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-03-15 00:35:13 +01:00
Anas Nashif
f29ae72d79 kernel: rename 'dumb' scheduler and simply call it 'simple'
Improve naming of the scheduler and call it what it is: simple. Using
'dumb' for the default scheduler algorithm in Zephyr is a bad idea.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-15 00:34:58 +01:00
Declan Snyder
ad431b3c1a tests: spi_loopback: Fix frdm_ke17z overlay
The ke17z overlay for this test is incorrect in that the chip select
line sent to the spi pins on the header is PCS1, not PCS0. This is
having no functional effect on the test right now but soon I am trying
to implement a chip select test, and regardless it helps to have the CS
actually toggle right now for debugging purposes.

Also, I checked the frdm_ke17z512 and it looks like the board pinctrl
file is configuring for PCS2, so I fixed that as well because it looks
also like the same mistake, but I don't have that hardware.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-14 17:56:28 +01:00
Herman Berget
8b909b4403 Bluetooth: Host: Remove experimental label from PAwR
The api has not changed since its introduction some time ago,
mark it as stable.

Signed-off-by: Herman Berget <herman.berget@nordicsemi.no>
2025-03-14 17:56:18 +01:00
Carles Cufi
3195165d86 soc: nordic: nRF54L: Move a few options from boards to the SoC definition
A few option defaults that were so far defined in the board _defconfig
files are actually entirely SoC family (nRF54L) dependant, so it makes
much more sense to have them defined at the SoC family level in order
for all boards based on these SoCs to automatically inherit them.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-03-14 17:56:01 +01:00
Daniel Leung
1530e86877 tests: kernel/pipe_api: move local k_pipe var to global
When CONFIG_KERNEL_COHERENCE is enabled, pend_locked() asserts
when wait_q is not in coherent memory. The k_pipes used in
the pipe_api tests are declared locally within the test. They
are located within the thread stacks and those wait_q inside
k_pipe struct are thus not considered in coherent memory.
To make them work, replace the local ones with a global
k_pipe object. Since each test initializes the pipe object
locally, the tests are not functionally changed.

Fixes #84235

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-03-14 17:55:50 +01:00
Daniel Leung
289f80f4a1 tests: zbus/hlp_priority_boost: use 1cpu setup
The zbus hlp_priority_boost test requires thread priority
boosting. If it is running SMP, it is possible that
the message has already been processed before the check
for priority boosting is done, thus failing the test.
So change the test to use 1 CPU only.

Fixes #79197

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-03-14 17:55:41 +01:00
Author You
1ec7e525ee bluetooth: coex: increase BT_LONG_WQ stack to fix coex app hang
Currently, coex application is enable the mbedtls and PAS feature,
this causes BT_LONG_WQ thread to use more stack size.

Signed-off-by: Author You <author.you@nxp.com>
2025-03-14 17:55:30 +01:00
Declan Snyder
4e1c4cd623 spi_nxp_lpspi: Fix resource leak in transceive
There is a bug here clearly which is that if there is some error in the
transceive function, it returns without releasing the context.
This should be fixed by properly handling the errors with a context release
before returning.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-14 17:55:15 +01:00
Declan Snyder
97e29a9fde spi_nxp_lpspi: Fix TX word formation for multibyte
For multi-byte word, there is clearly a bug in that the same byte is
written to each spot in the word instead of writing all the bytes
properly.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-14 17:55:15 +01:00
Yassine El Aissaoui
2c4e123755 boards: nxp: MCXW: Add zephyr,bt-c2h-uart dts property
Adding the property to support the hci_uart
application.

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-03-14 17:55:05 +01:00
Maximilian Werner
1d8ef24642 soc: mcxc: fix soc-part-number in kconfig
The part numbers for MCXC141VLH and MCXC142VFM
have all been set to MCXC141VFM, which lead to
build errors.

Signed-off-by: Maximilian Werner <maximilian.werner96@gmail.com>
2025-03-14 17:54:49 +01:00
Jeppe Odgaard
6c627df62e drivers: sensor: explorir_m: add calibration
Add calibration via a known gas concentration. This is the recommended way
of calibrating the sensor according to the datasheet.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-03-14 17:54:39 +01:00
Thorsten Klein
78f98ed0a7 FRDM-RW612: led at hsgpio0 is GPIO_ACTIVE_LOW
The LED on the FRDM-RW612 is currently configured incorrectly. It should
be set as GPIO_ACTIVE_LOW

Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
2025-03-14 17:54:27 +01:00
Lucien Zhao
483796888d boards: nxp: mimxrt700_evk: enable wwdt0 as watchdog0 for cm33_cpu0
enable wwdt0 as watchdog0.
test wdt_basic_api case passed(Only support cm33_cpu0 core).

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-03-14 17:53:53 +01:00
Lucien Zhao
d4f62b7c38 drivers: watchdog: add rt700_cm33_cpu0/1 support when getting wwdt clock
add rt700_cm33_cpu0/1 support when getting wwdt clock

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-03-14 17:53:53 +01:00
Lucien Zhao
971ad59c33 dts: arm: nxp: register wwdt0/1 instances for cm33_cpu0
register wwdt0/1 instances for cm33_cpu0

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-03-14 17:53:53 +01:00
Daniel Baluta
43a48d4630 drivers: dma: sdma: Update buffer descriptor count
Some SDMA scripts (e.g multi-fifo) updates the buffer descriptor
count field after a transfer is complete.

Re-initialize the buffer descriptor to point to the correct
transfer size for the next transfer.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2025-03-14 17:53:37 +01:00
Daniel Baluta
380ce33b2d dma: nxp: sdma: Enable multi fifo config for PDM
With PDM device NXP HAL uses multi-fifo script. In order
for this script to properly work we need to initialize
multi fifo and SW done configuration.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2025-03-14 17:53:37 +01:00
Declan Snyder
08351250db tests: spi_loopback: nxp: remove lpspi async=n cfg
Remove the overlay files for many of the NXP platforms, because they
were doing two things that are no longer relevant:

1) CONFIG_SPI_ASYNC=n -> LPSPI driver used to not work with
   CONFIG_SPI_ASYNC, now it does, so we should test it.
2) CONFIG_SPI_MCUX_LPSPI_DMA=y -> This is redundant with the
   testcase.yaml

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-14 17:53:24 +01:00
Declan Snyder
d67e705d0b spi_nxp_lpspi: Fix DMA Async API
Fix the ASYNC DMA API on the lpspi driver and actually make the entire
driver go through that path. Rather than having an orthogonal
internally synchronous path we can just have both APIs go through the
same asynchronous path and just use wait_for_completion from spi context
to implement either sync or async.

Also make DMA driver default y if dependency (an lpspi having dmas
property) is met.

And lpspi_wait_tx_fifo_empty can be shared between drivers.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-03-14 17:53:24 +01:00
Leon Rinkel
b5cd22ea16 boards: adafruit: add initial support esp32s3 feather tft
The Adafruit Feather ESP32S3 is a development board in the Feather
standard layout, sharing peripheral placement with other devices labeled
as Feathers or FeatherWings. The board is equipped with an ESP32-S3 mini
module, a lithium ion battery charger and a USB-C connector. Compared to
the base model, this TFT variant additionally comes with a 240x135 pixel
IPS TFT color display.

Signed-off-by: Leon Rinkel <leon@rinkel.me>
2025-03-14 17:53:13 +01:00
Leon Rinkel
3caa0b9ed5 boards: adafruit: add initial support for esp32s3 feather
The Adafruit Feather ESP32S3 is a development board in the Feather
standard layout, sharing peripheral placement with other devices labeled
as Feathers or FeatherWings. The board is equipped with an ESP32-S3 mini
module, a lithium ion battery charger and a USB-C connector.

Signed-off-by: Leon Rinkel <leon@rinkel.me>
2025-03-14 17:53:13 +01:00
Krzysztof Chruściński
bec4a84749 tests: drivers: counter: basic_api: Add nrf54l15dk_nrf54l15_cpuflpr
Add overlay for nrf54l15dk_nrf54l15_cpuflpr target.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-14 14:52:12 +01:00
Tomi Fontanilles
b920686812 tests: secure_storage: enable entropy driver if available
On top of enabling and allowing test entropy sources, enable
CONFIG_ENTROPY_GENERATOR so that a real driver and entropy source gets
used if available.
This is needed for some PSA Crypto implementations that have random number
generation conditionally compiled in.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-03-14 14:51:58 +01:00
Tomi Fontanilles
f50c3d9d26 tests: secure_storage: its: increase stack sizes
Some implementations require more stack than others.
Increase the Ztest and main stack sizes to accommodate them.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-03-14 14:51:58 +01:00
Tomi Fontanilles
8627250d3c modules: mbedtls: add promptless CONFIG_MBEDTLS_PSA_CRYPTO_STORAGE_C
Add a Kconfig option to match the Mbed TLS define
instead of defining it based on CONFIG_SECURE_STORAGE.

This gives more flexibility regarding the potential re-definition of the
CONFIG_MBEDTLS_PSA_CRYPTO_STORAGE_C Kconfig option.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-03-14 14:51:58 +01:00
Tomi Fontanilles
eb1ed1205f secure_storage: use hybrid key store in samples/tests
Use dynamic allocation for key material for
better compatibility as a fully static key store is a new
feature that not all PSA Crypto implementations support.

Explicitly enable CONFIG_MBEDTLS_ENABLE_HEAP to ensure that Mbed TLS uses
heap for the PSA keys' data (instead of failing at runtime).
This will turn off CONFIG_MBEDTLS_PSA_STATIC_KEY_SLOTS, making the
implementation default to dynamic key slots.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-03-14 14:51:58 +01:00
Tomi Fontanilles
25ad578694 secure_storage: enable CONFIG_ENTROPY_GENERATOR in samples/tests
Explicitly enable CONFIG_ENTROPY_GENERATOR instead of relying on the
build system's defaults.

This:
- Makes sure the filtering works properly between entropy_driver and
entropy_not_secure test scenarios for the samples.
- Helps with TF-M builds in certain scenarios where key generation (via
`psa_generate_key()`) would fail due to the RNG functionality being
disabled.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-03-14 14:51:58 +01:00
Tomi Fontanilles
744e9f70f4 tests: secure_storage: psa: crypto: improve compatibility
The psa_key_attributes_t type is implementation-defined according to
the PSA Crypto spec.
Compare its fields individually instead of doing a memcmp() over the
entire struct.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-03-14 14:51:58 +01:00
Tomi Fontanilles
62fe34dd02 secure_storage: improve tests' compatibility in TF-M-enabled scenarios
Explicitly set the TF-M profile to not rely on the build system defaults
which might differ.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-03-14 14:51:58 +01:00
Sayooj K Karun
775712dc41 include: zephyr: net: Add NULL checks for phy API calls
Add missing NULL checks to the APIs in phy.h

Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2025-03-14 14:41:57 +01:00
Marc Lasch
8aed2a1bab net: lwm2m: Prevent client restart on bootstrap finish retransmission
Ignore bootstrap 'transition done' state transition
(ENGINE_BOOTSTRAP_TRANS_DONE) from an invalid state. The client must be
in state ENGINE_BOOTSTRAP_REG_DONE to process a bootstrap finish command
received from the server.

The LwM2M client does not implement CoAP deduplication (rfc 7252,
section 4.5) and retransmissions of the bootstrap finish command `/bs`
would restart the registration client with undesired side effects.

Signed-off-by: Marc Lasch <marc.lasch@husqvarnagroup.com>
2025-03-14 14:41:15 +01:00
Triveni Danda
e7a65ac9b4 shell: Set default max argc count when WiFi shell is enabled
Set the default maximum argument count for the shell to 30
when the Wi-Fi shell is enabled, to ensure all Wi-Fi
commands work without failure.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-03-14 14:40:57 +01:00
Fabio Baltieri
0bf3c9bc93 github: Update security page for v4.1.0 release
Updates the GitHub security page with the current supported versions
after the v4.1.0 release.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-03-14 14:40:44 +01:00
Pavel Vasilyev
886fabaf87 bluetooth: host: ecc: Change log level debug
This commit changes log level for already registered callback from
warning to debug as this is cause unnecessary noise and doesn't indicate
actual issue. Caller gets a certain error code for this case which can
be handled properly.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-03-14 14:40:34 +01:00
Dominik Lau
b4c0ec5bd4 drivers: serial: ns16550: allow clock_control_on returning ENOSYS
Fixes a regression caused by: 88830a3b
The ns16550 driver should handle possibility of
clock_control_on being a stub (i.e. returning ENOSYS)

Signed-off-by: Dominik Lau <dlau@antmicro.com>
2025-03-14 14:40:24 +01:00
Filip Kokosinski
5dbf61aeb8 include/zephyr/drivers/clock_control: return -ENOSYS for empty on/off
There are in-tree clock controllers that don't implement the `on`/`off`
calls, e.g. in Intel Agilex. Let's return `-ENOSYS` when that's the case.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-03-14 14:40:24 +01:00
Andreas Klinger
8286db1ae7 samples: sensor: veml6031: add attribution test application
- Test all attribute combinations of Vishay sensor VEML6031 which is an
  ambient light sensor.
- Print out saturation case of sensor.
- Idea is to be able to find a good combination of attributes for an
  optimal working area.

Signed-off-by: Andreas Klinger <ak@it-klinger.de>
2025-03-14 14:40:12 +01:00
Andreas Klinger
72b2f01298 drivers: sensor: add vishay veml6031 ambient light sensor
- add driver for Vishay VEML6031 High Accuracy Ambient Light Sensor.
- add new compatible "vishay,veml6031".
- read and write consecutive 8 bit registers as bulk operation.
- add driver to build all test of sensors.
- support fetch and get.
- triggered mode and interrupt is not yet supported.

Signed-off-by: Andreas Klinger <ak@it-klinger.de>
2025-03-14 14:40:12 +01:00
Sven Ginka
74237cf956 board: sensry: add i2c pinctrl
add i2c default pinctrl to all i2c ports.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-03-14 14:39:55 +01:00
Sven Ginka
1a8a4fa3fc dts: sy1xx: add support for i2c
adding i2c nodes to sensry soc sy1xx.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-03-14 14:39:55 +01:00
Sven Ginka
046fbdecfa drivers: i2c: sy1xx add support for i2c
Add i2c support for the sensry soc sy1xx.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-03-14 14:39:55 +01:00
James Roy
10a223b6fe doc: releases: Add a display release entry
Add the display_clear function in the display
subsystem to clear the target devices screen
display by resetting it to white.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-14 14:39:40 +01:00
James Roy
ab4023c4ea drivers: display: Add SDL implementation example
Implement the '.clear' interface in the SDL driver
to allow the upper layers to use the display_clear
function.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-14 14:39:40 +01:00
James Roy
1a55ecfbe6 drivers: display: Add display_clear function
Add a display_clear function to the display subsystem
to clear the target devices screen display. Introduce
a clear interface at the driver layer to implement
the display_clear function.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-14 14:39:40 +01:00
Camille BAUD
2e18b0cc6d boards: Introduce WCH linkW
Introduce WCH linkW board based on CH32V208

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-14 14:39:30 +01:00
Camille BAUD
f67b321607 soc: Introduce Qingke V4C-based CH32V208 SoC
This introduces the only CH32 Serie Qingke V4C SoC, CH32V208

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-14 14:39:30 +01:00
Camille BAUD
55a3e606bb drivers: timer: Enable CH32V00x timer driver for CH32V20x/30x
This enables CH32V20x/30x to use the driver

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-14 14:39:30 +01:00
Camille BAUD
7955757450 drivers: gpio: Introduce CH32V20x/30x GPIOs support to CH32V0x driver
This introduces support for CH32V20x/30x GPIOs

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-14 14:39:30 +01:00
Camille BAUD
a2a89f1fb9 drivers: clock_control: Introduce CH32V20x/30x clock control
This introduces support for CH32V20x/30x Clock schemes and
improves WCH Clock control driver

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-14 14:39:30 +01:00
Camille BAUD
d549af466a drivers: pinctrl: Introduce WCH CH32V20x/30x pinctrl Driver
This introduces the picntrl driver and partial bindings for
WCH CH32 V20x and V30x series

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-14 14:39:30 +01:00
Sebastian Głąb
2e23dfd401 tests: drivers: audio: dmic_api: Enable test execution on nrf54l15
Enable execution of dmic_api test on nrf54l15:
- add 'dmic' to the list of supported peripherals;
- add overlay for nrf54l15;
- align Nordic's implementation of PDM driver to pass the test.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-03-14 09:24:16 +01:00
Verena Schweinstetter
a1c3131949 tests: drivers: Add test case for allegro a4979
Adding a test case for stepper driver implementation of
allegro a4979 microstepping programmable stepper motor driver.

Signed-off-by: Verena Schweinstetter <verena.schweinstetter@zeiss.com>
2025-03-14 09:23:57 +01:00
Verena Schweinstetter
5c2b7bcbf7 drivers: stepper: Add stepper driver for allegro a4979
Adding a stepper driver implementation for allegro a4979
microstepping programmable stepper motor driver.
The implemenation was tested using the drv8424/api testsuite.

Signed-off-by: Verena Schweinstetter <verena.schweinstetter@zeiss.com>
2025-03-14 09:23:57 +01:00
Quang Le
b7f99ffbdd drivers: gpio: Add support for RZ/N2L
Add GPIO driver for RZ/N2L

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-14 09:23:50 +01:00
Quang Le
020a0d312c drivers: interrupt controller: Add support for RZ/N2L
Add interrupt controller driver support for RZ/N2L

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-14 09:23:50 +01:00
Hoang Nguyen
6a00473fa6 drivers: serial: Add support for RZ/N2L
Add serial driver support for RZ/N2L

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-14 09:23:50 +01:00
Hoang Nguyen
da0c8e5842 drivers: pinctrl: Add support for RZ/N2L
This is the initial commit to support pinctrl driver for Renesas RZ/N2L

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-14 09:23:50 +01:00
Nhut Nguyen
954e80a832 boards: renesas: Add minimal support for board RSK+ for RZ/N2L
Add minimal support for board RSK+ for RZ/N2L

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
2025-03-14 09:23:50 +01:00
Hoang Nguyen
fc9d39a06a soc: renesas: Add support for Renesas RZ/N2L
Add support for Renesas RZ/N2L

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-14 09:23:50 +01:00
Binh Nguyen
fa82af2456 MAINTAINERS: Update maintainer role for RZ Platform
Add @binhnguyen2434 as maintainer for Renesas RZ platform.

Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-14 09:19:46 +01:00
Jun Lin
a4ea1a1ac8 drivers: i2c: npcx: enhance the transfer efficiency
The i2c_transfer() API allows multiple msgs objects to be carried in a
transaction. After handling the current msgs object in the interrupt
context, the driver notifies the calling thread to buffer the next
msgs object and generate the Re-Start if required.
However, if the calling thread is preempted by higher priority threads,
the I2C transaction time may become non-deterministic (depending on the
execution time of higher-priority threads). This commits modifies the
driver to handle msgs objects entirely in the interrupt context to
improve the I2C transfer efficiency..

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-03-14 09:17:13 +01:00
IBEN EL HADJ MESSAOUD Marwa
18277b48f1 drivers: ethernet: Add API_V2 auto-negotiation support
- Added definitions for LAN8742 PHY registers and bit masks
  to support auto-negotiation.
- The function `eth_init_api_v2` requires the Ethernet interface
  to be properly initialized. In auto-negotiation mode,
  it reads the speed and duplex settings to configure
  the driver accordingly.
- Implemented functions to get link state and configure speed
  and duplex mode based on auto-negotiation results.
- Ensured proper initialization of semaphores and MAC configuration
  for both auto-negotiation enabled and disabled scenarios.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-03-14 09:16:59 +01:00
Tien Nguyen
7e39286441 tests: drivers: dma: Add support for RZ/G3S-SMARC
Enable DMA driver tests for RZ/G3S-SMARC

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-14 09:16:42 +01:00
Tien Nguyen
6847234349 boards: renesas: rzg3s_smarc: Add DMA support
Add DMA support for board RZ/G3S-SMARC

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-14 09:16:42 +01:00
Tien Nguyen
3d76a26b60 dts: Add DMA nodes to Renesas RZ/G3S devicetree
Add DMA nodes to Renesas RZ/G3S devicetree

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-14 09:16:42 +01:00
Tien Nguyen
342d2d7954 drivers: dma: Initial support for RZ/G3S
Add DMA driver support for Renesas RZ/G3S

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-14 09:16:42 +01:00
Lyle Zhu
218de8dc67 Bluetooth: L2CAP_BR: Code format
Change ```#if defined(CONFIG_BT_L2CAP_DYNAMIC_CHANNEL)
#if defined(CONFIG_BT_L2CAP_LOG_LEVEL_DBG)```
to `#if defined(CONFIG_BT_L2CAP_DYNAMIC_CHANNEL) &&
defined(CONFIG_BT_L2CAP_LOG_LEVEL_DBG)`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-14 05:47:48 +01:00
Lyle Zhu
d82844695e Bluetooth: L2CAP_BR: CID of data sending is invalid
There is a corner case that the channel is in disconnecting status,
due to there is a disconnect request sent from peer.
At this time, the channel is status is `BT_L2CAP_CONNECTED`. But it
has been removed from `conn->channels` by calling the function
`l2cap_br_remove_tx_cid`.
And the disconnect event is notified upper layer via the callback
`ops->disconnected`. The thread of the callback context is blocked
due to the the calling of `printk` in the callback function.

Then the pending lower priority thread, sending the data in this
l2cap channel, is activated. Then in the function
`bt_l2cap_br_send_cb`, a NULL pointer will be got according to the
given CID. And unexpected behavior happens when accessing a NULL
pointer, since the invalid channel pointer is not checked in
function `bt_l2cap_br_send_cb`.

Check the channel pointer after function `bt_l2cap_br_lookup_tx_cid`
called. If the channel pointer is invalid, return error code
`-ESHUTDOWN` directly.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-14 05:47:36 +01:00
Corey Wharton
6d01483b01 drivers: i3c: i3c_dw: skip I3C bus init on pure I2C buses
If the bus is only used I2C we can skip I3C bus initialization which
will send a number of unnecessary CCC transactions.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-03-14 05:47:26 +01:00
Corey Wharton
a19429eb39 drivers: i3c: i3c_dw: make transfer timeout a Kconfig option
The current value of 1s is much too long, default to 100ms instead
which is enough for even a large 4kB FM I2C transfer to finish in
time let alone a typical I3C transfer. Make this configurable in
case projects want to tune this.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-03-14 05:47:26 +01:00
Corey Wharton
b818a7662d drivers: i3c: i3c_dw: dynamically attach I2C devices on transfer
The maximum number of attached devices is limited by the maximum
number of entries in the device address table. For I3C devices
these have to by allocated permanently when devices are attached
but for I2C devices we can dynamically allocate an entry in the
table on a I2C transfer and free it after the transfer is completed.
This allows the maximum number of I2C + I3C devices on a bus to be
larger than the address table size as long as the number of I3C
devices is maxdevs - 1.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-03-14 05:47:26 +01:00
Corey Wharton
e330a69aec drivers: i3c: i3c_dw: mark device busy during transfers
Prevent the device from being automatically suspended during transfers.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-03-14 05:47:26 +01:00
Corey Wharton
6ed98bfc42 drivers: i3c: i3c_dw: add pinctrl support
Adds pinctrl support on init and on PM actions. General PM support is added
to the driver to enable the later.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-03-14 05:47:26 +01:00
Peter Mitsis
c6bc09223e kernel: Move current_fp field out of z_kernel
The current_fp field in the z_kernel structure is only used
by 32-bit x86 (which does not support SMP). As such, it should
reside in the arch specific of section of _kernel.cpus[0].

This also changes the name of 'current_fp' to 'fpu_owner' to
be more consistent with other architectures.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-03-14 05:47:10 +01:00
Lars-Ove Karlsson
22c04bdc66 cmake: linker: Add support for shared sw isr to link file gen
The link file generator didn't have support for
.gnu.linkonce.shared_sw_isr_table*

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-03-14 05:46:36 +01:00
Tom Chang
1d59f95ad4 drivers: flash: npcx: avoid obstruction by eSPI TAF when EC access flash
This commit applies the arbitration when EC and eSPI TAF access flash.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-03-14 05:46:23 +01:00
Tom Chang
de3da0e4fa drivers: espi: npcx: update the arbitration for eSPI TAF access
This commit adds the arbitration when EC and eSPI TAF access flash
simultaneously.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-03-14 05:46:23 +01:00
Lyle Zhu
ec1b384917 tests: Bluetooth: BR: Add test suite sdp_client
IUT works as a SDP Client. The peer device, SDP server, is a PC with
running `bumble` on it.

Add shell command `discovery` to discover specific SDP record
according to specific UUID.

In the test suite, there are three groups test cases,
Group 1 is for Service Search Attribute transaction.
Group 2 is for Service Search transaction.
Group 3 is for Service Attribute transaction.

For each test group, there are four test cases,
Case 1, No SDP record is registered on PC. IUT should not find any SDP
record.
Case 2, A2DP source SDP record is registered on PC. IUT can find SDP
record. And the discovered PSM and version should be same with
registered.
Case 3, A2DP source and HFP HF SDP Records are registered. IUT can
find SDP record. And the discovered RFCOMM channel and HFP version
should be same with registered. This case is used to test the
"continuation state information".
Case 4, Multiple SDP Records are registered. This case is used to test
 the "continuation state information". And also it used to test the
total length exceeds the ACL RX Buffer Size.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-14 05:46:12 +01:00
Emil Gydesen
bd254eea25 tests: Bluetooth: Tester: Fix bad memset in btb_bap_broadcast
btp_bap_broadcast_local_source_free used &source, but since
source was already a pointer, it should just use source.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-14 01:02:22 +01:00
Tom Burdick
079d9c34e4 rtio: Transactions assume valid next list nodes
Add an assert ensuring programming errors where the executor code
assumes there is a next node in the list for transaction/chained
submissions.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-03-14 01:02:10 +01:00
Henrik Brix Andersen
99fecb2c33 boards: others: neorv32: default to reading clock frequency at boot
Default to reading the clock frequency from SYSINFO at boot time to make
the board compatible with a wider range of NEORV32 implementations.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-14 01:01:59 +01:00
Henrik Brix Andersen
8a1ed6f02d soc: neorv32: add option for reading clock frequency from sysinfo at boot
Add Kconfig option for reading the NEORV32 clock frequency from SYSINFO at
boot time.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-14 01:01:59 +01:00
Tom Hughes
4b415dfc4c cmake: modules: Refer to log file based on CMake version
Starting with cmake 3.26, the log file used for configure-time checks
has changed:

https://cmake.org/cmake/help/latest/release/3.26.html#configure-log

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-14 01:01:43 +01:00
Daniel Leung
c925b0ecd5 xtensa: mmu: fix incorrect caching attrs on double mapping
Inside map_memory() with double mapping enabled, we should not
be mapping the memory with the incoming attributes as-is since
the incoming address may be on un-cached region but with
caching attribute. So we need to sanitize the attributes
according to the incoming address.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-03-14 01:01:32 +01:00
Daniel Leung
4b5ceb9dd0 cmake: compiler/xt-clang: add -Wno-unknown-warning-option
xt-clang is usually based on older version of clang, and
Zephyr main targets more recent versions. Because of this,
some newer compiler flags may cause warnings where twister
would mark as test being failed. To workaround that,
add -Wno-unknown-warning-option to suppress those warnings.

Fixes #84138

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-03-14 01:01:22 +01:00
Sachin D Kulkarni
69ce6af74b manifest: nrf_wifi: Pull fix for CI failure
Pull in fix for CI failure in Offloaded raw TX mode caused
due to commit 0cd3bb2291a7dd22f4cdb1a4cd935a213c2bbfab in nrf_wifi

Signed-off-by: Sachin D Kulkarni <Sachin.Kulkarni@nordicsemi.no>
2025-03-14 01:01:07 +01:00
Chaitanya Tata
ac8c28f7b7 tests: drivers: nrf_wifi: Fix the tags
When the only changes are nrf_wifi module the twister runs with tag
"nrf_wifi" and restricts tests, and that excludes this test as well.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-03-14 01:01:07 +01:00
Emil Gydesen
25f3de75a2 tests: Bluetooth: CAP: Fix issues for CAP BSIM tests
Some CAP BSIM could not be built after some commits were merged.
One CAP test was missing a call to backchannel_sync_send_all
A change in the controller and/or timing seems to have triggered
an old issue on a bunch of tests. Theses tests have been disabled
while the issue is pending investigation.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-13 18:05:12 +01:00
Torsten Rasmussen
7f6b3f51ef cmake: remove BUILD type in function description.
Build type was removed in 763a49f082 but
the function description was not updated accordingly.

Remove build type from the function description.

Add board qualifier as that is missing.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-03-13 16:58:10 +00:00
Filip Kokosinski
4b745fa725 soc/cdns/sample_controller32: align CONFIG_PRIVILEGED_STACK_SIZE
This commit aligns the value of `CONFIG_PRIVILEGED_STACK_SIZE` to the
alignment specified by the value of `XCHAL_MPU_ALIGN`, which for
`sample_controller32` is equal to 4096.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-03-13 16:57:59 +00:00
Johann Fischer
bc6f7d2c15 drivers: udc_ambiq: do not leak UDC_AMBIQ_MAX_QMESSAGES
Do not leak UDC_AMBIQ_MAX_QMESSAGES Kconfig option.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-03-13 16:57:47 +00:00
Johann Fischer
e3fffa5931 drivers: udc_ambiq: do not include DWC2 hardware header
This should not be necessary for this driver.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-03-13 16:57:47 +00:00
Guennadi Liakhovetski
dc27b4219c llext: skip MMU flag adjustment for pre-located extensions
Extensions with the pre_located flag set, manage memory themselves,
including MMU permissions. Skip any such adjustments in LLEXT core.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-03-13 16:57:37 +00:00
Alberto Escolar Piedras
828348e324 manifest: net-tools: Update to remove native_posix mentions
Update net-tools to the latest version which replaces mentions
of native_posix with native_sim.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-13 16:57:26 +00:00
Hui Bai
553b7d9bc5 wifi: shell: Show WPA2 Enterprise in scan results
For WPA2 Enterprise AP, show security type as WPA2 Enterprise
instead of EAP-TLS.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-03-13 16:57:15 +00:00
Hui Bai
c61afbfa40 driver: wifi: Update security type to EAP for enterprise AP in scan results
Updated security type to WIFI_SECURITY_TYPE_EAP for enterprise AP
when handling scan results.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-03-13 16:57:15 +00:00
Helmut Lord
84163d35e6 logging: rtt: add dictionary hex logging
Adds hex dictionary logging for RTT backend

Signed-off-by: Helmut Lord <kellyhlord@gmail.com>
2025-03-13 16:57:05 +00:00
John Barbero Unenge
53c5aa3bb0 scripts: ci: check_compliance: Fix signoff check
Use the --format flag in git rather than parsing the output of
the git log. The inspiration for this change was that the previous
implementation breaks if there's a ~/.gitconfig that changes the
git log format.

Signed-off-by: John Barbero Unenge <git@lsrkttn.com>
2025-03-13 16:56:40 +00:00
Fabio Baltieri
60a9a202df kscan: drop kscan and any reference
Drop the whole kscan subsystem and reference to it.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-03-13 16:56:26 +00:00
Emil Gydesen
501b95ff9b Bluetooth: CSIP: Rename BT_CSIP_SET_MEMBER_NOTIFIABLE
Renamed BT_CSIP_SET_MEMBER_NOTIFIABLE to
BT_CSIP_SET_MEMBER_SIRK_NOTIFIABLE to be more specific.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-13 16:56:14 +00:00
Luis Ubieda
2bc963bfea tests: paa3905: Add node to Build-All tests
Basic, build time validation. No streaming validation supported by this
test, though.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-03-13 16:56:07 +00:00
Luis Ubieda
df1d3b8ef3 sensor: paa3905: Add streaming mode
Working through either Motion detection or through Data-Ready.

Data-ready has a back-up timer to trigger worst case, if no motion
occurs within 10X data-rate.

On every streaming event, the driver checks for the sensor health, and
attempts recoverying its state if it detects issues.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-03-13 16:56:07 +00:00
Luis Ubieda
53bb372980 sensor: PA3905: Add basic functionality
- Add bus support for SPI (based on RTIO).
- Support read/decode API for one-shot reads on the following channels:
    - SENSOR_CHAN_POS_DX.
    - SENSOR_CHAN_POS_DY.
    - SENSOR_CHAN_POS_DXYZ.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-03-13 16:56:07 +00:00
Vincent van der Locht
21f839b754 tests: net: mdns: updated interface to match unicast MDNS function
To add the functionality conform rfc6762 chapter 6.7  the interface for
setup_dst_addr(...) has changed. This patch fixes the interface mismatch

Signed-off-by: Vincent van der Locht <vincent@synchronicit.nl>
2025-03-13 16:54:24 +00:00
Vincent van der Locht
a26a222410 net: mdns: adding MDNS unicast response confirm rfc6732
Conform rfc6762  a mDNS responder should answer clients
which are not using the mDNS port in the source address
with unicast  UDP to the same port as described in chapter 6.7

Fixes: #81657

Signed-off-by: Vincent van der Locht <vincent@synchronicit.nl>
2025-03-13 16:54:24 +00:00
Adam Kondraciuk
d9c5c8d825 soc: nordic: nrf54l: Fix num of irq for nRF54L09
Change number of IRQ parameter for nRF54L09 devices.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-03-13 16:54:06 +00:00
Lukasz Mrugala
ffe72a49bf scripts: Add invariant log closing
If BB tests failed, crashed, etc., log handles
could linger and crash test cleanup.
Adding log closing to a `finally` section
should prevent those issues.

Loggers should not be set up as globals,
as it makes testing much harder.
Running multiple Twisters may cause for the
logfiles to be still "in use".

When exiting main, close all logfiles
and remove their handlers from all loggers.
Do that for conftest as well.

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2025-03-13 16:53:55 +00:00
Alex Fabre
5ba659c43f sca: gcc: add support for additional analyzer options
This commit brings support for additional GCC static analyzer options
with 'GCC_SCA_OPTS=...'

Linked to discussion on 'ccache' side effect on analyzer file
generation[1]

[1] https://github.com/zephyrproject-rtos/zephyr/discussions/86196

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-03-13 16:53:26 +00:00
Torsten Rasmussen
41ac85a2c5 cmake: introduce GCC_COMPILER_VERSION variable
Introduce GCC_COMPILER_VERSION to be used in Zephyr CMake when knowledge
of the current GCC Compiler version is needed and
CMAKE_C_COMPILER_VERSION has not been defined yet.

CMAKE_C_COMPILER_VERSION is not defined until project() is called.

Signed-off-by: Torsten Rasmussen <torsten.rasmussen@nordicsemi.no>
2025-03-13 16:53:26 +00:00
Jamie McCrae
9f12f8afb2 infrastructure: Remove hwmv1 support
Removes support for the deprecated hardware model version 1

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-03-13 16:53:07 +00:00
Armin Kessler
4bb5ffd786 driver: video: esp32: add video_flush() callback
Adding missing `video_flush()` callback to driver.

Signed-off-by: Armin Kessler <ake@espros.com>
2025-03-13 10:50:11 +01:00
Lyle Zhu
2ac116ea71 Bluetooth: SMP_BR: Derive LTK after LK refreshed
When the link key of BR is upgraded, the encrypt key refresh event
will be notified. The link key is upgraded from weak to strong.
The LTK of LE should be derived from strong link key.

Start SMP pairing procedure to try to derive LTK from LK.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-13 10:49:58 +01:00
Pavel Vasilyev
d3997c6eb0 bluetooth: mesh: set subscription address on response
This fixes an issue where a subsequent Config Model Subscription Add
message with the same virtual address UUID would result in a Config
Model Subscription Status message with the Address field incorrectly set
to 0.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-03-13 10:49:48 +01:00
Emil Gydesen
b2310b69bb tests: Bluetooth: Tester: Do not send MICP Mute ev on write cb
When the BT Tester gets the write response, it should not send
the state change event, as the write response may come
before the notifications, and in which case the state may
not have changed.

The BT Tester should always wait for the state change notification
before sending the event.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-13 10:49:35 +01:00
The Nguyen
759ddf2685 drivers: mipi_dsi: add mipi phys timing setting for renesas,ra-mipi-dsi
Add timing configuration in dts for renesas,ra-mipi-dsi

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-13 10:49:13 +01:00
The Nguyen
fadd3f8491 drivers: mipi_dsi: correct formatting for dsi_renesas_ra
Remove redundant code.
Format source code to make it prettier.

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-13 10:49:13 +01:00
The Nguyen
ca1adf7c28 drivers: mipi_dsi: extend support of renesas,ra-mipi-dsi
Extend support for DSI generic write

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-13 10:49:13 +01:00
The Nguyen
539d0f6f61 driver: display: use LP mode for ilitek,ili9806e-dsi
Update driver code to use LPM

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-03-13 10:49:13 +01:00
Nitin Pandey
652c5f42ac driver: wifi: siwx91x: Fix scan params error for 5Ghz band
- Rejected non 2.4GHz band channels from Wifi-Scan.
- Overrode the WIFI_MGMT_SCAN_CHAN_MAX_MANUAL parameter to 50.
- Added check for wrong interface and invalid states

Signed-off-by: Nitin Pandey <nitin.pandey@silabs.com>
2025-03-13 10:49:03 +01:00
Sebastian Głąb
321fcaf44d boards: nordic: nrf54l20pdk: Add SPI to the supported peripherals
Enable Twister tests of SPI peripheral on nRF54L20pdk.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-03-13 10:48:30 +01:00
Emil Gydesen
5918427278 Bluetooth: Host: Make bt_le_addr_is_bonded public
Some GATT services and profiles define specific behavior
based on whether the remote device is bonded or not.
The internal function, bt_addr_le_is_bonded, is the
only function to do this, but it was kept internal,
and could thus not be used for those services
without including hci_core.h.

The function has been moved to the public API
so that application can determine if a remote
address is bonded or not, and has been renamed
to not use the bt_addr namespace, but rather the
bt_le.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-13 10:48:19 +01:00
Emil Gydesen
b8a9f1f3ed tests: Bluetooth: CAP: Refactor CAP broadcast tests to multiple tests
The cap_broadcast test has been split into 3 tests:
1) Regular test
2) Regular test with metadata update
3) Test for invalid parameters

This will make it easier to use the regular cap_broadcast test
for other test cases, as it does less now.
It also makes each test run faster seperately and reduce their
scopes.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-13 10:28:19 +01:00
Emil Gydesen
1148b9ac3e tests: Bluetooth: CAP and GMAP: Add TX/RX for AC tests
Add TX and RX verification for the audio configuration tests.
This requires modifying some of the underlying structures
used in those tests, as well as initializating and triggering
TX, and with verification of RX as well.

These tests were implemented to ensure that the streams are not
just established, but can send ISO data without issues.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-13 10:28:10 +01:00
Emil Gydesen
1f26899229 Bluetooth: TBS: Ensure sending notifications
The existing implemented only attempted to send all notifications,
but if host was out of ATT TX buffers the notifications would fail
and the client may miss out on important information, and would be
a spec violation.

This commit refactors notificatios in TBS so that they are always
sent.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-13 10:27:59 +01:00
Maureen Helm
b72deba645 tests: drivers: build_all: Keep sensor conf files sorted
Adds zephyr-keep-sorted-start and zephyr-keep-sorted-stop directives to
keep tests/drivers/build_all/sensor/*.conf sorted.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-03-13 07:40:54 +01:00
Maureen Helm
b023a3ee53 tests: drivers: build_all: Sort sensor conf files
Sorts tests/drivers/build_all/sensor/*.conf

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-03-13 07:40:54 +01:00
Nirav Agrawal
fbf3353ec6 drivers: serial: add support for uart_line_ctrl_set()
- For MCUX LPUART driver, added support to control RTS line
  High/Low from other driver/app code.

- This control is required to wakeup other device which is
  in sleep and configured its wakeup-source as UART-CTS line.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-03-13 07:40:49 +01:00
Jilay Pandya
761c6fbae6 tests: stepper_api: test stop, set_micro_step_res, set_micro_step_interval
unify error codes from all drivers based on stepper specification
add a generic test case for set_micro_step_interval and stop

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-13 07:31:06 +01:00
Jilay Pandya
f780df495d tests: stepper_api: create a scaffold to generalize tests
This commit creates a scaffold for executing stepper_api tests
on the existing step_dir drivers.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-13 07:31:06 +01:00
Jilay Pandya
e6a2869297 MAINTAINERS: add tests/drivers/stepper to stepper area
Add missing tests/drivers/stepper to "Drivers: Stepper"

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-13 07:31:06 +01:00
Kyra Lengfeld
35707831fa Bluetooth: Host: Improve bluetooth documentation
This commit adds more detailed description to the "Bluetooth APIs" and
"GAP" group within the bluetooth header.

Signed-off-by: Kyra Lengfeld <kyra.lengfeld@nordicsemi.no>
2025-03-13 07:24:35 +01:00
Tristan Honscheid
aa240e2ecb device: Update Z_DEVICE_INIT_ENTRY_DEFINE to be C++ compatible
The `Z_DEVICE_INIT_ENTRY_DEFINE()` macro uses a designated initializer
to define a struct. Ensure all members of `struct init_entry` are
defined in order for C++ compatibility.

Signed-off-by: Tristan Honscheid <honscheid@google.com>
2025-03-13 07:24:25 +01:00
Tristan Honscheid
be4334b2d2 device: Update SYS_INIT_NAMED() to be C++ compatible
In #84394, `struct init_entry` was modified to remove an unneeded union.
The `SYS_INIT_NAMED()` macro was adjusted accordingly, but is no longer
C++ compatible due to the partial designated initializer.

Add an explicit value (NULL) for the other field (`dev`) in that struct.

Signed-off-by: Tristan Honscheid <honscheid@google.com>
2025-03-13 07:24:25 +01:00
Anas Nashif
322b358368 samples: sensors: bme280: fix filters
SPI scenario was not matching any filters, fix it.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-13 07:23:36 +01:00
Anas Nashif
616780bbc5 samples: sensors: lis2dh: fix filtering
Sample was not hitting any filters, make it build and fix filters.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-13 07:23:36 +01:00
Hui Bai
b23d1c2dbd hostap: AP is not allowed if unsupported security type is configured
Return error if any of unsupported type is configured and softAP
will not be started.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-03-13 07:23:28 +01:00
Benjamin Cabé
56625124e8 doc: Improve style of table of supported feature header
Border was bogus -- fix CSS rule to provide a more subtle look.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-13 07:23:09 +01:00
Benjamin Cabé
7317d918e2 doc: Remove disabled row styling from table of supported HW features
Grayed out rows in the table of supported HW features  are more confusing
than helpful.
The yellow/green indicators with the count for each feature are enough to
communicate the initial status.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-13 07:23:09 +01:00
William Tambe
15fa9a8ed8 arch: x86: remove arch specific dependencies from DYNAMIC_BOOTARGS
CONFIG_DYNAMIC_BOOTARGS currently depends on CONFIG_MULTIBOOT_INFO
and CONFIG_BUILD_OUTPUT_EFI which are x86 specific.

This change removes those dependencies so that another architecture
can use CONFIG_DYNAMIC_BOOTARGS without the x86 specifc features.

Signed-off-by: William Tambe <williamt@cadence.com>
2025-03-13 07:22:53 +01:00
Ioannis Damigos
a7c0ec2c55 drivers: sensor: hs400x: Soft reset HS400x during initialization
Soft reset HS400x during initialization to make sure that
device is at a known state and writeable registers have the
default values.

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-03-13 07:22:36 +01:00
Aksel Skauge Mellbye
b86d8c0030 tests: drivers: uart: Use EUSART0 as console on xg24_rb4187c
The UART test for USART needs to move the console to an EUSART instance
in order to free up USART0 for the test. Since EUSART1 is configured for
SPI use by the board DTS, use EUSART0 for console.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-13 07:22:11 +01:00
Aksel Skauge Mellbye
fa75876170 boards: silabs: xg24_rb4187c: Add SPI and I2C buses
Add DTS configuration for SPI and I2C buses on the board.
Make use of the new zephyr:board-supported-hw Sphinx directive to
automate the list of supported features in the board documentation.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-13 07:22:11 +01:00
Khoa Nguyen
1e3718471e samples: boards: renesas: Add comparator sample for Renesas
Add comparator sample for Renesas boards

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-13 07:22:00 +01:00
Khoa Nguyen
b331ed7f89 tests: drivers: comparator: Add support gpio_loopback for RA8
Add support gpio_loopback to run test app on ek_ra8m1,
ek_ra8d1, mck_ra8t1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-13 07:22:00 +01:00
Khoa Nguyen
540aa0b490 boards: renesas: Initial Comparator support for RA8
Add pinctrl and config option in board dts to run Comparator
on ek_ra8m1, ek_ra8d1, mck_ra8t1 boards

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-13 07:22:00 +01:00
Khoa Nguyen
2b168483fe dts: arm: renesas: ra: Initial Comparator support for RA8
Add acmphs_global node and acmphs nodes to support Comparator
on ra8x1 soc.

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-13 07:22:00 +01:00
Khoa Nguyen
cf9e92742b drivers: comparator: Initial Comparator support for Renesas RA
Initial Comparator driver support for Renesas RA

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-13 07:22:00 +01:00
Khoa Nguyen
65012005ef manifest: Update hal_renesas for RA Comparator support
Update hal_renesas for RA Comparator support

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-13 07:22:00 +01:00
Frank Audun Kvamtrø
b0cc4fe0de wifi: hostap: Fixing naming collisions for some TLS configurations
-Mbed TLS has come up with its own naming-convention with regards
 to certain Mbed TLS configurations for TLS/DTLS and X.509. This
 commit fixes a couple of them by depending on MBEDTLS_BUILTIN
 which is set when Kconfig.tls-generic is used
 1. Make MBEDTLS_PEM_CERTIFICATE_FORMAT depend on MBEDTLS_BUILTIN
    The proper name for this functionaity is MBEDTL_PEM_PARSE_C and
    MBEDTLS_PEM_WRITE_C
 2. Make MBEDTLS_SERVER_NAME_INDICATION depend on MBEDTLS_BUILTIN
    The proper name for this is MBEDTLS_SSL_SERVER_NAME_INDICATION

Signed-off-by: Frank Audun Kvamtrø <frank.kvamtro@nordicsemi.no>
2025-03-13 07:21:51 +01:00
Frank Audun Kvamtrø
29ed1ba13d wifi: Resolve PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128 dependencies
-PSA_WANT_ALG_CMAC must be set for PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128
 to be valid. This commit fixes this mismatch for hostap

Signed-off-by: Frank Audun Kvamtrø <frank.kvamtro@nordicsemi.no>
2025-03-13 07:21:51 +01:00
Phuc Pham
ec5bcdc2c8 samples: drivers: adc: Add support for RZ/G3S-SMARC
Add support for RZ/G3S-SMARC to ADC driver sample

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-13 07:21:40 +01:00
Phuc Pham
a1ab2fc91a tests: drivers: adc: Add support for RZ/G3S-SMARC
Add test support for ADC driver of RZ/G3S-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-13 07:21:40 +01:00
Phuc Pham
3ed2624c63 boards: renesas: rzg3s_smarc: Add ADC support
Add ADC support for board RZ/G3S-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-13 07:21:40 +01:00
Phuc Pham
25c366c950 dts: renesas: Add ADC support for RZ/G3S
Add ADC nodes to Rensas RZ/G3S devicetree

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-13 07:21:40 +01:00
Phuc Pham
fe53749cdf drivers: adc: Initial support for RZ/G3S
Add ADC driver support for Renesas RZ/G3S

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-13 07:21:40 +01:00
Alberto Escolar Piedras
b7970ccc5f samples/net sntp_client: Replace deprecated option
CONFIG_ETH_NATIVE_POSIX is deprecated in favor of
CONFIG_ETH_NATIVE_TAP, let's replace it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 19:05:12 +01:00
Alberto Escolar Piedras
deffdec545 doc boards/native arch_soc: Clarify 32bit paragraph
One only needs the 32bit C library to build 32bit binaries.
And let's remove ubuntu 16 reference. The package is the same in
all versions.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 19:05:12 +01:00
Alberto Escolar Piedras
41c576888a arch/posix posix_core.h: Remove native_posix mention
That target does not exist anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 19:05:12 +01:00
Alberto Escolar Piedras
942ef41f5d arch/posix posix_cheats.h: Clarify two comments
native_posix does not exist anymore. This header still applies for
targets setting CONFIG_NATIVE_APPLICATION until this option is removed.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 19:05:12 +01:00
Alberto Escolar Piedras
5c4be68b3c arch/posix/CMakeLists.txt: Move comment to correct place
This comment "moved" over the years as more code was added.
Let's put it where it belongs, and simplify it a bit.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 19:05:12 +01:00
Nicolas Pitre
b5bc307019 net: lwm2m: encapsulate ring buffer internals
Use struct ring_buf_index as a whole, don't access its constituants.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-03-12 19:04:54 +01:00
Robert Lubos
867836741c tests: net: checksum_offload: Increase ztest stack size
The tests crash with a stack overflow on some platforms, therefore
increase the ztest stack size.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-03-12 19:04:44 +01:00
Kyra Lengfeld
c31b962743 Bluetooth: Host: improve GATT documentation
Clarifying `bt_gatt_attr` docs.

Signed-off-by: Kyra Lengfeld <kyra.lengfeld@nordicsemi.no>
2025-03-12 19:04:30 +01:00
Henrik Brix Andersen
e91f08f65d doc: releases: release-notes: 4.2: removal of deprecated net_buf APIs
Add entry for the removal of the deprecated net_buf_put(), net_buf_get()
API functions, and the deprecated zephyr/net/buf.h header location.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-03-12 19:04:19 +01:00
Henrik Brix Andersen
0f42f89a8c lib: net_buf: remove deprecated zephyr/net/buf.h header file
Remove the deprecated zephyr/net/buf.h header file.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-03-12 19:04:19 +01:00
Henrik Brix Andersen
4d01efbf90 lib: net_buf: remove deprecated net_buf_put() and net_buf_get() functions
Remove the deprecated net_buf_put() and net_buf_get() functions.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-03-12 19:04:19 +01:00
Sachin D Kulkarni
a34198b2a2 manifest: nrf_wifi: Pull in change to include reg chan info
Pull in change to include reg chan info along with reg domain in the
GET_REG_DOMAIN event for the radio test and offloaded raw TX modes.

Signed-off-by: Sachin D Kulkarni <Sachin.Kulkarni@nordicsemi.no>
2025-03-12 19:04:01 +01:00
Chris Friedt
7623a18c2e posix: remove deprecated kconfig options
Remove deprecated Kconfig options. These were given an extra
release cycle of soak time, but generally were OK to remove
after Zephyr v4.0.0 was released.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-03-12 19:03:52 +01:00
Chris Friedt
992ccfa738 tests: drivers: wifi: do not use deprecated posix kconfig
Use CONFIG_POSIX_TIMERS instead of CONFIG_POSIX_CLOCK.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-03-12 19:03:52 +01:00
Chris Friedt
1cf4b1e423 samples: net: prometheus: do not use deprecated posix kconfig
Use CONFIG_ZVFS_OPEN_MAX instead of CONFIG_POSIX_MAX_FDS.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-03-12 19:03:52 +01:00
Chris Friedt
7ee9c01f54 drivers: wifi: nxp: do not use deprecated posix kconfig
Update NXP_WIFI_SIGMA_AGENT to use non-deprecated POSIX Kconfig
options.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-03-12 19:03:52 +01:00
Chris Friedt
4c28582224 posix: threads: use non-deprecated kconfig
MAX_PTHREAD_COUNT was deprecated in favour of
POSIX_THREAD_THREADS_MAX prior to v3.7.0.

Use CONFIG_POSIX_THREAD_THREADS_MAX going forward.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-03-12 19:03:52 +01:00
Chris Friedt
33fb827603 posix: key: do not use deprecated kconfig
Use CONFIG_POSIX_THREAD_KEYS_MAX instead of
CONFIG_MAX_PTHREAD_KEY_COUNT.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-03-12 19:03:52 +01:00
Chris Friedt
72bc08578b scripts: utils: posix: add dry-run option and improve logging
Add a `--dry-run` (or `-d`) option to the posix kconfig
migration script for deprecated POSIX Kconfigs.

Additionally, add a set of skipped options (e.g. `TIMER`).

The `CONFIG_TIMER` option does not exist in the tree anymore
and was way too generically named previously, so the false
positive rate is astronomical, so it makes sense to skip it.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-03-12 19:03:52 +01:00
Adam Kondraciuk
2055f7d595 soc: nordic: nrf54h: Add SCB retention for s2ram
For the Suspend to RAM procedures the SCB content
also needs to be retained.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-03-12 19:03:17 +01:00
Lyle Zhu
9a04dfd85e Bluetooth: l2CAP_BR: Fix the response cannot be sent out issue
There is an issue that the L2CAP connect response function
`l2cap_br_conn_req_reply()` is called first. And then the ACL
disconnect function `bt_conn_disconnect()` is called following. But
the packet of `bt_conn_disconnect()` appears on the HCI bus first.

Add a flag `L2CAP_FLAG_DISCONNECT_ACL` to flag whether it is needed to
disconnect ACL connection.

Set the flag `L2CAP_FLAG_DISCONNECT_ACL` when result of the L2CAP
channel conn rsp is `BT_L2CAP_BR_ERR_SEC_BLOCK`.

Add a l2cap packet sent out callback `l2cap_br_conn_rsp_sent_cb()`.
When the callback triggered, disconnect the ACL connect with
`BT_HCI_ERR_AUTH_FAIL` if the flag `L2CAP_FLAG_DISCONNECT_ACL` has
been set.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-12 19:03:05 +01:00
Emanuele Di Santo
cdc2f2a52c drivers: timer: nrf_rtc_timer: do not start LFCLK unless CLOCK_CONTROL
Do not start the LF clock unless CONFIG_CLOCK_CONTROL_NRF is enabled.
This is similar to how it's done in Nordic's GRTC driver.

Authored-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Signed-off-by: Emanuele Di Santo <emdi@nordicsemi.no>
2025-03-12 19:02:55 +01:00
Luca Burelli
6debfe7934 llext-edk: export board information to EDK files
Export the currently used board name and (when applicable) qualifiers
and revisions to the EDK files.  This information can be used by EDK
users who deal with multiple targets to differentiate between them.

Uses the existing 'zephyr_string' function to sanitize the strings
instead of a custom regex replace.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-12 19:02:45 +01:00
Luca Burelli
b1e3fa4d77 llext-edk: fix -imacros handling
The -imacros flag may be given in a number of different variations:
 - with one or two preceding dashes, and
 - separated from its argument, joined by an equals sign, or joined with
   no separator

This patch fixes the handling of the -imacros flag in the LLEXT EDK to
detect all of those options.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-03-12 19:02:45 +01:00
Nirav Agrawal
cacf8f6a47 drivers: bluetooth: hci_nxp_setup: support for bt disable and reinit
- added flag in nxp setup driver to perform HCI controller firmware-
  load and configuration only once. This avoid loading/setting-up
  controller fw on successive bt_init() after bt_disable() call.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-03-12 19:02:35 +01:00
Nirav Agrawal
438701fdd5 bluetooth: host: perform hci-reset in bt_disable()
- added HCI command to send hci-reset in bt_disable() func, and
  remove its call from the driver close() call.
- remove rsp buf pass to 'hci_reset_complete()' func as status is
  already checked under 'bt_hci_cmd_send_sync()'.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-03-12 19:02:35 +01:00
Dimitrije Lilic
8af1b52775 boards: shields: Add EVAL-AD4052-ARDZ adc shield
Adds a new shield definition for the Analog Devices EVAL-AD4052-ARDZ
accelerometer shield. This shield provides support for an ADI AD4052
16BIT adc over an Arduino SPI connector.

Signed-off-by: Dimitrije Lilic <dimitrije.lilic@orioninc.com>
2025-03-12 19:02:25 +01:00
Dimitrije Lilic
4a9d1473d3 drivers: adc: ad405x: Add AD405X driver
Initial AD405X driver supporting sampling, averaging
and burst averaging operation modes. Configurable
without interrupts or with device ready and
data ready interrupt.

Signed-off-by: Dimitrije Lilic <dimitrije.lilic@orioninc.com>
2025-03-12 19:02:25 +01:00
Ajay Neeli
06cd0dfc7a boards: amd: kv260_r5: Add I2C Support
- Enable i2c1 node along with attached EEPROM.
- IP is tested with QEMU and kv260 hw.

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-03-12 19:02:04 +01:00
Ajay Neeli
fed4e13c53 dts: arm: xilinx: zynqmp: Add I2C Support
- Define i2c0, i2c1 bus nodes in the device tree for ZynqMP
- Note: Platform-specific configurations, such as I2C Bus Frequency and
  Reference input clock, should be handled according to the design.

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-03-12 19:02:04 +01:00
Ajay Neeli
d2519c1192 drivers: i2c: Add Cadence I2C support
This patch adds support for Cadence I2C Controller
 - Enables I2C Master Mode functionality

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-03-12 19:02:04 +01:00
Ajay Neeli
3a5860c53a dts: bindings: i2c: Add Cadence I2C
- Add device tree bindings for Cadence I2C controller

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-03-12 19:02:04 +01:00
Lyle Zhu
ca121e134e Driver: HCI: set BT_NXP_NW612 as default
Add a choice `BT_NXP_MODULE` to make sure only one controller can be
selected if the multiple controllers are supported.

All NXP Bluetooth module similar with BT_NXP_NW612 should be added
to the section.

And set the BT_NXP_NW612 as the default controller.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-12 19:01:50 +01:00
Furkan Akkiz
4d1740ac99 tests: drivers: uart: Enable uart_async_api test for MAX78002EVKIT
Enable uart_async_api test for MAX78002EVKIT board.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-03-12 19:01:40 +01:00
Furkan Akkiz
b0672f8237 drivers: serial: Add clock source selection feature to MAX32 UART
This commit adds clock source selection feature to UART of MAX32 MCUs.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-03-12 19:01:40 +01:00
Furkan Akkiz
8cd0c6893e manifest: Update 'hal_adi' revision
Update 'hal_adi' revision to get required changes for UART driver.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-03-12 19:01:40 +01:00
Michał Stasiak
8260e1ff5c drivers: audio: dmic_nrfx: improvements to driver
Added queue for memory slab addresses to ensure that they
are released in correct order. Improved formula for frequency
scaling for nRF54H20. Fixed alternative channel mapping.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-12 19:01:30 +01:00
Alberto Escolar Piedras
495c3b4d26 doc/releases/migration-guide-4.2: Mention native_posix renames
Mention all native_posix drivers renames in the migration
guide.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 14:05:45 +00:00
Ioannis Damigos
dcd8c611aa drivers: sensor: hs400x: Fix measurement time
According to the datasheet, maximum conversion time for both
humidity and temperature at 14 bits resolution is 1.7 ms.

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-03-12 14:05:33 +00:00
TOKITA Hiroshi
606b8ee7b7 MAINTAINERS: Add boards to Raspberry Pi Pico Platforms
Updating to add some boards implemented with RP2040/RP2350
that were not registered.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-12 14:05:24 +00:00
Camille BAUD
8856fdc409 tests: Introduce greyscale-related tests modifications
This introduces greyscale-related changes to tests

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-12 14:05:14 +00:00
Camille BAUD
60914ac654 modules: lvgl: Introduce Greyscale support
This introduces support glue for L8 greyscale

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-12 14:05:14 +00:00
Camille BAUD
9acf8fb230 samples: display: Introduce Greyscale format support
This introduces L8 to the display sample

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-12 14:05:14 +00:00
Camille BAUD
c3aa94fdcf drivers: display: Introduce Greyscale pixel format
This introduces greyscale Luminance 8 pixel format

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-12 14:05:14 +00:00
Sebastian Głąb
ee9d6b7af3 tests: boards: nrf: hwinfo: Extend test with RESET_CPU_LOCKUP
Extend test code with scenario that checks if:
- RESET_CPU_LOCKUP is detected;
- RESET_CPU_LOCKUP can be cleared.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-03-12 14:05:06 +00:00
Krzysztof Chruściński
7249fac80d soc: nordic: nrf54h: Add option to use NFCT pins as GPIOs
Protection circuit must be disabled to use NFCT antenna pins
as GPIOs. It can be done by adding nfct-pins-as-gpios to nfct
node in the devicetree in cpuapp. Node must be disabled as
NFCT is not used. In legacy platforms same property was added
to uicr node because that information was stored in UICR. In
nrf54h20 it is not part of UICR so property is part of nfct
node.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-12 14:04:57 +00:00
Sebastian Głąb
81df84ae25 tests: drivers: watchdog: Add test for initialization of .bss and .data
In some configurations, code is copied from non-volatile memory
to RAM before a core (using that code) is booted.
When that core is reset by expired watchdog, variables shall be
restored to "initial" values.

This is problematic because the core is aware of copy in RAM.
It may not know address in non-volatile memory, where "original"
code is stored.

Add tests which verifiest that .bss and .data sections are
correct when core boots from reset caused by expired watchdog.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-03-12 14:04:44 +00:00
cyliang tw
9c4d626eb1 drivers: clock_control: support for Nuvoton m55m1x series
Add support 64-bit module-idx for m55m1x series.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-03-12 14:04:23 +00:00
cyliang tw
98b3a2f66b drivers: reset: support for Nuvoton numaker m55m1x series
Add support macros of RESET_IP_OFFSET and RESET_IP_BIT
for m55m1x series.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-03-12 14:04:23 +00:00
cyliang tw
47dfd857f9 soc: nuvoton: numaker: add support for m55m1x series
Add initial support for nuvoton numaker m55m1x SoC series
including basic init and device tree source include.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-03-12 14:04:23 +00:00
Michał Stasiak
588baa4022 tests: drivers: spi: Add further support for nRF54L20 PDK
Added support for nRF54L20 PDK in tests involving
multiple instances. Corrected pin assignements in
spi_error_cases test.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-12 14:04:15 +00:00
Krzysztof Chruściński
f68a086005 doc: debugging: Add section about CPU load
Add documentation for CPU load module.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-12 14:03:48 +00:00
Krzysztof Chruściński
688b561815 tests: debug: Add test for cpu_load
Add test for CPU load.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-12 14:03:48 +00:00
Krzysztof Chruściński
0ec2ad577d arch: arm: cortex_m: Add sys_trace_idle_exit calls
Add calls to sys_trace_idle_exit when leaving idle state. It is
used to track CPU load.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-12 14:03:48 +00:00
Krzysztof Chruściński
4cbafc6bd4 tracing: Add sys_trace_idle_exit call
Add new tracing API which is called when core is exiting from idle.
Current implementation is using it to track CPU load. Implementation
in tracing_none is now weak so it can be used if given backend does
not support new API call.

When CONFIG_CPU_LOAD is enabled then sys_trace_idle also calls a
hook which stores the timing information when CPU entered idle.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-12 14:03:48 +00:00
Krzysztof Chruściński
c7d7aac2bd debug: Add cpu_load module
Add module which can measure CPU idle time. Idle time is measured in
the pre/post CPU idle hooks but they are not provided by this module.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-12 14:03:48 +00:00
Nikodem Kastelik
c4ebf713b1 drivers: serial: nrf: set default frame size and endianess
Setting frame size and endianess is now supported in UARTE HAL,
so these settings must have default values configured
to avoid compiler warnings about uninitialized fields.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-03-12 09:54:32 +01:00
Nikodem Kastelik
400fd18fe1 drivers: clock_control: nrf: ifdef optional events
Some of the CLOCK events are associated with features
not available on every nRF device.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-03-12 09:54:32 +01:00
Nikodem Kastelik
a708cca780 modules: hal_nordic: nrfx: align nRF54L09/L20 symbols to new scheme
MDK 8.70.0 introduced following changes in the device naming:
- renamed nRF54L20 Eng A to nRF54LM20A Eng A
- renamed nRF54L09 Eng A to nRF54LV10A Eng A
Actual SoC renaming will happen in followup PR.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-03-12 09:54:32 +01:00
Nikodem Kastelik
7319cc84bb Revert "drivers: clock_control: nrf: Add workaround for XO start anomaly"
This reverts commit 2cb2cf226c.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-03-12 09:54:32 +01:00
Nikodem Kastelik
e0048929d6 manifest: update hal_nordic revision to integrate nrfx 3.11.0
New nrfx version integrates MDK 8.70.0.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-03-12 09:54:32 +01:00
Vivekananda Uppunda
48989e49ed drivers: nrf_wifi: Fix return value for getting current reg domain
It is observed that the regulatory domain API returns a failure
even when it has successfully completed its task. This change
addresses a minor fix to return the proper value to the user
when attempting to set the regulatory domain.

Signed-off-by: Vivekananda Uppunda <vivekananda.uppunda@nordicsemi.no>
2025-03-12 09:53:52 +01:00
Krzysztof Chruściński
1dfe3cba99 soc: nordic: common: vpr: Update custom idle
VPR (FLPR) on nRF54L series has fixed issue with sleeping so
custom CPU idle function does not need to be used there.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-12 09:53:42 +01:00
Erwan Gouriou
a28a338024 i2c: stm32: Fix return type declaration of 2 private functions
Return type should be int, no need for int32_t.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-03-12 09:53:32 +01:00
Nicolas Pitre
7fb92c9eb1 tests: lib: multi_heap: fix stack overflow
Some platforms, notably ARM64, need more than 512 bytes of breathing
room on the stack. Very weird and difficult-to-track memory corruptions
were caused by test_mheap_realloc without this.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-03-12 07:15:12 +01:00
Cla Mattia Galliard
294a26b2d1 net: mgmt: fix compiler warnings for static inline shims
Add ARG_UNUSED(x) for static inline shims inside net_mgmt.h. This avoids
compiler warnings for "unused variables".

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-03-12 07:14:58 +01:00
Maochen Wang
1dbe1dfa1f net: lib: sockets: fix socket_service thread stuck by mistake
Use Wi-Fi connecting to Qualcomm IPQ8074 AP, and run the UDP RX traffic
with Zperf, but zperf does not return the throughput number after
traffic completion nor any session started prints. After traffic
completion, ping from STA to AP and vice versa does not work. The
socket_service thread is found blocked forever at zsock_wait_data()
after dns_dispatcher_svc_handler() is called via trigger_work().
The root cause of this issue is:
STA received one DHCPv4 packet containing DHCPV4_OPTIONS_DNS_SERVER,
it will create DNS socket and registered to socket_service. Then STA
received another IPv6 router advertisement packet containing
NET_ICMPV6_ND_OPT_RDNSS, it will close socket and change the state of
poll_events to K_POLL_STATE_CANCELLED(8), then registered to
socket_service with same fd. In socket_service thread, zsock_poll()
called zsock_poll_update_ctx() when handled ZFD_IOCTL_POLL_UPDATE, and
it checked the state of poll_events was not K_POLL_STATE_NOT_READY(0),
then it will set pfd->revents to '|= ZSOCK_POLLIN'. Finally
trigger_work() can be called as 'ctx.events[i].revents > 0' is matched.

The fix of this issue is that, in zsock_poll_update_ctx(), it should
check the state of poll_events is neither K_POLL_STATE_NOT_READY nor
K_POLL_STATE_CANCELLED before setting revents as ZSOCK_POLLIN, to avoid
trigger_work be unexpectedly called.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-03-12 07:14:46 +01:00
Lyle Zhu
f349976937 Bluetooth: SSP: Fix MITM flag incorrect issue in pairing
There is a case that if the local is a peripheral and a L2CAP server
with the security level 3,the mitm should be set to make sure the
security level can reach level 3.

But in current implementation, the MITM is not set because the MITM
of `Authentication_Requirements` parameter of remote is not set. And
the security level will be level 2 after the security pairing
procedure complete.

Add a function `bt_l2cap_br_get_max_sec_level` to
get the max level of the registered servers.
`
Force set the MITM bit if the max level is bigger than level 2 and
pairing method is not `just works`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-12 07:14:25 +01:00
Khoa Nguyen
01706f34ac tests: drivers: adc: Update channel for adc0 on ek_ra4l1
Update channel for adc0 on adc_accuracy_test and adc_api
for ek_ra4l1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-12 07:14:08 +01:00
Khoa Nguyen
1aa48e6247 boards: renesas: Modify the pinsel for adc0 on ek_ra4l1
Currently, we set P002 (AN000) as the default pin selection
for ADC0 on ek_ra4l1. However, after testing the ADC function
with this pin selection, the ADC function does not work
on this pin.

The main reason is P002 is used for the I2C I/O Port Expander
and is connected to a 10kΩ pull-up resistor.

For the solution, we will select the P003 (AN001)
as default pinsel for adc0

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-12 07:14:08 +01:00
Jiafei Pan
beb5b5dfcd boards: imx95_evk: a55: add i2c support on the board
Enabled some I2C bus on the board, can use I2C shell for simple
verification.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-03-12 07:13:55 +01:00
Jiafei Pan
b72f9144b3 dts: arm64: imx95: add i2c device nodes
Added device nodes for all I2C bus on i.MX95 Cortex-A Core..

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-03-12 07:13:55 +01:00
Hake Huang
5b1f0dbc04 tests: mbox: enable mbox test for rt1180
add rt1180 config for test mbox_data
using filter instead of platform_allow

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-03-12 07:13:44 +01:00
Hake Huang
9d7ee123a5 samples: mbox: enable rt1180
using filter to add potential platform in

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-03-12 07:13:44 +01:00
Hake Huang
78c83df95e boards: nxp: mimxrt1180_evk add mbox tag
add mbox to support list

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-03-12 07:13:44 +01:00
Jilay Pandya
c52370acf7 docs: release-notes: 4.2: new stepper sample
- stepper_generic

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-12 07:13:33 +01:00
Jilay Pandya
b5ff37297d samples: stepper: add generic stepper sample
Add a generic stepper sample with gpio-stepper

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-12 07:13:33 +01:00
Jilay Pandya
c42440ce9c samples: stepper: tmc50xx minor fixes
fix minor spacing and nomeclature errors in tmc50xx stepper sample

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-12 07:13:33 +01:00
Andrew Davis
e07b8733d5 drivers: mm: rat: Only fetch region_config from translate_config once
We only need to dereference translate_config once to get the current
region_config we are working with, do this once at the start of the
sections that use it multiple times.

The compiler should optimize the multiple fetches anyway, so this
is purely for code readability.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-03-12 07:13:22 +01:00
Andrew Davis
99de7521ca drivers: mm: rat: Simplify sys_mm_drv_page_phys_get logic
Instead of tracking if a matching address has been found and then
doing the translation after, we can loop until one is found and
do the translation and return immediately.

This saves having to keep a "found" variable, and makes the code
shorter and more readable IMHO. Do this here.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-03-12 07:13:22 +01:00
Andrew Davis
7949ffd7d8 drivers: mm: rat: Fix virt and phys NULL checks
Do not check virt being NULL as 0 is a valid address that can be
translated. Phys on the other hand is an output pointer that will be
assigned to and so cannot be NULL, check this instead to prevent a
NULL pointer dereference later.

Note that phys is allowed to be NULL, so this is not an invalid argument.
It can set to NULL when the caller wants to check if a virtual address is
mapped but does not care about the address itself. In that case -EFAULT
should be returned if the virtual address is not mapped, 0 otherwise.
For RAT, all addresses not translated are still valid and mapped as
pass-through, so we always return 0 in this check case.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-03-12 07:13:22 +01:00
Andrew Davis
8580c6d50b drivers: mm: rat: Remove extra ASSERT for num_regions
This was already checked on initialization, not need to do it
every time we do a translation.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-03-12 07:13:22 +01:00
Andrew Davis
d2d43b9d97 drivers: mm: rat: Move internal struct and definitions into source file
These struct and definitions are only used internally by this driver,
move them out of the public interface header and into the driver source.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-03-12 07:13:22 +01:00
Andrew Davis
693172becd drivers: mm: rat: Pass region_config as a struct not void pointer
The struct address_trans_region_config is already defined, no reason
to pass this in as a void pointer then cast it later. Pass it in
as a struct pointer.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-03-12 07:13:22 +01:00
Andrew Davis
4b855962df drivers: mm: rat: Merge address_trans_init into base init function
This helper function is only used once and is way too small to need
to be factored into its own function. Inlining it greatly reduces
code size and complexity.

While merging, move the ASSERT()S out of the loop, they only need
checked once.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-03-12 07:13:22 +01:00
Marcio Ribeiro
233d6b1bf5 drivers: dma: esp32: remove block size limitation
Removes block size limitation from dma rx and tx configuration

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-03-12 07:13:06 +01:00
Andrej Butok
8473928db4 zms: fix the zms_mount() sector_size check
Adds the return -EINVAL, if the fix zms_mount() sector_size
check is failed.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-03-12 02:29:31 +01:00
Fabio Baltieri
b13255895d boards: fix few incorrect ft5336 polarities
The interrupt pin is active low, not sure how any of these could have
worked correctly, maybe they've only been tested in polling mode.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-03-12 02:29:17 +01:00
Christoph Seitz
b01b77aa44 tests: net: socket: Check length for AF_PACKET SOCK_DGRAM socket
This test checks that the length returned is not altered
even if the payload resembles a valid IPv4 or IPv6 length.

Signed-off-by: Christoph Seitz <christoph.seitz@infineon.com>
2025-03-12 02:29:02 +01:00
Christoph Seitz
5992208605 net: ethernet: Refactor length check to accommodate VLAN header size
The ethernet header size with VLAN tag is 18 bytes,
so the length check should accommodate this.

Signed-off-by: Christoph Seitz <christoph.seitz@infineon.com>
2025-03-12 02:29:02 +01:00
Christoph Seitz
e43246b756 net: ethernet: Fix length update for unsupported packet families
Do not update packet length for unsupported packet families.
AF_PACKET family used the IPv6 length update, which breaks the
packet length if there is a payload with bytes resembling a
IPv6 length field less then 6 or a IPv4 length field less
then 46.

Signed-off-by: Christoph Seitz <christoph.seitz@infineon.com>
2025-03-12 02:29:02 +01:00
Sam Kwort
c5aaf3d26a boards: st: disco_l475_iot1: fix flash partition overlap
Fix a partition overlap in the flash node on the
disco_l475_iot1 board.

Signed-off-by: Sam Kwort <skwort@skwort.dev>
2025-03-12 02:28:50 +01:00
Ibrahim Abdalkader
b887cc4db5 drivers: video: gc2145: Fix video_format_cap array.
video_format_cap needs to be terminated with a NULL entry
to allow looping over the formats.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-03-12 02:28:40 +01:00
Chris Friedt
85aebac1c0 tests: posix: add one integration platform per suite
Add one integration platform per testsuite to reduce the number
of issues reported by the qa log level introduced in #86571.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-03-12 02:28:23 +01:00
Maureen Helm
a930faa151 samples: sensor: Refactor accelerometer sample configs
Refactors accelerometer polling and trigger sample.yaml to avoid
duplicating values shared between multiple configurations.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-03-12 02:28:09 +01:00
Etienne de Maricourt
b47a2836ff net: lwm2m: Test compilation with data cache enabled
This should allow an issue such as #86681 to be found earlier for a not
widely used config.

Signed-off-by: Etienne de Maricourt <edmecomemail@gmail.com>
2025-03-12 02:27:59 +01:00
Etienne de Maricourt
16c6504ee0 net: lwm2m: Fix ifdef nesting for data cache config
Avoid a "defined but not used" warning on
`init_next_pending_timeseries_data` when
LWM2M_RESOURCE_DATA_CACHE_SUPPORT is enabled but not LWM2M_VERSION_1_1.

Signed-off-by: Etienne de Maricourt <edmecomemail@gmail.com>
2025-03-12 02:27:59 +01:00
Etienne de Maricourt
1d356abc5b doc: net: lwm2m: Update code snippet to use latest API
Documentation was not updated after the deprecated API was removed in
94e12d59.

Signed-off-by: Etienne de Maricourt <edmecomemail@gmail.com>
2025-03-12 02:27:59 +01:00
Alberto Escolar Piedras
1bfbd9262e Bluetooth: userchan: Remove support for native_posix and clarify msg
native_posix has been removed, so let's remove its support from
kconfig for this driver.
Also let's replace its mention in the help message.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 02:27:36 +01:00
Alberto Escolar Piedras
14a4f50642 drivers/can/can_native_linux_adapt: Correct a refernece to native_posix
Replace it with the driver name

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 02:27:36 +01:00
Alberto Escolar Piedras
a734805f82 doc/connectivity sockets: minor rephrase to avoid ambiguity
"native POSIX" in Zephyr's context is typically understood as something
else than what this text refers to. Let's rephrase it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 02:27:36 +01:00
Alberto Escolar Piedras
c52f625387 arch/posix/Kconfig: Remove mention of native_posix
This target board does not exist anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 02:27:36 +01:00
Alberto Escolar Piedras
56fdebe933 tests/kernel/context: Remove BOARD_NATIVE_POSIX check
native_posix has been removed. There is no need to check for it
anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 02:27:36 +01:00
Alberto Escolar Piedras
c1a40abc6d subsys/bluetooth: Misc native_posix cleanup
Remove a kconfig dependency on BOARD_NATIVE_POSIX which
does not really exist anymore.
Replace a comment mention of native_posix with native_posix.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 02:27:36 +01:00
Alberto Escolar Piedras
4ef35ed324 include/zephyr/linker/common-rom: Clarify commentary
Clarify the commentary about how the constructor initialization
is setup and why.
(The current text refers to native_posix, which does not
exist anymore).

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 02:27:36 +01:00
Alberto Escolar Piedras
ca5b7506e8 lib/os/fdtable: Remove ifdef on NATIVE_POSIX
This board does not exist anymore, so this is just dead code at this
point.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 02:27:36 +01:00
Alberto Escolar Piedras
a8b44fd1d1 dts: zephyr,native-posix-cpu changed to zephyr,native-sim-cpu
The old binding remains until 4.4 but is deprecated.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 02:27:36 +01:00
Alberto Escolar Piedras
d881e794ba drivers console: Deprecate native_posix_console.h
Deprecate this header which provides API compatibility since
the header was renamed in 2023, but was never deprecated.
Planned for removal in v4.4.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 02:27:36 +01:00
Alberto Escolar Piedras
ea79fdb4dd boards native_sim: Deprecate cmdline_common.h
Deprecate this header which provides API compatibility with
native_posix, with planned removal in v4.4.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 02:27:36 +01:00
Alberto Escolar Piedras
454ec337f1 arch posix: Clarify comment in posix_cheats.h
Clarify an old comment

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-12 02:27:36 +01:00
James Roy
203db9b820 dts: pinctrl: Simplify the description of the binding
Remove redundant descriptions in pinctrl bindings, such
as "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-12 02:27:23 +01:00
Peter van der Perk
808c0da7ed imx95: Add GPIO support Cortex-M7 target
Adds GPIO definitions and update pinctrl for rgpio driver

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-03-12 02:25:58 +01:00
TOKITA Hiroshi
5b28a8299b doc: boards: wiznet: Use product name for full_name in board.yml
Use `W5500-EVB_Pico` - the commercial name of this board - for
`full_name` field of `board.yml`.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-12 02:25:45 +01:00
TOKITA Hiroshi
7d599d1beb boards: Add support WizNet W5500 EVB Pico2
Add initial support for W5500 EVB Pico2

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-12 02:25:45 +01:00
Jakub Wasilewski
3fbc429421 MAINTAINERS: add the Octavo Systems Platforms area
This commit adds the `Octavo Systems Platforms` area of maintenance.

Signed-off-by: Jakub Wasilewski <jwasilewski@internships.antmicro.com>
Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-03-12 02:25:33 +01:00
Jakub Wasilewski
d5743e59b2 boards: add support for the OSD32MP1-BRK
Add support for the Octavo's OSD32MP1-BRK platform. The board uses
Octavo's OSD32MP15x SiP which integrates STM32MP157F MCU and
its SoC configuration.

Signed-off-by: Jakub Wasilewski <jwasilewski@internships.antmicro.com>
Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-03-12 02:25:33 +01:00
Jamie McCrae
92138f7ae7 west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  1b2fc096d9a683a7481b13749d01ca8fa78e7afd

Brings following Zephyr relevant fixes:

  - 1b2fc096 boot: Reuse pointers for flash_area objects from state
  - d00b11dc boot: bootutil: Take into account scratch trailer when
    computing max image size
  - d1a3b953 boot: bootutil: Ensure the whole trailer is erased
    when it is large
  - 66d41e73 boot: bootutil: Fix scratch trailer overwritten if
    image trailer is large
  - 8975d5c4 boot: bootutil: Fix underflow in swap-scratch when
    trailer is large
  - a43167e3 zephyr: fix Mbed TLS configuration header file
    selection
  - fbd2267e boot: bootutil: Fix invalid last sector computation
    for swap-scratch
  - 7330df7c boot: bootutil: Fix last sector index computation for
    swap-offset
  - 429e2fea boot: zephyr: kconfig: Add new defaults option for FIH
  - 602cb459 Fix path for DT example
  - 3ff75490 zephyr: Add Kconfig option
    CONFIG_BOOT_KEY_IMPORT_BYPASS_ASN
  - f2b6def9 zephyr: Enable building ed25519 PSA variant with
    Zephyr

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-03-11 18:55:15 +01:00
Lars-Ove Karlsson
8d3dcd79f4 logging: Added config to disable vla in statements
The config LOG_USE_VLA depends on that MISRA_SANE is not set.
Unfortunately the IAR toolchain can't handle vla:s inside a
statement, which the LOG_USE_VLA macro does.

I've added a new, hidden config to check if vla is ok inside
statements, SUPPORT_VLA_IN_STATEMENTS. Default is always y, but
a toolchain can override it so that VLA is not used by
Z_LOG_MSG_ON_STACK_ALLOC.

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-03-11 18:55:08 +01:00
Gerard Marull-Paretas
f23b4fdb2d modules: hal_nordic: nrfx: use dt_nodelabel_exists
As of today, nrfx components are selectable depending if devicetree has
a certain compatible or not, and in case of IP that can operate in
multiple modes, nodelabel+compatible. An example of the later is:

```
config NRFX_SPI0
    bool "SPI0 driver instance"
    depends on $(dt_nodelabel_has_compat,spi0,$(DT_COMPAT_NORDIC_NRF_SPI))
    select NRFX_SPI

config NRFX_SPIM0
    bool "SPIM0 driver instance"
    depends on $(dt_nodelabel_has_compat,spi0,$(DT_COMPAT_NORDIC_NRF_SPIM))
    select NRFX_SPIM

config NRFX_SPIS0
    bool "SPIS0 driver instance"
    depends on $(dt_nodelabel_has_compat,spi0,$(DT_COMPAT_NORDIC_NRF_SPIS))
    select NRFX_SPIS
```

These symbols are later selected by e.g. SPI driver if `spi0` node is
enabled. While this works in the Zephyr context, it can be a problem in
applications using nrfx directly in the application layer, unless they
tweak devicetree. For example, if devicetree `spi0` node defaults to
`compatible = "nordic,nrf-spim"`, NRFX_SPI0 or NRFX_SPIS0 won't be
selectable, but an application using nrfx directly doesn't really care
about what is defined in devicetree as it is effectively bypassing it.
It just wants to select e.g. `CONFIG_NRFX_SPI0=y` and forget about the
rest.

This patch fixes this problem by just checking for the existence of
certain nodelabels.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-11 18:54:57 +01:00
Gerard Marull-Paretas
b99ae6c7d9 scripts: kconfig: introduce dt_nodelabel_exists
Add a new function to check if a nodelabel exists in devicetree.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-11 18:54:57 +01:00
Alberto Escolar Piedras
b617418532 drivers/timer/native_sim_timer: Correct comments
Correct the introduction comment, removing the native_posix mention,
and something which did not apply for several years.
Also remove an unnecessary include.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-11 18:54:49 +01:00
Alberto Escolar Piedras
ba64291088 drivers timer: Rename native_posix_timer native_sim_timer
Including renaming the kconfig option
NATIVE_POSIX_TIMER into NATIVE_SIM_TIMER deprecating the first one.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-11 18:54:49 +01:00
Yangbo Lu
605335716a drivers: interrupt_controller: intc_nxp_irqsteer: fix system INTID
Current system INTID calcualtion only worked for SoCs whose extended
interrupts started from IRQ 0.
Otherwise, FSL_FEATURE_IRQSTEER_IRQ_START_INDEX should be added for
system INTID.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-11 18:54:40 +01:00
Yangbo Lu
8108c891b8 drivers: interrupt_controller: intc_nxp_irqsteer: support ARM Cortex-M
Added ARM Cortex-M support for intc_nxp_irqsteer driver.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-11 18:54:40 +01:00
Yangbo Lu
627a3b83cd arch: arm: cortex_m: handle multi-level interrupts in irq init
Multi-level interrupts should be handled in irq init. Only level1
interrupts going directly to interrupt controller need to be
initialized.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-11 18:54:40 +01:00
Yangbo Lu
b4f2553cd8 arch: arm: irq: allow custom irq control for multi-level interrupts
Custom irq control for multi-level interrupts should be allowed.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-03-11 18:54:40 +01:00
Jeppe Odgaard
8b8d56a5ca drivers: sensor: explorir_m: increase max response delay
The sensor does not always finish responding within 200 ms.
This is the sometimes the case when using the sensor calibrate command `X`.
Response delay up to 212 ms has been measured with a logic analyzer.

Increase the max response delay to 300 ms to fix the issue.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-03-11 18:54:34 +01:00
Jeppe Odgaard
e575eea233 drivers: sensor: explorir_m: improve transceive
During calibration feature development the following loop was used for
testing:

```shell
CMD="sensor attr_set explorir_m co2 calibration 1234"
while : ; do echo "$CMD" > /dev/ttyACM0; sleep .8; done
```

At some point calibration would fail and all following calibration commands
would fail.

Reset buffer and semaphore just before terminating the command to better
mitigate disturbance from previous failed command.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-03-11 18:54:34 +01:00
Johann Fischer
f624486f66 samples: dap: use new USB device stack and new DAP backend USB
Rework the sample to use the new USB device stack and the new DAP
backend and align the sample with the WebUSB sample which has a similar
BOS descriptor.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-03-11 18:54:24 +01:00
Johann Fischer
53c33ab9b5 dap: add DAP backend USB
The backend uses a new USB device stack and bulk endpoints. Only a
single instance of the backend function is currently supported. Both DAP
packet processing and the new backend are prepared to support multiple
instances, but require a user interface and minor modifications.

New backen has similar functionality to what is provided by the function
in the sample samples/subsys/dap.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-03-11 18:54:24 +01:00
Johann Fischer
6fbd63b733 cmsis_dap: remove Kconfig option CMSIS_DAP_PACKET_SIZE
We need a way to update the value configured by option
CMSIS_DAP_PACKET_SIZE at runtime. For example, the USB backend may have
different values depending on the speed at which the device is being
enumerated.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-03-11 18:54:24 +01:00
Emilio Benavente
e0bb942a43 boards: nxp: frdm_mcxw71: Adding Pull Up flag
The SW2 needs the PULL UP flag to be set to be
enabled.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-03-11 18:54:14 +01:00
Alberto Escolar Piedras
7ddfc6af46 boards native_sim: Correct UART outdated comments
Both polling and interrupt based APIs are supported in the TTY driver.
And the console backend is enabled unless *any* UART driver is built.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-11 18:54:02 +01:00
Alberto Escolar Piedras
cb53e40ff9 drivers uart_native_posix: rename to native_pty and support N instances
Rename the driver from uart_native_posix to uart_native_pty.
Including renaming the DTS compatible, and kconfig options, deprecating
the old ones.

And refactor the driver, generalizing it, so we can have any number of
instances.
Note that, unfortunately generalizing to N instances cannot be done
without a degree of backwards compatibility breakage: This driver was
born with all its configuration and selection of the instances based on
kconfig.
When the driver was made to use DT, it was done in a way that required
both DT and kconfig needing to manually coherently enable the 2nd UART.
This has now been fixed, which it means only DT is used to decide how
many instances are avaliable, and UART_NATIVE_POSIX_PORT_1_ENABLE is
just ignored.

Including:
* Deprecate UART_NATIVE_WAIT_PTS_READY_ENABLE: the options is always on
  now as it has no practical drawbacks.
* Deprecate UART_NATIVE_POSIX_PORT_1_ENABLE: DTS intanciation defines it
  being available now.
* Rename a few functions and in general shorten pseudo-tty/pseudo-
  terminal to PTY instead of PTTY.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-11 18:54:02 +01:00
Lyle Zhu
d811f6921c Bluetooth: L2CAP_BR: Reject the conn req if sec levels do not match
If the ACL link has been encrypted and it has a authenticated link key,
it means the pairing procedure has been done. And the security level of
the link key can not be upgraded. In this case, if `conn->sec_level` is
less than the required security level of the L2CAP channel, reject the
L2CAP conn request.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-11 18:53:50 +01:00
Henrik Brix Andersen
110cd6b806 kernel: fix compilation with CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME
Fix compilation with CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME=y and
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC unset at the board/SoC level.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-11 18:53:40 +01:00
Anas Nashif
895d91169e tests/samples: use integration platforms where possible
When possible, add integration_platforms to samples/tests.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-11 11:35:15 +01:00
Anas Nashif
9ca316bef4 tests: pinctrl: improve filtering and let tesrt build/run
Test was filtered out due to wrong metadata, make it run in simulation
and set integration platforms.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-11 11:35:15 +01:00
Anas Nashif
91c012ca12 samples: co2: fix filtering and use integration_platforms
This sample was filtered out completely, use integration platforms and
removee wrong depends_on.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-11 11:35:15 +01:00
Anas Nashif
7a54569d85 samples: gnss: no board has this feature, improve filtering
Use integration platforms to make this sample buildable.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-11 11:35:15 +01:00
Anas Nashif
5a09483686 samples: mh7_dual_core: remove depends_on mailbox
Make this sample build/run on something that is supported.
depends_on was causing this to be completely left out.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-11 11:35:15 +01:00
Anas Nashif
d1af028ec2 tests: use simulators in integration platforms
Where applicable, pick a simulator as the integration platform.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-11 11:35:15 +01:00
Anas Nashif
abb5f52898 tests: settings: where possible, use simulators for integration platforms
We want to be able to run tests and get results in CI, not just build
for platforms we do not have access to.
Where possible, use a simulator instead of hw platforms.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-11 11:34:54 +01:00
Anas Nashif
7c985dea67 tests: zms: remove bogus filter using depends_on
zms is not something to be used with depends_on, it is a software
feature. looks like it was a copy/paste from an nvs test. This test was
always fitlered out and never built or ran on anything....

Use filter instead.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-11 11:34:54 +01:00
Krzysztof Chruściński
841e852513 drivers: mbox: nrf_vevif_event_tx: Fix errata 16 workaround
Pend until requested event is set before clearing it. Without that
check event could be cleared too early and APP core is not waken up.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-11 11:34:44 +01:00
Piotr Pryga
ceb4298566 drivers: hci: ipc: Make IPC endpoint bound timeout configurable
The HCI IPC endpoint bound timeout value was hardcoded and set
to 1000 ms. This value may be differ between platforms, for
exampel due to extended boot time.
The default value used was a bit short for multicore SoCs
that usually may wait for some other service reposnes for
similar time. That may lead to timeout error while other
end of an endpoint was slightly late. Change the default
duration to 2000 ms to give more room for possible delays.

Signed-off-by: Piotr Pryga <piotr.pryga@nordicsemi.no>
2025-03-11 09:00:29 +01:00
Bjarki Arge Andreasen
b33b82a758 tests: drivers: spi: update add pm-runtime-auto to nrf-spis
The nrf-spis instances require zephyr,pm-device-runtime-auto;
to be properly initialized.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-03-11 09:00:19 +01:00
Bjarki Arge Andreasen
7e9301697d drivers: spi: nrfx_spis: impl pm device runtime
Implement PM device runtime in nrx spis device driver.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-03-11 09:00:19 +01:00
Eve Redero
97ee3e8894 dts: atmel: add spi node for arduino due
Add SPI0 node and associated pincontrols in Arduino Due device tree.

Signed-off-by: Eve Redero <eve.redero@gmail.com>
2025-03-11 08:59:47 +01:00
Olivier Lesage
6f33793b41 bluetooth: Host: Rename CS tone antenna configurations
Improves readability by removing the need to check the table
to figure out how many antennas devices A and B are using.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2025-03-11 08:59:19 +01:00
Nicolas Pitre
c7467f0c65 ring_buffer: constify some arguments
Functions that don't modify content should have pointers to it marked
const.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-03-11 08:59:05 +01:00
Nicolas Pitre
e1eead3925 ring_buffer: shrink size of struct ring_buf
Make struct ring_buf 12 bytes smaller by default. This comes with a 32KB
buffer size limit which covers almost all cases. The previous limit of
2GB can be restored with CONFIG_RING_BUFFER_LARGE=y.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-03-11 08:59:05 +01:00
Nicolas Pitre
b97f11a752 ring_buffer: simplify code some more
Some variable renaming made the code clearer, which in turn allowed for
minor optimizations.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-03-11 08:59:05 +01:00
Nicolas Pitre
fa73b8b061 ring_buffer: update Kconfig help text
Make it more informative and useful.

Buffer sizes that are a power of 2 didn't provide any advantage since
commit 099850e916 ("ring_buffer: the great simplification").

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-03-11 08:59:05 +01:00
Emil Gydesen
9d4cc4b49b Bluetooth: BAP: Add a set of suggested intervals to use with BAP
Add a selection of interval values that are suitable for BAP,
which will allow better coexistence between ISO and ACL,
for both broadcast and unicast. Some of these are defined
by the BAP spec, and some are defined by Zephyr, since they
do have a suggested value from BAP.

Samples and tests have been updated to use these new values.
Peripheral samples have also been updated with
CONFIG_BT_GAP_AUTO_UPDATE_CONN_PARAMS so that the connection
parameters from the centrals aren't updated to something else
shortly after.

The shell has also been updated to use the LE Audio (BAP) values
if audio is enabled, and the audio.conf file has disabled automatic
updating of the connection parameters as the peripheral, as we rarely
(if ever) want to do that.

Due to the connection interval change, CI hit an issue
with test_bass_broadcast_code in test_main_client_sync, where
the reading of the long receive state did not finish before we
attempted to do another procedure, so the function was updated to have
a retry.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-11 08:58:51 +01:00
James Roy
f9601948ca dts: dai: Simplify the description of the binding
Remove redundant descriptions in DAI bindings, such
as "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-11 05:38:28 +01:00
Luis Ubieda
052c76b71e tests: icm45686: Add node to Build-All test
Only supported for SPI so far.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-03-11 05:37:06 +01:00
Luis Ubieda
4aef791a0e sensor: icm45686: Add Triggers functionality
Only working with SENSOR_TRIG_DATA_READY so far.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-03-11 05:37:06 +01:00
Luis Ubieda
05e8a65ba0 sensor: icm45686: Add low-pass filter configuration options
Both for Gyro and Accelerometer.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-03-11 05:37:06 +01:00
Luis Ubieda
25793fe33c sensor: icm45686: Add basic sensor functionality
- Add support for Fetch/Get API.
- Add support for Read/Decode API.
- Add config settings through device-tree.
- Add bus support for SPI (although easily extensible to others as
based on RTIO).

Fetch/Get API tested with accel_polling sample.
Read/Decode API tested with sensor_shell sample.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-03-11 05:37:06 +01:00
Helmut Lord
a90f9991cc tests: utils: lib: cobs tests
Adds tests for COBS util.

Signed-off-by: Helmut Lord <kellyhlord@gmail.com>
2025-03-11 05:36:49 +01:00
Helmut Lord
f31b4a67be lib: utils: add consistent overhead byte stuffing
Implementation uses netbufs.

Signed-off-by: Helmut Lord <kellyhlord@gmail.com>
2025-03-11 05:36:49 +01:00
Henrik Brix Andersen
783fe57cea doc: releases: fix sphinx lint errors
Fix compliance errors reported by SphinxLint.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-11 05:36:35 +01:00
Henrik Brix Andersen
b4d5fc5cd2 dts: bindings: neorv32: use vendor prefix
Use vendor prefix "neorv32" for all peripherals provided by the NEORV32
RISV-V Processor project.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-11 05:36:35 +01:00
Ederson de Souza
70c89811be scripts and soc: Mark MD5 and SHA1 usage as not for security
MD5 and SHA1 are not supposed to be used nowadays on security context.
Some ancillary scripts in tree do use them, but for verification only -
or where externally mandated, such the SPDX tool.

This patch marks those usages as `usedforsecurity=False`, which helps
clarify intent.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-03-11 04:52:15 +01:00
Nabil Elqatib
0cce3dc7bf samples: sensor: bmg160: Create README.rst file
Helps closing https://github.com/zephyrproject-rtos/zephyr/issues/27805

Signed-off-by: Nabil Elqatib <nabilelqatib@gmail.com>
2025-03-11 04:51:23 +01:00
Lyle Zhu
1cfd624b3d Bluetooth: SDP: Notify upper layer if the response data len is 0
In current implementation, the SDP discovery complete event is not
notified when the response data length is 0.

Notify the discovery complete event if the response length is 0.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-10 21:49:41 +01:00
Piotr Zierhoffer
de7405d009 dts: nxp: mcxa156: Fix invalid FlexPWM1 address
It seems that this DTS entry has been copied from another DTS.

The address of FlexPWM1 conflicts right now with the flash memory space.

Signed-off-by: Piotr Zierhoffer <pzierhoffer@antmicro.com>
2025-03-10 21:44:09 +01:00
Gerard Marull-Paretas
1494cdb0bf drivers: misc: devmux: fix init signature
It is no longer possible to use other signatures other than
`int fn(const struct device *)`. Just cast the device pointer,
safe in this context because CONFIG_DEVICE_MUTABLE=y.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Gerard Marull-Paretas
627e83c47d device: add DEVICE[_DT[_INST]_DEINIT_DEFINE
Add a new set of macros to define devices with de-init capabilities.
This allows to move gradually to de-init without introducing breaking
changes.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Gerard Marull-Paretas
0d4b957b11 device: allow initializing any device
Remove restrictions from device_init by allowing to perform device
initialization if the device state flags it being not initialized.
This makes the API usable in contexts where device_deinit has been
called before.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Gerard Marull-Paretas
8e59d4cd9d device: add new device_deinit API
Add a new API to de-initialize a device. When a device is
de-initialized, it will release any resources it has acquired
(e.g. pins, memory, clocks, DMA channels, etc.) and its status
will be left as in its reset state.

It is the responsability of the caller to ensure that the device is
ready to be de-initialized.

For now, deinit call always initializes to NULL. New macros will be
introduced to not break existing device APIs.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Gerard Marull-Paretas
766bfe7b2e device: introduce struct device_ops
Instead of passing a single init function, create
struct device_ops with the init function inside. This allows to easily
extend device's capabilities in the future without too much breakage,
e.g. to add a de-init call.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Gerard Marull-Paretas
f44a30109c device: introduce device flags
Introduce a new field to store device flags. Only device deferred init
flag has been added, replacing usage of linker hackery to know wether a
device requires initialization at boot time or not. This change will be
helpful in the near future as devices will become reference counted, so we
will need to know wether they have been initialized or not.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Gerard Marull-Paretas
3f6add69da init: drop device union from struct init_entry
Such union is rather redundant, considering a simple const cast can be
done when initializing the init entry. Note that the init_entry does not
need to be touched now that struct device stores the init call. It is
merely an init entry sorted by linker scripts, so we can intertwine
devices and SYS_INIT.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Gerard Marull-Paretas
ed3377ae78 init: drop init_fn union
Device init function is no longer taken from `struct init_entry`, so
there's no need to keep such union.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Gerard Marull-Paretas
a0a907c90e device: store init function in struct device
Preparation work for device init/de-init functionality.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Gerard Marull-Paretas
9b5083bb89 init: drop anonymous union
It just complicates things. It is not C99 strandard, and since C11 is
not mandatory, it is better to play safe here.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Paul Wedeck
1cfec8c19a drivers: dma_wch: add support for the WCH DMA controller
This patch adds an initial driver for the WCH DMA
controller. All hardware features and most interface
features are implemented.

Signed-off-by: Paul Wedeck <paulwedeck@gmail.com>
2025-03-10 21:32:27 +01:00
Filip Kokosinski
0c6217fc6a boards/antmicro/myra_sip_baseboard: add the EEPROM alias and test tag.
This commit adds the Twister `eeprom` test tag and a devicetree `eeprom-0`
alias for samples and tests.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-03-10 21:32:12 +01:00
Filip Kokosinski
6fbd09e445 dts/arm/antmicro/myra: add Fujitsu FRAM node
This commit adds Fujitsu FRAM devicetree node in Myra SiP's devicetree.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-03-10 21:32:12 +01:00
Carles Cufi
9fc84e78e7 boards: nrf: Default to nRF Util for flashing
Nordic has a new tool, nRF Util (`nrfutil`) which is replacing the
previous set of command-line tools (particularly `nrfjprog`) that Zephyr
had been using by default in many of the boards to flash the firmware
onto the device.

Since nRF Util is already mature and is going to be replacing the existing
tools, including `nrfjprog`, it is now a good time to change the default
flash tool to reflect this fact.

Note that `nrfjprog` support is not being removed at all, but this may
be a breaking change for users that do not have nRF Util installed. For
this reason we also add a note in the migration guide.

More info:
https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/nrf-util-unified-command-line-utility

Installation:
https://www.nordicsemi.com/Products/Development-tools/nrf-util

Documentation:
https://docs.nordicsemi.com/bundle/nrfutil/page/README.html

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-03-10 21:31:43 +01:00
Ibe Van de Veire
2340dfad52 doc: networking: Add IPv4 commandline options description
Add the documentation on how to use the commandline options to set the
IPv4 addr, gateway and netmask of a native_sim setup.

Signed-off-by: Ibe Van de Veire <ibe.vandeveire@basalte.be>
2025-03-10 21:31:27 +01:00
Ibe Van de Veire
200b886d3c drivers: eth: native_posix: Add IPv4 parameter input from cmd line
Added the abililty to set the IPv4 addres, gateway and netmask from the
command line when running a native_posix build.

Signed-off-by: Ibe Van de Veire <ibe.vandeveire@basalte.be>
2025-03-10 21:31:27 +01:00
Thomas Deppe
4161ba2103 Bluetooth: Host: Fix Advertising Coding Selection as peripheral
Fix mistake in host implementation of Advertising Coding Selection.

The host should only try set the BT_LE_FEAT_BIT_ADV_CODING_SEL_HOST
when the observer role is enabled. If a broadcaster enables the
CONFIG_BT_EXT_ADV_CODING_SELECTION Kconfig option bluetooth will
fail to initialise.

Signed-off-by: Thomas Deppe <thomas.deppe@nordicsemi.no>
2025-03-10 21:31:12 +01:00
Miguel Gazquez
8722c03222 drivers: udc: udc_skeleton: fix call to K_THREAD_STACK_DEFINE
The udc_skeleton driver incorrectly calls `K_THREAD_STACK_DEFINE` with
`CONFIG_UDC_SKELETON` instead of `CONFIG_UDC_SKELETON_STACK_SIZE`. This
causes stack overflows when developing a driver based on this code.

Fix the call to `K_THREAD_STACK_DEFINE`.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-03-10 21:30:58 +01:00
Benjamin Cabé
9e53af0c6b doc: releases: expose draft 4.2 release notes + migration guide in toc
Update toctrees to show 4.2 documents in the release page

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-10 21:30:49 +01:00
Henrik Brix Andersen
ac45ebd80d Revert "boards: neorv32: remove doc logo"
Restore NEORV32 board logo. This reverts commit
3f60ed03d1.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-10 21:30:28 +01:00
Lyle Zhu
ed45960870 Bluetooth: SDP: Fix the issue of not handling the next discovery req
The pending discovery request will not be handled in some cases.
The cases include,
- The received data length is not aligned with frame length
- The continuation status length is more than maximum value
- Total length of the response is less than the frame length
- Unknown operation code is received

There is also a case where the current discovery result was not
notified when processing the pending discovery request.
The cases include,
- Fail to send SDP request
- No tail room of received buffer to save the response data

Fix the issue by using the following steps,
- Notify the application that the discovery is done
- Process the pending discovery request

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-10 15:20:40 +01:00
Armando Visconti
6c5c3a5c66 samples/sensor: stream_fifo: add sensortile_box_pro board
Add sensortile_box_pro board overlay and config files.
This is good to verify lsm6dsv16x RTIO streaming over SPI bus.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-03-10 15:20:30 +01:00
Kapil Bhatt
928534455b nrf_wifi: src: Fix include file path
With recent code restructuring file name and path
has been changed in nrf_wifi lib.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-03-10 15:20:08 +01:00
Cla Mattia Galliard
875d11af29 net: hostname: Fix compiler warning unused argument
For the `static inline` replacement of the `hostname_set`-function add
`ARG_UNUSED`-macros, such that the compiler does not warn about the unused
arguments.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-03-10 15:19:59 +01:00
Lyle Zhu
dcd8bcb88d Bluetooth: SSP: Reply a negative rsp if binding flags are mismatched
If the remote is in bondable mode, but the local is in non-bondable
mode, the local host shall respond to an IO capability request with
a negative response.

In current implementation, it does not check the bonding flags of the
both sides are consistent.

Fix the issue by checking the consistency of bonding flags of the both
sides. If they are not consistent, send a negative IO capability
response with the reason pairing not allowed.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-10 15:03:04 +01:00
Lyle Zhu
1408614fd2 Bluetooth: SSP: bt_conn_unref is missing if pairing is not accepted
The `conn` is found by using function `bt_conn_lookup_addr_br()`, it
should be released by calling `bt_conn_unref()`. But `bt_conn_unref()`
is missing in the case that the pairing is not accepted.

Release the `conn` by calling `bt_conn_unref()` before exiting the
function `bt_hci_io_capa_req`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-10 15:02:48 +01:00
Christoph Seitz
80649dadd3 tests: net: ieee802154: Fix sockaddr_ll protocol handling in tests
Convert all sll_protocol fields to use network byte order in the tests.

Signed-off-by: Christoph Seitz <christoph.seitz@infineon.com>
2025-03-10 15:02:38 +01:00
Christoph Seitz
5340fa49a7 tests: net: socket: Add recvfrom addr validation
Add address length validation and expected source address
checks in packet socket tests.

Signed-off-by: Christoph Seitz <christoph.seitz@infineon.com>
2025-03-10 15:02:38 +01:00
Christoph Seitz
0e4cf09b55 net: sockets: Fix AF_PACKET sll_protocol in recvfrom
Convert the protocol value in return in recvfrom to
network byte order as expected.

Signed-off-by: Christoph Seitz <christoph.seitz@infineon.com>
2025-03-10 15:02:38 +01:00
Fin Maaß
b0f603cfe5 drivers: ethernet: litex: check phy-handle property
Adds a check, that the phy device in the device tree, referenced
by the phy-handle property, is enabled.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-10 15:02:26 +01:00
Bjarki Arge Andreasen
6f45f682c4 dts: arm: atmel: samx7xx21: fix flash erase-blocks
The flash erase-blocks property was a bit malformed, it has 254 pages
of size 8192 after the first 8 pages of size 2048 to reach the total
size of 2048K. This caused issues when trying to erase the last pages
of the flash, which caused the flash erase_blocks test suite to fail.

Adjust the erase-blocks to match the flash layout.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-03-10 15:02:16 +01:00
Bjarki Arge Andreasen
9c6195a2da drivers: flash: sam: fix flash erase last page
The implementation for erasing pages in the flash_sam.c driver
indicated a successful erase after exceeding the last page to be
erased successfully. Since the last page has no proceeding page,
the succeeded status was not set.

This fix switches around the status to be set as succeeded before
erase begins, to have the succeeded status cleared if page unlock
or erase fails.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-03-10 15:02:16 +01:00
TOKITA Hiroshi
70fc4a3e57 boards: pimoroni: pico_plus2: Add Pimoroni Pico Plus2 board
Pinoroni Pico Plus2 is an RP2350B based board that has
more rich I/O, RAM, and Flash than the original Raspberry Pi Pico2.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-10 11:20:30 +01:00
TOKITA Hiroshi
123472013a soc: raspberrypi: rp2350: Add initial support for the RP2350B
RP2350B is a rich IO variant in the RP2350 series.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-10 11:20:30 +01:00
TOKITA Hiroshi
5184fb9257 drivers: gpio: rpi_pico: Add support for RP2350B
As the RP2350B has more than 32 GPIO pins,
we changed the configuration so that it is split into two ports.

To do this, we created a `raspberrypi,pico-gpio-port` node and
moved the previous `raspberrypi,pico-gpio-port` functions to it.

This became a child node of `raspberrypi,pico-gpio-port`, and
`raspberrypi,pico-gpio-port` will remain a gpio mapper.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-10 11:20:30 +01:00
Khoa Nguyen
47655aa236 tests: drivers: uart: Add support uart_async_api for RA2
Add support uart_async_api for Renesas ek_ra2l1, ek_ra2a1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-10 11:12:20 +01:00
Torsten Rasmussen
e270fd4689 doc: document CMAKE_BUILD_PARALLEL_LEVEL and VERBOSE env variables
Sysbuild may include several images and when using ninja as build tools
then build options like `ninja -v` or `ninja -j <n>` is only consumed
by the top-level build folder, which is sysbuild itself.

CMake supports setting number of jobs or verbosity using environment
variables.

Document this feature in the Building with sysbuild section.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-03-10 11:12:07 +01:00
Torsten Rasmussen
63cf79bd99 scripts: support number of jobs and verbosity in west build.
Calling `west build --build-opt="-v" --build-opt="-j=<n>"`
passes the build options to `cmake --build ... -- <build-opt>` which
again is passed to the native build tool, such as ninja or make.

However, when ExternalProjects are used in CMake, such as in TF-M or
sysbuild builds then those extra build options are only passed to the
first image build and not those build as external projects.

CMake supports environment variables for those flags, so translate
verbosity and number of jobs to those environment variables and thereby
support those flags for all images when specified by the user.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-03-10 11:12:07 +01:00
Stefan Gloor
dbd350262f manifest: mbedtls: rename BEFORE_COLON/BC to avoid conflicts
See: https://github.com/zephyrproject-rtos/mbedtls/pull/68

Signed-off-by: Stefan Gloor <stefan.gloor@siemens.com>
2025-03-10 11:11:53 +01:00
Henrik Brix Andersen
b80ec57cf5 doc: releases: migration-guide: 4.2: mention NEORV32 version bump
Mention the move to support v1.11.1 of the NEORV32 RISC-V processor.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-10 11:11:22 +01:00
Henrik Brix Andersen
1ba20d38f3 boards: others: neorv32: update openocd configuration
Update the default NEORV32 OpenOCD configuration file to avoid deprecation
warnings. Remove unnecessary nTRST signal layout.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-10 11:11:22 +01:00
Henrik Brix Andersen
63c24d9d34 soc: neorv32: update to support NEORV32 v1.11.1
Update the NEORV32 SoC, peripheral drivers, and board to support NEORV32
v1.11.1. Notable changes include:

- Optional RISC-V ISA Kconfigs are now selected on the board level.
- Peripheral registers are now automatically reset in hardware, no need for
  software initialization code.
- The NEORV32 GPIO controller now supports 32 pins, not 64. Interrupt
  support will be submitted in a separate PR.
- Default board configuration has 64k RAM and is clocked at 18 MHz.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-10 11:11:22 +01:00
Henrik Brix Andersen
4899cc10ac soc: neorv32: stop pretending to support multiple versions
Originally, when Zephyr support for the NEORV32 was introduced, the idea
was to support multiple version of the SoC in Zephyr as development on the
open-source RISC-V processor continued.

Unfortunately, this has proven to be much harder than anticipated in part
due to incompatible changes between NEORV32 versions and part due to the
added test burden of verifying all changes on many different versions and
configurations.

Going forward, Zephyr will support a given release of the NEORV32
processor.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-10 11:11:22 +01:00
Henrik Brix Andersen
8662e0fdcb soc: neorv32: the NEORV32 does not fully support ISA A extension
The NEORV32 v1.8.6 does not fully support the RISC-V ISA A
extension. Remove it and enable support for atomic operations in C
regardless of the version used.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-03-10 11:11:22 +01:00
Hank Wang
bf369c7d30 dts: bindings: i2c: ti,tca954x-base: fix example syntax
Fix the syntax in the device tree binding example by replacing `:` with `=`
in the `compatible` property. This ensures consistency with the standard
device tree syntax.

Signed-off-by: Hank Wang <wanghanchi2000@gmail.com>
2025-03-10 11:10:57 +01:00
Camille BAUD
77dae8bf3c tests: drivers: Introduce Sitronix ST7567 Test
Introduce Sitronix ST7567 Test

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-10 11:10:48 +01:00
Camille BAUD
3334a8e9cd drivers: display: Introduce Sitronix ST7567
Introduces a driver for the Sitronix ST7567 132x65 LCD driver.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-10 11:10:48 +01:00
Kapil Bhatt
46829bbe6b manifest: Update nrf_wifi for doc fix
Some file names are changed, fix file names in
doxygen comments.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-03-10 11:10:28 +01:00
James Roy
dd6022d93e dts: net: wireless: Simplify the description of the binding
Remove redundant descriptions in net/wireless bindings, such
as "This is a representation of" and "... node".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-10 11:10:18 +01:00
James Roy
7561ba1885 dts: gpio: Simplify the description of the binding
Remove redundant descriptions in GPIO bindings, such
as "This is a representation of".

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-10 11:10:06 +01:00
Graham Wacey
fb620ef59c tests: bluetooth: tester: Implement BAP/BSRC/SCC/BV-38-C
- Make ext_adv and per_adv into arrays for multiple BIGs
 - Create bap_broadcast-source_setup_v2 command
  - Handles broadcast_id as an input

Signed-off-by: Graham Wacey <graham.wacey@nordicsemi.no>
Signed-off-by: Alexander Svensen <alexander.svensen@nordicsemi.no>
2025-03-10 11:09:57 +01:00
Michał Stasiak
658f9357b8 dts: nordic: nrf54l09: add clocks to GRTC
Added clocks to GRTC node to allow GRTC output and
access to frequency property.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-03-10 08:59:58 +01:00
Tim Lin
0d4f8feb6f drivers/gpio: ite: it8801: Fix the GPIO output configure issue
If the output level does not change to high or low, it should not be
changed to 0.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-03-10 08:59:46 +01:00
Chekhov Ma
c87900aa40 drivers: gpio: adp5585: fix wrong reg during pin configure
The ADP5585_GPO_OUT_MODE_A is used when configuring initial output
during pin configuration, causing pins configured HIGH is incorrectly
configured as open-drain. Replacing the reg with ADP5585_GPO_DATA_OUT
fixes the issue.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-03-10 08:59:26 +01:00
Khoa Nguyen
1df88825b5 dts: arm: renesas: ra: Remove channel_count form all ADC node
Remove channel_count form all ADC nodes of all Renesas SoCs
Update from the previous commit

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-10 08:58:52 +01:00
Khoa Nguyen
8671fdd86d drivers: adc: Remove channel_count property for Renesas driver
Currently, in Renesas adc driver, channel_count is used
as the maximum index of the channels can be supported.
However, the value input in dts of "channel_count"
represents the total number of supported channels.

After consideration, we have decided to remove this
reduntant property.

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-10 08:58:52 +01:00
Lyle Zhu
0d36361b5d Bluetooth: SDP: Check data len consistency between total and received
Add fields `total_len` and `recv_len` to `struct bt_sdp_client`.

Save the total length of the response to `total_len`.
Save the received data length of the response to the `recv_len`.

Check the consistency between `total_len` and `recv_len` after all of
the response packets are received.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-10 08:58:38 +01:00
Alberto Escolar Piedras
ab7a6de5bb drivers/counter/counter_native_sim: Rename from counter_native_posix
Including renaming the DTS binding and kconfig options
deprecating the old one.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-10 06:52:37 +01:00
Alberto Escolar Piedras
7ffd698785 board native_sim: BT userchan now supports picolibc
Let's update the table

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-10 06:52:19 +01:00
Alberto Escolar Piedras
b2b6f3c314 Bluetooth: userchan: Support other libCs
Refactor the userchan driver into a top and a bottom part.
The bottom is the one which interacts with the host and is built
with the host libC, while the top is built with the embedded code
and whatever libC that is built with.

Errors (errno) is converted between the top and bottom to ensure they
are coherent with the local libC.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-10 06:52:19 +01:00
Alberto Escolar Piedras
71b9d16558 native_simulator: Get latest from upstream
Align with native_simulator's upstream main
3ccb09ec00e291f699219c0e3f5b14b6b1c7ceb6

Which includes:
3ccb09e nsi_errno: Add new API to get the current host side errno
32eab87 Makefile: Ser a macro to distinguish build in runner context

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-10 06:52:19 +01:00
TOKITA Hiroshi
0f1d816c3c dts: bindings: spi: pl022: Make included reset-device.yaml
The PL022 driver has already implemented supporting reset device
behavior.
However, the support is incomplete because the `arm,pl022.yaml`,
does not contain a `reset-device.yaml`.

Add include directive to `arm,pl022.yaml` to including
`reset-device.yaml` to complete the support for reset device.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-10 06:52:03 +01:00
Alberto Escolar Piedras
df5318479b docs boards native_sim: Improve FUSE FS access description
The FUSE driver allows accessing a possible filesystem, independently
of the underlaying device, so let's correct the description so we do
not mix "flash" with "filesystem".

Also, one does not need to create the 'flash' folder these days. The
FUSE library will if needed.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 15:26:29 +01:00
Alberto Escolar Piedras
65018e2803 docs boards native_sim: FUSE driver now supports all libCs
Now we can build the FUSE driver with any embedded libC,
so let's update the table.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 15:26:29 +01:00
Alberto Escolar Piedras
ac24d2277e native FUSE FS access: Support any libC and fix random crashes
Split the fuse FS driver into 2 parts: A top built in the embedded side,
with the embedded libC, and a bottom built in the runner side with the
host libC.
The error returns are converted to match the host libC.

Also, before the host FUSE thread, which is asynchronous to Zephyr was
calling directly into the Zephyr filesystem code, which resulted quite
often if catastrophic failures or corruption of the Zephyr state.
This is now fixed by having the FUSE thread queue requests to a Zephyr
thread, which will be handled in the embedded side in a coherent way.
This adds a slightly noticeable overhead, but the performance is still
acceptable.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 15:26:29 +01:00
Elliott Cutmore
e44a9523d4 drivers: adc: Fix ads1x4s0x driver initialised asynchronously
Definition of stack variable did not match the initialiser
reference in the driver

Signed-off-by: Elliott Cutmore <elliott.cutmore@gmail.com>
2025-03-08 08:56:33 +01:00
Manu Sutela
6c02e809c6 drivers: haptics: Fix drv2605 C++ compatibility
Add `extern "C"` guard around the function declarations in drv2605.h.
Without this guard, compiling code with a C++ compiler fails due to name
mangling issues.

Signed-off-by: Manu Sutela <manu.sutela@gmail.com>
2025-03-08 08:47:03 +01:00
Björn Bergman
d34d554d60 arch: arm: mpu: Fix BUILD_ASSERT on pointer value
Some compilers (iccarm included) does not support BUILD_ASSERT()
to check alignment of arrays.

This fix checks if an IAR compiler is used and disables the
start-alignment check if it is.

Signed-off-by: Björn Bergman <bjorn.bergman@iar.com>
2025-03-08 08:46:43 +01:00
Alberto Escolar Piedras
43b43f5408 boards/native_sim: Deprecate timer_model.h
Deprecate this header which provides API compatibility for the
native_posix timer HW model, with planned removal in v4.4.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 08:46:34 +01:00
Alberto Escolar Piedras
543f2da251 boards/native_sim: Deprecate native_posix_compat.h
Deprecate this header which provides API compatibility with
native_posix, with planned removal in v4.4.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 08:46:34 +01:00
Alberto Escolar Piedras
659af7280a tests: Stop using native_posix/sim transitional headers
As native_posix has been removed, these tests do not need to support
anymore both native_sim and _posix targets, so we can stop using
the transitional headers, and APIs.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 08:46:34 +01:00
Alberto Escolar Piedras
8c8db7dd64 drivers/timer/native_posix_timer: Support only native_sim
Now that native_posix has been removed, this driver only needs to
support native_sim. Let's stop using the transitional headers which
supported both.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 08:46:34 +01:00
Georgij Cernysiov
8b7bfd45c1 drivers: ethernet: phy: sort includes
* Sort includes by groups each alphabetically:
  - standard lib
  - zephyr
  - private
* Move log registration to be after all includes.

Signed-off-by: Georgij Cernysiov <geo.cgv@gmail.com>
2025-03-08 03:38:50 +01:00
Georgij Cernysiov
b55940cc23 drivers: ethernet: phy: add missing private include
Adds missing private adin phy include.

Signed-off-by: Georgij Cernysiov <geo.cgv@gmail.com>
2025-03-08 03:38:50 +01:00
Georgij Cernysiov
910e3f82f8 drivers: ethernet: phy: correct adin logger name
Use phy_adin instead of undefined DT_DRV_COMPAT.

Signed-off-by: Georgij Cernysiov <geo.cgv@gmail.com>
2025-03-08 03:38:50 +01:00
Peter Mitsis
ec4df64dc7 kernel: make order_key field in thread conditional
The 'order_key' field in the thread structure '_thread_base' is only
required when CONFIG_SCHED_SCALABLE and/or CONFIG_WAITQ_SCALABLE are
enabled (neither of which is a default setting). Making the existence
of this field conditional slightly reduces the size of the k_thread
structure when neither of those Kconfig options are selected.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-03-08 03:38:37 +01:00
Alberto Escolar Piedras
4338122248 drivers entropy: fake_entropy_native_posix rename to _native_sim
Rename the driver files, binding and kconfig options, while deprecating
the old binding and kconfig options.

Uses in tree are replaced.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-08 03:38:13 +01:00
Jari Tervonen
3b1e60da90 lib: posix: Fix NULL pointer to strcmp in posix mqueue.
When a queue has been unlinked but not removed the name pointer is set to
NULL. The queue is still in the list when adding new queues and the name
pointer is passed to strcmp.

Signed-off-by: Jari Tervonen <jari.tervonen@nordicsemi.no>
2025-03-08 03:37:48 +01:00
Josuah Demangeon
364322e246 samples: drivers: video: use a macro to simplify format logging
A macro introduced allows to log four-character-codes (FOURCC) as one
string instead of enumerating each individual character. This saves a bit
of room in the code and is less error-prone.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-03-08 03:37:38 +01:00
Josuah Demangeon
26db5c2aef drivers: video: introduce VIDEO_FOURCC_TO_STR
This adds a macro to generate a C99 compound literal string, which allow
to use it in debug log messages, such as:
LOG_DBG("The pixel format is '%s'", VIDEO_FOURCC_STR(fmt->pixelformat));

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-03-08 03:37:38 +01:00
Grant Ramsay
4c5f858869 scripts: footprint: Exclude data section from rom_report if XIP=n
For XIP=n, the data section is only in RAM

Signed-off-by: Grant Ramsay <gramsay@enphaseenergy.com>
2025-03-08 03:37:27 +01:00
Pavel Vasilyev
179f3c6f05 bluetooth: hci: ipc: assert when building HCI IPC driver w/o ACL FC
The HCI IPC driver is not reliable and can lead to lost ACL data if
built without Controller-to-Host ACL flow control.

This commit prevents building HCI IPC driver and hci_ipc sample without
CONFIG_BT_HCI_ACL_FLOW_CONTROL.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-03-08 03:37:16 +01:00
Krzysztof Chruściński
8ce291dfd8 tests: drivers: counter: basic_api: Fix failing build
nrf52_bsim target was failing to compile when ZLI configuration
was used. This target should never be used for that configuration
because:
- bsim does not support Zero Latency Interrupts
- this configuration is strictly for nrf52840dk (dedicated overlay)

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-08 03:37:04 +01:00
Benjamin Cabé
6efca1a9ff samples: led_strip: Make LED brightness configurable
Expose a Kconfig option to adjust max brightness level

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-07 21:40:35 +01:00
Jilay Pandya
11d1a9033f tests: stepper: build-all sort entries alphabetically
sort stepper driver entries alphabetically‚

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-07 21:29:31 +01:00
Ian Morris
22d4161cc0 boards: renesas: ek_ra6m4: added mikrobus node labels
Added mikrobus_serial, mikrobus_i2c, mikrobus_spi and mikrobus_header
node labels to EK-RA6M4 device tree board definition, allowing compatible
shield boards to be used.

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2025-03-07 21:29:19 +01:00
Tomasz Moń
962a53ef8e drivers: udc_dwc2: Avoid unnecessary context switches
DWC2 thread must acquire UDC mutex before accessing shared resources
(peripheral registers and software data structures). Whenever software
enqueues a buffer, the caller first obtains mutex, adds the buffer to
the list, posts event to wake up DWC2 thread and releases mutex. If DWC2
thread has higher priority than the task currently holding a mutex,
there will be two completely unnecessary task switches: DWC2 will switch
in, try to obtain mutex, and then the control will be returned to the
mutex holder.

Avoid the unnecessary task switches by locking scheduler prior to
obtaining the mutex and unlocking scheduler after releasing the mutex.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-03-07 21:29:09 +01:00
Jamie McCrae
d65de42282 cmake: mcuboot: Configure key and signature variables
Configures both of these variables so that they can contain
CMake variables which will be expanded

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-03-07 20:36:04 +01:00
Rubin Gerritsen
65c7f1f269 Bluetooth: Controller: Kconfig: Add dependencies to ISO configs
The ISO configs set defaults based upon BT_ISO_MAX_CHAN and other
configs defined in `bluetooth/Kconfig.iso`.

By adding these dependencies the error messages resulting from
adding `CONFIG_BT_CTLR_PERIPHERAL_ISO=y` to a project configuration
file will become less confusing.

Now the build will output:
```
warning: BT_CTLR_PERIPHERAL_ISO (
defined at subsys/bluetooth/controller/Kconfig:976,
subsys/bluetooth/controller/Kconfig:984) was assigned the value 'y' but
got the value 'n'. See ...
```

Previously we would get:
```
warning: default value 0 on BT_CTLR_CONN_ISO_STREAMS
(defined at subsys/bluetooth/controller/Kconfig:993)
clamped to 1 due to being outside the active range ([1, 64])
```

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-03-07 20:35:45 +01:00
Alberto Escolar Piedras
b932e14338 manifest: Update nRF hw models to latest
Update the HW models module to:
b84bd7314a239f818e78f6927f5673247816df53

Including the following:
b84bd73 UART PTY backend: Correct a few comments
f945d62 RADIO 54: Fix reset value of TIMING register
9fd4133 MDK nrfx_erratas.h: Ensure backwards compatibility with old
        nrfx versions
85061b1 MDK: Provide empty replacement for nrf_erratas.h

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 20:31:51 +01:00
Karsten Koenig
b900ed561f modules: hal_nordic: bump regtool to 8.1.3
Added additional analog channels for ADC and COMP/LPCOMP and new pin
functionality mapping for TDM.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-03-07 20:31:39 +01:00
Jukka Rissanen
c53d02439b tests: net: dns: Add tests for joining mDNS multicast group
Make sure that if mDNS resolver is enabled, we join the mDNS
multicast group so that query responses can be received.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-07 20:28:03 +01:00
Jukka Rissanen
d955af4e62 net: dns: Join mDNS multicast group for resolving
If mDNS resolver is enabled but mDNS responder is not, then
mDNS multicast address group is not joined. This would prevent
the mDNS resolver to receive the responses. Fix this by
joining the mDNS multicast group if mDNS responder is not
enabled (because the responder will join the group itself).

Fixes #86477

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-07 20:28:03 +01:00
Jordan Yates
95fcf48fab modules: hostap: remove select FILE_SYSTEM
Remove `select FILE_SYSTEM` from `WIFI_NM_WPA_SUPPLICANT`, originally
added in 3fc932c5. The selection is not required by any tests, and does
not appear to be used by any code in the module.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-07 20:27:12 +01:00
Jordan Yates
06d7fe8bed arch: update USERSPACE dependencies
These symbols only need to exist if `USERSPACE` is enabled, not just if
the architecture supports it.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-07 20:25:23 +01:00
Nils Ruf
1972a3f5fc drivers: uart: uart_native_tty: allow multiple instances
Adds one RX thread per instance. Previously, only one global RX thread was
used resulting in crashes due to the thread instance being overwritten by
other instances.

Signed-off-by: Nils Ruf <nils.ruf@endress.com>
2025-03-07 20:25:04 +01:00
Carles Cufi
c9151be798 west: runners: Add support for multiple device IDs
In order to enable the use case where the underlying flash tool supports
bulk-flashing using multiple device IDs, augment the core runner class
with this new runner capability and implement it in the nrfutil runner,
since the nrfutil tool supports it natively.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-03-07 20:24:23 +01:00
Ren Chen
9388349957 drivers: i3c: ccc: add missing data length for entas
This commit adds the missing data length(=0) for entas ccc.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-03-07 20:24:04 +01:00
Ren Chen
20dbf4d7a0 drivers: i3c: shell: fix the judgement/argc count for getstatus/ibi tir
The errno for format 2 of the getstatus ccc always returns an error.
The check for the invalid defining byte should use the "AND" operation
instead of "OR." Additionally, the first byte of the ibi tir sending
request is ignored due to the incorrect argument count.
This commit fixes both issues.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-03-07 20:24:04 +01:00
Ren Chen
373771c062 drivers: i3c: common: fix the setaasa flow
There is an incorrect dynamic address setting for setaasa. The correct
behavior is that the dynamic address should be assigned as a static
address only when the CCC request returns success. This commit fixes the
issue.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-03-07 20:24:04 +01:00
Alex An
fbb75862a1 drivers: retained_mem: Fix using multiple nRF retained memory regions
Fixes an error when using multiple nRF retained memory regions caused by
a missing separating comma.

Signed-off-by: Alex An <aza0337@auburn.edu>
2025-03-07 20:23:42 +01:00
Mathieu Anquetin
7282ea08e9 net: dhcpv4: fix deadlock issue
There is a deadlock issue when calling stop using address conflict
detection. This is due to the fact that some net_mgmt events are fired
and trigger the dhcpv4_acd_event_handler() with lock held even if they
are of no interest for this callback.

Therefore, before acquiring the lock, make sure the event we received
is one we are expecting.

Also, do the same for dhcpv4_iface_event_handler().

Signed-off-by: Mathieu Anquetin <mathieu.anquetin@groupe-cahors.com>
2025-03-07 20:22:58 +01:00
Kiara Navarro
3342ef3fa7 drivers: charger: unify log level
Instead of using CONFIG_LOG_DEFAULT_LEVEL, use explicitly charger log
level CONFIG_CHARGER_LOG_LEVEL for all hardware charger supported.

Signed-off-by: Kiara Navarro <knavarro@paltatech.com>
2025-03-07 20:22:52 +01:00
Peter Mitsis
abb5f11134 tests: Update ipi_optimize for x86_64 directed IPIs
Updates the ipi_optimize test to use 4 CPUs for qemu_x86_64.
This provides enough CPUs for the test to verify the recently
added directed IPI support for x86_64.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-03-07 20:22:40 +01:00
Peter Mitsis
427f2c60da kernel: arch: add directed IPIs to x86/intel64
Adds support for directed IPIs to x86/intel64. Use of direct IPIs
can further reduce the number of schedule IPIs sent and processed
in a system. Fewer IPI related ISRs mean that ...
 1. Application code is interrupted less frequently
 2. Lower likelihood of scheduler spinlock contention

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-03-07 20:22:40 +01:00
Jilay Pandya
d26396c556 drivers: sensor: shell: fix logically deadcode issue
sca finds the code to be logically dead considering the size of long
to be 4 bytes.
- Solution: use uint64_t type for the variable `value`.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-07 20:22:10 +01:00
Jilay Pandya
07fc70a697 drivers: usb_c: rt1715: fix uncheck return value cid issue
fix `gpio_add_callback` unchecked return value issue

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-07 20:21:22 +01:00
Kiara Navarro
737133a6df mgmt: ec_host_cmd: remove response leftovers
Remove `res` variable since it was not used in any part of `rx_timeout`
function.

Signed-off-by: Kiara Navarro <knavarro@paltatech.com>
2025-03-07 20:21:02 +01:00
Hank Wang
09d6197003 drivers: sensor: tmp1075: remove redundant module name in log message
The tmp1075 driver already registers a log module using
LOG_MODULE_REGISTER(TMP1075, CONFIG_SENSOR_LOG_LEVEL).
This ensures that all log messages are prefixed with "TMP1075".
The existing LOG_ERR message redundantly includes "tmp1075",
which is unnecessary.

Signed-off-by: Hank Wang <wanghanchi2000@gmail.com>
2025-03-07 20:20:46 +01:00
Andy Ross
8b4ed6655a kernel: Clamp k_sleep() return value on overflow
k_sleep() returns a 32 bit count of milliseconds, as that was its
historical API.  But it now accepts a potentially 64 bit tick count as
an argument, leading to situations where an early wakeup will produce
sleep times that aren't representable.  Clamp this instead of
truncating to an arbitrary value.

Naive code will likely do the right thing with the large return (just
sleeping an extra round), and sophisticated apps can detect INT_MAX to
enable more elaborate retry logic.

(Also fixes a somewhat unfortunate puncutation error in the docs that
implied that it returns zero on early wakeup!)

Fixes: #84669

Signed-off-by: Andy Ross <andyross@google.com>
2025-03-07 20:20:25 +01:00
Guennadi Liakhovetski
57e8d5ecfb log: fix log_flush()
The logging thread is usually woken up by a timer, if the timer
period is longer than 10ms, log_flush() can iterate multiple times
needlessly, while waiting for the next timer. Instead wake up the
logging thread to let it flush the queue immediately. Besides a
hard-coded polling period of 10ms is too long for some applications,
make it a Kconfig parameter.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-03-07 20:20:00 +01:00
Carlo Kirchmeier
4eb917f884 test: net: http: Add compression support in HTTP server
Add tests verifying the functionality of the newly added
accept-encoding based compression support.

Signed-off-by: Carlo Kirchmeier <carlo.kirchmeier@zuehlke.com>
2025-03-07 20:19:44 +01:00
Carlo Kirchmeier
3d1370f094 net: http: Add compression support in HTTP server
Add compression support using the accept-encoding
header to the http server static filesystem resource.

Signed-off-by: Carlo Kirchmeier <carlo.kirchmeier@zuehlke.com>
2025-03-07 20:19:44 +01:00
Ying Zhang
6b16d10342 drivers: Bluetooth: nxp: not power off BLE controller when bt disable
remove the power off BLE controller function since the hci_reset cmd
is enough, also for wifi-ble coex scenario, need to maintain BLE controller
for some info in SMU region

Signed-off-by: Ying Zhang <ying.zhang_2@nxp.com>
2025-03-07 20:19:14 +01:00
Lyle Zhu
1aa88f86b8 Bluetooth: SDP: Ignore the unexpected response
The response should not be handled if there is not a request has been
sent.

Ignore the response if the `session->param` is `NULL`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-07 20:18:51 +01:00
Lyle Zhu
86b765c0a9 Bluetooth: SDP: Ignore unsupported UUID
In current implementation, if the UUID of request is unknown, the
local variable `u` will not be updated, and the unknown UUID `u`
is used as the target to search it in the SDP record list. It may
result in irrelevant record being replied to the requester.

Ignore the unsupported UUID to fix the issue.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-07 20:18:31 +01:00
bac phan
7026f113d6 net: http: Add #ifdef guard file system in HTTP server
http_server_http2.c does not guard check if file system is available
or not before using file system api. This PR will add guard for that

Signed-off-by: bac phan <phanhaibac98@gmail.com>
2025-03-07 20:18:04 +01:00
Jilay Pandya
1f1bec86f3 drivers: stepper: shell: add stop function
Add stop function to stepper shell. align the function order to match
the one in __subsystem stepper_driver_api struct

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-07 20:17:38 +01:00
Jilay Pandya
99cce692c2 drivers: stepper: gpio: implement stop function
Implement sample stop function and update enable function

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-07 20:17:38 +01:00
Jilay Pandya
2cd5a373a1 drivers: stepper: api: add stop function
add stop function
update enable & set_interval specification

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-03-07 20:17:38 +01:00
FILLIOT Louis
c77127d657 Bluetooth: hci: added h4_close function
Inside the hci driver API in h4.c, there were no
API function allowing to close the bluetooth
interface, as there were close function defined
for other bluetooth hci driver.

The function disables Bluetooth reception and
sending, and calls a weak function allowing
to implement user specific behaviors
while shutting down bluetooth interface

Signed-off-by: FILLIOT Louis <l.filliot@lacroix.group>
2025-03-07 20:17:10 +01:00
Lyle Zhu
7ec9f58b66 Bluetooth: SDP: Fix the error if continuation length is not 0
When the continuation length is not 0, there is a reported error.

In current implementation, the total length is only valid only when
the frame is the first block of the SDP response. For following
continuous frame, the total length is 0.

So, change the condition to `(total != 0 && frame_len > total)`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-07 20:16:38 +01:00
Arunmani Alagarsamy
3fd0fe9f14 boards: silabs: radio_boards: Add silabs board support for BRD4180B board
Added board support for the Silicon Labs MG21 BRD4180B radio board

Signed-off-by: Arunmani Alagarsamy <arunmani.a@capgemini.com>
2025-03-07 20:13:04 +01:00
Alberto Escolar Piedras
1f7fe49378 samples/net: Misc native_posix naming cleanup
Replace a few references to native_posix / the native_posix ethernet
driver with native_sim, or native_tap.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 20:10:38 +01:00
Alberto Escolar Piedras
78f800642a drivers/ethernet/eth_native_posix: Rename to eth_native_tap
Rename this driver to eth_native_tap, including renaming all its
options.
The old options remain until v4.4, but as deprecated.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 20:10:38 +01:00
Alberto Escolar Piedras
e5bab1a4ee doc: migration 4.2: NATIVE_POSIX_SLOWDOWN_TO_REAL_TIME deprecation
Mention that NATIVE_POSIX_SLOWDOWN_TO_REAL_TIME is now deprecated

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 20:10:23 +01:00
Alberto Escolar Piedras
bd42df2662 boards native_sim: deprecate NATIVE_POSIX_SLOWDOWN_TO_REAL_TIME
In favour of NATIVE_SIM_SLOWDOWN_TO_REAL_TIME.
To be removed by 4.4.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 20:10:23 +01:00
Alberto Escolar Piedras
04c0935808 samples & tests: Replace NATIVE_POSIX_SLOWDOWN_TO_REAL_TIME
Replace NATIVE_POSIX_SLOWDOWN_TO_REAL_TIME with the equivalent for
native_sim NATIVE_SIM_SLOWDOWN_TO_REAL_TIME.

native_sim accepted transitionally NATIVE_POSIX_SLOWDOWN_TO_REAL_TIME
to ease porting from native_posix, but this option is being deprecated.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 20:10:23 +01:00
Jukka Rissanen
0f90affcdf net: http: server: Select POSIX_C_LIB_EXT instead of FNMATCH
The CONFIG_POSIX_C_LIB_EXT will get support for fnmatch() function.
The old CONFIG_FNMATCH is deprecated.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-07 20:03:27 +01:00
Jukka Rissanen
33cf7dc78a net: http: server: The detail length of wildcard detail was wrong
The path length of the detail resource was not set properly.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-03-07 20:03:27 +01:00
Troels Nilsson
8373f19bc2 Bluetooth: Controller: Add tests covering ticker without remainder support
Update Kconfig to not select BT_TICKER_REMAINDER_SUPPORT for nrf54L

Add BSim tests to cover using a ticker without BT_TICKER_REMAINDER_SUPPORT
and expire info enabled

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-03-07 20:02:49 +01:00
Troels Nilsson
df67f4ec13 Bluetooth: Controller: Fix building ticker without remainder support
A few things were not flagged by CONFIG_BT_TICKER_REMAINDER_SUPPORT
that should have been; This caused building without it to fail

Initialize remainder to 0 where used with ticker_next_slot_get_ext(),
since it may not get set if remainder support is off

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-03-07 20:02:49 +01:00
Dominik Ermel
789e3f340e west.yml: Update TrustedFirmware-M with Flash Area cherry-picks
Update brings in flash_area_get_sector.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-03-07 20:02:35 +01:00
Aksel Skauge Mellbye
b25acabb70 drivers: flash: silabs: Add DMA read support
Enable support for using DMA to read from flash.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-07 20:02:26 +01:00
Aksel Skauge Mellbye
dba1c4bbbe drivers: flash: silabs: Add low power write support
Add low-power-write property to MSC device tree node, set
MSC_WRITECTRL_LPWRITE if enabled.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-07 20:02:26 +01:00
Aksel Skauge Mellbye
4970e2a196 drivers: flash: silabs: Add DMA write support
Enable support for using DMA to write to flash.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-07 20:02:26 +01:00
Aksel Skauge Mellbye
20c7bf0636 dts: silabs: Use Series 2 flash compatible
Use Series 2 flash controller compatible for all Series 2 socs.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-07 20:02:26 +01:00
Aksel Skauge Mellbye
1de48c36ec drivers: flash: silabs: Introduce Silabs Series 2 flash driver
Introduce separate flash driver for Silabs Series 2. This driver
is forked from the Gecko flash driver with no changes outside of
formatting and naming.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-07 20:02:26 +01:00
Andre Heinemans
da3d029b14 drivers: firmware: scmi: add nxp specific processing
An option is added to allow vendor specific processing at
scmi_shmem_write_message() and scmi_shmem_read_message().
Additionally code has been added specific to NXP which has
some extended validation features.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-03-07 20:02:17 +01:00
Aksel Skauge Mellbye
c31ea5bf9d drivers: comparator: silabs: Use pm_device_driver_init
Enable PM device support by making use of the pm_device_driver_init
helper.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-07 20:02:07 +01:00
Aksel Skauge Mellbye
84d97372ff tests: drivers: comparator: Add support for xg24_rb4187c
Enable the gpio_loopback comparator test on xg24_rb4187c.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-07 20:02:07 +01:00
Eve Redero
1a5854d1f9 manifest: hal_atmel: bump hash for missing macro
The SPI_CSR_BITS macro is required by ATSAM SPI driver,
and is missing for sam3x variants.

Signed-off-by: Eve Redero <eve.redero@gmail.com>
2025-03-07 20:01:37 +01:00
Seppo Takalo
334b32d9f5 net: coap_client: Stop lifetime on piggybacked Ack
When we receive piggybacked Ack, it means that we have
received all information for this request.
There is no need to track exchange lifetime anymore.

Once we reset the internal request, it is free to be used
for the application. So if we only have few requests allocated,
it would be slow to send those as get_free_request() only
gives request structures that don't have a lifetime left.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-03-07 20:01:26 +01:00
Lars-Ove Karlsson
a43bca0a8c cmake: compiler: Added property flag for optimization fast
CMSIS modules dsp and nn sets the optimization flag -Ofast for their
libraries. I've now made a new compiler property optimization_fast to
avoid using ifdefs in the cmsis CMakeLists.txt files.

I've update GCC and arcmwdt (not sure if arcmwdt supports -Ofast)

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-03-07 20:01:18 +01:00
Adrian Bonislawski
374f80a917 drivers: dai: intel: remove DMIC IRQ handling
This patch will disable DMIC IRQ handling in DMIC driver
because it is now managed by Mic Privacy driver

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-03-07 20:01:06 +01:00
Aksel Skauge Mellbye
f476b0c58b manifest: Update hal_silabs reference
Update hal_silabs to introduce crypto HAL.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-03-07 20:00:36 +01:00
Michal Piekos
81bf6e746e shell: fixes shell dead code issue
Move z_transport_buffer_flush(sh) to the scope of the while loop.

Coverity-CID: 399568

Signed-off-by: Michal Piekos <michal.piekos@wp.pl>
2025-03-07 20:00:27 +01:00
Luis Ubieda
c66d0d81c2 rtio: workq: Default workqueue to two threads with SPI/I2C/I3C
As to facilitate work items preemption, common for sensor read ops.

e.g:
- Sensor read (submitted through workqueue).
- SPI read (submitted through workqueue using default handler).

This requires at least 2 thread pools to allow SPI read to complete,
to then come back and complete sensor reading.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-03-07 20:00:18 +01:00
Théo Battrel
158870ec64 Bluetooth: Host: Use memset to initialize psa_mac_operation_t
In `db_hash_setup()` the state object for MAC operations was initialized
using `psa_mac_operation_init()`. This function was not always optimized
or inlined.

A way to reduce stack usage is to use `memset()` and set the object to
0. This is one of the option documented to initialize
`psa_mac_operation_t` object.

Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
2025-03-07 19:59:24 +01:00
Michael D Sherwood
90b0ef8d5b manifest: update for hal_microchip
Add debug support for hal_microchip/pic32cx

Signed-off-by: Michael D Sherwood <michael.sherwood@microchip.com>
2025-03-07 19:59:16 +01:00
Maciej Baczmanski
6636adc706 openthread: Rework L2 configuration
- Add possibility to choose implementation of OpenThread L2 and
set it to Zephyr's by default
- Remove unused `OPENTHREAD_SECURITY_INTERNAL` Kconfig
- Add missing choice names for logging and coprocessor

Signed-off-by: Maciej Baczmanski <maciej.baczmanski@nordicsemi.no>
2025-03-07 19:59:07 +01:00
Damian Krolik
ab09c522b5 modules: openthread: platform: optimize stack usage in crypto_psa
A PSA crypto operation object can be initialized in multiple
ways according to the documentation. For example,
1. Using a dedicated psa_xxx_operation_init() function that
   returns an initialized object.
2. Using memset() to zero out the operation object.

For some PSA crypto driver implementations, using the first
method causes an excessive stack usage if the operation
object is large and psa_xxx_operation_init() is not inlined.
Instead, it is better to stick to memset() for this purpose.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2025-03-07 19:59:00 +01:00
Cla Mattia Galliard
7d721ce63a net: icmp: Send replies with timeout K_NO_WAIT
This ensure system stays operational in icmp flood situation.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-03-07 19:58:45 +01:00
Cla Mattia Galliard
647ca57234 net: lldp: Send replies with timeout K_NO_WAIT
This ensures system stays operation in lldp-flood situation.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-03-07 19:58:45 +01:00
Cla Mattia Galliard
353e314fbf net: arp: Send replies with timeout K_NO_WAIT
This ensures system stays operational in arp-flood situation.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-03-07 19:58:45 +01:00
Cla Mattia Galliard
19f192cfb5 net: net_context: Make use of timeout for sending
Use the newly added timeout in various send functions from within
net_context_sendto.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-03-07 19:58:45 +01:00
Cla Mattia Galliard
5b89a5c4b8 net: add try variant with timeout for various send functions
Allows to send with different timeouts to not block caller in some
situations. Stable API is kept and just calls `try`-variant with a timeout
of `K_FOREVER`.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-03-07 19:58:45 +01:00
Emil Gydesen
1a6af2bfa6 Bluetooth: Audio: Modifed PAST checks to use public API
Use the recently added bt_le_get_local_features function as well
as bt_conn_get_remote_info to avoid using internal APIs to
check for PAST supported.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-07 19:58:23 +01:00
Emil Gydesen
4619611326 Bluetooth: Conn: Add const for conn in bt_conn_get_remote_info
The connection object is, and should not, be modified by the function.
Making it const makes it possible to do this simple operation
in functions that also won't change the conn object (i.e.
that uses `const`).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-07 19:58:23 +01:00
Emil Gydesen
44c5c1da3d Bluetooth: Host: Add API for reading LE controller features
The function supports reading multiple controller-based values.
It is effectively a copy of struct bt_dev_le but in a more
application-oriented definition.

It was chosen to keep the features as an array rather than a
64-bit value, as the comparison macros work on arrays and that
there already exists new bits > 64 in the core spec which is not
yet supported by Zephyr.

It is being smoke tested in a generic GATT client test,
as the individual values may depend on several Kconfig options.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-03-07 19:58:23 +01:00
Andrej Butok
ac7790e452 samples: zms: fix 9999 messages dropped
- Sets CONFIG_LOG_BLOCK_IN_THREAD for the zms sample.
- Fixes "--- 9999 messages dropped ---".

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-03-07 19:58:19 +01:00
Aleksandr Khromykh
e075e08195 Bluetooth: Mesh: remove api prefix for static functions
Commit removes api prefix for static functions
in crypto psa.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-03-07 19:58:10 +01:00
João Castilho
db606d3c1c samples: boards: bbc: add microbit_v2 board to pong example
Adding board bbc_microbit_v2 overlay to pong example. This change
mainly enables to buzzer functionality of the example.

Signed-off-by: João Castilho <jpccastilho1999@gmail.com>
2025-03-07 19:58:05 +01:00
IBEN EL HADJ MESSAOUD Marwa
d7438b361d dts: bindings: ethernet: Add required phy-connection-type
This commit updates the STM32 Ethernet binding to include
the `phy-connection-type` property as required.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-03-07 19:57:59 +01:00
IBEN EL HADJ MESSAOUD Marwa
a6db8b7a82 doc: update migration guide 4.2 for STM32 HAL Ethernet changes
Removed the Kconfig option `ETH_STM32_HAL_MII`.
PHY interface type should now be set using
the `phy-connection-type` property in the device tree.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-03-07 19:57:59 +01:00
IBEN EL HADJ MESSAOUD Marwa
f0b58a92e6 drivers: ethernet: remove ETH_STM32_HAL_MII
Removed `ETH_STM32_HAL_MII` configuration option
from `Kconfig.stm32_hal`.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-03-07 19:57:59 +01:00
IBEN EL HADJ MESSAOUD Marwa
c8672fa649 drivers: ethernet: Update Ethernet PHY mode and speed configuration
- Added macros `STM32_ETH_PHY_MODE` to determine
  the PHY mode and speed from the `phy_connection_type`
  property in the device tree.
- Updated the `eth0_data` structure to use `STM32_ETH_PHY_MODE`
  for setting the media interface.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-03-07 19:57:59 +01:00
IBEN EL HADJ MESSAOUD Marwa
4283a3f79e boards: Specify PHY connection type
This commit updates the device tree source files
for all STM32 boards to specify the PHY connection
type for the Ethernet configuration.
Added the `phy-connection-type` property
with the value "rmii" to the Ethernet node.

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-03-07 19:57:59 +01:00
Pisit Sawangvonganan
84bc26eeec drivers: gpio: shell: streamline code
Streamline code in multiple places as follows:
- Remove redundant initialization of `ret` to `0`,
  as it is immediately assigned a value.
- Add `len` to store the result of `strlen(argv[ARGV_CONF])` to avoid
  multiple calls to `strlen` within the `for-loop` in `cmd_gpio_conf`.
- Merge separate `shell_print` calls by including a newline `\n`.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-03-07 19:57:50 +01:00
Tom Chang
6aefcf0c0a soc: npcx: make pm state setting functions overridable
This changes make PM state setting functions in SOC level weak so they
can be overridden by board/app level.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-03-07 19:57:41 +01:00
Ian Wakely
a50fc46a7c boards: Adafruit QT Py ESP32s3: Adding STEMMA-QT
This adds the STEMMA-QT connector to the device tree. The connector
definition didn't exist when making the device tree originally.

Signed-off-by: Ian Wakely <raveious.irw@gmail.com>
2025-03-07 19:57:25 +01:00
Ian Wakely
fe0c571400 boards: Adafruit QT Py RP2040: Adding STEMMA-QT
This adds the STEMMA-QT connector to the device tree. The connector
definition didn't exist when making the device tree originally.

Signed-off-by: Ian Wakely <raveious.irw@gmail.com>
2025-03-07 19:57:25 +01:00
Fabio Baltieri
3d24b8b552 gpio: shell: use the first nodelabel when available
Use the first nodelabel rather than the node name when available for
shell completion as well as "gpio info". This label is always set gpio
nodes as that's what's used for references by device nodes, there may be
some case where a node has multiple labels for some reason but for a
human I reckon it still makes more sense to suggest a label rather than
the address.

This means that the commands would use, for example "gpioa" rather than
"gpio@58020000".

Fall back to the normal node name if there's no label set or if dt
metadata is not enabled.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-03-07 19:57:07 +01:00
Martí Bolívar
70efa2b120 doc: document "west gtags" command
Document this command's existence, provide basic usage, and describe
the locations of resources where additional help etc. should be found.

Signed-off-by: Martí Bolívar <marti.bolivar@oss.qualcomm.com>
2025-03-07 19:57:00 +01:00
Martí Bolívar
2db0fb60f2 scripts: add "west gtags" command
This is an extension for indexing the source code in the workspace
with GNU Global. See the command line help for more information about
Global.

Signed-off-by: Martí Bolívar <marti.bolivar@oss.qualcomm.com>
2025-03-07 19:57:00 +01:00
Dan Collins
464abe7a25 sensor: st: lis3mdl: Add support for device power management
This commit adds support for device power management to the LIS3MDL
magnetometer driver.

Signed-off-by: Dan Collins <dan@collinsnz.com>
2025-03-07 19:56:45 +01:00
Alberto Escolar Piedras
6013642982 drivers: nsos: Use native simulator errno conversion
Now that the native simulator has a common version of the error
conversion let's use that instead of a version specific for the
NSOS code.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:56:30 +01:00
Alberto Escolar Piedras
7f93a80537 native/posix arch: Add option to enable building of nsi_errno component
Add a new kconfig option to enable building the new component provided
in the native simulator, nsi_errno, which allows converting the errno
value between libCs.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:56:30 +01:00
Alberto Escolar Piedras
83c65e9d07 native_simulator: Get latest from upstream
Align with native_simulator's upstream main
26524aa55198807a37e012e5847f3975750d1716

Which includes:
* 26524aa Add new nsi_errno optional component
* 007a1c8 nsi_utils.h: Add NSI_ARRAY_SIZE() macro

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:56:30 +01:00
Alberto Escolar Piedras
e23d5ae996 native_simulator: Get latest from upstream
Align with native_simulator's upstream main
20d3b2b76a3bf61d35becbe17928cdf22e885b9f

Which includes:
* 20d3b2b Makefile: Support building C++ files with runner

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:56:30 +01:00
Adrian Bonislawski
b09827305e drivers: audio: disable dmic irq if requested
This will correctly disable dmic irq if requested

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-03-07 19:56:20 +01:00
Ibrahim Abdalkader
33717f9e93 drivers: display: display_stm32_ltdc: Add support for shared multi-heap.
Add support for using shared multi-heap (when available) to allocate
the display's framebuffer. This change allows the driver to co-exist
with other drivers that use shared multi-heap (such as video_common.c).

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-03-07 19:56:14 +01:00
Robin Kastberg
da384651ec hal: infineon: handle gcc flag
Move -Wno-array-bounds from being hardcoded to a compiler
property

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-03-07 19:56:10 +01:00
Khoa Nguyen
0661d65689 drivers: hwinfo: Initial hwinfo driver support for Renesas RA
Initial hwinfo driver support for Renesas RA

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-07 19:55:41 +01:00
Benjamin Cabé
f64aa23eed boards: madmachine: enable flexspi for external flash
MM boards are currently broken (can't even build hello world) due to
flexspi not being enabled in the device tree, causing external flash
to not be available.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-07 19:55:14 +01:00
Anas Nashif
270c4e4cab samples: settings: cleanup and use filters
Almost all overlays only enable NVS and SETTINGS_NVS, something that
should be enabled in sample directly. Remove all overlays and make the
sample more genenric.

Use filter on storage partition to enable testing the sample on more
plaforms.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-07 19:54:38 +01:00
Robin Kastberg
ddd1063715 soc: stm32: handle CCM in LINKER_GENERATOR
Currently, the soc/stm32/ccm.ld is not handled in
CMAKE_LINKER_GENERATOR.

This commit adds support, making STM32 supportable by
alternative linkers such as AC6 and IAR.

This commit also renames a variable to match all other
LOADADDR symbols.

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-03-07 19:54:24 +01:00
Johann Fischer
5f7713815a boards: mini_stm32h7b0: use board common CDC ACM UART configuration
Remove USB and CDC ACM configuration in favor of common
configuraiton. This is a follow up to commit 272290bfee
("boards: use board common CDC ACM UART configuration")
Support for this board was merged just before the common solution was
introduced.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-03-07 19:53:52 +01:00
Alexander Svensen
6d19fc2b86 tests: bluetooth: tester: Make brcst_source_stop synchronous
- Add semaphore to make sure source is stopped before proceeding
- This ensures source can be released after this command is finished

Signed-off-by: Alexander Svensen <alexander.svensen@nordicsemi.no>
2025-03-07 19:53:44 +01:00
Irfan Ahmad
8d42cd078b scripts: build: Add optimizations in file2hex.py to gzip path as well
Added recently introduced optimizations - generation in string literal form
and faster generation for hexadecimal initializer list form - to gzip path
as well.

Signed-off-by: Irfan Ahmad <irfan.ahmad@siemens.com>
2025-03-07 19:53:34 +01:00
Andrej Butok
b826d46632 tests: zms: allow to build & run on real platforms
- Allows to build and run ZMS tests on real platforms.
- Enables ZMS tests designed for a flash-simulator only when
  built for qemu_x86 or native_sim targets.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-03-07 19:53:27 +01:00
Lars-Ove Karlsson
aad6b6c33e tests: kernel: Fixed disabling of __deprecated macros
When disabling the __deprecated macros in tests/kernel/pipe/deprecated,
the macros was set to ''. For IAR tools this was expanded to '' which
caused a compilation error.

I have replaced them with /* deprecated */ which should work for all
toolchains.

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-03-07 19:53:17 +01:00
Johann Fischer
72899645bf tests: udc: expand the list of integration platforms
Add four platforms with unique controllers.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-03-07 19:53:08 +01:00
Johann Fischer
eb25101c3b tests: udc: fix the test for controllers with maximum number of endpoints
Do not use FALSE_EP_ADDR in API calls to enable/disable an endpoint as
we already support controllers with the maximum possible number of
endpoints where FALSE_EP_ADDR is a valid endpoint address.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-03-07 19:53:08 +01:00
Pavel Vasilyev
14b35e2df3 tests: bsim: Fix command execution with quoted string
When running a bsim test where an option's argument is a quoted string,
using $@ to execute the arguments of the Execute function causes
incorrect quote handling.

To correctly pass all arguments, add extra quotes around $@. This
ensures that quoted strings remain intact when passed to the executable.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-03-07 19:52:55 +01:00
Rafał Kuźnia
442d9383df modules: hal_nordic: nrf_802154: enable constant latency
To ensure that the accesses to the radio peripheral are done with
predictable timings, the constant latency must be enabled.
The constant latency mode is enabled alongside the HFXO.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-03-07 19:52:33 +01:00
Rafał Kuźnia
bcb3eaa91d dts: common: nordic: Add power node to nRF54L20
Added the node representing the POWER peripheral on the nRF54L20.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-03-07 19:52:33 +01:00
Povilas Selevicius
37ddeb459c net: coap_client: expose has_ongoing_exchange function
The coap_client has a static/internal function, has_ongoing_exchange(),
which can be an useful addition to the public API. This would provide
a mechanism to determine when it is safe to close a socket gracefully.

Signed-off-by: Povilas Selevicius <povilas.selevicius@quadigi.com>
2025-03-07 19:52:22 +01:00
Titan Chen
865b8aa91d drivers: wdog: add Realtek RTS5912 wdog driver
Port Realtek RTS5912 wdog driver to Zephyr.

Signed-off-by: Titan Chen <titan.chen@realtek.com>
2025-03-07 19:52:17 +01:00
Krzysztof Chruściński
074215a30f drivers: clock_control: nrf: Move NRF_PERIPH_GET_FREQUENCY
Move macro from nrf_clock_control.h to soc_nrf_common.h. Clock control
header fetches many dependencies (e.g. onoff.h) so move macro to more
low level header.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-07 19:52:10 +01:00
Krzysztof Chruściński
3fdc8c8bd4 soc: nordic: nrf54l: Explicitly include autoconf.h
Include configuration file for cases when this file is complied
in special builds (e.g. TFM).

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-07 19:52:10 +01:00
Krzysztof Chruściński
163f9ba0b9 soc: nordic: nrf54l: Setup power and clock only on secure build
Setup regulators and oscillators only on cpuapp secure target.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-03-07 19:52:10 +01:00
Xinyu Hong
0c9b7eb9d4 drivers: wifi: nxp: Support wifi ap disconnect
For embedded supplicant case add process to
support wifi ap disconnect station.

Signed-off-by: Xinyu Hong <xinyu.hong@nxp.com>
2025-03-07 19:52:00 +01:00
Utsav Munendra
2b48ef62ba portability: cmsis: Implement osThreadJoin using Zephyr k_thread_join
Bugfix previous `osThreadJoin()` implementation where a thread which
exited with `osThreadExit()` could not be joined upon by other threads.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-03-07 19:51:50 +01:00
Jordan Yates
89c4902fb7 samples: net: sntp_client: demonstrate async SNTP
Demonstrate asynchronous SNTP querying in the sample.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-07 19:51:40 +01:00
Jordan Yates
1bc795f8ed samples: net: sntp_client: SNTP server lookup
Lookup the address of the SNTP server through DNS instead of requiring
a server to be running locally.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-07 19:51:40 +01:00
Jordan Yates
68b7c98e26 samples: net: sntp_client: native sockets
Add the option to use the native socket abstraction for the sample.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-07 19:51:40 +01:00
Jordan Yates
3c3256b1b1 samples: net: common: resend conn status
Networking events may have been triggered before `wait_for_network` was
called. Resend the status events after the callbacks have been
registered.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-07 19:51:40 +01:00
Jordan Yates
7ab8e27e26 net: lib: sntp: async query API
Add a variant of the SNTP API that does not block while waiting for a
response from the SNTP server. Instead it takes advantage of
`CONFIG_NET_SOCKETS_SERVICE` to read the response asynchronously when
the response is received.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-07 19:51:40 +01:00
Jordan Yates
5178835677 net: lib: sntp: extract query send logic
Extract the SNTP query send logic out of `sntp_query` so that it can be
used by functions that don't synchronously wait for the response.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-07 19:51:40 +01:00
Elmo Lan
40c590fad7 driver: bbram: add bbram driver for rts5912
Add bbram driver for Realtek rts5912.

Signed-off-by: Elmo Lan <elmo_lan@realtek.com>
2025-03-07 19:51:34 +01:00
Daniel Leung
c107a6abeb boards: intel_adsp: move MAIN_STACK_SIZE to Kconfig.defconfig
This moves CONFIG_MAIN_STACK_SIZE from <board>_defconfig into
Kconfig.defconfig.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-03-07 19:51:27 +01:00
Marcio Ribeiro
216f9dafcc soc: esp32: add extended advertising support
Adds extended advertising support to:
- esp32s2
- esp32c3

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-03-07 19:51:16 +01:00
Robert Budai
c55204f761 drivers: gpio: extend max14916 to max14915
The MAX14915 has eight high-side switches specified to deliver up to
700mA continuous current with simlar register map and diagnostics
parameters to MAX14916.

Documentation:
https://www.analog.com/en/products/max14915.html

Signed-off-by: Robert Budai <robert.budai@analog.com>
2025-03-07 19:51:07 +01:00
Florijan Plohl
cfae3d7174 tests: drivers: build_all: ethernet: Add DP83867 entry
Add build tests for TI DP83867.

Signed-off-by: Florijan Plohl <florijan.plohl@norik.com>
2025-03-07 19:51:02 +01:00
Florijan Plohl
f519e3e498 drivers: ethernet: Add TI DP83867 eth phy driver
Add initial driver for TI DP83867 Ethernet PHY. Includes dts binding.

Signed-off-by: Florijan Plohl <florijan.plohl@norik.com>
2025-03-07 19:51:02 +01:00
Ryan McClelland
15f004b366 drivers: i3c: fix up argument alignment spaceing
fixup the function argument spacing to align

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-03-07 19:50:08 +01:00
Ryan McClelland
b495907ae5 drivers: i3c: cleanup target config descrition and add inline helpers
It shouldn't be possible to just 'enable' target mode of a device.
It is required by the specification to perform a handoff or request to
become a target or controller from the active controller. Not to just flip
a switch internally. Can the parameter from `enable` to `enabled` to report
if it is currently a target or a controller otherwise.

Also, add inline helpers for `i3c_config_get` and `i3c_configure` to ensure
the proper struct is passed in.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-03-07 19:50:08 +01:00
Ryan McClelland
93099e303e drivers: i3c: run clang-format on i3c_common.c
Run clang-formatt on i3c_common.c

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-03-07 19:50:08 +01:00
Sebastian Głąb
773cf96944 samples: drivers: aduio: dmic: Enable sample on nRF54L20pdk
Enable execution of DMIC sample on nRF54L20pdk.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-03-07 19:49:55 +01:00
Sebastian Głąb
22d9f0c13f tests: drivers: audio: dmic_api: Enable test on nRF54L20pdk
Add test configuration on DMIC nodes that are compatible
with 'nordic_nrf_pdm'.
Add missing DTS definitions in a board overlay.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-03-07 19:49:55 +01:00
Sebastian Głąb
0015571e7e boards: nordic: nrf54l20pdk: Add dmic to supported peripherals
Add dmic to the list of supported peripherals on nRF54L20pdk.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-03-07 19:49:55 +01:00
Lukasz Fundakowski
c5e8664089 twister: Refactor python module to follow PEP8 rules
Incremental refactoring.
Fix PEP8 issues to make ruff green for config_parser.py module.
Add __init__.py to twister directory to make it a proper python package,
and make modules importable.

Signed-off-by: Lukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-03-07 19:49:42 +01:00
Daniel Schultz
27a746fc45 dts: arm: ti: am64x_m4: Add I2C and Mailbox
The AM64x has two I2C interfaces located in the MCU domain and
uses mailbox6 to communicate with the A53 cores.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2025-03-07 19:49:31 +01:00
Daniel Schultz
90e1f027d3 dts: arm: ti: am62x_m4: Add I2C0 bus
The AM62x has one I2C interface located in the MCU domain.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2025-03-07 19:49:31 +01:00
Dominik Chat
93d15996e9 drivers: bluetooth: hci: Add retries for IPC interface
Add HCI IPC retry handling in case of full IPC
queue. This mechanism improves reliability.

The ipc_service_send can return -ENOMEM in case
of full queue. If this happens the retries are
executed in order to wait for queue to empty
and not drop messages.
If the retry mechanism reaches maximum then
the error code is passed back to the host.

The change should improve the handling of
passing messages to full ipc and reduce
dropping of packets.

Signed-off-by: Dominik Chat <dominik.chat@nordicsemi.no>
2025-03-07 19:49:15 +01:00
Mahesh Mahadevan
f48344364c sample: usb_dfu: Exclude NXP RT700 board
This board does not have Flash support enabled yet.
Re-enable this sample once Flash and MCUboot support is
added.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-07 19:48:38 +01:00
Mahesh Mahadevan
28ab3e3502 dts: nxp_rt7xx: Add support for USB
Add USB support

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-07 19:48:38 +01:00
Mahesh Mahadevan
8534873d9b soc: imxrt: No need for USB linker script on RT7XX
This is not needed for RT7XX

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-07 19:48:38 +01:00
Mahesh Mahadevan
268af3817d drivers: nxp_usb: usb_dc_mcux error condition updated
This driver is no longer maintained. So remove the
error condition to have a build error for undefined
platforms.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-03-07 19:48:38 +01:00
Ram Mahesh
72c0bea73c drivers: ethernet: stm32: Execute get_phy() only if mdio is supported
Add condition to execute get_phy() api if only mdio is supported.

Signed-off-by: Ram Mahesh <rammaheshram1234@gmail.com>
2025-03-07 19:48:28 +01:00
Ram Mahesh
0691f761f8 drivers: ethernet: stm32: add get_phy() support
implementation of get_phy() added.

Signed-off-by: Ram Mahesh <rammaheshram1234@gmail.com>
2025-03-07 19:48:28 +01:00
Emilio Benavente
5e35836922 boards: nxp: mcxw7x: Add FXLS8964 Sensor Support
Added FXLS8964 Accel Sensor Support for the
mcxw71 and mcxw72 devices.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-03-07 19:48:18 +01:00
Noah Olson
b2e29fe0d7 net: tcp: fix ECONNREFUSED not reported by zsock_connect
When a TCP connection is refused during zsock_connect, errno is set
to -ENOTCONN, but errno should be set to -ECONNREFUSED. This change
causes the ECONNREFUSED status to be propagated from tcp_in to
net_tcp_connect, which eventually causes errno to be set
to -ECONNREFUSED.

Signed-off-by: Noah Olson <noah@wavelynx.com>
2025-03-07 19:48:10 +01:00
Lauren Murphy
e7786914c9 tests: lib: multi_heap fix up_squared test failures
Fixes test failures on up_squared caused by ACPI adding to
heap size (K_HEAP_MEM_POOL_SIZE). The test assumed the heap size
always matched the Kconfig CONFIG_HEAP_MEM_POOL_SIZE=256.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-03-07 19:48:00 +01:00
Margherita Milani
c7b65cb4e0 apds9253: Add measurement rate set attribute
Allow to set attribute of the measurement rate of the apds9253. This
must be done setting the sampling frequency (in Hz).

Signed-off-by: Margherita Milani <margherita.milani@amarulasolutions.com>
2025-03-07 19:47:51 +01:00
Michael Trimarchi
4e296ab7c9 apds9253: Add gain set attribute
Allow to set attribute of the gain of the apds9253. The gain
is applied to all the channels.

Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Margherita <margherita.milani@amarulasolutions.com>
2025-03-07 19:47:51 +01:00
TOKITA Hiroshi
1d543dead8 pico-sdk: Exclude the watchdog driver.
Review the dependencies to make it unnecessary to pull in the
watchdog driver.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-07 19:47:41 +01:00
TOKITA Hiroshi
905b18f3d7 drivers: clock_control: Calling tick_start directly to start wdt
`watchdog_start_tick` is a just wrapper for `tick_start`.
To simplify, changing it to call directly.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-07 19:47:41 +01:00
TOKITA Hiroshi
39a7d2c11e boards: raspberrypi: rpi_pico2: enable wdt0
Enables the watchdog timer to align with the rpi_pico's setting.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-07 19:47:41 +01:00
Tom Hughes
6c79dab929 toolchain: Add indirection for compiler warnings
In order to support new toolchains that are not compatible with
gcc/clang (e.g., IAR), we need to add a level of indirection for
the name of warnings.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-07 19:47:30 +01:00
Francois Laplante
f8d4f80f83 drivers: spi: silabs: eusart: Add pm support
Add device policy and runtime power management support in
silabs spi eusart driver.

Signed-off-by: Francois Laplante <frlaplan@silabs.com>
2025-03-07 19:47:21 +01:00
Francois Laplante
4086f06c3d test: drivers: spi: silabs: Add loopback test support.
Add silabs spi eusart driver Async/dma,no-dma test cases.
With required configuration files.

Signed-off-by: Francois Laplante <frlaplan@silabs.com>
2025-03-07 19:47:21 +01:00
Francois Laplante
8dad73bf47 drivers: spi: silabs: eusart: Asynchronous support
Add support for asynchronous transfer in silabs eusart spi driver.

Signed-off-by: Francois Laplante <frlaplan@silabs.com>
2025-03-07 19:47:21 +01:00
Julien Panis
52ceb6ab86 samples: drivers: crypto: Add support for cc23x0
For the CCM mode, increase slightly the output buffer size because
the cc23x0 directly fills this buffer with 16-byte blocks.
This prevents from doing unnecessary memcpy that would have an
impact on the driver's performance.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-03-07 19:47:11 +01:00
Julien Panis
30ed81d66a boards: ti: lp_em_cc2340r5: Add crypto support
Enable AES module.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-03-07 19:47:11 +01:00
Julien Panis
66749d72e1 dts: arm: ti: cc23x0: Add crypto support
Add support for AES module to cc23x0 SoC.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-03-07 19:47:11 +01:00
Julien Panis
fa8d5177c1 drivers: crypto: Add support for cc23x0 AES
Add support for AES module to cc23x0 SoC. The driver supports the
following modes:
- ECB encryption only (since decryption is not supported by the HW)
- CTR
- CCM

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-03-07 19:47:11 +01:00
Łukasz Stępnicki
e62ebd8985 modules: hal_nordic: nrfs: improve error handling
Added option to retry message send over ipc when for example
there is -ENOMEM error (shared memory buffer full).
Number of max retries and delay between them are Kconfigs.
Fixed nrfs error reporting when sending directly over
ipc service, status was not correct when negative value
was returned from ipc service send function.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-03-07 19:47:02 +01:00
Lyle Zhu
c0f7aefe55 Bluetooth: BR: Support limited discoverable mode
Add a Kconfig BT_LIMITED_DISCOVERABLE_DURATION to set the timeout for
limited discoverable mode.

Add a argument `limited` to function `bt_br_set_discoverable()` to
support the limited discoverable mode.
When enabling discoverable mode with `limited` is true, both write
LIAC and GIAC to controller and set the bit 13 of COD in function
`bt_br_set_discoverable()`. And start a delay worker with the timeout
CONFIG_BT_LIMITED_DISCOVERABLE_DURATION to disable the discoverable
mode.
When disabling discoverable mode, only set GIAC to controller and
clear bit 13 of COD.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-07 19:46:53 +01:00
Lyle Zhu
51bfb50b66 Bluetooth: BR: Add definition for OP READ_COD
Add opcode BT_HCI_OP_READ_CLASS_OF_DEVICE for reading COD.

Add structure `bt_hci_rp_read_class_of_device` for parsing COD from
response buffer.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-07 19:46:53 +01:00
Lyle Zhu
00adfe1c59 include: bluetooth: Add definition for HCI_Write_Current_IAC_LAP
Add definition and structure for write current IAC LAP command

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-03-07 19:46:53 +01:00
William Tambe
780a92fac5 samples: smp: pi: keep main thread sleeping until ready
Use `k_sem_take(,K_FOREVER)` in the main thread to keep it sleeping
while worker threads are running. The last worker thread to finish
calculation wakes up the main thread.

Signed-off-by: William Tambe <williamt@cadence.com>
2025-03-07 19:46:43 +01:00
Mathieu Choplain
5ef21f3af2 drivers: timer: cortex_m_systick: support SysTick reset in low-power mode
Modify the Cortex-M SysTick driver to work when the SoC resets SysTick
in low-power mode. This adds an invisible Kconfig symbol that must be
selected by SoCs with such behavior.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-07 19:46:34 +01:00
Mathieu Choplain
006d6e5cb7 drivers: timer: cortex_m_systick: add hook-based LPM timer support
Add support for a hook-based low-power mode timer to the Cortex-M SysTick
driver, in addition to the existing Counter API-based timer. This is useful
on platforms such as the STM32WB0 where the wake-up timer is too limited
for a Counter API driver to be implemented on top of it.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-07 19:46:34 +01:00
Mathieu Choplain
677e6275fa drivers: timer: cortex_m_systick: make idle timer a Kconfig choice
The Cortex-M SysTick supported collaboration with a so-called "IDLE timer"
to work even in low-power modes, when the SoC may disable its clock.

Rename "IDLE timer" to "low-power mode timer" to better reflect what this
timer is used for, and transform the single option into a Kconfig choice
to allow other behaviors to be implemented and chosen.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-03-07 19:46:34 +01:00
Sudan Landge
b4fb5d38eb Revert "arch: arm: cortex_m: pm_s2ram: Rework S2RAM mark functions"
What is the change?
 - This reverts commit 474d4c3249

Why do we need this change?
 - This commit was added because Cortex-M didn't have a valid
   stack to make required functionality work however,
   the previous commit fixes this and makes interrupt stack
   available for use. This removes Arm specific limitation from
   these generic APIs so revert the commit to reflect the same.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-03-07 19:46:01 +01:00
Sudan Landge
7beff12b06 arch: arm: refactor pm_s2ram
What is the change?
 - APIs `pm_s2ram_mark_set` and `pm_s2ram_mark_check_and_clear`,
   used to set/check pm_s2ram magic marker,
   no longer have Arm specific limitations.

Why is this needed?
 - These APIs are generic and should not have arch specific dependency.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-03-07 19:46:01 +01:00
Swift Tian
681bc1aa82 modules: hal_ambiq: fix cmake warning when no BLE
Added CONFIG_AMBIQ_COMPONENT_USE_BT and CONFIG_SOC_AMBIQ_BT_SUPPORTED
to fix empty zephyr_library() warning when BLE is not needed for compile.
Added CMake message if BT related Ambiq specific Kconfig is overriden for
not supported SoC.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-03-07 19:45:40 +01:00
Phuc Pham
a5beac9ac2 samples: boards: renesas: Add OpenAMP sample for RZ/G3S-SMARC
Add OpenAMP sample for board RZ/G3S-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-07 19:45:30 +01:00
Phuc Pham
169dfc90b9 soc: renesas: rzg3s: Add linker support for OpenAMP
Add linker support for OpenAMP sample code

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-07 19:45:30 +01:00
Phuc Pham
df9f04bd36 tests: drivers: mbox: Add support for RZ/G3S-SMARC
Add test support for MBOX driver of RZ/G3S-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-07 19:45:30 +01:00
Phuc Pham
e4a7ea2d76 boards: renesas: rzg3s_smarc: Add MBOX support
Add MBOX support for board RZ/G3S-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-07 19:45:30 +01:00
Phuc Pham
a68349c200 dts: renesas: Add MBOX support for RZ/G3S
Add MBOX nodes to Renesas RZ/G3S devicetree

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-07 19:45:30 +01:00
Phuc Pham
857fa96cf4 drivers: mbox: Initial support for RZ/G3S
Add MBOX driver support for Renesas RZ/G3S

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-07 19:45:30 +01:00
Mark Wang
37ae587b64 bluetooth: avdtp: move the buf as callback parameter
if saving buf to another variable, usually the ref/unref
needs to be used. change to pass the buf as one parameter
of callback

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-03-07 19:45:20 +01:00
Mark Wang
0d253c5b45 bluetooth: a2dp: clean few unused codes lines
memset already clean the `buf`, don't need to set as NULL.
`avdtp_set_status` already set `req->status` based on `msg_type`,
don't need to check `msg_type` again.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-03-07 19:45:20 +01:00
Mark Wang
935fdd2147 bluetooth: a2dp: improve the readability
add more blank lines before or after the code block {}

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-03-07 19:45:20 +01:00
Mark Wang
e531295515 bluetooth: a2dp: optimize bt_a2dp_ep_info
bt_a2dp_ep_info is used in bt_a2dp_discover, and the max
discovered endpoints' info are already given in seps_info
of bt_a2dp_discover_param, so use pointer to point to the
seps_info of bt_a2dp_discover_param.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-03-07 19:45:20 +01:00
Mark Wang
8b1b79bf3c bluetooth: avdtp: handle the unsupported signal identifier
reject the cmd if the signal identifier is not supported

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-03-07 19:45:20 +01:00
Mark Wang
11c1ccbbc7 bluetooth: avdtp: split packet handler as cmd_handler and rsp_handler
use two handler array to process cmd and response separately,
make the functions shorter and codes more readable.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-03-07 19:45:20 +01:00
Mark Wang
1a4de907c8 bluetooth: a2dp: check the invalid avdtp packet
When the packet is invalid, reply the right error code or call
back error code to upper layer.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-03-07 19:45:20 +01:00
Hoang Nguyen
8ec898f93b tests: drivers: i2c: Add support for RZ/G3S-SMARC
Add test support for I2C driver of RZ/G3S-SMARC

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-07 19:45:11 +01:00
Hoang Nguyen
7b0a78d5bf boards: renesas: rzg3s_smarc: Add I2C support for RZ/G3S-SMARC
Add I2C support for board RZ/G3S-SMARC

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-07 19:45:11 +01:00
Hoang Nguyen
70fcabda02 dts: renesas: Add I2C support for RZ/G3S
Add I2C nodes to Renesas RZ/G3S devicetree

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-07 19:45:11 +01:00
Hoang Nguyen
1d7faca97e drivers: i2c: Initial support for RZ/G3S
Add I2C driver support for Renesas RZ/G3S

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-03-07 19:45:11 +01:00
Ali Hozhabri
843f1294fc boards: st: Enable RNG for nucleo_l476rg and sensortile_box boards
Enable RNG for nucleo_l476rg and sensortile_box boards as well as changing
the clock source for RNG peripheral to avoid using MSI.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-03-07 19:45:02 +01:00
Eric Ackermann
b7e9b2785f llext: Support non-paired RISC-V PCREL Relocation
Currently, RISC-V's architecture-specific relocations assume that
all relocations of type R_RISCV_PCREL_LO12_I and _S are processed
immediately after the R_RISCV_PCREL_HI20 relocation that they
share a relocation target with. While this is the case most of
the time, the RISC-V PSABI specification does not guarantee that.
This commit corrects this by determining the R_RISCV_PCREL_HI20
relocation based on the symbol value of the R_RISCV_PCREL_LO12
relocation, as specified in the PSABI.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-03-07 19:44:54 +01:00
Eric Ackermann
3466dab804 llext: Add parameters to arch_elf_relocate
The RISC-V port of llext requires additional parameters for
handling non-adjacent HI20/LO12 relocations in arch_elf_relocate():
the current extension (struct llext), the current extension loader
(struct llext_loader), the current section header (elf_shdr_t) and
the current symbol (elf_sym_t).
This changes the signature of arch_elf_relocate accordingly.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-03-07 19:44:54 +01:00
Eric Ackermann
7293f59a05 tests: llext: Test RISC-V non-paired relocation
Tests an edge case in the RISC-V PSABI: In the medany and the medlow code
models, the compiler emits auipc/lui (U-type) and ld/sw (I-type/S-type)
instruction pairs for accessing a non-local symbol.
The U-type instruction sets the upper 20 bits, the I/S-type the lower 12.
The U-type and I-type/S-type instruction pairs are often adjacent in code.
This is also what the current llext architecture-specific relocations
expect.
However, this need not be the case - compilers can re-use the upper 20
bits set by the U-type instruction with multiple I/S-type instructions,
which is a useful optimization for multiple loads/stores of or within
the same symbol.
This commit adds a unit test for this behavior, which currently fails
for RISC-V.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-03-07 19:44:54 +01:00
Eric Ackermann
2255b63846 llext: Refactor symbol lookup logic into function
This commit refactors logic in llext_link.c that resolves
a symbol to be imported by an llext into a utility function.
Thereby, the logic can be re-used in other functions if
needed, e.g., when resolving symbols for indirect relocations.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-03-07 19:44:54 +01:00
Jungo Lin
d0a1945f49 arch: arm64: enhance backtrace dump check
Examine the FP and LR values of each frame to prevent nested
exceptions caused by data aborts. Sometimes, abnormal FP and LR
values are not mapped by the MMU. If we access memory addresses
based on FP or LR values, a CPU data abort will occur. This issue
often accompanies stack overflow occurrences.

Based on this, it is safe to check the validity of memory mapping
with FP and LR values before accessing them.

Signed-off-by: Jungo Lin <jungolin.tw@gmail.com>
2025-03-07 19:43:31 +01:00
Florian Weber
91af849cfb drivers: sensor: ak09918c use RTIO
make usage of the RTIO in the ak09918c driver

Signed-off-by: Florian Weber <Florian.Weber@live.de>
2025-03-07 19:43:22 +01:00
Florian Weber
4e9bd00dfb drivers: i2c: rtio
extend i2c library to create rtio sqes for reading and writing bytes

Signed-off-by: Florian Weber <Florian.Weber@live.de>
2025-03-07 19:43:22 +01:00
Lothar Felten
1c50c3a12b drivers: regulator: add support for AXP2101 power management IC
Add initial support for the AXP2101 power management IC from X-powers.
Remark: only DC/DC1 and ALDO have been tested on real hardware.

Co-authored-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
Co-authored-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>

Signed-off-by: Lothar Felten <lothar.felten@gmail.com>
2025-03-07 19:43:05 +01:00
Kiara Navarro
648b5838b1 samples: subsys: lorawan: callback registration for handle descriptor
include the use of callback registration to handle descriptor
whenever `FragSessionSetupReq` is sent from fuota server.

Signed-off-by: Kiara Navarro <sophiekovalevsky@fedoraproject.org>
2025-03-07 19:42:56 +01:00
Kiara Navarro
6b2a476c66 lorawan: add callback for descriptor changes
allow the application to decide whether to keep going with the fuota
process by setting a callback that exposes the descriptor field
whenever `FragSessionSetupReq` is sent to the device.

Signed-off-by: Kiara Navarro <sophiekovalevsky@fedoraproject.org>
2025-03-07 19:42:56 +01:00
Andrzej Głąbek
ac3355ab97 samples: code_relocation_nocopy: Add configuration for nRF54H20 DK
Add nRF54H20 DK specific entries to allow using the sample on this
board.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-03-07 19:42:46 +01:00
Andrzej Głąbek
a2ef8a6a97 boards: nrf54h20dk: Add XIP region definition to memory map
Access to this region must be requested through UICR by a local
domain that want to use the Execute In Place (XIP) feature of
the EXMIF peripheral.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-03-07 19:42:46 +01:00
Andrzej Głąbek
2d003e3ef4 samples|tests: drivers: flash: Add support for "jedec,mspi-nor" devices
Extend several flash samples and tests so that they can also be used
with "jedec,mspi-nor" devices.
Add configurations needed for the nrf54h20dk/nrf54h20/cpuapp target.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-03-07 19:42:46 +01:00
Andrzej Głąbek
271a41a4a5 dts: nordic: Change compatible property for EXMIF node
This is a follow-up to commit cdf45cb234.

Adjust the DTS node for the nRF EXMIF peripheral so that it is possible
to handle the peripheral with the generic MSPI driver for DW SSI based
controllers and use all its data lines in communication.
Also adjust the related board files accordingly.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-03-07 19:42:46 +01:00
Andrzej Głąbek
2e8c79f2ef drivers: pinctrl_nrf: Add support for EXMIF pins
This is a follow-up to commit 45d827a51a.

Although routing for those pins is configured via UICR, pinctrl still
needs to be involved so that it is possible to set desired drive mode
for them etc.
Add also the missing RWDS pin.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-03-07 19:42:46 +01:00
Andrzej Głąbek
29f3061f32 drivers: flash: Add generic NOR flash driver for MSPI devices
Add a flash driver intended to handle various flash devices
connected over MSPI bus as long as they support JEDEC SFDP.
This is an initial commit providing only basic operations
in Octal I/O mode with some hard-coded values for Macronix
MX25Ux series chips.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-03-07 19:42:46 +01:00
Andrzej Głąbek
b31eeb6c6e drivers: mspi: Add driver for DesignWare SSI based controllers
Add a generic driver for MSPI controllers based on the DesignWare
SSI core. With small vendor-specific adaptations covering integration
details, it should be possible to use the driver for various devices.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-03-07 19:42:46 +01:00
Iuliana Prodan
e4ccfa3b2f boards: nxp: imxrt700: Add documentation for i.MXRT700 DSP cores
Add documentation for the two HiFi1 and HiFi4 DSP cores from i.MXRT700.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-03-07 19:42:36 +01:00
Iuliana Prodan
8e6dc9b5be boards: nxp: imxrt700: Add i.MXRT700 HiFi1 board support
Add board support for the HiFi1 DSP core from NXP i.MXRT700.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-03-07 19:42:36 +01:00
Iuliana Prodan
d03c02a75e dts: xtensa: nxp: Add device tree for HiFi1 core from NXP i.MXRT700
Add a basic device tree for the HiFi1 DSP from NXP i.MXRT700.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-03-07 19:42:36 +01:00
Iuliana Prodan
6c3e83074c soc: nxp: imxrt700: Add i.MXRT700 HiFi1 DSP support
The i.MX RT700 has an ultra-low power Sense Subsystem
which includes an ARM Cortex-M33 and
Cadence Tensilica HiFi 1 DSP.

Here, we add support for the HiFi1 core.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-03-07 19:42:36 +01:00
Iuliana Prodan
b5480f3abe boards: nxp: imxrt700: Add i.MXRT700 HiFi4 board support
Add board support for the HiFi4 DSP core from NXP i.MXRT700.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-03-07 19:42:36 +01:00
Iuliana Prodan
3b32e697ab dts: xtensa: nxp: Add device tree for HiFi4 core from NXP i.MXRT700
Add a basic device tree for the HiFi4 DSP from NXP i.MXRT700.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-03-07 19:42:36 +01:00
Iuliana Prodan
b3b6f7e248 soc: nxp: imxrt700: Add i.MXRT700 HiFi4 DSP support
The i.MX RT700 has a compute subsystem which includes
a primary ARM Cortex-M33 running at 325 MHz and
Cadence Tensilica HiFi4 DSP.

Here, we add support for the HiFi4 core.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-03-07 19:42:36 +01:00
Iuliana Prodan
474eb2b105 west.yml: Update Xtensa hal
Update Xtensa hal to support NXP i.MXRT700 DSP cores.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-03-07 19:42:36 +01:00
TOKITA Hiroshi
e56260544f drivers: serial: pl011: Add fifo disable configuration
Add a setting to the devicetree for disabling the PL011 FIFO.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-03-07 19:42:26 +01:00
Ravi Dondaputi
208e6869e5 modules: nrf_wifi: Include OSAL lib in buslib compilation
With introduction of OSAL wrapper for memory allocation, usage of
zephyr's native malloc calls need to be removed. When NRF70 driver
is not enabled, OSAL needs to be built explicitly.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-03-07 19:42:10 +01:00
Ravi Dondaputi
7f775c3256 manifest: nrf_wifi: Pull in changes for dedicated memory pools
Pull changes for creating separate memory pools for control traffic
and data traffic.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-03-07 19:42:10 +01:00
Ravi Dondaputi
aa0cb68c6f drivers: wifi: Create dedicated mem pool for Wi-Fi driver
Create dedicated memory pools for Wi-Fi management and
data operations (defaults: 20KB for management and 130KB for data).
Setting Data pool to 110KB for non-Nordic SOCs to resolve
RAM overflows seen in twister runs.

Remove the `HEAP_MEM_POOL_ADD_SIZE_NRF70` hint since we are
creating separate heaps for driver and not allocating from
system heap.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-03-07 19:42:10 +01:00
Patryk Koscik
b2da2de62a dts: boards: npcx7m6fb_evb: Select shell-uart
Select `shell-uart` for the `npcx7m6fb_evb` target.

Signed-off-by: Patryk Koscik <pkoscik@antmicro.com>
2025-03-07 19:41:14 +01:00
Patryk Koscik
4c028fadc3 dts: boards: npcx9m6f_evb: Select shell-uart
Select `shell-uart` for the `npcx9m6f_evb` target.

Signed-off-by: Patryk Koscik <pkoscik@antmicro.com>
2025-03-07 19:41:14 +01:00
Patryk Koscik
72b980fa06 dts: boards: npcx4m8f_evb: Select shell-uart
Select `shell-uart` for the `npcx4m8f_evb` target.

Signed-off-by: Patryk Koscik <pkoscik@antmicro.com>
2025-03-07 19:41:14 +01:00
Anas Nashif
c82ad0dfbc sample: vl53l0x: make sample testable
No reason for this sample to be build_only, it can run and be verified
just fine on the right platforms.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-07 19:41:04 +01:00
Benjamin Cabé
9c803c02b5 boards: seagate: legend: Add board revision configurations
board.yml file was missing the list of custom revisions of this board.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-07 19:40:57 +01:00
Alberto Escolar Piedras
b6625b1b28 boards native_sim: Update cmdline.h header comment
Correct the reference in the comment to native posix.
This header is here to stay providing the API for registering
arguments.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
fcbef50e75 MAINTAINERS: Change native posix/sim area description
native_posix is no more, let's change the description of this area.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
fc6e3c2b75 samples/subsys/debug/fuzz: Remove support for native_posix
native_posix has been removed from the tree. So there is no
need to support it anymore in this sample code.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
1823fcb173 samples/subsys/pm/latency: Remove native_posix overlays
native_posix is being removed as it has reached its end of life in 4.2,
after being deprecated since 4.0.

So these overlays will not serve any purpose anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
3d97743ea3 samples/subsys/zbus/uart_bridge: Remove native_posix overlays
native_posix is being removed as it has reached its end of life in 4.2,
after being deprecated since 4.0.

So these overlays will not serve any purpose anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
500cdd9223 samples/net: Remove native_posix overlays
native_posix is being removed as it has reached its end of life in 4.2,
after being deprecated since 4.0.

So these overlays will not serve any purpose anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
4ae6c4518e samples/*/lvgl: Remove native_posix overlays
native_posix is being removed as it has reached its end of life in 4.2,
after being deprecated since 4.0.

So these overlays will not serve any purpose anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
db62135de2 tests/subsys/settings/functional/fcb: Remove native_posix overlay
native_posix is being removed as it has reached its end of life in 4.2,
after being deprecated since 4.0.

So this overlay will not serve any purpose anymore.

Note native_sim did not have an overlay of its own.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
4b75c9e718 tests/drivers/flash_simulator: Remove native_posix overlays
native_posix is being removed as it has reached its end of life in 4.2,
after being deprecated since 4.0.

So these overlays will not server any purpose anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
e0d6bc842b tests/drivers/adc/adc_api: Remove native_posix overlays
native_posix is being removed as it has reached its end of life in 4.2,
after being deprecated since 4.0.

So this overlays will not serve any purpose anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
a57fdb0309 tests/drivers can: Remove native_posix overlays
native_posix is being removed as it has reached its end of life in 4.2,
after being deprecated since 4.0.

So these overlays will not serve any purpose anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
05aaa7ea1d samples/drivers/uart: Remove native_posix overlay
native_posix is being removed as it has reached its end of life in 4.2,
after being deprecated since 4.0.

So these overlays will not serve any purpose anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
33ba1b342b samples/bluetooth/tmap_*: Remove native_posix overlays
native_posix is being removed as it has reached its end of life in 4.2,
after being deprecated since 4.0.

So these overlays will not serve any purpose anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
0f33f0ab46 board native_posix: Remove
Remove native_posix as it has reached its end of life in 4.2,
after being deprecated since 4.0.

For more information check
https://github.com/zephyrproject-rtos/zephyr/issues/76895

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
2265a30deb doc board native_posix: Remove this board docs
native_posix is being removed as it has reached its end of life in 4.2,
after being deprecated since 4.0.

Let's remove this board docs.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
fe5753a393 docs: Remove references to native_posix pages
The native_posix pages are going to be removed from the tree, let's
remove references to them.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
6c38bc8ec4 boards native_posix: Remove twister support
native_posix is being removed as it has reached its end of life in 4.2,
after being deprecated since 4.0.

Remove the twister support for native_posix[//64] and therefore all
references to them from the testcases and samples yamls, so twister
does not error out.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
82941a6a6e boards/native/nrf_bsim: command line compat with native_sim/posix
Provide it from native_sim instead of native_posix as native_posix
is going to be removed.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Alberto Escolar Piedras
cc7f92865c tests/boards/native_sim: Switch to only support native_sim
These tests kept supporting native_posix thanks to the native_sim
compatibility mode. But now native_posix is being removed. So let's
just switch them to run only on native_sim.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Benjamin Cabé
97344f3cae VERSION: bump to 4.1.99
Set PATCHLEVEL to 99 to indicate that this is now a development branch.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-07 17:36:15 +00:00
15210 changed files with 620378 additions and 163823 deletions

View File

@@ -82,6 +82,7 @@ ForEachMacros:
- 'HTTP_SERVICE_FOREACH_RESOURCE'
- 'I3C_BUS_FOR_EACH_I3CDEV'
- 'I3C_BUS_FOR_EACH_I2CDEV'
- 'MIN_HEAP_FOREACH'
IfMacros:
- 'CHECKIF'
# Disabled for now, see bug https://github.com/zephyrproject-rtos/zephyr/issues/48520
@@ -99,6 +100,7 @@ IndentCaseLabels: false
IndentGotoLabels: false
IndentWidth: 8
InsertBraces: true
InsertNewlineAtEOF: true
SpaceBeforeInheritanceColon: False
SpaceBeforeParens: ControlStatementsExceptControlMacros
SortIncludes: Never

View File

@@ -1,71 +0,0 @@
---
name: Bug report
about: Create a report to help us improve Zephyr
title: ''
labels: bug
assignees: ''
---
<!--
**Notes**
Github Discussions (https://github.com/zephyrproject-rtos/zephyr/discussions)
are available to first verify that the issue is a genuine Zephyr bug and not a
consequence of Zephyr services misuse.
This issue list is only for bugs in the main Zephyr code base
(https://github.com/zephyrproject-rtos/zephyr/). If the bug is for a project
fork (such as NCS) specific feature, please open an issue in the fork project
instead.
-->
**Describe the bug**
<!--
A clear and concise description of what the bug is.
Please also mention any information which could help others to understand
the problem you're facing:
- What target platform are you using?
- What have you tried to diagnose or workaround this issue?
- Is this a regression? If yes, have you been able to "git bisect" it to a
specific commit?
- ...
-->
**To Reproduce**
<!--
Steps to reproduce the behavior:
1. mkdir build; cd build
2. cmake -DBOARD=board\_xyz
3. make
4. See error
-->
**Expected behavior**
<!--
A clear and concise description of what you expected to happen.
-->
**Impact**
<!--
What impact does this issue have on your progress (e.g., annoyance, showstopper)
-->
**Logs and console output**
<!--
If applicable, add console logs or other types of debug information
e.g Wireshark capture or Logic analyzer capture (upload in zip archive).
copy-and-paste text and put a code fence (\`\`\`) before and after, to help
explain the issue. (if unable to obtain text log, add a screenshot)
-->
**Environment (please complete the following information):**
- OS: (e.g. Linux, MacOS, Windows)
- Toolchain (e.g Zephyr SDK, ...)
- Commit SHA or Version used
**Additional context**
<!--
Add any other context that could be relevant to your issue, such as pin setting,
target configuration, ...
-->

View File

@@ -0,0 +1,85 @@
name: Bug Report
description: File a bug report.
labels: ["bug"]
type: "Bug"
assignees: []
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: textarea
id: what-happened
attributes:
label: Describe the bug
description: |
A clear and concise description of what the bug is.
placeholder: |
Please also mention any information which could help others to understand
the problem you're facing:
- What target platform are you using?
- What have you tried to diagnose or workaround this issue?
- Is this a regression? If yes, have you been able to "git bisect" it to a
specific commit?
validations:
required: true
- type: checkboxes
id: regression
attributes:
label: Regression
description: |
Check this box if this is a regression and provide a SHA if you were able to "git bisect" to a specific commit.
options:
- label: This is a regression.
required: false
- type: textarea
id: reproduce
attributes:
label: Steps to reproduce
description: |
Steps to reproduce the behavior.
placeholder: |
Steps to reproduce the behavior:
1. mkdir build; cd build
2. cmake -DBOARD=board\_xyz
3. make
4. See error
validations:
required: false
- type: textarea
id: logs
attributes:
label: Relevant log output
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
render: shell
- type: dropdown
attributes:
label: Impact
description: Impact of this bug
multiple: false
options:
- Showstopper Prevents release or major functionality; system unusable.
- Major Severely degrades functionality; workaround is difficult or unavailable.
- Functional Limitation Some features not working as expected, but system usable.
- Annoyance Minor irritation; no significant impact on usability or functionality.
- Intermittent Occurs occasionally; hard to reproduce.
- Not sure
default: 3
validations:
required: true
- type: textarea
id: env
attributes:
label: Environment
description: please complete the following information
placeholder: |
- OS: (e.g. Linux, MacOS, Windows)
- Toolchain (e.g Zephyr SDK, ...)
- Commit SHA or Version used
- type: textarea
id: context
attributes:
label: Additional Context
description: Provide other context that could be relevant to the bug, such as pin setting, target configuration,etc.

View File

@@ -1,28 +0,0 @@
---
name: Enhancement
about: Suggest enhancements to existing features
title: ''
labels: Enhancement
assignees: ''
---
**Is your enhancement proposal related to a problem? Please describe.**
<!--
A clear and concise description of what the problem is.
-->
**Describe the solution you'd like**
<!--
A clear and concise description of what you want to happen.
-->
**Describe alternatives you've considered**
<!--
A clear and concise description of any alternative solutions or features you've considered.
-->
**Additional context**
<!--
Add any other context or graphics (drag-and-drop an image) about the feature request here.
-->

View File

@@ -0,0 +1,42 @@
name: Enhancement
description: Submit an Enhancement
labels: ["Enhancement"]
type: "Enhancement"
assignees: []
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this enhancement proposal.
- type: textarea
id: description
attributes:
label: Summary
description: |
Is your enhancement proposal related to a problem? Please describe.
placeholder: |
A clear and concise description of what the problem is.
validations:
required: true
- type: textarea
id: solution
attributes:
label: Describe the solution you'd like
description: |
Describe the solution you'd like
placeholder: |
A clear and concise description of what you want to happen.
validations:
required: true
- type: textarea
id: alternatives
attributes:
label: Alternatives
description: Describe alternatives you've considered
placeholder: |
A clear and concise description of any alternative solutions or features you've considered.
- type: textarea
id: context
attributes:
label: Additional Context
description: Add any other context or graphics (drag-and-drop an image) about the enhancement here.

View File

@@ -1,60 +0,0 @@
---
name: RFC / Proposal
about: Submit an RFC / Proposal
title: ''
labels: RFC
assignees: ''
---
## Introduction
<!--
This section targets end users, TSC members, maintainers and anyone else that might
need a quick explanation of your proposed change.
-->
### Problem description
<!--
Why do we want this change and what problem are we trying to address?
-->
### Proposed change
<!--
A brief summary of the proposed change - the 10,000 ft view on what it will
change once this change is implemented.
-->
## Detailed RFC
<!--
In this section of the document the target audience is the dev team. Upon
reading this section each engineer should have a rather clear picture of what
needs to be done in order to implement the described feature.
-->
### Proposed change (Detailed)
<!--
This section is freeform - you should describe your change in as much detail
as possible. Please also ensure to include any context or background info here.
For example, do we have existing components which can be reused or altered.
By reading this section, each team member should be able to know what exactly
you're planning to change and how.
-->
### Dependencies
<!--
Highlight how the change may affect the rest of the project (new components,
modifications in other areas), or other teams/projects.
-->
### Concerns and Unresolved Questions
<!--
List any concerns, unknowns, and generally unresolved questions etc.
-->
## Alternatives
<!--
List any alternatives considered, and the reasons for choosing this option
over them.
-->

View File

@@ -0,0 +1,75 @@
name: RFC / Proposal
description: Submit a Proposal (RFC)
labels: ["RFC"]
type: RFC
assignees: []
body:
- type: markdown
attributes:
value: |
## Introduction
This section targets end users, TSC members, maintainers and anyone else
that might need a quick explanation of your proposed change.
- type: textarea
id: problem-description
attributes:
label: Problem Description
description: Why do we want this change and what problem are we trying to address?
placeholder: Explain the problem or limitation this RFC is meant to resolve.
validations:
required: true
- type: textarea
id: proposed-change-summary
attributes:
label: Proposed Change (Summary)
description: A high-level summary of the proposed change.
placeholder: Brief summary of what will change if this RFC is implemented.
validations:
required: true
- type: markdown
attributes:
value: |
## Detailed RFC
This section targets the development team. Upon reading it, each engineer
should understand what must be done to implement the proposed feature.
- type: textarea
id: detailed-change
attributes:
label: Proposed Change (Detailed)
description: Describe the change in as much detail as possible. Include context or background info, and reuse of existing components if applicable.
placeholder: Explain exactly what youre planning to change and how.
validations:
required: true
- type: textarea
id: dependencies
attributes:
label: Dependencies
description: Highlight how this change may affect the rest of the project or other teams/components.
placeholder: List components, modules, or teams affected.
validations:
required: false
- type: textarea
id: concerns
attributes:
label: Concerns and Unresolved Questions
description: List any concerns, unknowns, or unresolved questions related to this proposal.
placeholder: Any areas of uncertainty?
validations:
required: false
- type: textarea
id: alternatives
attributes:
label: Alternatives Considered
description: What alternative solutions were considered? Why was this proposal chosen?
placeholder: List alternatives and explain the rationale behind your choice.
validations:
required: false

View File

@@ -1,28 +0,0 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: Feature Request
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
<!--
A clear and concise description of what the problem is.
-->
**Describe the solution you'd like**
<!--
A clear and concise description of what you want to happen.
-->
**Describe alternatives you've considered**
<!--
A clear and concise description of any alternative solutions or features you've considered.
-->
**Additional context**
<!--
Add any other context or graphics (drag-and-drop an image) about the feature request here.
-->

View File

@@ -0,0 +1,29 @@
name: Feature Request
description: Suggest a new feature or enhancement
labels: ["Feature Request"]
type: Feature
assignees: []
body:
- type: textarea
id: problem
attributes:
label: Is your feature request related to a problem? Please describe.
description: A clear and concise description of what the problem is.
placeholder: e.g., I'm frustrated when I need to do X manually because Y is missing.
validations:
required: true
- type: textarea
id: solution
attributes:
label: Describe the solution you'd like
description: A clear and concise description of what you want to happen.
placeholder: e.g., It would be great if the system could automatically handle X by doing Y.
validations:
required: true
- type: textarea
id: alternatives
attributes:
label: Describe alternatives you've considered
description: Include any alternative solutions or features

View File

@@ -1,42 +0,0 @@
---
name: Contributor Nomination
about: Nominate a GitHub user for additional rights on the Zephyr Project
title: ''
labels: Role Nomination
assignees: ''
---
# Background
The [TSC Project Roles] defines the main roles for the Zephyr Project, including
Maintainer, Collaborator, and Contributor.
By default anyone that contributes code or documentation is a Contributor, but
with the lowest [GitHub Permission Level] of Read. For example, Contributors
with Read permission do not have the permission to add reviewers to a pull
request.
Use this template to nominate a GitHub user for the Contributor role with
Triage permission level, which allows the user to add reviewers to a pull
request and be added as a reviewer by other users.
# Nomination
## GitHub User
Provide the following information about the GitHub user:
1. Full Name
1. GitHub username
1. Organization (optional)
## Supporting Documents
Add links to 3-5 GitHub pull requests, in the Zephyr project, authored or
reviewed by the GitHub user that demonstrate the user's dedication to the
Zephyr project.
[TSC Project Roles]: <https://docs.zephyrproject.org/latest/project/project_roles.html>
[GitHub Permission Level]: <https://docs.github.com/en/organizations/managing-access-to-your-organizations-repositories/repository-roles-for-an-organization>

View File

@@ -0,0 +1,57 @@
name: Contributor Nomination
description: Nominate a GitHub user for the Contributor role with triage permissions
labels: [Role Nomination]
assignees: ['nashif']
body:
- type: markdown
attributes:
value: |
## Background
The [TSC Project Roles](https://docs.zephyrproject.org/latest/project/project_roles.html) defines the main roles for the Zephyr Project, including Maintainer, Collaborator, and Contributor.
By default, anyone who contributes code or documentation is a Contributor, but with the lowest [GitHub Permission Level](https://docs.github.com/en/organizations/managing-access-to-your-organizations-repositories/repository-roles-for-an-organization) of **Read**.
Use this form to nominate a user for the **Contributor** role with **Triage** permission, which allows the user to:
- Add reviewers to pull requests
- Be added as a reviewer by others
- type: input
id: full-name
attributes:
label: Full Name
description: Full name of the nominated contributor.
placeholder: e.g., Jane Doe
validations:
required: true
- type: input
id: github-username
attributes:
label: GitHub Username
description: GitHub handle of the nominated contributor.
placeholder: e.g., @janedoe
validations:
required: true
- type: input
id: organization
attributes:
label: Organization
description: Organization the nominee is affiliated with (optional).
placeholder: e.g., Acme Corp
validations:
required: false
- type: textarea
id: supporting-documents
attributes:
label: Supporting Documents
description: Provide links to 35 pull requests authored or reviewed by the nominee that demonstrate their dedication to the Zephyr project.
placeholder: |
e.g.,
- https://github.com/zephyrproject-rtos/zephyr/pull/12345
- https://github.com/zephyrproject-rtos/zephyr/pull/23456
- https://github.com/zephyrproject-rtos/zephyr/pull/34567
validations:
required: true

View File

@@ -1,68 +0,0 @@
---
name: External Source Code
about: Submit a proposal to integrate external source code
title: ''
labels: TSC
assignees: ''
---
## Origin
Name of project hosting the original open source code
Provide a link to the source
## Purpose
Brief description of what this software does
## Mode of integration
Describe whether you'd like to integrate this external component in the main tree
or as a module, and why. If the mode of integration is a module, suggest a
repository name for the module
## Maintainership
List the person(s) that will be maintaining the integration of this external code
for the foreseeable future. Please use GitHub IDs to identify them. You can
choose to identify a single maintainer only or add collaborators as well
## Pull Request
Pull request (if any) with the actual implementation of the integration, be it
in the main tree or as a module (pointing to your own fork for now). Make sure
the PR is correctly labeled as "DNM"
## Description
Long description that will help reviewers discuss suitability of the
component to solve the problem at hand (there may be a better options
available.)
What is its primary functionality (e.g., SQLLite is a lightweight
database)?
What problem are you trying to solve? (e.g., a state store is
required to maintain ...)
Why is this the right component to solve it (e.g., SQLite is small,
easy to use, and has a very liberal license.)
## Dependencies
What other components does this package depend on?
Will the Zephyr project have a direct dependency on the component, or
will it be included via an abstraction layer with this component as a
replaceable implementation?
## Revision
Version or SHA you would like to integrate initially
## License
Please use an SPDX identifier (https://spdx.org/licenses/), such as
``BSD-3-Clause``

View File

@@ -0,0 +1,106 @@
name: External Component Integration
description: Propose integration of an external open source component
labels: ["TSC"]
assignees: []
body:
- type: textarea
id: origin
attributes:
label: Origin
description: Name of project hosting the original open source code. Provide a link to the source.
placeholder: e.g., SQLite - https://sqlite.org
validations:
required: true
- type: textarea
id: purpose
attributes:
label: Purpose
description: Brief description of what this software does.
placeholder: |
e.g., A small, fast, self-contained SQL database engine.
validations:
required: true
- type: textarea
id: integration-mode
attributes:
label: Mode of Integration
description: Should this be integrated in the main tree or as a module? Explain your choice and suggest a module repo name if applicable.
placeholder: |
e.g., As a module - proposed repo name: zephyr-sqlite
validations:
required: true
- type: textarea
id: maintainership
attributes:
label: Maintainership
description: List maintainers (GitHub IDs) for this integration. Include at least one primary maintainer.
placeholder: |
e.g., @username1 (primary), @username2 (collaborator)
validations:
required: true
- type: input
id: pull-request
attributes:
label: Pull Request
description: Link to the pull request (if any) for this integration. Must be labeled "DNM" (Do Not Merge).
placeholder: |
e.g., https://github.com/zephyrproject-rtos/zephyr/pull/12345
validations:
required: false
- type: textarea
id: description
attributes:
label: Description
description: Long-form description to justify suitability of this component.
placeholder: |
- What is its primary functionality?
- What problem does it solve?
- Why is this the right component?
validations:
required: true
- type: textarea
id: security
attributes:
label: Security
description: Security-related aspects of this component, including cryptographic functions and known vulnerabilities.
placeholder: |
- Does it use cryptography?
- How are vulnerabilities handled?
- Any known CVEs?
validations:
required: false
- type: textarea
id: dependencies
attributes:
label: Dependencies
description: What does this component depend on, and how will it be integrated (directly or via abstraction)?
placeholder: |
- Other external packages?
- Direct or abstracted use in Zephyr?
validations:
required: false
- type: input
id: revision
attributes:
label: Version or SHA
description: Which version or specific commit should be initially integrated?
placeholder: e.g., v3.45.0 or 79cc94d
validations:
required: true
- type: input
id: license
attributes:
label: License (SPDX)
description: Provide the license using a valid SPDX identifier (e.g., BSD-3-Clause).
placeholder: e.g., MIT or BSD-3-Clause
validations:
required: true

View File

@@ -1,41 +0,0 @@
---
name: Binary blobs
about: Submit a proposal to integrate binary blob(s)
title: ''
labels: TSC
assignees: ''
---
## Origin
Describe where the binary blob(s) originate from
## Type
- [ ] Precompiled library
- [ ] Firmware image
## Module
The Zephyr module that this blob(s) will be referenced from
## Purpose
Brief description of what the blob(s) do. It is especially important to describe
the functionality that the blob(s) provide, to the largest extent possible
## Pull Request
Link to the Pull request with the actual implementation of the integration. If
you are submitting this as part of a new module you may link to the same Pull
Request that introduced the new module.
## Dependencies
What other components do the blob(s) depend on, if any?
## License
Document the license the blob(s) are distributed under

5
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Zephyr Community Support
url: https://github.com/zephyrproject-rtos/zephyr/discussions
about: Please ask and answer questions here.

8
.github/SECURITY.md vendored
View File

@@ -8,12 +8,12 @@ updates:
- The most recent release, and the release prior to that.
- Active LTS releases.
At this time, with the latest release of v4.0, the supported
At this time, with the latest release of v4.2, the supported
versions are:
- v4.0: Current release
- v3.7: Prior release and Current LTS
- v2.7: Prior LTS
- v4.2: Current release
- v4.1: Prior release
- v3.7: Current LTS
## Reporting process

View File

@@ -0,0 +1,2 @@
paths:
- .github

2
.github/codeql/codeql-js-config.yml vendored Normal file
View File

@@ -0,0 +1,2 @@
paths:
- doc

View File

@@ -1,4 +1,5 @@
version: 2
enable-beta-ecosystems: true
updates:
- package-ecosystem: "github-actions"
directory: "/"
@@ -11,3 +12,15 @@ updates:
actions-deps:
patterns:
- "*"
- package-ecosystem: "uv"
directory: "/doc"
schedule:
interval: "weekly"
commit-message:
prefix: "ci: doc: "
labels: []
groups:
doc-deps:
patterns:
- "*"

View File

@@ -15,23 +15,36 @@ on:
types:
- labeled
permissions:
contents: read
jobs:
assignment:
name: Pull Request Assignment
if: github.event.pull_request.draft == false
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
pull-requests: write # to add assignees to pull requests
issues: write # to add assignees to issues
steps:
- name: Install Python dependencies
run: |
pip install -U PyGithub>=1.55 west
- name: Check out source code
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Run assignment script
env:
GITHUB_TOKEN: ${{ secrets.ZB_GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.ZB_PR_ASSIGNER_GITHUB_TOKEN }}
run: |
FLAGS="-v"
FLAGS+=" -o ${{ github.event.repository.owner.login }}"

View File

@@ -7,10 +7,17 @@ on:
branches:
- main
permissions:
contents: read
jobs:
backport:
name: Backport
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
contents: write # to create/push backport branches
pull-requests: write # to create backport PRs
issues: write # to add labels to issue created if backport fails
# Only react to merged PRs for security reasons.
# See https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request_target.
if: >
@@ -24,8 +31,8 @@ jobs:
)
steps:
- name: Backport
uses: zephyrproject-rtos/action-backport@v2.0.3-3
uses: zephyrproject-rtos/action-backport@7e74f601d11eaca577742445e87775b5651a965f # v2.0.3-3
with:
github_token: ${{ secrets.ZB_GITHUB_TOKEN }}
github_token: ${{ secrets.GITHUB_TOKEN }}
issue_labels: Backport
labels_template: '["Backport"]'

View File

@@ -10,29 +10,41 @@ on:
branches:
- v*-branch
permissions:
contents: read
jobs:
backport:
name: Backport Issue Check
concurrency:
group: backport-issue-check-${{ github.ref }}
cancel-in-progress: true
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
if: github.repository == 'zephyrproject-rtos/zephyr'
permissions:
issues: read # to check if associated issue exists for backport
steps:
- name: Check out source code
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Install Python dependencies
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -U pygithub
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Run backport issue checker
env:
GITHUB_TOKEN: ${{ secrets.ZB_GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
./scripts/release/list_backports.py \
-o ${{ github.event.repository.owner.login }} \
-r ${{ github.event.repository.name }} \
-b ${{ github.event.pull_request.base.ref }} \
-p ${{ github.event.pull_request.number }}
-o ${{ github.event.repository.owner.login }} \
-r ${{ github.event.repository.name }} \
-b ${{ github.event.pull_request.base.ref }} \
-p ${{ github.event.pull_request.number }}

View File

@@ -5,20 +5,26 @@ on:
workflows: ["BabbleSim Tests"]
types:
- completed
permissions:
contents: read
jobs:
bsim-test-results:
name: "Publish BabbleSim Test Results"
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
if: github.event.workflow_run.conclusion != 'skipped'
permissions:
checks: write # to create the check run entry with test results
steps:
- name: Download artifacts
uses: dawidd6/action-download-artifact@v8
uses: dawidd6/action-download-artifact@ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5 # v11
with:
run_id: ${{ github.event.workflow_run.id }}
- name: Publish BabbleSim Test Results
uses: EnricoMi/publish-unit-test-result-action@v2
uses: EnricoMi/publish-unit-test-result-action@3a74b2957438d0b6e2e61d67b05318aa25c9e6c6 # v2.20.0
with:
check_name: BabbleSim Test Results
comment_mode: off

View File

@@ -10,7 +10,7 @@ on:
- "tests/bsim/**"
- "boards/nordic/nrf5*/*dt*"
- "dts/*/nordic/**"
- "tests/bluetooth/common/testlib/**"
- "tests/bluetooth/**"
- "samples/bluetooth/**"
- "boards/native/**"
- "soc/native/**"
@@ -27,6 +27,10 @@ on:
- "include/zephyr/net/ieee802154*"
- "drivers/serial/*nrfx*"
- "tests/drivers/uart/**"
- '!**.rst'
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
@@ -38,13 +42,16 @@ jobs:
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.27.4.20241026
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.4.20250818
options: '--entrypoint /bin/bash'
env:
ZEPHYR_TOOLCHAIN_VARIANT: zephyr
BSIM_OUT_PATH: /opt/bsim/
BSIM_COMPONENTS_PATH: /opt/bsim/components
EDTT_PATH: ../tools/edtt
permissions:
checks: write # to create the check run entry with test results
steps:
- name: Apply container owner mismatch workaround
run: |
@@ -67,7 +74,7 @@ jobs:
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
@@ -91,7 +98,7 @@ jobs:
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
- name: Check common triggering files
uses: tj-actions/changed-files@v45
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46.0.5
id: check-common-files
with:
files: |
@@ -110,16 +117,17 @@ jobs:
modules/hal_nordic/**
- name: Check if Bluethooth files changed
uses: tj-actions/changed-files@v45
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46.0.5
id: check-bluetooth-files
with:
files: |
tests/bsim/bluetooth/
samples/bluetooth/
subsys/bluetooth/
tests/bluetooth/
tests/bsim/bluetooth/
- name: Check if Networking files changed
uses: tj-actions/changed-files@v45
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46.0.5
id: check-networking-files
with:
files: |
@@ -132,7 +140,7 @@ jobs:
include/zephyr/net/ieee802154*
- name: Check if UART files changed
uses: tj-actions/changed-files@v45
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46.0.5
id: check-uart-files
with:
files: |
@@ -172,13 +180,12 @@ jobs:
- name: Merge Test Results
run: |
pip install junitparser junit2html
junitparser merge --glob "./bsim_*/*bsim_results.*.xml" "./twister-out/twister.xml" junit.xml
junit2html junit.xml junit.html
- name: Upload Unit Test Results in HTML
if: always()
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: HTML Unit Test Results
if-no-files-found: ignore
@@ -186,7 +193,7 @@ jobs:
junit.html
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@v2
uses: EnricoMi/publish-unit-test-result-action@3a74b2957438d0b6e2e61d67b05318aa25c9e6c6 # v2.20.0
with:
check_name: Bsim Test Results
files: "junit.xml"
@@ -194,7 +201,7 @@ jobs:
- name: Upload Event Details
if: always()
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: event
path: |

View File

@@ -10,22 +10,33 @@ on:
workflow_dispatch:
branches: [main]
schedule:
# Run daily at 14:05
- cron: '5 14 * * *'
# Run daily at 00:05
- cron: '5 00 * * *'
permissions:
contents: read
jobs:
make_bugs_pickle:
name: Make bugs pickle
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
if: github.repository_owner == 'zephyrproject-rtos'
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Install Python dependencies
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -U pygithub
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Snapshot bugs
env:
@@ -41,7 +52,7 @@ jobs:
echo "BUGS_PICKLE_PATH=${BUGS_PICKLE_PATH}" >> ${GITHUB_ENV}
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
with:
aws-access-key-id: ${{ vars.AWS_BUILDS_ZEPHYR_BUG_SNAPSHOT_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_BUILDS_ZEPHYR_BUG_SNAPSHOT_SECRET_ACCESS_KEY }}

180
.github/workflows/clang.yaml vendored Normal file
View File

@@ -0,0 +1,180 @@
name: Build with Clang/LLVM
on:
push:
branches:
- main
- v*-branch
- collab-*
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true
jobs:
clang-build:
if: github.repository_owner == 'zephyrproject-rtos'
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.4.20250818
options: '--entrypoint /bin/bash'
strategy:
fail-fast: false
matrix:
subset: [1, 2]
env:
CCACHE_DIR: /node-cache/ccache-zephyr
CCACHE_REMOTE_STORAGE: "redis://cache-*.keydb-cache.svc.cluster.local|shards=1,2,3"
CCACHE_REMOTE_ONLY: "true"
CCACHE_IGNOREOPTIONS: '-specs=* --specs=*'
LLVM_TOOLCHAIN_PATH: /usr/lib/llvm-20
BASE_REF: ${{ github.base_ref }}
steps:
- name: Apply container owner mismatch workaround
run: |
# FIXME: The owner UID of the GITHUB_WORKSPACE directory may not
# match the container user UID because of the way GitHub
# Actions runner is implemented. Remove this workaround when
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: Print cloud service information
run: |
echo "ZEPHYR_RUNNER_CLOUD_PROVIDER = ${ZEPHYR_RUNNER_CLOUD_PROVIDER}"
echo "ZEPHYR_RUNNER_CLOUD_NODE = ${ZEPHYR_RUNNER_CLOUD_NODE}"
echo "ZEPHYR_RUNNER_CLOUD_POD = ${ZEPHYR_RUNNER_CLOUD_POD}"
- name: Clone cached Zephyr repository
continue-on-error: true
run: |
git clone --shared /repo-cache/zephyrproject/zephyr .
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
persist-credentials: false
- name: Environment Setup
run: |
echo "$HOME/.local/bin" >> $GITHUB_PATH
git config --global user.email "bot@zephyrproject.org"
git config --global user.name "Zephyr Bot"
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git clean -f -d
git log --pretty=oneline | head -n 10
west init -l . || true
west config --global update.narrow true
west config manifest.group-filter -- +ci,+optional
# In some cases modules are left in a state where they can't be
# updated (i.e. when we cancel a job and the builder is killed),
# So first retry to update, if that does not work, remove all modules
# and start over. (Workaround until we implement more robust module
# west caching).
west update --path-cache /repo-cache/zephyrproject 2>&1 1> west.log || west update --path-cache /repo-cache/zephyrproject 2>&1 1> west2.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /repo-cache/zephyrproject)
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
- name: Check Environment
run: |
cmake --version
${LLVM_TOOLCHAIN_PATH}/bin/clang --version
gcc --version
ls -la
- name: Set up ccache
run: |
mkdir -p ${CCACHE_DIR}
ccache -M 10G
ccache -p
ccache -z -s -vv
- name: Update BabbleSim to manifest revision
run: |
export BSIM_VERSION=$( west list bsim -f {revision} )
echo "Manifest points to bsim sha $BSIM_VERSION"
cd /opt/bsim_west/bsim
git fetch -n origin ${BSIM_VERSION}
git -c advice.detachedHead=false checkout ${BSIM_VERSION}
west update
make everything -s -j 8
- name: Run Tests with Twister
id: twister
run: |
export ZEPHYR_BASE=${PWD}
export ZEPHYR_TOOLCHAIN_VARIANT=llvm
./scripts/twister -p native_sim --no-detailed-test-id --force-color --inline-logs -M -N -v --retry-failed 2 \
-T tests --subset ${{matrix.subset}}/2 -j 16
- name: Print ccache stats
if: always()
run: |
ccache -s -vv
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: Unit Test Results (Subset ${{ matrix.subset }})
path: |
twister-out/twister.xml
twister-out/twister.json
if-no-files-found: ignore
clang-build-results:
name: "Publish Unit Tests Results"
needs: clang-build
runs-on: ubuntu-24.04
permissions:
checks: write # to create GitHub annotations
if: (success() || failure())
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
persist-credentials: false
- name: Download Artifacts
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
with:
path: artifacts
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Merge Test Results
run: |
junitparser merge artifacts/*/twister.xml junit.xml
junit2html junit.xml junit-clang.html
- name: Upload Unit Test Results in HTML
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: HTML Unit Test Results
if-no-files-found: ignore
path: |
junit-clang.html
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@3a74b2957438d0b6e2e61d67b05318aa25c9e6c6 # v2.20.0
if: always()
with:
check_name: Unit Test Results
files: "**/twister.xml"
comment_mode: off

View File

@@ -4,6 +4,9 @@ on:
schedule:
- cron: '25 06,18 * * *'
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true
@@ -14,7 +17,7 @@ jobs:
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.27.4.20241026
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.4.20250818
options: '--entrypoint /bin/bash'
strategy:
fail-fast: false
@@ -61,10 +64,21 @@ jobs:
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: west setup
run: |
west init -l . || true
@@ -85,24 +99,13 @@ jobs:
ccache -p
ccache -z -s -vv
- name: Update BabbleSim to manifest revision
run: |
export BSIM_VERSION=$( west list bsim -f {revision} )
echo "Manifest points to bsim sha $BSIM_VERSION"
cd /opt/bsim_west/bsim
git fetch -n origin ${BSIM_VERSION}
git -c advice.detachedHead=false checkout ${BSIM_VERSION}
west update
make everything -s -j 8
- name: Run Tests with Twister (Push)
continue-on-error: true
run: |
export ZEPHYR_BASE=${PWD}
export ZEPHYR_TOOLCHAIN_VARIANT=zephyr
mkdir -p coverage/reports
pip install gcovr==6.0
./scripts/twister -E ${{matrix.normalized}}-testplan.json
./scripts/twister --save-tests ${{matrix.normalized}}-testplan.json
ls -la
./scripts/twister \
-i --force-color -N -v --filter runnable -p ${{ matrix.platform }} --coverage \
@@ -121,7 +124,7 @@ jobs:
- name: Upload Coverage Results
if: always()
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: Coverage Data (Subset ${{ matrix.normalized }})
path: |
@@ -131,18 +134,29 @@ jobs:
codecov-results:
name: "Publish Coverage Results"
needs: codecov
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
# the codecov job might be skipped, we don't need to run this job then
if: success() || failure()
steps:
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Download Artifacts
uses: actions/download-artifact@v4
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
with:
path: coverage/reports
@@ -182,7 +196,6 @@ jobs:
- name: Merge coverage files
run: |
pushd ./coverage/reports
pip install gcovr==6.0
gcovr ${{ steps.get-coverage-files.outputs.mergefiles }} --merge-mode-functions=separate --json merged.json
gcovr ${{ steps.get-coverage-files.outputs.mergefiles }} --merge-mode-functions=separate --cobertura merged.xml
popd
@@ -198,7 +211,6 @@ jobs:
- name: Generate Coverage Report
if: always()
run: |
pip install xlsxwriter ijson
python3 ./scripts/ci/coverage/coverage_analysis.py \
-t native_sim-testplan.json \
-m MAINTAINERS.yml \
@@ -209,7 +221,7 @@ jobs:
- name: Upload Merged Coverage Results and Report
if: always()
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: Coverage Data and report
path: |
@@ -220,7 +232,7 @@ jobs:
- name: Upload coverage to Codecov
if: always()
uses: codecov/codecov-action@v5
uses: codecov/codecov-action@18283e04ce6e62d37312384ff67231eb8fd56d24 # v5.4.3
with:
env_vars: OS,PYTHON
fail_ci_if_error: false

58
.github/workflows/codeql.yml vendored Normal file
View File

@@ -0,0 +1,58 @@
name: "CodeQL"
on:
push:
branches:
- main
- v*-branch
- collab-*
schedule:
- cron: '34 16 * * 6'
pull_request:
branches:
- main
- v*-branch
- collab-*
permissions:
contents: read
jobs:
analyze:
name: Analyze (${{ matrix.language }})
runs-on: ubuntu-24.04
permissions:
security-events: write
strategy:
fail-fast: false
matrix:
include:
- language: python
build-mode: none
- language: actions
build-mode: none
config: ./.github/codeql/codeql-actions-config.yml
- language: javascript-typescript
build-mode: none
config: ./.github/codeql/codeql-js-config.yml
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Initialize CodeQL
uses: github/codeql-action/init@181d5eefc20863364f96762470ba6f862bdef56b # v3.29.2
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}
queries: security-extended
config-file: ${{ matrix.config }}
- if: matrix.build-mode == 'manual'
shell: bash
run: |
echo "nothing yet"
exit 0
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@181d5eefc20863364f96762470ba6f862bdef56b # v3.29.2
with:
category: "/language:${{matrix.language}}"

View File

@@ -2,27 +2,30 @@ name: Coding Guidelines
on: pull_request
permissions:
contents: read
jobs:
compliance_job:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
name: Run coding guidelines checks on patch series (PR)
steps:
- name: Checkout the code
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: cache-pip
uses: actions/cache@v4
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('.github/workflows/coding_guidelines.yml') }}
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install python dependencies
- name: Install Python packages
run: |
pip install unidiff
pip install sh
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Install Packages
run: |

View File

@@ -8,9 +8,12 @@ on:
- reopened
- synchronize
permissions:
contents: read
jobs:
check_compliance:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
name: Run compliance checks on patch series (PR)
steps:
- name: Update PATH for west
@@ -18,7 +21,7 @@ jobs:
echo "$HOME/.local/bin" >> $GITHUB_PATH
- name: Checkout the code
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -41,20 +44,15 @@ jobs:
git log --pretty=oneline | head -n 10
- name: Set up Python
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.11
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: cache-pip
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('.github/workflows/compliance.yml') }}
- name: Install python dependencies
- name: Install Python packages
run: |
pip install -r scripts/requirements-compliance.txt
pip install west
pip install -r scripts/requirements-actions.txt --require-hashes
- name: west setup
run: |
@@ -62,14 +60,6 @@ jobs:
west config manifest.group-filter -- +ci,-optional
west update -o=--depth=1 -n 2>&1 1> west.update.log || west update -o=--depth=1 -n 2>&1 1> west.update2.log
- name: Check for PR description
if: ${{ github.event.pull_request.body == '' }}
continue-on-error: true
id: pr_description
run: |
echo "Pull request description cannot be empty."
exit 1
- name: Run Compliance Tests
continue-on-error: true
id: compliance
@@ -82,11 +72,15 @@ jobs:
git log --pretty=oneline | head -n 10
# Increase rename limit to allow for large PRs
git config diff.renameLimit 10000
./scripts/ci/check_compliance.py --annotate -e KconfigBasic -e SysbuildKconfigBasic -e ClangFormat \
-c origin/${BASE_REF}..
excludes="-e KconfigBasic -e SysbuildKconfigBasic -e ClangFormat"
# The signed-off-by check for dependabot should be skipped
if [ "${{ github.actor }}" == "dependabot[bot]" ]; then
excludes="$excludes -e Identity"
fi
./scripts/ci/check_compliance.py --annotate $excludes -c origin/${BASE_REF}..
- name: upload-results
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
continue-on-error: true
with:
name: compliance.xml

View File

@@ -10,28 +10,38 @@ on:
branches:
- refs/tags/*
permissions:
contents: read
jobs:
get_version:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
if: github.repository == 'zephyrproject-rtos/zephyr'
steps:
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
with:
aws-access-key-id: ${{ vars.AWS_TESTING_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_TESTING_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: install-pip
run: |
pip install gitpython
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Upload to AWS S3
run: |
python3 scripts/ci/version_mgr.py --update .

View File

@@ -20,6 +20,9 @@ on:
- 'scripts/dts/**'
- '.github/workflows/devicetree_checks.yml'
permissions:
contents: read
jobs:
devicetree-checks:
name: Devicetree script tests
@@ -30,39 +33,19 @@ jobs:
os: [ubuntu-22.04, macos-14, windows-2022]
steps:
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: ${{ matrix.python-version }}
- name: cache-pip-linux
if: startsWith(runner.os, 'Linux')
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: cache-pip-mac
if: startsWith(runner.os, 'macOS')
uses: actions/cache@v4
with:
path: ~/Library/Caches/pip
# Trailing '-' was just to get a different cache name
key: ${{ runner.os }}-pip-${{ matrix.python-version }}-
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}-
- name: cache-pip-win
if: startsWith(runner.os, 'Windows')
uses: actions/cache@v4
with:
path: ~\AppData\Local\pip\Cache
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: install python dependencies
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install pytest pyyaml tox
pip install -r scripts/requirements-actions.txt --require-hashes
- name: run tox
working-directory: scripts/dts/python-devicetree
run: |

View File

@@ -1,21 +0,0 @@
name: Do Not Merge
on:
pull_request:
types: [synchronize, opened, reopened, labeled, unlabeled]
jobs:
do-not-merge:
name: Prevent Merging
runs-on: ubuntu-22.04
steps:
- name: Check for label
if: ${{ contains(github.event.*.labels.*.name, 'DNM') ||
contains(github.event.*.labels.*.name, 'DNM (manifest)') ||
contains(github.event.*.labels.*.name, 'TSC') ||
contains(github.event.*.labels.*.name, 'Architecture Review') ||
contains(github.event.*.labels.*.name, 'dev-review') }}
run: |
echo "Pull request is labeled as 'DNM', 'TSC', 'Architecture Review' or 'dev-review'."
echo "This workflow fails so that the pull request cannot be merged."
exit 1

View File

@@ -11,31 +11,28 @@ on:
- v*
pull_request:
permissions:
contents: read
env:
# NOTE: west docstrings will be extracted from the version listed here
WEST_VERSION: 1.2.0
# The latest CMake available directly with apt is 3.18, but we need >=3.20
# so we fetch that through pip.
CMAKE_VERSION: 3.20.5
DOXYGEN_VERSION: 1.12.0
DOXYGEN_VERSION: 1.14.0
DOXYGEN_MD5SUM: e761a5097ae20ecccfd02041925f102a
JOB_COUNT: 4
jobs:
doc-file-check:
name: Check for doc changes
runs-on: ubuntu-24.04
if: >
github.repository_owner == 'zephyrproject-rtos'
outputs:
file_check: ${{ steps.check-doc-files.outputs.any_modified }}
steps:
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Check if Documentation related files changed
uses: tj-actions/changed-files@v45
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46.0.5
id: check-doc-files
with:
files: |
@@ -46,7 +43,6 @@ jobs:
kernel/include/kernel_arch_interface.h
lib/libc/**
subsys/testsuite/ztest/include/**
tests/
**/Kconfig*
west.yml
scripts/dts/
@@ -59,8 +55,7 @@ jobs:
name: "Documentation Build (HTML)"
needs: [doc-file-check]
if: >
github.repository_owner == 'zephyrproject-rtos' &&
( needs.doc-file-check.outputs.file_check == 'true' || github.event_name != 'pull_request' )
needs.doc-file-check.outputs.file_check == 'true' || github.event_name != 'pull_request'
runs-on: ubuntu-24.04
timeout-minutes: 90
concurrency:
@@ -73,12 +68,17 @@ jobs:
sudo apt-get update
sudo apt-get install -y wget python3-pip git ninja-build graphviz lcov
wget --no-verbose "https://github.com/doxygen/doxygen/releases/download/Release_${DOXYGEN_VERSION//./_}/doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz"
echo "${DOXYGEN_MD5SUM} doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz" | md5sum -c
if [ $? -ne 0 ]; then
echo "Failed to verify doxygen tarball"
exit 1
fi
sudo tar xf doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz -C /opt
echo "/opt/doxygen-${DOXYGEN_VERSION}/bin" >> $GITHUB_PATH
echo "${HOME}/.local/bin" >> $GITHUB_PATH
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -100,17 +100,23 @@ jobs:
git clean -f -d
git log --graph --oneline HEAD...${PR_HEAD}
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: doc/requirements.txt
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@v1
uses: zephyrproject-rtos/action-zephyr-setup@cefbf9086ce2da7d70e7ad9589af8aa1e4bda265 # v1.0.11
with:
app-path: zephyr
toolchains: 'all'
toolchains: 'arm-zephyr-eabi'
- name: install-pip
working-directory: zephyr
run: |
pip install -r doc/requirements.txt
pip install coverxygen
pip install -r doc/requirements.txt --require-hashes
- name: build-docs
shell: bash
@@ -147,13 +153,13 @@ jobs:
tar --use-compress-program="xz -T0" -cf api-coverage.tar.xz coverage-report
- name: upload-build
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: html-output
path: zephyr/html-output.tar.xz
- name: upload-api-coverage
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: api-coverage
path: zephyr/api-coverage.tar.xz
@@ -173,7 +179,7 @@ jobs:
echo "API Coverage Report will be available shortly at: ${API_COVERAGE_URL}" >> $GITHUB_STEP_SUMMARY
- name: upload-pr-number
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
if: github.event_name == 'pull_request'
with:
name: pr_num
@@ -183,52 +189,56 @@ jobs:
name: "Documentation Build (PDF)"
needs: [doc-file-check]
if: |
github.event_name != 'pull_request' &&
github.repository_owner == 'zephyrproject-rtos'
runs-on: ubuntu-22.04
container: texlive/texlive:latest
github.event_name != 'pull_request'
runs-on: ubuntu-24.04
timeout-minutes: 120
concurrency:
group: doc-build-pdf-${{ github.ref }}
cancel-in-progress: true
steps:
- name: Apply container owner mismatch workaround
run: |
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
path: zephyr
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: doc/requirements.txt
- name: install-pkgs
run: |
apt-get update
apt-get install -y python3-pip python3-venv ninja-build doxygen graphviz librsvg2-bin imagemagick
sudo apt-get update
sudo apt-get install --no-install-recommends graphviz librsvg2-bin \
texlive-latex-base texlive-latex-extra latexmk \
texlive-fonts-recommended texlive-fonts-extra texlive-xetex \
imagemagick fonts-noto xindy
wget --no-verbose "https://github.com/doxygen/doxygen/releases/download/Release_${DOXYGEN_VERSION//./_}/doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz"
echo "${DOXYGEN_MD5SUM} doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz" | md5sum -c
if [ $? -ne 0 ]; then
echo "Failed to verify doxygen tarball"
exit 1
fi
sudo tar xf doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz -C /opt
echo "/opt/doxygen-${DOXYGEN_VERSION}/bin" >> $GITHUB_PATH
- name: cache-pip
uses: actions/cache@v4
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@cefbf9086ce2da7d70e7ad9589af8aa1e4bda265 # v1.0.11
with:
path: ~/.cache/pip
key: pip-${{ hashFiles('doc/requirements.txt') }}
app-path: zephyr
toolchains: 'arm-zephyr-eabi'
- name: setup-venv
- name: install-pip-pkgs
working-directory: zephyr
run: |
python3 -m venv .venv
. .venv/bin/activate
echo PATH=$PATH >> $GITHUB_ENV
- name: install-pip
run: |
pip install -r doc/requirements.txt
pip install west==${WEST_VERSION}
pip install cmake==${CMAKE_VERSION}
- name: west setup
run: |
west init -l .
pip install -r doc/requirements.txt --require-hashes
- name: build-docs
shell: bash
working-directory: zephyr
continue-on-error: true
run: |
if [[ "$GITHUB_REF" =~ "refs/tags/v" ]]; then
@@ -244,13 +254,13 @@ jobs:
- name: upload-build
if: always()
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: pdf-output
if-no-files-found: ignore
path: |
doc/_build/latex/zephyr.pdf
doc/_build/latex/zephyr.log
zephyr/doc/_build/latex/zephyr.pdf
zephyr/doc/_build/latex/zephyr.log
doc-build-status-check:
if: always()

View File

@@ -10,10 +10,13 @@ on:
types:
- completed
permissions:
contents: read
jobs:
doc-publish:
name: Publish Documentation
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
if: |
github.event.workflow_run.event == 'pull_request' &&
github.event.workflow_run.conclusion == 'success' &&
@@ -22,7 +25,7 @@ jobs:
steps:
- name: Download artifacts
id: download-artifacts
uses: dawidd6/action-download-artifact@v8
uses: dawidd6/action-download-artifact@ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5 # v11
with:
workflow: doc-build.yml
run_id: ${{ github.event.workflow_run.id }}
@@ -30,7 +33,7 @@ jobs:
- name: Load PR number
if: steps.download-artifacts.outputs.found_artifact == 'true'
uses: actions/github-script@v7
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
with:
script: |
let fs = require("fs");
@@ -40,7 +43,7 @@ jobs:
- name: Check PR number
if: steps.download-artifacts.outputs.found_artifact == 'true'
id: check-pr
uses: carpentries/actions/check-valid-pr@v0.14.0
uses: carpentries/actions/check-valid-pr@2e20fd5ee53b691e27455ce7ca3b16ea885140e8 # v0.15.0
with:
pr: ${{ env.PR_NUM }}
sha: ${{ github.event.workflow_run.head_sha }}
@@ -63,7 +66,7 @@ jobs:
- name: Configure AWS Credentials
if: steps.download-artifacts.outputs.found_artifact == 'true'
uses: aws-actions/configure-aws-credentials@v4
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
with:
aws-access-key-id: ${{ vars.AWS_BUILDS_ZEPHYR_PR_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_BUILDS_ZEPHYR_PR_SECRET_ACCESS_KEY }}

View File

@@ -13,10 +13,13 @@ on:
types:
- completed
permissions:
contents: read
jobs:
doc-publish:
name: Publish Documentation
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
if: |
github.event.workflow_run.event != 'pull_request' &&
github.event.workflow_run.conclusion == 'success' &&
@@ -24,7 +27,7 @@ jobs:
steps:
- name: Download artifacts
uses: dawidd6/action-download-artifact@v8
uses: dawidd6/action-download-artifact@ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5 # v11
with:
workflow: doc-build.yml
run_id: ${{ github.event.workflow_run.id }}
@@ -37,7 +40,7 @@ jobs:
fi
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
with:
aws-access-key-id: ${{ vars.AWS_DOCS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_DOCS_SECRET_ACCESS_KEY }}

View File

@@ -6,11 +6,14 @@ on:
- 'lib/libc/minimal/include/errno.h'
- 'scripts/ci/errno.py'
permissions:
contents: read
jobs:
check-errno:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
container:
image: ghcr.io/zephyrproject-rtos/ci:v0.27.4
image: ghcr.io/zephyrproject-rtos/ci:v0.28.4
steps:
- name: Apply container owner mismatch workaround
@@ -22,7 +25,7 @@ jobs:
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Environment Setup
run: |

View File

@@ -1,9 +1,8 @@
name: Footprint Tracking
# Run every 12 hours and on tags
on:
schedule:
- cron: '50 1/12 * * *'
- cron: '50 00 * * *'
push:
paths:
- 'VERSION'
@@ -16,6 +15,9 @@ on:
# same commit
- 'v*'
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true
@@ -26,7 +28,7 @@ jobs:
group: zephyr-runner-v2-linux-x64-4xlarge
if: github.repository_owner == 'zephyrproject-rtos'
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.27.4.20241026
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.4.20250818
options: '--entrypoint /bin/bash'
defaults:
run:
@@ -58,14 +60,24 @@ jobs:
run: |
sudo apt-get update
sudo apt-get install -y python3-venv
pip install -U gitpython
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Environment Setup
run: |
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
@@ -77,7 +89,7 @@ jobs:
west update 2>&1 1> west.update.log || west update 2>&1 1> west.update2.log
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
with:
aws-access-key-id: ${{ vars.AWS_TESTING_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_TESTING_SECRET_ACCESS_KEY }}
@@ -94,7 +106,6 @@ jobs:
run: |
python3 -m venv .venv
. .venv/bin/activate
pip install awscli
aws s3 sync --quiet footprint_data/ s3://testing.zephyrproject.org/footprint_data/
- name: Transform Footprint data to Twister JSON reports
@@ -113,7 +124,6 @@ jobs:
ELASTICSEARCH_INDEX: ${{ vars.FOOTPRINT_TRACKING_INDEX }}
run: |
shopt -s globstar
pip install -U elasticsearch
run_date=`date --iso-8601=minutes`
python3 ./scripts/ci/upload_test_results_es.py -r ${run_date} \
--flatten footprint \

View File

@@ -6,14 +6,20 @@ on:
pull_request_target:
types: [opened, closed]
permissions:
contents: read
jobs:
check_for_first_interaction:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
if: github.repository == 'zephyrproject-rtos/zephyr'
permissions:
pull-requests: write # to comment on pull requests
issues: write # to comment on issues
steps:
- uses: actions/checkout@v4
- uses: zephyrproject-rtos/action-first-interaction@v1.1.1-zephyr-5
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: zephyrproject-rtos/action-first-interaction@58853996b1ac504b8e0f6964301f369d2bb22e5c # v1.1.1+zephyr.6
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -16,6 +16,9 @@ on:
- '.github/workflows/hello_world_multiplatform.yaml'
- 'SDK_VERSION'
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true
@@ -25,11 +28,11 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-22.04, ubuntu-24.04, macos-13, macos-14, windows-2022]
os: [ubuntu-22.04, ubuntu-24.04, macos-14, windows-2022]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
path: zephyr
fetch-depth: 0
@@ -51,15 +54,15 @@ jobs:
git log --graph --oneline HEAD...${PR_HEAD}
- name: Set up Python
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.11
python-version: 3.12
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@v1
uses: zephyrproject-rtos/action-zephyr-setup@cefbf9086ce2da7d70e7ad9589af8aa1e4bda265 # v1.0.11
with:
app-path: zephyr
toolchains: all
toolchains: aarch64-zephyr-elf:arc-zephyr-elf:arc64-zephyr-elf:arm-zephyr-eabi:mips-zephyr-elf:riscv64-zephyr-elf:sparc-zephyr-elf:x86_64-zephyr-elf:xtensa-dc233c_zephyr-elf:xtensa-sample_controller32_zephyr-elf:rx-zephyr-elf
- name: Build firmware
working-directory: zephyr
@@ -74,7 +77,7 @@ jobs:
- name: Upload artifacts
if: failure()
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
if-no-files-found: ignore
path:

View File

@@ -2,7 +2,10 @@ name: Issue Tracker
on:
schedule:
- cron: '*/10 * * * *'
- cron: '10 1/4 * * *'
permissions:
contents: read
env:
OUTPUT_FILE_NAME: IssuesReport.md
@@ -14,7 +17,7 @@ env:
jobs:
track-issues:
name: "Collect Issue Stats"
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
if: github.repository == 'zephyrproject-rtos/zephyr'
steps:
@@ -27,7 +30,7 @@ jobs:
sudo apt-get update
sudo apt-get install discount
- uses: brcrista/summarize-issues@v4
- uses: brcrista/summarize-issues@54c549b7d38b7db39e5c6e06fd9617e12e5c3491 # v4
with:
title: 'Issues Report for ${{ github.repository }}'
configPath: 'issues-report-config.json'
@@ -35,14 +38,14 @@ jobs:
token: ${{ secrets.GITHUB_TOKEN }}
- name: upload-stats
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
continue-on-error: true
with:
name: ${{ env.OUTPUT_FILE_NAME }}
path: ${{ env.OUTPUT_FILE_NAME }}
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
with:
aws-access-key-id: ${{ vars.AWS_TESTING_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_TESTING_SECRET_ACCESS_KEY }}

View File

@@ -2,22 +2,25 @@ name: Scancode
on: [pull_request]
permissions:
contents: read
jobs:
scancode_job:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
name: Scan code for licenses
steps:
- name: Checkout the code
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
- name: Scan the code
id: scancode
uses: zephyrproject-rtos/action_scancode@v4
uses: zephyrproject-rtos/action_scancode@23ef91ce31cd4b954366a7b71eea47520da9b380 # v4
with:
directory-to-scan: 'scan/'
- name: Artifact Upload
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: scancode
path: ./artifacts

43
.github/workflows/maintainer_check.yml vendored Normal file
View File

@@ -0,0 +1,43 @@
name: Maintainer file check
on:
pull_request_target:
branches:
- main
paths:
- MAINTAINERS.yml
permissions:
contents: read
jobs:
assignment:
name: Check MAINTAINERS.yml changes
runs-on: ubuntu-24.04
steps:
- name: Check out source code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Fetch MAINTAINERS.yml from mainline
run: |
git fetch origin main
git show origin/main:MAINTAINERS.yml > mainline_MAINTAINERS.yml
- name: Check maintainer file changes
env:
GITHUB_TOKEN: ${{ secrets.ZB_PR_ASSIGNER_GITHUB_TOKEN }}
run: |
python ./scripts/ci/check_maintainer_changes.py \
--repo zephyrproject-rtos/zephyr mainline_MAINTAINERS.yml MAINTAINERS.yml

View File

@@ -2,33 +2,49 @@ name: Manifest
on:
pull_request_target:
permissions:
contents: read
jobs:
contribs:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
pull-requests: write # to create/update pull request comments
name: Manifest
steps:
- name: Checkout the code
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
path: zephyrproject/zephyr
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
cd zephyrproject/zephyr
pip install -r scripts/requirements-actions.txt --require-hashes
- name: west setup
env:
BASE_REF: ${{ github.base_ref }}
working-directory: zephyrproject/zephyr
run: |
pip install west
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
west init -l . || true
- name: Manifest
uses: zephyrproject-rtos/action-manifest@v1.7.0
uses: zephyrproject-rtos/action-manifest@1729cded3fc798cf0de4a789c596dcb9c40eb14c # v1.9.1
with:
github-token: ${{ secrets.ZB_GITHUB_TOKEN }}
github-token: ${{ secrets.GITHUB_TOKEN }}
manifest-path: 'west.yml'
checkout-path: 'zephyrproject/zephyr'
use-tree-checkout: 'true'
@@ -37,3 +53,5 @@ jobs:
verbosity-level: '1'
labels: 'manifest'
dnm-labels: 'DNM (manifest)'
blobs-added-labels: 'Binary Blobs Added'
blobs-modified-labels: 'Binary Blobs Modified'

19
.github/workflows/pinned-gh-actions.yml vendored Normal file
View File

@@ -0,0 +1,19 @@
name: Check SHA-pinned GitHub Actions
on:
pull_request:
paths:
- '.github/workflows/**'
permissions:
contents: read
jobs:
check-sha-pinned-actions:
name: Verify GitHub Actions
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Ensure SHA pinned actions
uses: zgosalvez/github-actions-ensure-sha-pinned-actions@fc87bb5b5a97953d987372e74478de634726b3e5 # v3.0.25

39
.github/workflows/pr_metadata_check.yml vendored Normal file
View File

@@ -0,0 +1,39 @@
name: PR Metadata Check
on:
pull_request:
types:
- synchronize
- opened
- reopened
- labeled
- unlabeled
- edited
permissions:
contents: read
jobs:
do-not-merge:
name: Prevent Merging
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python dependencies
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Run the check script
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
python -u scripts/ci/do_not_merge.py -p "${{ github.event.pull_request.number }}"

View File

@@ -19,6 +19,9 @@ on:
- 'scripts/pylib/build_helpers/**'
- '.github/workflows/pylib_tests.yml'
permissions:
contents: read
jobs:
pylib-tests:
name: Misc. Pylib Unit Tests
@@ -26,25 +29,21 @@ jobs:
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']
os: [ubuntu-22.04]
os: [ubuntu-24.04]
steps:
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: ${{ matrix.python-version }}
- name: cache-pip-linux
if: startsWith(runner.os, 'Linux')
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: install-packages
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-base.txt -r scripts/requirements-build-test.txt
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Run pytest for build_helpers
env:
ZEPHYR_BASE: ./

View File

@@ -7,6 +7,9 @@ on:
type: string
required: true
permissions:
contents: read
jobs:
all_jobs_passed:
name: all jobs passed

View File

@@ -6,11 +6,16 @@ on:
- 'v*'
- '!v*rc*'
permissions:
contents: read
jobs:
release:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
contents: write # to create GitHub release entry
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
@@ -21,12 +26,12 @@ jobs:
echo "TRIMMED_VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
- name: REUSE Compliance Check
uses: fsfe/reuse-action@v5
uses: fsfe/reuse-action@bb774aa972c2a89ff34781233d275075cbddf542 # v5.0.0
with:
args: spdx -o zephyr-${{ steps.get_version.outputs.VERSION }}.spdx
- name: upload-results
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
continue-on-error: true
with:
name: zephyr-${{ steps.get_version.outputs.VERSION }}.spdx
@@ -38,7 +43,7 @@ jobs:
- name: Create Release
id: create_release
uses: actions/create-release@v1
uses: actions/create-release@0cb9c9b65d5d1901c1f53e5e66eaf4afd303e70e # v1.1.4
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
@@ -50,7 +55,7 @@ jobs:
- name: Upload Release Assets
id: upload-release-asset
uses: actions/upload-release-asset@v1
uses: actions/upload-release-asset@e8f9f06c4b078e705bd2ea027f0926603fc9b4d5 # v1.0.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:

View File

@@ -29,12 +29,12 @@ jobs:
steps:
- name: "Checkout code"
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
persist-credentials: false
- name: "Run analysis"
uses: ossf/scorecard-action@62b2cac7ed8198b15735ed49ab1e5cf35480ba46 # v2.4.0
uses: ossf/scorecard-action@05b42c624433fc40578a4040d5cf5e36ddca8cde # v2.4.2
with:
results_file: results.sarif
results_format: sarif
@@ -47,7 +47,7 @@ jobs:
# uploads of run results in SARIF format to the repository Actions tab.
# https://docs.github.com/en/actions/advanced-guides/storing-workflow-data-as-artifacts
- name: "Upload artifact"
uses: actions/upload-artifact@89ef406dd8d7e03cfd12d9e0a4a378f454709029 # v4.3.5
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: SARIF file
path: results.sarif
@@ -56,6 +56,6 @@ jobs:
# Upload the results to GitHub's code scanning dashboard (optional).
# Commenting out will disable upload of results to your repo's Code Scanning dashboard
- name: "Upload to code-scanning"
uses: github/codeql-action/upload-sarif@afb54ba388a7dca6ecae48f608c4ff05ff4cc77a # v3.25.15
uses: github/codeql-action/upload-sarif@181d5eefc20863364f96762470ba6f862bdef56b # v3.29.2
with:
sarif_file: results.sarif

View File

@@ -19,6 +19,9 @@ on:
- 'scripts/build/**'
- '.github/workflows/scripts_tests.yml'
permissions:
contents: read
jobs:
scripts-tests:
name: Scripts tests
@@ -26,10 +29,10 @@ jobs:
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']
os: [ubuntu-20.04]
os: [ubuntu-24.04]
steps:
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -49,22 +52,15 @@ jobs:
git log --graph --oneline HEAD...${PR_HEAD}
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: ${{ matrix.python-version }}
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: cache-pip-linux
if: startsWith(runner.os, 'Linux')
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: install-packages
- name: Install Python packages
run: |
pip install -r scripts/requirements-base.txt -r scripts/requirements-build-test.txt
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Run pytest
env:

View File

@@ -7,6 +7,9 @@ on:
# everyday at 15:00
- cron: '0 15 * * *'
permissions:
contents: read
concurrency:
group: stale-workflow-queue-cleanup
cancel-in-progress: true
@@ -14,11 +17,13 @@ concurrency:
jobs:
cleanup:
name: Cleanup
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
actions: write # to delete stale workflow runs
steps:
- name: Delete stale queued workflow runs
uses: MajorScruffy/delete-old-workflow-runs@v0.3.0
uses: MajorScruffy/delete-old-workflow-runs@78b5af714fefaefdf74862181c467b061782719e # v0.3.0
with:
repository: ${{ github.repository }}
# Remove any workflow runs in "queued" state for more than 1 day

View File

@@ -3,13 +3,20 @@ on:
schedule:
- cron: "16 00 * * *"
permissions:
contents: read
jobs:
stale:
name: Find Stale issues and PRs
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
if: github.repository == 'zephyrproject-rtos/zephyr'
permissions:
pull-requests: write # to comment on stale pull requests
issues: write # to comment on stale issues
steps:
- uses: actions/stale@v9
- uses: actions/stale@5bef64f19d7facfb25b37b414482c7164d639639 # v9.1.0
with:
stale-pr-message: 'This pull request has been marked as stale because it has been open (more
than) 60 days with no activity. Remove the stale label or add a comment saying that you

View File

@@ -6,13 +6,28 @@ on:
- main
- v*-branch
types: [closed]
permissions:
contents: read
jobs:
record_merged:
if: github.event.pull_request.merged == true && github.repository == 'zephyrproject-rtos/zephyr'
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: PR event
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -20,5 +35,4 @@ jobs:
ELASTICSEARCH_SERVER: "https://elasticsearch.zephyrproject.io:443"
PR_STAT_ES_INDEX: ${{ vars.PR_STAT_ES_INDEX }}
run: |
pip install pygithub elasticsearch
python3 ./scripts/ci/stats/merged_prs.py --pull-request ${{ github.event.pull_request.number }} --repo ${{ github.repository }}

View File

@@ -1,147 +0,0 @@
name: Prepare For a Twister Run
on:
workflow_call:
outputs:
subset:
description: subset
value: ${{ jobs.prep_push.outputs.subset != '' && jobs.prep_push.outputs.subset || jobs.prep_pr.outputs.subset }}
size:
description: size
value: ${{ jobs.prep_push.outputs.size != '' && jobs.prep_push.outputs.size || jobs.prep_pr.outputs.size }}
fullrun:
description: fullrun
value: ${{ jobs.prep_push.outputs.fullrun != '' && jobs.prep_push.outputs.fullrun || jobs.prep_pr.outputs.size }}
jobs:
prep_pr:
if: github.repository_owner == 'zephyrproject-rtos' && github.event_name == 'pull_request_target'
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.27.4.20241026
options: '--entrypoint /bin/bash'
outputs:
subset: ${{ steps.output-services.outputs.subset }}
size: ${{ steps.output-services.outputs.size }}
fullrun: ${{ steps.output-services.outputs.fullrun }}
env:
MATRIX_SIZE: 10
PUSH_MATRIX_SIZE: 20
WEEKLY_MATRIX_SIZE: 200
BSIM_OUT_PATH: /opt/bsim/
BSIM_COMPONENTS_PATH: /opt/bsim/components
TESTS_PER_BUILDER: 900
COMMIT_RANGE: ${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }}
BASE_REF: ${{ github.base_ref }}
steps:
- name: Apply container owner mismatch workaround
run: |
# FIXME: The owner UID of the GITHUB_WORKSPACE directory may not
# match the container user UID because of the way GitHub
# Actions runner is implemented. Remove this workaround when
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: Print cloud service information
run: |
echo "ZEPHYR_RUNNER_CLOUD_PROVIDER = ${ZEPHYR_RUNNER_CLOUD_PROVIDER}"
echo "ZEPHYR_RUNNER_CLOUD_NODE = ${ZEPHYR_RUNNER_CLOUD_NODE}"
echo "ZEPHYR_RUNNER_CLOUD_POD = ${ZEPHYR_RUNNER_CLOUD_POD}"
- name: Clone cached Zephyr repository
continue-on-error: true
run: |
git clone --shared /repo-cache/zephyrproject/zephyr .
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
persist-credentials: false
- name: Environment Setup
run: |
git config --global user.email "bot@zephyrproject.org"
git config --global user.name "Zephyr Bot"
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git rebase origin/${BASE_REF}
git clean -f -d
git log --pretty=oneline | head -n 10
west init -l . || true
west config manifest.group-filter -- +ci,+optional
west config --global update.narrow true
west update --path-cache /repo-cache/zephyrproject 2>&1 1> west.update.log || west update --path-cache /repo-cache/zephyrproject 2>&1 1> west.update.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /repo-cache/zephyrproject)
west forall -c 'git reset --hard HEAD'
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
- name: Generate Test Plan with Twister
id: test-plan
run: |
export ZEPHYR_BASE=${PWD}
export ZEPHYR_TOOLCHAIN_VARIANT=zephyr
python3 ./scripts/ci/test_plan.py -c origin/${BASE_REF}.. --no-detailed-test-id --pull-request -t $TESTS_PER_BUILDER
if [ -s .testplan ]; then
cat .testplan >> $GITHUB_ENV
else
echo "TWISTER_NODES=${MATRIX_SIZE}" >> $GITHUB_ENV
fi
rm -f testplan.json .testplan
- name: Determine matrix size
id: output-services
run: |
if [ -n "${TWISTER_NODES}" ]; then
subset="[$(seq -s',' 1 ${TWISTER_NODES})]"
else
subset="[$(seq -s',' 1 ${MATRIX_SIZE})]"
fi
size=${TWISTER_NODES}
echo "subset=${subset}" >> $GITHUB_OUTPUT
echo "size=${size}" >> $GITHUB_OUTPUT
echo "fullrun=${TWISTER_FULL}" >> $GITHUB_OUTPUT
prep_push:
if: github.repository_owner == 'zephyrproject-rtos' && (github.event_name == 'push' || github.event_name == 'schedule')
runs-on: ubuntu-22.04
outputs:
subset: ${{ steps.output-services.outputs.subset }}
size: ${{ steps.output-services.outputs.size }}
fullrun: ${{ steps.output-services.outputs.fullrun }}
env:
MATRIX_SIZE: 10
PUSH_MATRIX_SIZE: 20
WEEKLY_MATRIX_SIZE: 200
BSIM_OUT_PATH: /opt/bsim/
BSIM_COMPONENTS_PATH: /opt/bsim/components
TESTS_PER_BUILDER: 900
COMMIT_RANGE: ${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }}
BASE_REF: ${{ github.base_ref }}
steps:
- name: Print cloud service information
run: |
echo "ZEPHYR_RUNNER_CLOUD_PROVIDER = ${ZEPHYR_RUNNER_CLOUD_PROVIDER}"
echo "ZEPHYR_RUNNER_CLOUD_NODE = ${ZEPHYR_RUNNER_CLOUD_NODE}"
echo "ZEPHYR_RUNNER_CLOUD_POD = ${ZEPHYR_RUNNER_CLOUD_POD}"
- name: Determine matrix size
id: output-services
run: |
if [ "${{github.event_name}}" = "push" ]; then
subset="[$(seq -s',' 1 ${PUSH_MATRIX_SIZE})]"
size=${MATRIX_SIZE}
elif [ "${{github.event_name}}" = "schedule" -a "${{github.repository}}" = "zephyrproject-rtos/zephyr" ]; then
subset="[$(seq -s',' 1 ${WEEKLY_MATRIX_SIZE})]"
size=${WEEKLY_MATRIX_SIZE}
else
size=0
fi
echo "subset=${subset}" >> $GITHUB_OUTPUT
echo "size=${size}" >> $GITHUB_OUTPUT
echo "fullrun=${TWISTER_FULL}" >> $GITHUB_OUTPUT

View File

@@ -8,26 +8,38 @@ on:
types:
- completed
permissions:
contents: read
jobs:
upload-to-elasticsearch:
if: |
github.repository == 'zephyrproject-rtos/zephyr' &&
github.event.workflow_run.event != 'pull_request_target'
github.event.workflow_run.event != 'pull_request'
env:
ELASTICSEARCH_KEY: ${{ secrets.ELASTICSEARCH_KEY }}
ELASTICSEARCH_SERVER: "https://elasticsearch.zephyrproject.io:443"
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
# Needed for elasticearch and upload script
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Download Artifacts
id: download-artifacts
uses: dawidd6/action-download-artifact@v8
uses: dawidd6/action-download-artifact@ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5 # v11
with:
path: artifacts
workflow: twister.yml
@@ -37,7 +49,6 @@ jobs:
- name: Upload to elasticsearch
if: steps.download-artifacts.outputs.found_artifact == 'true'
run: |
pip install elasticsearch
# set run date on upload to get consistent and unified data across the matrix.
run_date=`date --iso-8601=minutes`
if [ "${{github.event.workflow_run.event}}" = "push" ]; then

View File

@@ -6,14 +6,17 @@ on:
- main
- v*-branch
- collab-*
pull_request_target:
pull_request:
branches:
- main
- v*-branch
- collab-*
schedule:
# Run at 17:00 UTC on every Saturday
- cron: '0 17 * * 6'
# Run at 02:00 UTC on every Sunday
- cron: '0 2 * * 0'
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
@@ -21,7 +24,102 @@ concurrency:
jobs:
twister-build-prep:
uses: ./.github/workflows/twister-prep.yaml
if: github.repository_owner == 'zephyrproject-rtos'
runs-on: ubuntu-24.04
outputs:
subset: ${{ steps.output-services.outputs.subset }}
size: ${{ steps.output-services.outputs.size }}
fullrun: ${{ steps.output-services.outputs.fullrun }}
env:
MATRIX_SIZE: 10
PUSH_MATRIX_SIZE: 20
WEEKLY_MATRIX_SIZE: 200
BSIM_OUT_PATH: /opt/bsim/
BSIM_COMPONENTS_PATH: /opt/bsim/components
TESTS_PER_BUILDER: 900
COMMIT_RANGE: ${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }}
BASE_REF: ${{ github.base_ref }}
steps:
- name: Checkout
if: github.event_name == 'pull_request'
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
path: zephyr
persist-credentials: false
- name: Set up Python
if: github.event_name == 'pull_request'
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: install-packages
working-directory: zephyr
if: github.event_name == 'pull_request'
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Setup Zephyr project
if: github.event_name == 'pull_request'
uses: zephyrproject-rtos/action-zephyr-setup@cefbf9086ce2da7d70e7ad9589af8aa1e4bda265 # v1.0.11
with:
app-path: zephyr
toolchains: 'arm-zephyr-eabi'
- name: Environment Setup
working-directory: zephyr
if: github.event_name == 'pull_request'
run: |
git config --global user.email "bot@zephyrproject.org"
git config --global user.name "Zephyr Bot"
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git rebase origin/${BASE_REF}
git clean -f -d
git log --pretty=oneline | head -n 10
- name: Generate Test Plan with Twister
working-directory: zephyr
if: github.event_name == 'pull_request'
id: test-plan
run: |
export ZEPHYR_BASE=${PWD}
export ZEPHYR_TOOLCHAIN_VARIANT=zephyr
python3 ./scripts/ci/test_plan.py -c origin/${BASE_REF}.. --no-detailed-test-id --pull-request -t $TESTS_PER_BUILDER
if [ -s .testplan ]; then
cat .testplan >> $GITHUB_ENV
else
echo "TWISTER_NODES=${MATRIX_SIZE}" >> $GITHUB_ENV
fi
rm -f testplan.json .testplan
- name: Determine matrix size
id: output-services
run: |
if [ "${{github.event_name}}" = "push" ]; then
subset="[$(seq -s',' 1 ${PUSH_MATRIX_SIZE})]"
size=${MATRIX_SIZE}
elif [ "${{github.event_name}}" = "pull_request" ]; then
if [ -n "${TWISTER_NODES}" ]; then
subset="[$(seq -s',' 1 ${TWISTER_NODES})]"
else
subset="[$(seq -s',' 1 ${MATRIX_SIZE})]"
fi
size=${TWISTER_NODES}
elif [ "${{github.event_name}}" = "schedule" -a "${{github.repository}}" = "zephyrproject-rtos/zephyr" ]; then
subset="[$(seq -s',' 1 ${WEEKLY_MATRIX_SIZE})]"
size=${WEEKLY_MATRIX_SIZE}
else
size=0
fi
echo "subset=${subset}" >> $GITHUB_OUTPUT
echo "size=${size}" >> $GITHUB_OUTPUT
echo "fullrun=${TWISTER_FULL}" >> $GITHUB_OUTPUT
twister-build:
runs-on:
@@ -29,7 +127,7 @@ jobs:
needs: twister-build-prep
if: needs.twister-build-prep.outputs.size != 0
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.27.4.20241026
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.4.20250818
options: '--entrypoint /bin/bash'
strategy:
fail-fast: false
@@ -44,13 +142,13 @@ jobs:
CCACHE_IGNOREOPTIONS: '-specs=* --specs=*'
BSIM_OUT_PATH: /opt/bsim/
BSIM_COMPONENTS_PATH: /opt/bsim/components
TWISTER_COMMON: '--no-detailed-test-id --force-color --inline-logs -v -N -M --retry-failed 3 --timeout-multiplier 2 '
WEEKLY_OPTIONS: ' -M --build-only --all --show-footprint --report-filtered'
PR_OPTIONS: ' --clobber-output --integration'
PUSH_OPTIONS: ' --clobber-output -M --show-footprint --report-filtered'
TWISTER_COMMON: ' --test-config tests/test_config_ci.yaml --no-detailed-test-id --force-color --inline-logs -v -N -M --retry-failed 3 --timeout-multiplier 2 '
WEEKLY_OPTIONS: ' -M --build-only --all --show-footprint --report-filtered -j 32'
PR_OPTIONS: ' --clobber-output --integration -j 16'
PUSH_OPTIONS: ' --clobber-output -M --show-footprint --report-filtered -j 16'
COMMIT_RANGE: ${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }}
BASE_REF: ${{ github.base_ref }}
LLVM_TOOLCHAIN_PATH: /usr/lib/llvm-16
LLVM_TOOLCHAIN_PATH: /usr/lib/llvm-20
steps:
- name: Print cloud service information
run: |
@@ -73,7 +171,7 @@ jobs:
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -81,7 +179,7 @@ jobs:
- name: Environment Setup
run: |
if [ "${{github.event_name}}" = "pull_request_target" ]; then
if [ "${{github.event_name}}" = "pull_request" ]; then
git config --global user.email "bot@zephyrproject.org"
git config --global user.name "Zephyr Builder"
rm -fr ".git/rebase-apply"
@@ -112,6 +210,10 @@ jobs:
echo "github.base_ref: ${{ github.base_ref }}"
echo "github.ref_name: ${{ github.ref_name }}"
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Set up ccache
run: |
mkdir -p ${CCACHE_DIR}
@@ -143,7 +245,7 @@ jobs:
fi
fi
- if: github.event_name == 'pull_request_target'
- if: github.event_name == 'pull_request'
name: Run Tests with Twister (Pull Request)
id: run_twister_pr
run: |
@@ -180,7 +282,7 @@ jobs:
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: Unit Test Results (Subset ${{ matrix.subset }})
if-no-files-found: ignore
@@ -202,7 +304,7 @@ jobs:
- if: matrix.subset == 1 && github.event_name == 'push'
name: Upload the list of Python packages
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: Frozen PIP package set
path: |
@@ -212,33 +314,44 @@ jobs:
name: "Publish Unit Tests Results"
needs:
- twister-build
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
checks: write # to create the check run entry with Twister test results
# the build-and-test job might be skipped, we don't need to run this job then
if: success() || failure()
steps:
- name: Check out source code
if: needs.twister-build.result == 'failure'
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Download Artifacts
uses: actions/download-artifact@v4
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
with:
path: artifacts
- name: Merge Test Results
run: |
pip install junitparser junit2html
junitparser merge artifacts/*/*/twister.xml junit.xml
junit2html junit.xml junit.html
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: Unit Test Results
if-no-files-found: ignore
@@ -247,7 +360,7 @@ jobs:
junit.xml
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@v2
uses: EnricoMi/publish-unit-test-result-action@3a74b2957438d0b6e2e61d67b05318aa25c9e6c6 # v2.20.0
with:
check_name: Unit Test Results
files: "**/twister.xml"
@@ -264,7 +377,7 @@ jobs:
- name: Upload Twister Analysis Results
if: needs.twister-build.result == 'failure'
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: Twister Analysis Results
if-no-files-found: ignore

View File

@@ -26,6 +26,9 @@ on:
- '.github/workflows/twister_tests.yml'
- 'scripts/schemas/twister/'
permissions:
contents: read
jobs:
twister-tests:
name: Twister Unit Tests
@@ -33,25 +36,22 @@ jobs:
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']
os: [ubuntu-22.04]
os: [ubuntu-24.04]
steps:
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: ${{ matrix.python-version }}
- name: cache-pip-linux
if: startsWith(runner.os, 'Linux')
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: install-packages
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-base.txt -r scripts/requirements-build-test.txt -r scripts/requirements-run-test.txt
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Run pytest for twisterlib
env:
ZEPHYR_BASE: ./

View File

@@ -15,66 +15,172 @@ on:
- 'scripts/tests/twister_blackbox/**'
- '.github/workflows/twister_tests_blackbox.yml'
permissions:
contents: read
env:
PYTHONIOENCODING: utf-8
jobs:
twister-tests:
name: Twister Black Box Tests
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']
os: [ubuntu-22.04]
container:
image: ghcr.io/zephyrproject-rtos/ci:v0.27.4
os: [ubuntu-24.04, macos-14, windows-2022]
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- name: Apply Container Owner Mismatch Workaround
run: |
# FIXME: The owner UID of the GITHUB_WORKSPACE directory may not
# match the container user UID because of the way GitHub
# Actions runner is implemented. Remove this workaround when
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: Checkout
uses: actions/checkout@v4
- name: Environment Setup
run: |
echo "$HOME/.local/bin" >> $GITHUB_PATH
west init -l . || true
# we do not depend on any hals, tools or bootloader, save some time and space...
west config manifest.group-filter -- -hal,-tools,-bootloader,-babblesim
west config manifest.project-filter -- -nrf_hw_models
west config --global update.narrow true
west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /github/cache/zephyrproject)
west forall -c 'git reset --hard HEAD'
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
path: zephyr
fetch-depth: 0
- name: Set Up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: ${{ matrix.python-version }}
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Go Into Venv
shell: bash
run: |
python3 -m pip install --user virtualenv
python3 -m venv env
source env/bin/activate
echo "$(which python)"
- name: Install Packages
run: |
python3 -m pip install -U -r scripts/requirements-base.txt -r scripts/requirements-build-test.txt -r scripts/requirements-run-test.txt
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@cefbf9086ce2da7d70e7ad9589af8aa1e4bda265 # v1.0.11
with:
app-path: zephyr
toolchains: all
- name: Run Pytest For Twister Black Box Tests
if: ${{ startsWith(runner.os, 'ubuntu') }}
working-directory: zephyr
shell: bash
env:
ZEPHYR_BASE: ./
ZEPHYR_TOOLCHAIN_VARIANT: zephyr
run: |
export ZEPHYR_SDK_INSTALL_DIR=${{ github.workspace }}/zephyr-sdk
echo "Run twister tests"
source zephyr-env.sh
PYTHONPATH="./scripts/tests" pytest ./scripts/tests/twister_blackbox
PYTHONPATH="./scripts/tests" pytest ./scripts/tests/twister_blackbox/
- name: Build firmware No. 1 - basic
working-directory: zephyr
shell: bash
run: |
if [ "${{ runner.os }}" = "macOS" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --build-only"
elif [ "${{ runner.os }}" = "Windows" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
./scripts/twister --runtime-artifact-cleanup --force-color --inline-logs -T samples/hello_world -T samples/cpp/hello_world -v $EXTRA_TWISTER_FLAGS
- name: Build firmware No. 2 - save and load with emulation only
working-directory: zephyr
shell: bash
run: |
if [ "${{ runner.os }}" = "macOS" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --build-only"
elif [ "${{ runner.os }}" = "Windows" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
BASIC_FLAGS="--runtime-artifact-cleanup --force-color --inline-logs -T samples/hello_world -T samples/cpp/hello_world -v $EXTRA_TWISTER_FLAGS"
./scripts/twister --save-tests tests.file $BASIC_FLAGS
./scripts/twister --load-tests tests.file --emulation-only $BASIC_FLAGS
rm tests.file
- name: Build firmware No. 3 - print out test plan
working-directory: zephyr
shell: bash
run: |
if [ "${{ runner.os }}" = "macOS" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --build-only"
elif [ "${{ runner.os }}" = "Windows" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
BASIC_FLAGS="--runtime-artifact-cleanup --force-color --inline-logs -v $EXTRA_TWISTER_FLAGS"
./scripts/twister --test-tree -T tests/kernel/spinlock $BASIC_FLAGS
- name: Build firmware No. 4 - integration, exclude tag, filter, shuffle, dry run
working-directory: zephyr
shell: bash
run: |
if [ "${{ runner.os }}" = "macOS" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --build-only"
elif [ "${{ runner.os }}" = "Windows" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
BASIC_FLAGS="--runtime-artifact-cleanup --force-color --inline-logs -v $EXTRA_TWISTER_FLAGS"
./scripts/twister --dry-run --integration --subset 1/3 --shuffle-tests --shuffle-tests-seed 1 --filter runnable --exclude-tag audio --exclude-tag driver $BASIC_FLAGS
- name: Build firmware No. 5 - test, arch, vendor, exclude-platform, platform-reports
working-directory: zephyr
shell: bash
run: |
if [ "${{ runner.os }}" = "macOS" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --build-only"
elif [ "${{ runner.os }}" = "Windows" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
BASIC_FLAGS="--runtime-artifact-cleanup --force-color --inline-logs -v $EXTRA_TWISTER_FLAGS"
./scripts/twister --test kernel.multiprocessing.spinlock --arch x86 --exclude-platform qemu_x86_64 --vendor qemu --platform-reports $BASIC_FLAGS
- name: Build firmware No. 6 - subtest, platform, rom-ram report, ROM footprint report from buildlog, size report
working-directory: zephyr
shell: bash
run: |
if [ "${{ runner.os }}" = "macOS" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --build-only"
elif [ "${{ runner.os }}" = "Windows" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
BASIC_FLAGS="--runtime-artifact-cleanup --force-color --inline-logs -v $EXTRA_TWISTER_FLAGS"
./scripts/twister --sub-test kernel.multiprocessing.spinlock.minimallibc.spinlock.spinlock_basic --platform qemu_x86 --create-rom-ram-report --footprint-report ROM --enable-size-report --footprint-from-buildlog $BASIC_FLAGS
- name: Build firmware No. 7 - list tags
working-directory: zephyr
shell: bash
run: |
if [ "${{ runner.os }}" = "macOS" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --build-only"
elif [ "${{ runner.os }}" = "Windows" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
BASIC_FLAGS="--runtime-artifact-cleanup --force-color --inline-logs -v $EXTRA_TWISTER_FLAGS"
./scripts/twister --sub-test kernel.multiprocessing.spinlock.minimallibc.spinlock.spinlock_basic --list-tags $BASIC_FLAGS
- name: Build firmware No. 8 - list tests
working-directory: zephyr
shell: bash
run: |
if [ "${{ runner.os }}" = "macOS" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --build-only"
elif [ "${{ runner.os }}" = "Windows" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
BASIC_FLAGS="--runtime-artifact-cleanup --force-color --inline-logs -v $EXTRA_TWISTER_FLAGS"
./scripts/twister -T tests/posix/common --list-tests $BASIC_FLAGS
- name: Build firmware No. 9 - report flags - dir, name, suffix, summary, all-options, filtered
working-directory: zephyr
shell: bash
run: |
if [ "${{ runner.os }}" = "macOS" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --build-only"
elif [ "${{ runner.os }}" = "Windows" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
BASIC_FLAGS="--runtime-artifact-cleanup --force-color --inline-logs -v $EXTRA_TWISTER_FLAGS"
./scripts/twister --sub-test kernel.multiprocessing.spinlock.minimallibc.spinlock.spinlock_basic --platform qemu_x86 --report-dir . --report-name test_name --report-suffix suffix --report-summary 0 --report-all-options --report-filtered $BASIC_FLAGS
- name: Build firmware No. 10 - force platform and toolchain, log level, timestamps, logfile
working-directory: zephyr
shell: bash
run: |
if [ "${{ runner.os }}" = "macOS" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --build-only"
elif [ "${{ runner.os }}" = "Windows" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
BASIC_FLAGS="--runtime-artifact-cleanup --force-color --inline-logs -v $EXTRA_TWISTER_FLAGS"
./scripts/twister --sub-test kernel.multiprocessing.spinlock.minimallibc.spinlock.spinlock_basic --force-platform --platform qemu_x86 --force-toolchain --log-level WARNING --log-file log.file $BASIC_FLAGS
rm log.file

View File

@@ -23,8 +23,11 @@ on:
- 'scripts/west_commands/**'
- '.github/workflows/west_cmds.yml'
permissions:
contents: read
jobs:
west-commnads:
west-commands:
name: West Command Tests
runs-on: ${{ matrix.os }}
strategy:
@@ -33,43 +36,24 @@ jobs:
os: [ubuntu-22.04, macos-14, windows-2022]
steps:
- name: checkout
uses: actions/checkout@v4
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: ${{ matrix.python-version }}
- name: cache-pip-linux
if: startsWith(runner.os, 'Linux')
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: cache-pip-mac
if: startsWith(runner.os, 'macOS')
uses: actions/cache@v4
with:
path: ~/Library/Caches/pip
# Trailing '-' was just to get a different cache name
key: ${{ runner.os }}-pip-${{ matrix.python-version }}-
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}-
- name: cache-pip-win
if: startsWith(runner.os, 'Windows')
uses: actions/cache@v4
with:
path: ~\AppData\Local\pip\Cache
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: install pytest
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install pytest west pyelftools canopen natsort progress mypy intelhex psutil ply pyserial anytree junitparser
pip install -r scripts/requirements-actions.txt --require-hashes
- name: run pytest-win
if: runner.os == 'Windows'
run: |
python ./scripts/west_commands/run_tests.py
- name: run pytest-mac-linux
if: runner.os != 'Windows'
run: |

1
.gitignore vendored
View File

@@ -102,6 +102,7 @@ MaintainersFormat.txt
ModulesMaintainers.txt
Nits.txt
Pylint.txt
PythonCompat.txt
Ruff.txt
SphinxLint.txt
SysbuildKconfig.txt

View File

@@ -59,3 +59,7 @@ ignore-merge-commits=false
# By specifying this rule, developers can only change the file when they explicitly reference
# it in the commit message.
#files=gitlint/rules.py,README.md
[ignore-by-author-name]
regex=^dependabot\[bot\]$
ignore=all

View File

@@ -43,6 +43,9 @@
"./boards/microchip/mec172xevb_assy6906/support/mec172x_remote_flasher.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./doc/_scripts/gen_devicetree_rest.py" = [
"SIM905", # https://docs.astral.sh/ruff/rules/split-static-string
]
"./doc/_scripts/redirects.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
]
@@ -233,15 +236,7 @@
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./scripts/build/gen_relocate_app.py" = [
"B028", # https://docs.astral.sh/ruff/rules/no-explicit-stacklevel
"E101", # https://docs.astral.sh/ruff/rules/mixed-spaces-and-tabs
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM102", # https://docs.astral.sh/ruff/rules/collapsible-if
"SIM401", # https://docs.astral.sh/ruff/rules/if-else-block-instead-of-dict-get
"UP006", # https://docs.astral.sh/ruff/rules/non-pep585-annotation
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
"UP037", # https://docs.astral.sh/ruff/rules/quoted-annotation
]
"./scripts/build/gen_strerror_table.py" = [
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
@@ -421,11 +416,10 @@
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM102", # https://docs.astral.sh/ruff/rules/collapsible-if
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
]
"./scripts/dts/gen_driver_kconfig_dts.py" = [
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/dts/gen_dts_cmake.py" = [
@@ -436,24 +430,11 @@
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
]
"./scripts/dts/python-devicetree/src/devicetree/dtlib.py" = [
"E701", # https://docs.astral.sh/ruff/rules/multiple-statements-on-one-line-colon
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM201", # https://docs.astral.sh/ruff/rules/negate-equal-op
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
"UP037", # https://docs.astral.sh/ruff/rules/quoted-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
]
"./scripts/dts/python-devicetree/src/devicetree/edtlib.py" = [
"B904", # https://docs.astral.sh/ruff/rules/raise-without-from-inside-except
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"E713", # https://docs.astral.sh/ruff/rules/not-in-test
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM102", # https://docs.astral.sh/ruff/rules/collapsible-if
"SIM118", # https://docs.astral.sh/ruff/rules/in-dict-keys
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
"UP037", # https://docs.astral.sh/ruff/rules/quoted-annotation
"SIM905", # https://docs.astral.sh/ruff/rules/split-static-string
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
]
"./scripts/dts/python-devicetree/src/devicetree/grutils.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
@@ -467,7 +448,7 @@
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
]
"./scripts/dts/python-devicetree/tests/test_edtlib.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
@@ -587,65 +568,6 @@
"UP036", # https://docs.astral.sh/ruff/rules/outdated-version-block
"UP038", # https://docs.astral.sh/ruff/rules/non-pep604-isinstance
]
"./scripts/list_boards.py" = [
"E731", # https://docs.astral.sh/ruff/rules/lambda-assignment
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM102", # https://docs.astral.sh/ruff/rules/collapsible-if
"UP006", # https://docs.astral.sh/ruff/rules/non-pep585-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP032", # https://docs.astral.sh/ruff/rules/f-string
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
]
"./scripts/list_hardware.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP006", # https://docs.astral.sh/ruff/rules/non-pep585-annotation
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP032", # https://docs.astral.sh/ruff/rules/f-string
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
]
"./scripts/logging/dictionary/database_gen.py" = [
"E713", # https://docs.astral.sh/ruff/rules/not-in-test
"E741", # https://docs.astral.sh/ruff/rules/ambiguous-variable-name
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM102", # https://docs.astral.sh/ruff/rules/collapsible-if
"SIM103", # https://docs.astral.sh/ruff/rules/needless-bool
"SIM113", # https://docs.astral.sh/ruff/rules/enumerate-for-loop
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
]
"./scripts/logging/dictionary/dictionary_parser/data_types.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./scripts/logging/dictionary/dictionary_parser/log_database.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM103", # https://docs.astral.sh/ruff/rules/needless-bool
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./scripts/logging/dictionary/dictionary_parser/log_parser.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/logging/dictionary/dictionary_parser/log_parser_v1.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP030", # https://docs.astral.sh/ruff/rules/format-literals
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/logging/dictionary/dictionary_parser/log_parser_v3.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM401", # https://docs.astral.sh/ruff/rules/if-else-block-instead-of-dict-get
]
"./scripts/logging/dictionary/dictionary_parser/mipi_syst.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/logging/dictionary/dictionary_parser/utils.py" = [
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/logging/dictionary/log_parser.py" = [
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/make_bugs_pickle.py" = [
"UP006", # https://docs.astral.sh/ruff/rules/non-pep585-annotation
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
@@ -691,9 +613,6 @@
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/pylib/pytest-twister-harness/src/twister_harness/device/utils.py" = [
"SIM105", # https://docs.astral.sh/ruff/rules/suppressible-exception
]
"./scripts/pylib/pytest-twister-harness/src/twister_harness/fixtures.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
@@ -748,6 +667,9 @@
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP012", # https://docs.astral.sh/ruff/rules/unnecessary-encode-utf8
]
"./scripts/pylib/pytest-twister-harness/tests/resources/zen_of_python.py" = [
"SIM905", # https://docs.astral.sh/ruff/rules/split-static-string
]
"./scripts/pylib/twister/expr_parser.py" = [
"SIM103", # https://docs.astral.sh/ruff/rules/needless-bool
"SIM110", # https://docs.astral.sh/ruff/rules/reimplemented-builtin
@@ -794,7 +716,7 @@
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM117", # https://docs.astral.sh/ruff/rules/multiple-with-statements
"UP006", # https://docs.astral.sh/ruff/rules/non-pep585-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
]
"./scripts/set_assignees.py" = [
@@ -811,11 +733,6 @@
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
]
"./scripts/support/quartus-flash.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
]
"./scripts/tests/twister/conftest.py" = [
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
@@ -1100,42 +1017,9 @@
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP004", # https://docs.astral.sh/ruff/rules/useless-object-inheritance
"UP006", # https://docs.astral.sh/ruff/rules/non-pep585-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
]
"./scripts/west_commands/bindesc.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP038", # https://docs.astral.sh/ruff/rules/non-pep604-isinstance
]
"./scripts/west_commands/blobs.py" = [
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/west_commands/build.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM105", # https://docs.astral.sh/ruff/rules/suppressible-exception
"UP008", # https://docs.astral.sh/ruff/rules/super-call-with-parameters
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/west_commands/build_helpers.py" = [
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/west_commands/completion.py" = [
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/west_commands/debug.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP008", # https://docs.astral.sh/ruff/rules/super-call-with-parameters
]
"./scripts/west_commands/export.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/west_commands/fetchers/__init__.py" = [
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
@@ -1148,14 +1032,6 @@
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
]
"./scripts/west_commands/flash.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP008", # https://docs.astral.sh/ruff/rules/super-call-with-parameters
]
"./scripts/west_commands/robot.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP008", # https://docs.astral.sh/ruff/rules/super-call-with-parameters
]
"./scripts/west_commands/run_common.py" = [
"B904", # https://docs.astral.sh/ruff/rules/raise-without-from-inside-except
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
@@ -1183,15 +1059,6 @@
"UP008", # https://docs.astral.sh/ruff/rules/super-call-with-parameters
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/west_commands/simulate.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP008", # https://docs.astral.sh/ruff/rules/super-call-with-parameters
]
"./scripts/west_commands/spdx.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/west_commands/tests/conftest.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
@@ -1227,9 +1094,8 @@
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/west_commands/tests/test_nrf.py" = [
"B011", # https://docs.astral.sh/ruff/rules/assert-false
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
]
"./scripts/west_commands/tests/test_nxp_s32dbg.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
@@ -1262,51 +1128,6 @@
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/west_commands/zspdx/cmakecache.py" = [
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/west_commands/zspdx/cmakefileapi.py" = [
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP008", # https://docs.astral.sh/ruff/rules/super-call-with-parameters
]
"./scripts/west_commands/zspdx/cmakefileapijson.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM116", # https://docs.astral.sh/ruff/rules/if-else-block-instead-of-dict-lookup
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/west_commands/zspdx/datatypes.py" = [
"UP008", # https://docs.astral.sh/ruff/rules/super-call-with-parameters
]
"./scripts/west_commands/zspdx/getincludes.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP021", # https://docs.astral.sh/ruff/rules/replace-universal-newlines
"UP022", # https://docs.astral.sh/ruff/rules/replace-stdout-stderr
]
"./scripts/west_commands/zspdx/sbom.py" = [
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP008", # https://docs.astral.sh/ruff/rules/super-call-with-parameters
]
"./scripts/west_commands/zspdx/scanner.py" = [
"SIM113", # https://docs.astral.sh/ruff/rules/enumerate-for-loop
"UP008", # https://docs.astral.sh/ruff/rules/super-call-with-parameters
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/west_commands/zspdx/walker.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP008", # https://docs.astral.sh/ruff/rules/super-call-with-parameters
]
"./scripts/west_commands/zspdx/writer.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/zephyr_module.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
@@ -1373,7 +1194,7 @@
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM401", # https://docs.astral.sh/ruff/rules/if-else-block-instead-of-dict-get
"UP006", # https://docs.astral.sh/ruff/rules/non-pep585-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
]
"./tests/drivers/can/host/pytest/test_can.py" = [
@@ -1388,6 +1209,11 @@
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./tests/lib/devicetree/memory_region_flags/pytest/test_memory_region_flags.py" = [
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./tests/misc/check_init_priorities/validate_check_init_priorities_output.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
@@ -1447,6 +1273,7 @@ exclude = [
"./boards/microchip/mec172xevb_assy6906/support/mec172x_remote_flasher.py",
"./doc/_extensions/zephyr/api_overview.py",
"./doc/_extensions/zephyr/application.py",
"./doc/_extensions/zephyr/domain/__init__.py",
"./doc/_extensions/zephyr/doxybridge.py",
"./doc/_extensions/zephyr/doxyrunner.py",
"./doc/_extensions/zephyr/doxytooltip/__init__.py",
@@ -1498,7 +1325,6 @@ exclude = [
"./scripts/build/gen_kobject_list.py",
"./scripts/build/gen_kobject_placeholders.py",
"./scripts/build/gen_offset_header.py",
"./scripts/build/gen_relocate_app.py",
"./scripts/build/gen_strerror_table.py",
"./scripts/build/gen_strsignal_table.py",
"./scripts/build/gen_symtab.py",
@@ -1517,6 +1343,7 @@ exclude = [
"./scripts/ci/guideline_check.py",
"./scripts/ci/stats/merged_prs.py",
"./scripts/ci/test_plan.py",
"./scripts/ci/twister_report_analyzer.py",
"./scripts/ci/upload_test_results_es.py",
"./scripts/ci/version_mgr.py",
"./scripts/coredump/coredump_gdbserver.py",
@@ -1581,7 +1408,6 @@ exclude = [
"./scripts/pylib/pytest-twister-harness/src/twister_harness/device/qemu_adapter.py",
"./scripts/pylib/pytest-twister-harness/src/twister_harness/fixtures.py",
"./scripts/pylib/pytest-twister-harness/src/twister_harness/helpers/mcumgr.py",
"./scripts/pylib/pytest-twister-harness/src/twister_harness/helpers/shell.py",
"./scripts/pylib/pytest-twister-harness/src/twister_harness/plugin.py",
"./scripts/pylib/pytest-twister-harness/src/twister_harness/twister_harness_config.py",
"./scripts/pylib/pytest-twister-harness/tests/conftest.py",
@@ -1619,7 +1445,6 @@ exclude = [
"./scripts/release/list_devicetree_bindings_changes.py",
"./scripts/set_assignees.py",
"./scripts/snippets.py",
"./scripts/support/quartus-flash.py",
"./scripts/tests/twister/conftest.py",
"./scripts/tests/twister/pytest_integration/test_harness_pytest.py",
"./scripts/tests/twister/test_cmakecache.py",
@@ -1686,6 +1511,7 @@ exclude = [
"./scripts/west_commands/fetchers/core.py",
"./scripts/west_commands/fetchers/http.py",
"./scripts/west_commands/flash.py",
"./scripts/west_commands/patch.py",
"./scripts/west_commands/robot.py",
"./scripts/west_commands/run_common.py",
"./scripts/west_commands/run_tests.py",
@@ -1707,7 +1533,6 @@ exclude = [
"./scripts/west_commands/runners/mdb.py",
"./scripts/west_commands/runners/misc.py",
"./scripts/west_commands/runners/native.py",
"./scripts/west_commands/runners/nios2.py",
"./scripts/west_commands/runners/nrf_common.py",
"./scripts/west_commands/runners/nrfjprog.py",
"./scripts/west_commands/runners/nrfutil.py",
@@ -1769,6 +1594,7 @@ exclude = [
"./soc/nuvoton/npcx/common/ecst/ecst.py",
"./soc/nuvoton/npcx/common/ecst/ecst_args.py",
"./soc/silabs/silabs_sim3/sim3u/gen_crossbar_config.py",
"./tests/bluetooth/classic/sdp_s/pytest/test_sdp.py",
"./tests/boot/with_mcumgr/pytest/test_downgrade_prevention.py",
"./tests/boot/with_mcumgr/pytest/test_upgrade.py",
"./tests/boot/with_mcumgr/pytest/west_sign_wrapper.py",
@@ -1777,8 +1603,8 @@ exclude = [
"./tests/drivers/can/host/pytest/test_can.py",
"./tests/kernel/timer/timer_behavior/pytest/saleae_logic2.py",
"./tests/kernel/timer/timer_behavior/pytest/test_timer.py",
"./tests/lib/devicetree/memory_region_flags/pytest/test_memory_region_flags.py",
"./tests/misc/check_init_priorities/validate_check_init_priorities_output.py",
"./tests/misc/llext-edk/pytest/test_edk.py",
"./tests/net/lib/lwm2m/interop/pytest/conftest.py",
"./tests/net/lib/lwm2m/interop/pytest/leshan.py",
"./tests/net/lib/lwm2m/interop/pytest/test_blockwise.py",

View File

@@ -71,6 +71,15 @@ set(ZEPHYR_CURRENT_LINKER_PASS 0)
set(ZEPHYR_CURRENT_LINKER_CMD linker_zephyr_pre${ZEPHYR_CURRENT_LINKER_PASS}.cmd)
set(ZEPHYR_LINK_STAGE_EXECUTABLE zephyr_pre${ZEPHYR_CURRENT_LINKER_PASS})
# Make kconfig variables available to the linker script generator
zephyr_linker_include_generated(KCONFIG ${CMAKE_CURRENT_BINARY_DIR}/.config)
# The linker generator also needs sections.h to be able to access e.g. _APP_SMEM_SECTION_NAME
# for linkerscripts that do not support c-preprocessing.
zephyr_linker_include_generated(HEADER ${ZEPHYR_BASE}/include/zephyr/linker/sections.h)
zephyr_linker_include_var(VAR CMAKE_VERBOSE_MAKEFILE VALUE ${CMAKE_VERBOSE_MAKEFILE})
# ZEPHYR_PREBUILT_EXECUTABLE is used outside of this file, therefore keep the
# existing variable to allow slowly cleanup of linking stage handling.
# Three stage linking active: pre0 -> pre1 -> final, this will correspond to `pre1`
@@ -87,7 +96,6 @@ set(OFFSETS_H_TARGET offsets_h)
set(SYSCALL_LIST_H_TARGET syscall_list_h_target)
set(DRIVER_VALIDATION_H_TARGET driver_validation_h_target)
set(KOBJ_TYPES_H_TARGET kobj_types_h_target)
set(PARSE_SYSCALLS_TARGET parse_syscalls_target)
set(DEVICE_API_LD_TARGET device_api_ld_target)
define_property(GLOBAL PROPERTY PROPERTY_OUTPUT_FORMAT BRIEF_DOCS " " FULL_DOCS " ")
@@ -151,13 +159,19 @@ zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:$<TARGET_PROPERTY:compiler,no_str
zephyr_compile_options($<$<COMPILE_LANGUAGE:CXX>:$<TARGET_PROPERTY:compiler-cpp,no_strict_aliasing>>)
# Extra warnings options for twister run
if (CONFIG_COMPILER_WARNINGS_AS_ERRORS)
if(CONFIG_COMPILER_WARNINGS_AS_ERRORS)
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:$<TARGET_PROPERTY:compiler,warnings_as_errors>>)
zephyr_compile_options($<$<COMPILE_LANGUAGE:CXX>:$<TARGET_PROPERTY:compiler,warnings_as_errors>>)
zephyr_compile_options($<$<COMPILE_LANGUAGE:ASM>:$<TARGET_PROPERTY:asm,warnings_as_errors>>)
zephyr_link_libraries($<TARGET_PROPERTY:linker,warnings_as_errors>)
endif()
if(CONFIG_DEPRECATION_TEST)
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:$<TARGET_PROPERTY:compiler,no_deprecation_warning>>)
zephyr_compile_options($<$<COMPILE_LANGUAGE:CXX>:$<TARGET_PROPERTY:compiler,no_deprecation_warning>>)
zephyr_compile_options($<$<COMPILE_LANGUAGE:ASM>:$<TARGET_PROPERTY:asm,no_deprecation_warning>>)
endif()
# @Intent: Set compiler flags to enable buffer overflow checks in libc functions
# @details:
# Kconfig.zephyr "Detect buffer overflows in libc calls" is a kconfig choice,
@@ -184,7 +198,7 @@ elseif(CONFIG_STACK_CANARIES_ALL)
zephyr_compile_options("$<$<COMPILE_LANGUAGE:CXX>:$<TARGET_PROPERTY:compiler,security_canaries_all>>")
elseif(CONFIG_STACK_CANARIES_EXPLICIT)
zephyr_compile_options("$<$<COMPILE_LANGUAGE:C>:$<TARGET_PROPERTY:compiler,security_canaries_explicit>>")
zephyr_compile_options("$<$<COMPILE_LANGUAGE:CXX>:$<TARGET_PROPERTY:compiler,security_canaries_explitic>>")
zephyr_compile_options("$<$<COMPILE_LANGUAGE:CXX>:$<TARGET_PROPERTY:compiler,security_canaries_explicit>>")
endif()
# @Intent: Obtain compiler optimizations flags and store in variables
@@ -200,24 +214,53 @@ endif()
# 1) Using EXTRA_CFLAGS which is applied regardless of kconfig choice, or
# 2) Rely on override support being implemented by your toolchain_cc_optimize_*()
#
get_property(OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG TARGET compiler PROPERTY no_optimization)
get_property(OPTIMIZE_FOR_DEBUG_FLAG TARGET compiler PROPERTY optimization_debug)
get_property(OPTIMIZE_FOR_SPEED_FLAG TARGET compiler PROPERTY optimization_speed)
get_property(OPTIMIZE_FOR_SIZE_FLAG TARGET compiler PROPERTY optimization_size)
get_property(OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG TARGET compiler PROPERTY optimization_size_aggressive)
get_property(COMPILER_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG TARGET compiler PROPERTY no_optimization)
get_property(COMPILER_OPTIMIZE_FOR_DEBUG_FLAG TARGET compiler PROPERTY optimization_debug)
get_property(COMPILER_OPTIMIZE_FOR_SPEED_FLAG TARGET compiler PROPERTY optimization_speed)
get_property(COMPILER_OPTIMIZE_FOR_SIZE_FLAG TARGET compiler PROPERTY optimization_size)
get_property(COMPILER_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG TARGET compiler PROPERTY optimization_size_aggressive)
get_property(ASM_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG TARGET asm PROPERTY no_optimization)
get_property(ASM_OPTIMIZE_FOR_DEBUG_FLAG TARGET asm PROPERTY optimization_debug)
get_property(ASM_OPTIMIZE_FOR_SPEED_FLAG TARGET asm PROPERTY optimization_speed)
get_property(ASM_OPTIMIZE_FOR_SIZE_FLAG TARGET asm PROPERTY optimization_size)
get_property(ASM_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG TARGET asm PROPERTY optimization_size_aggressive)
# Let the assembler inherit the optimization flags of the compiler if it is
# not set explicitly.
if(NOT ASM_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG)
set(ASM_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG ${COMPILER_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG})
endif()
if(NOT ASM_OPTIMIZE_FOR_DEBUG_FLAG)
set(ASM_OPTIMIZE_FOR_DEBUG_FLAG ${COMPILER_OPTIMIZE_FOR_DEBUG_FLAG})
endif()
if(NOT ASM_OPTIMIZE_FOR_SPEED_FLAG)
set(ASM_OPTIMIZE_FOR_SPEED_FLAG ${COMPILER_OPTIMIZE_FOR_SPEED_FLAG})
endif()
if(NOT ASM_OPTIMIZE_FOR_SIZE_FLAG)
set(ASM_OPTIMIZE_FOR_SIZE_FLAG ${COMPILER_OPTIMIZE_FOR_SIZE_FLAG})
endif()
if(NOT ASM_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG)
set(ASM_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG ${COMPILER_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG})
endif()
# From kconfig choice, pick the actual OPTIMIZATION_FLAG to use.
# Kconfig choice ensures only one of these CONFIG_*_OPTIMIZATIONS is set.
if(CONFIG_NO_OPTIMIZATIONS)
set(OPTIMIZATION_FLAG ${OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG})
set(COMPILER_OPTIMIZATION_FLAG ${COMPILER_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG})
set(ASM_OPTIMIZATION_FLAG ${ASM_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG})
elseif(CONFIG_DEBUG_OPTIMIZATIONS)
set(OPTIMIZATION_FLAG ${OPTIMIZE_FOR_DEBUG_FLAG})
set(COMPILER_OPTIMIZATION_FLAG ${COMPILER_OPTIMIZE_FOR_DEBUG_FLAG})
set(ASM_OPTIMIZATION_FLAG ${ASM_OPTIMIZE_FOR_DEBUG_FLAG})
elseif(CONFIG_SPEED_OPTIMIZATIONS)
set(OPTIMIZATION_FLAG ${OPTIMIZE_FOR_SPEED_FLAG})
set(COMPILER_OPTIMIZATION_FLAG ${COMPILER_OPTIMIZE_FOR_SPEED_FLAG})
set(ASM_OPTIMIZATION_FLAG ${ASM_OPTIMIZE_FOR_SPEED_FLAG})
elseif(CONFIG_SIZE_OPTIMIZATIONS)
set(OPTIMIZATION_FLAG ${OPTIMIZE_FOR_SIZE_FLAG}) # Default in kconfig
set(COMPILER_OPTIMIZATION_FLAG ${COMPILER_OPTIMIZE_FOR_SIZE_FLAG}) # Default in kconfig
set(ASM_OPTIMIZATION_FLAG ${ASM_OPTIMIZE_FOR_SIZE_FLAG})
elseif(CONFIG_SIZE_OPTIMIZATIONS_AGGRESSIVE)
set(OPTIMIZATION_FLAG ${OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG})
set(COMPILER_OPTIMIZATION_FLAG ${COMPILER_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG})
set(ASM_OPTIMIZATION_FLAG ${ASM_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG})
else()
message(FATAL_ERROR
"Unreachable code. Expected optimization level to have been chosen. See Kconfig.zephyr")
@@ -231,8 +274,9 @@ SOC_* symbol.")
endif()
# Apply the final optimization flag(s)
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:${OPTIMIZATION_FLAG}>)
zephyr_compile_options($<$<COMPILE_LANGUAGE:CXX>:${OPTIMIZATION_FLAG}>)
zephyr_compile_options($<$<COMPILE_LANGUAGE:ASM>:${ASM_OPTIMIZATION_FLAG}>)
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:${COMPILER_OPTIMIZATION_FLAG}>)
zephyr_compile_options($<$<COMPILE_LANGUAGE:CXX>:${COMPILER_OPTIMIZATION_FLAG}>)
if(CONFIG_LTO)
zephyr_compile_options($<TARGET_PROPERTY:compiler,optimization_lto>)
@@ -335,6 +379,18 @@ if (CONFIG_PICOLIBC AND NOT CONFIG_PICOLIBC_IO_FLOAT)
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:$<TARGET_PROPERTY:compiler,no_printf_return_value>>)
endif()
if(CONFIG_UBSAN)
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:$<TARGET_PROPERTY:compiler,sanitizer_undefined>>)
zephyr_link_libraries($<TARGET_PROPERTY:linker,sanitizer_undefined>)
if(CONFIG_UBSAN_LIBRARY)
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:$<TARGET_PROPERTY:compiler,sanitizer_undefined_library>>)
zephyr_link_libraries($<TARGET_PROPERTY:linker,sanitizer_undefined_library>)
elseif(CONFIG_UBSAN_TRAP)
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:$<TARGET_PROPERTY:compiler,sanitizer_undefined_trap>>)
zephyr_link_libraries($<TARGET_PROPERTY:linker,sanitizer_undefined_trap>)
endif()
endif()
# @Intent: Set compiler specific flag for tentative definitions, no-common
zephyr_compile_options($<TARGET_PROPERTY:compiler,no_common>)
@@ -813,7 +869,7 @@ add_custom_command(
--file-list ${syscalls_file_list_output}
$<$<BOOL:${CONFIG_EMIT_ALL_SYSCALLS}>:--emit-all-syscalls>
DEPENDS ${syscalls_subdirs_trigger} ${PARSE_SYSCALLS_HEADER_DEPENDS}
${syscalls_file_list_output} ${syscalls_interface}
${syscalls_file_list_output} syscalls_interface
)
# Make sure Picolibc is built before the rest of the system; there's no explicit
@@ -831,12 +887,6 @@ set_property(TARGET ${SYSCALL_LIST_H_TARGET}
${CMAKE_CURRENT_BINARY_DIR}/include/generated/zephyr/syscalls
)
add_custom_target(${PARSE_SYSCALLS_TARGET}
DEPENDS
${syscalls_json}
${struct_tags_json}
)
# 64-bit systems do not require special handling of 64-bit system call
# parameters or return values, indicate this to the system call boilerplate
# generation script.
@@ -879,30 +929,24 @@ add_custom_command(
COMMAND
${LEGACY_SYSCALL_LIST_H_ARGS}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
DEPENDS ${PARSE_SYSCALLS_TARGET}
DEPENDS ${syscalls_json}
)
# This is passed into all calls to the gen_kobject_list.py script.
set(gen_kobject_list_include_args --include-subsystem-list ${struct_tags_json})
set(DRV_VALIDATION ${PROJECT_BINARY_DIR}/include/generated/zephyr/driver-validation.h)
add_custom_command(
OUTPUT ${DRV_VALIDATION}
COMMAND
${PYTHON_EXECUTABLE}
${ZEPHYR_BASE}/scripts/build/gen_kobject_list.py
--validation-output ${DRV_VALIDATION}
${gen_kobject_list_include_args}
$<$<BOOL:${CMAKE_VERBOSE_MAKEFILE}>:--verbose>
DEPENDS
${ZEPHYR_BASE}/scripts/build/gen_kobject_list.py
${PARSE_SYSCALLS_TARGET}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)
add_custom_target(${DRIVER_VALIDATION_H_TARGET} DEPENDS ${DRV_VALIDATION})
include(${ZEPHYR_BASE}/cmake/kobj.cmake)
gen_kobj(KOBJ_INCLUDE_PATH)
set(DRV_VALIDATION ${PROJECT_BINARY_DIR}/include/generated/zephyr/driver-validation.h)
gen_kobject_list(
TARGET ${DRIVER_VALIDATION_H_TARGET}
OUTPUTS ${DRV_VALIDATION}
SCRIPT_ARGS --validation-output ${DRV_VALIDATION}
INCLUDES ${struct_tags_json}
DEPENDS ${struct_tags_json}
)
gen_kobject_list_headers(
INCLUDES ${struct_tags_json}
DEPENDS ${struct_tags_json}
)
# Generate sections for kernel device subsystems
set(
@@ -935,6 +979,8 @@ add_custom_target(${DEVICE_API_LD_TARGET}
${DEVICE_API_LINKER_SECTIONS_CMAKE}
)
zephyr_linker_include_generated(CMAKE ${DEVICE_API_LINKER_SECTIONS_CMAKE})
# Add a pseudo-target that is up-to-date when all generated headers
# are up-to-date.
@@ -1094,12 +1140,20 @@ if(CONFIG_CODE_DATA_RELOCATION)
endif()
if(CONFIG_USERSPACE)
zephyr_get_compile_options_for_lang_as_string(C compiler_flags_priv)
# Go for raw properties here since zephyr_get_compile_options_for_lang()
# processes the list of options, and wraps it in a $<JOIN thing. When
# generating the build systems this leads to some interesting command lines,
# with SHELL: not being present and other "random" list-join related issues
# (e.g. for IAR toolchains the lists were joined with "gnu" postfixed on a
# bunch of entries).
get_property(compiler_flags_priv TARGET zephyr_interface PROPERTY INTERFACE_COMPILE_OPTIONS)
string(REPLACE "$<TARGET_PROPERTY:compiler,coverage>" ""
NO_COVERAGE_FLAGS "${compiler_flags_priv}"
)
KOBJECT_HASH_COMPILE_OPTIONS "${compiler_flags_priv}")
list(APPEND KOBJECT_HASH_COMPILE_OPTIONS
$<TARGET_PROPERTY:compiler,no_function_sections>
$<TARGET_PROPERTY:compiler,no_data_sections>)
set(GEN_KOBJ_LIST ${ZEPHYR_BASE}/scripts/build/gen_kobject_list.py)
set(PROCESS_GPERF ${ZEPHYR_BASE}/scripts/build/process_gperf.py)
endif()
@@ -1127,8 +1181,6 @@ elseif(DEFINED BOARD_LINKER_SCRIPT)
set(LINKER_SCRIPT ${BOARD_LINKER_SCRIPT})
elseif(DEFINED SOC_LINKER_SCRIPT)
set(LINKER_SCRIPT ${SOC_LINKER_SCRIPT})
else()
find_package(Deprecated COMPONENTS SEARCHED_LINKER_SCRIPT)
endif()
if(NOT EXISTS ${LINKER_SCRIPT})
@@ -1136,14 +1188,20 @@ if(NOT EXISTS ${LINKER_SCRIPT})
endif()
if(CONFIG_USERSPACE)
set(APP_SMEM_ALIGNED_LD "${PROJECT_BINARY_DIR}/include/generated/app_smem_aligned.ld")
set(APP_SMEM_UNALIGNED_LD "${PROJECT_BINARY_DIR}/include/generated/app_smem_unaligned.ld")
if(CONFIG_CMAKE_LINKER_GENERATOR)
set(APP_SMEM_LD_EXT "cmake")
else()
set(APP_SMEM_LD_EXT "ld")
endif()
set(APP_SMEM_ALIGNED_LD "${PROJECT_BINARY_DIR}/include/generated/app_smem_aligned.${APP_SMEM_LD_EXT}")
set(APP_SMEM_UNALIGNED_LD "${PROJECT_BINARY_DIR}/include/generated/app_smem_unaligned.${APP_SMEM_LD_EXT}")
if(CONFIG_LINKER_USE_PINNED_SECTION)
set(APP_SMEM_PINNED_ALIGNED_LD
"${PROJECT_BINARY_DIR}/include/generated/app_smem_pinned_aligned.ld")
"${PROJECT_BINARY_DIR}/include/generated/app_smem_pinned_aligned.${APP_SMEM_LD_EXT}")
set(APP_SMEM_PINNED_UNALIGNED_LD
"${PROJECT_BINARY_DIR}/include/generated/app_smem_pinned_unaligned.ld")
"${PROJECT_BINARY_DIR}/include/generated/app_smem_pinned_unaligned.${APP_SMEM_LD_EXT}")
if(NOT CONFIG_LINKER_GENERIC_SECTIONS_PRESENT_AT_BOOT)
# The libc partition may hold symbols that are required during boot process,
@@ -1208,9 +1266,11 @@ if(CONFIG_USERSPACE)
set(APP_SMEM_UNALIGNED_LIB app_smem_unaligned_output_obj_renamed_lib)
list(APPEND LINKER_PASS_${ZEPHYR_CURRENT_LINKER_PASS}_DEFINE "LINKER_APP_SMEM_UNALIGNED")
endif()
if (CONFIG_USERSPACE)
foreach(dep ${APP_SMEM_UNALIGNED_LD} ${APP_SMEM_PINNED_UNALIGNED_LD})
zephyr_linker_include_generated(CMAKE ${dep} PASS LINKER_APP_SMEM_UNALIGNED)
endforeach()
add_custom_command(
OUTPUT ${APP_SMEM_ALIGNED_LD} ${APP_SMEM_PINNED_ALIGNED_LD}
COMMAND ${PYTHON_EXECUTABLE}
@@ -1230,6 +1290,9 @@ if (CONFIG_USERSPACE)
COMMAND_EXPAND_LISTS
COMMENT "Generating app_smem_aligned linker section"
)
foreach(dep ${APP_SMEM_ALIGNED_LD} ${APP_SMEM_PINNED_ALIGNED_LD})
zephyr_linker_include_generated(CMAKE ${dep} PASS NOT LINKER_APP_SMEM_UNALIGNED)
endforeach()
endif()
if(CONFIG_USERSPACE)
@@ -1244,23 +1307,13 @@ if(CONFIG_USERSPACE)
set(KOBJECT_PREBUILT_HASH_OUTPUT_SRC_PRE kobject_prebuilt_hash_preprocessed.c)
set(KOBJECT_PREBUILT_HASH_OUTPUT_SRC kobject_prebuilt_hash.c)
add_custom_command(
gen_kobject_list_gperf(
TARGET kobj_prebuilt_hash_list
OUTPUT ${KOBJECT_PREBUILT_HASH_LIST}
COMMAND
${PYTHON_EXECUTABLE}
${GEN_KOBJ_LIST}
--kernel $<TARGET_FILE:${ZEPHYR_LINK_STAGE_EXECUTABLE}>
--gperf-output ${KOBJECT_PREBUILT_HASH_LIST}
${gen_kobject_list_include_args}
$<$<BOOL:${CMAKE_VERBOSE_MAKEFILE}>:--verbose>
DEPENDS
${ZEPHYR_LINK_STAGE_EXECUTABLE}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
KERNEL_TARGET ${ZEPHYR_LINK_STAGE_EXECUTABLE}
INCLUDES ${struct_tags_json}
DEPENDS ${struct_tags_json}
)
add_custom_target(
kobj_prebuilt_hash_list
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${KOBJECT_PREBUILT_HASH_LIST}
)
add_custom_command(
OUTPUT ${KOBJECT_PREBUILT_HASH_OUTPUT_SRC_PRE}
@@ -1297,11 +1350,13 @@ if(CONFIG_USERSPACE)
add_library(
kobj_prebuilt_hash_output_lib
OBJECT ${CMAKE_CURRENT_BINARY_DIR}/${KOBJECT_PREBUILT_HASH_OUTPUT_SRC}
)
)
set_source_files_properties(${KOBJECT_PREBUILT_HASH_OUTPUT_SRC}
PROPERTIES COMPILE_FLAGS
"${NO_COVERAGE_FLAGS} -fno-function-sections -fno-data-sections")
# set_target_properties sets ALL properties, target_compile_options() adds
# and KOBJECT_HASH_COMPILE_OPTIONS contains all the options.
set_target_properties(kobj_prebuilt_hash_output_lib PROPERTIES
COMPILE_OPTIONS "${KOBJECT_HASH_COMPILE_OPTIONS}"
)
target_compile_definitions(kobj_prebuilt_hash_output_lib
PRIVATE $<TARGET_PROPERTY:zephyr_interface,INTERFACE_COMPILE_DEFINITIONS>
@@ -1337,6 +1392,13 @@ if(CONFIG_USERSPACE)
DEPENDS
${KOBJECT_LINKER_HEADER_DATA}
)
# gen_kobject_placeholders.py generates linker-kobject-prebuild-data.h,
# linker-kobject-prebuild-priv-stacks.h and linker-kobject-prebuild-rodata.h
foreach(ext "-data.h" "-priv-stacks.h" "-rodata.h")
string(REGEX REPLACE "-data.h$" ${ext} file ${KOBJECT_LINKER_HEADER_DATA})
zephyr_linker_include_generated(HEADER ${file} PASS LINKER_ZEPHYR_PREBUILT LINKER_ZEPHYR_FINAL)
endforeach()
endif()
if(CONFIG_USERSPACE OR CONFIG_DEVICE_DEPS)
@@ -1444,23 +1506,13 @@ if(CONFIG_USERSPACE)
# Use the script GEN_KOBJ_LIST to scan the kernel binary's
# (${ZEPHYR_LINK_STAGE_EXECUTABLE}) DWARF information to produce a table of kernel
# objects (KOBJECT_HASH_LIST) which we will then pass to gperf
add_custom_command(
gen_kobject_list_gperf(
TARGET kobj_hash_list
OUTPUT ${KOBJECT_HASH_LIST}
COMMAND
${PYTHON_EXECUTABLE}
${GEN_KOBJ_LIST}
--kernel $<TARGET_FILE:${ZEPHYR_LINK_STAGE_EXECUTABLE}>
--gperf-output ${KOBJECT_HASH_LIST}
${gen_kobject_list_include_args}
$<$<BOOL:${CMAKE_VERBOSE_MAKEFILE}>:--verbose>
DEPENDS
${ZEPHYR_LINK_STAGE_EXECUTABLE}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
KERNEL_TARGET ${ZEPHYR_LINK_STAGE_EXECUTABLE}
INCLUDES ${struct_tags_json}
DEPENDS ${struct_tags_json}
)
add_custom_target(
kobj_hash_list
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${KOBJECT_HASH_LIST}
)
# Use gperf to generate C code (KOBJECT_HASH_OUTPUT_SRC_PRE) which implements a
# perfect hashtable based on KOBJECT_HASH_LIST
@@ -1509,9 +1561,9 @@ if(CONFIG_USERSPACE)
OBJECT ${CMAKE_CURRENT_BINARY_DIR}/${KOBJECT_HASH_OUTPUT_SRC}
)
set_source_files_properties(${KOBJECT_HASH_OUTPUT_SRC}
PROPERTIES COMPILE_FLAGS
"${NO_COVERAGE_FLAGS} -fno-function-sections -fno-data-sections")
set_target_properties(kobj_hash_output_lib PROPERTIES
COMPILE_OPTIONS "${KOBJECT_HASH_COMPILE_OPTIONS}"
)
target_compile_definitions(kobj_hash_output_lib
PRIVATE $<TARGET_PROPERTY:zephyr_interface,INTERFACE_COMPILE_DEFINITIONS>
@@ -1679,8 +1731,12 @@ list(APPEND
list(APPEND post_build_byproducts ${KERNEL_MAP_NAME})
# Use ';' as separator to get proper space in resulting command.
set(gap_fill_prop "$<TARGET_PROPERTY:bintools,elfconvert_flag_gapfill>")
set(gap_fill "$<$<BOOL:${gap_fill_prop}>:${gap_fill_prop}${CONFIG_BUILD_GAP_FILL_PATTERN}>")
# Ignore gapfill for RX target as some RX toolchains generate wrong output image when running
# gapfill for binary format.
if(NOT CONFIG_RX)
set(gap_fill_prop "$<TARGET_PROPERTY:bintools,elfconvert_flag_gapfill>")
set(gap_fill "$<$<BOOL:${gap_fill_prop}>:${gap_fill_prop}${CONFIG_BUILD_GAP_FILL_PATTERN}>")
endif()
if(CONFIG_OUTPUT_PRINT_MEMORY_USAGE)
target_link_libraries(${logical_target_for_zephyr_elf} $<TARGET_PROPERTY:linker,memusage>)
@@ -1723,13 +1779,8 @@ if(CONFIG_BUILD_OUTPUT_ADJUST_LMA)
)
endif()
if(NOT CONFIG_CPP_EXCEPTIONS)
set(eh_frame_section ".eh_frame")
else()
set(eh_frame_section "")
endif()
set(remove_sections_argument_list "")
foreach(section .comment COMMON ${eh_frame_section})
foreach(section .comment COMMON)
list(APPEND remove_sections_argument_list
$<TARGET_PROPERTY:bintools,elfconvert_flag_section_remove>${section})
endforeach()
@@ -1810,6 +1861,28 @@ if(CONFIG_BUILD_OUTPUT_BIN AND CONFIG_BUILD_OUTPUT_UF2)
set(BYPRODUCT_KERNEL_UF2_NAME "${PROJECT_BINARY_DIR}/${KERNEL_UF2_NAME}" CACHE FILEPATH "Kernel uf2 file" FORCE)
endif()
if(CONFIG_BUILD_OUTPUT_MOT)
get_property(elfconvert_formats TARGET bintools PROPERTY elfconvert_formats)
if(srec IN_LIST elfconvert_formats)
list(APPEND
post_build_commands
COMMAND $<TARGET_PROPERTY:bintools,elfconvert_command>
$<TARGET_PROPERTY:bintools,elfconvert_flag>
${GAP_FILL}
$<TARGET_PROPERTY:bintools,elfconvert_flag_outtarget>srec
$<TARGET_PROPERTY:bintools,elfconvert_flag_intarget>${OUTPUT_FORMAT}
$<TARGET_PROPERTY:bintools,elfconvert_flag_infile>${KERNEL_ELF_NAME}
$<TARGET_PROPERTY:bintools,elfconvert_flag_outfile>${KERNEL_MOT_NAME}
$<TARGET_PROPERTY:bintools,elfconvert_flag_final>
)
list(APPEND
post_build_byproducts
${KERNEL_MOT_NAME}
)
set(BYPRODUCT_KERNEL_MOT_NAME "${PROJECT_BINARY_DIR}/${KERNEL_MOT_NAME}" CACHE FILEPATH "Kernel mot file" FORCE)
endif()
endif()
set(KERNEL_META_PATH ${PROJECT_BINARY_DIR}/${KERNEL_META_NAME} CACHE INTERNAL "")
if(CONFIG_BUILD_OUTPUT_META)
list(APPEND
@@ -1866,11 +1939,14 @@ if(CONFIG_BUILD_OUTPUT_S19)
endif()
if(CONFIG_OUTPUT_DISASSEMBLY)
if(CONFIG_OUTPUT_DISASSEMBLE_ALL)
if(CONFIG_OUTPUT_DISASSEMBLE_ALL)
set(disassembly_type "$<TARGET_PROPERTY:bintools,disassembly_flag_all>")
elseif (CONFIG_OUTPUT_DISASSEMBLY_WITH_SOURCE)
elseif(CONFIG_OUTPUT_DISASSEMBLY_WITH_SOURCE)
set(disassembly_type "$<TARGET_PROPERTY:bintools,disassembly_flag_inline_source>")
endif()
if(CONFIG_OUTPUT_DISASSEMBLY_NO_ALIASES)
list(APPEND disassembly_type "$<TARGET_PROPERTY:bintools,disassembly_flag_no_aliases>")
endif()
list(APPEND
post_build_commands
COMMAND $<TARGET_PROPERTY:bintools,disassembly_command>
@@ -2275,7 +2351,7 @@ if(CONFIG_LLEXT_EDK)
${SYSCALL_SPLIT_TIMEOUT_ARG}
COMMAND ${CMAKE_COMMAND}
-P ${ZEPHYR_BASE}/cmake/llext-edk.cmake
DEPENDS ${logical_target_for_zephyr_elf} build_info_yaml_saved
DEPENDS ${logical_target_for_zephyr_elf} ${syscalls_json} build_info_yaml_saved
COMMAND_EXPAND_LISTS
)
add_custom_target(llext-edk DEPENDS ${llext_edk_file})

4
CODEOWNERS Normal file
View File

@@ -0,0 +1,4 @@
# Instead of the CODEOWNERS file, The Zephyr Project uses a custom format.
# See MAINTAINERS.yml for details.
#
# DO NOT EDIT THIS FILE.

View File

@@ -215,12 +215,6 @@ config LINKER_SORT_BY_ALIGNMENT
in decreasing size of symbols. This helps to minimize
padding between symbols.
config SRAM_VECTOR_TABLE
bool "Place the vector table in SRAM instead of flash"
help
The option specifies that the vector table should be placed at the
start of SRAM instead of the start of flash.
config HAS_SRAM_OFFSET
bool
help
@@ -513,7 +507,7 @@ config SIZE_OPTIMIZATIONS
config SIZE_OPTIMIZATIONS_AGGRESSIVE
bool "Aggressively optimize for size"
help
Compiler optimizations wil be set to -Oz independently of other
Compiler optimizations will be set to -Oz independently of other
options.
config SPEED_OPTIMIZATIONS
@@ -551,6 +545,14 @@ config COMPILER_WARNINGS_AS_ERRORS
help
Turn on "warning as error" toolchain flags
config DEPRECATION_TEST
bool "Indicate test for deprecated feature"
help
This option is selected by tests which check functionality of
deprecated features. It ensures that COMPILER_WARNINGS_AS_ERRORS
is not selected as that would generate errors when the deprecated
features are used.
config COMPILER_SAVE_TEMPS
bool "Save temporary object files"
help
@@ -621,6 +623,13 @@ config MISRA_SANE
standard for safety reasons. Specifically variable length
arrays are not permitted (and gcc will enforce this).
config TOOLCHAIN_SUPPORTS_VLA_IN_STATEMENTS
bool
default y
help
Hidden symbol to state if the toolchain can handle vla in
statements.
endmenu
choice
@@ -688,6 +697,13 @@ config OUTPUT_DISASSEMBLY_WITH_SOURCE
the .lst file that can vary across platforms because
of reasons such as having ".." include paths.
config OUTPUT_DISASSEMBLY_NO_ALIASES
bool "Disassemble with raw instruction mnemonics"
depends on OUTPUT_DISASSEMBLY
help
The .lst file will contain raw instruction mnemonic instead of
pseudo instructions.
config OUTPUT_PRINT_MEMORY_USAGE
bool "Print memory usage to stdout"
default y
@@ -784,6 +800,12 @@ config BUILD_OUTPUT_UF2
Build a UF2 binary zephyr/zephyr.uf2 in the build directory.
The name of this file can be customized with CONFIG_KERNEL_BIN_NAME.
config BUILD_OUTPUT_MOT
bool "Build a binary in MOT format"
help
Build a MOT binary zephyr/zephyr.mot in the build directory.
The name of this file can be customized with CONFIG_KERNEL_BIN_NAME.
if BUILD_OUTPUT_UF2
config BUILD_OUTPUT_UF2_FAMILY_ID
@@ -1015,6 +1037,12 @@ config WARN_EXPERIMENTAL
Print a warning when the Kconfig tree is parsed if any experimental
features are enabled.
config NOT_SECURE
bool
help
Symbol to be selected by a feature to inidicate that feature is
not secure.
config TAINT
bool
help

File diff suppressed because it is too large Load Diff

View File

@@ -24,7 +24,7 @@ resource-constrained systems: from simple embedded environmental sensors and
LED wearables to sophisticated smart watches and IoT wireless gateways.
The Zephyr kernel supports multiple architectures, including ARM (Cortex-A,
Cortex-R, Cortex-M), Intel x86, ARC, Nios II, Tensilica Xtensa, and RISC-V,
Cortex-R, Cortex-M), Intel x86, ARC, Tensilica Xtensa, and RISC-V,
SPARC, MIPS, and a large number of `supported boards`_.
.. below included in doc/introduction/introduction.rst

View File

@@ -1 +1 @@
0.17.0
0.17.4

View File

@@ -1,5 +1,5 @@
VERSION_MAJOR = 4
VERSION_MINOR = 1
PATCHLEVEL = 0
VERSION_MINOR = 2
PATCHLEVEL = 1
VERSION_TWEAK = 0
EXTRAVERSION =

View File

@@ -8,7 +8,7 @@
# Include these first so that any properties (e.g. defaults) below can be
# overridden (by defining symbols in multiple locations)
source "$(ARCH_DIR)/Kconfig.$(HWM_SCHEME)"
source "$(KCONFIG_BINARY_DIR)/arch/Kconfig"
# ToDo: Generate a Kconfig.arch for loading of additional arch in HWMv2.
osource "$(KCONFIG_BINARY_DIR)/Kconfig.arch"
@@ -33,6 +33,7 @@ config ARM
select ARCH_IS_SET
select ARCH_SUPPORTS_COREDUMP if CPU_CORTEX_M
select ARCH_SUPPORTS_COREDUMP_THREADS if CPU_CORTEX_M
select ARCH_SUPPORTS_COREDUMP_STACK_PTR if CPU_CORTEX_M
# FIXME: current state of the code for all ARM requires this, but
# is really only necessary for Cortex-M with ARM MPU!
select GEN_PRIV_STACKS
@@ -103,18 +104,11 @@ config X86
help
x86 architecture
config NIOS2
bool
select ARCH_IS_SET
select ATOMIC_OPERATIONS_C
imply XIP
select ARCH_HAS_TIMING_FUNCTIONS
help
Nios II Gen 2 architecture
config RISCV
bool
select ARCH_IS_SET
select ATOMIC_OPERATIONS_C if !RISCV_ISA_EXT_A
select ATOMIC_OPERATIONS_BUILTIN if RISCV_ISA_EXT_A
select ARCH_SUPPORTS_COREDUMP
select ARCH_SUPPORTS_COREDUMP_PRIV_STACKS
select ARCH_SUPPORTS_ROM_START if !SOC_FAMILY_ESPRESSIF_ESP32
@@ -166,6 +160,15 @@ config ARCH_POSIX
help
POSIX (native) architecture
config RX
bool
select ARCH_IS_SET
select ATOMIC_OPERATIONS_C
select USE_SWITCH
select USE_SWITCH_SUPPORTED
help
Renesas RX architecture
config ARCH_IS_SET
bool
help
@@ -227,7 +230,7 @@ config SRAM_BASE_ADDRESS
/chosen/zephyr,sram in devicetree. The user should generally avoid
changing it via menuconfig or in configuration files.
if ARC || ARM || ARM64 || NIOS2 || X86 || RISCV
if ARC || ARM || ARM64 || X86 || RISCV || RX
# Workaround for not being able to have commas in macro arguments
DT_CHOSEN_Z_FLASH := zephyr,flash
@@ -250,7 +253,7 @@ config FLASH_BASE_ADDRESS
normally set by the board's defconfig file and the user should generally
avoid modifying it via the menu configuration.
endif # ARM || ARM64 || ARC || NIOS2 || X86 || RISCV
endif # ARM || ARM64 || ARC || X86 || RISCV || RX
if ARCH_HAS_TRUSTED_EXECUTION
@@ -317,7 +320,7 @@ config PRIVILEGED_STACK_SIZE
int "Size of privileged stack"
default 2048 if EMUL
default 1024
depends on ARCH_HAS_USERSPACE
depends on USERSPACE
help
This option sets the privileged stack region size that will be used
in addition to the user mode thread stack. During normal execution,
@@ -327,18 +330,19 @@ config PRIVILEGED_STACK_SIZE
config KOBJECT_TEXT_AREA
int "Size of kobject text area"
default 1024 if UBSAN
default 512 if COVERAGE_GCOV
default 512 if NO_OPTIMIZATIONS
default 512 if STACK_CANARIES && RISCV
default 256
depends on ARCH_HAS_USERSPACE
depends on USERSPACE
help
Size of kernel object text area. Used in linker script.
config KOBJECT_DATA_AREA_RESERVE_EXTRA_PERCENT
int "Reserve extra kobject data area (in percentage)"
default 100
depends on ARCH_HAS_USERSPACE
depends on USERSPACE
help
Multiplication factor used to calculate the size of placeholder to
reserve space for kobject metadata hash table. The hash table is
@@ -352,7 +356,7 @@ config KOBJECT_DATA_AREA_RESERVE_EXTRA_PERCENT
config KOBJECT_RODATA_AREA_EXTRA_BYTES
int "Reserve extra bytes for kobject rodata area"
default 16
depends on ARCH_HAS_USERSPACE
depends on USERSPACE
help
Reserve a few more bytes for the RODATA region for kobject metadata.
This is to account for the uncertainty of tables generated by gperf.
@@ -438,15 +442,21 @@ config ARCH_STACKWALK_MAX_FRAMES
menu "Interrupt Configuration"
config TOOLCHAIN_SUPPORTS_ISR_TABLES_LOCAL_DECLARATION
bool
help
Hidden option to signal that toolchain supports local declaration of
interrupt tables.
config ISR_TABLES_LOCAL_DECLARATION_SUPPORTED
bool
default y
# Userspace is currently not supported
depends on !USERSPACE
# List of currently supported architectures
depends on ARM || ARM64
depends on ARM || ARM64 || RISCV
# List of currently supported toolchains
depends on "$(ZEPHYR_TOOLCHAIN_VARIANT)" = "zephyr" || "$(ZEPHYR_TOOLCHAIN_VARIANT)" = "gnuarmemb"
depends on "$(ZEPHYR_TOOLCHAIN_VARIANT)" = "zephyr" || "$(ZEPHYR_TOOLCHAIN_VARIANT)" = "gnuarmemb" || "$(ZEPHYR_TOOLCHAIN_VARIANT)" = "llvm" || TOOLCHAIN_SUPPORTS_ISR_TABLES_LOCAL_DECLARATION
config ISR_TABLES_LOCAL_DECLARATION
bool "ISR tables created locally and placed by linker"
@@ -513,6 +523,12 @@ config ARCH_IRQ_VECTOR_TABLE_ALIGN
to be aligned to architecture specific size. The default
size is 0 for no alignment.
config ARCH_DEVICE_STATE_ALIGN
int "Alignment size of device state"
default 4
help
This option controls alignment size of device state.
choice IRQ_VECTOR_TABLE_TYPE
prompt "IRQ vector table type"
depends on GEN_IRQ_VECTOR_TABLE
@@ -573,6 +589,15 @@ config IRQ_OFFLOAD
run in interrupt context. Only useful for test cases that need
to validate the correctness of kernel objects in IRQ context.
config SRAM_VECTOR_TABLE
bool "Place the vector table in SRAM instead of flash"
depends on ARCH_HAS_VECTOR_TABLE_RELOCATION
depends on XIP
depends on !ROMSTART_RELOCATION_ROM
help
When XiP is enabled, this option will result in the vector table being
relocated from Flash to SRAM.
config IRQ_OFFLOAD_NESTED
bool "irq_offload() supports nested IRQs"
depends on IRQ_OFFLOAD
@@ -671,6 +696,9 @@ config ARCH_HAS_NOCACHE_MEMORY_SUPPORT
config ARCH_HAS_RAMFUNC_SUPPORT
bool
config ARCH_HAS_VECTOR_TABLE_RELOCATION
bool
config ARCH_HAS_NESTED_EXCEPTION_DETECTION
bool
@@ -683,6 +711,9 @@ config ARCH_SUPPORTS_COREDUMP_THREADS
config ARCH_SUPPORTS_COREDUMP_PRIV_STACKS
bool
config ARCH_SUPPORTS_COREDUMP_STACK_PTR
bool
config ARCH_SUPPORTS_ARCH_HW_INIT
bool
@@ -1134,9 +1165,9 @@ config ARCH_HAS_CUSTOM_CPU_ATOMIC_IDLE
config ARCH_HAS_CUSTOM_SWAP_TO_MAIN
bool
help
It's possible that an architecture port cannot use _Swap() to swap to
the _main() thread, but instead must do something custom. It must
enable this option in that case.
It's possible that an architecture port cannot use z_swap_unlocked()
to swap to the main thread (bg_thread_main), but instead must do
something custom. It must enable this option in that case.
config ARCH_HAS_CUSTOM_BUSY_WAIT
bool

View File

@@ -1,5 +0,0 @@
# Copyright (c) 2023 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0
# Note: $ARCH might be a glob pattern
source "$(ARCH_DIR)/$(ARCH)/Kconfig"

View File

@@ -1,5 +0,0 @@
# Copyright (c) 2023 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0
source "$(KCONFIG_BINARY_DIR)/arch/Kconfig"

View File

@@ -258,10 +258,10 @@ config ARC_CURRENT_THREAD_USE_NO_TLS
select CURRENT_THREAD_USE_NO_TLS
default y if (RGF_NUM_BANKS > 1) || ("$(ZEPHYR_TOOLCHAIN_VARIANT)" = "arcmwdt")
help
Disable current Thread Local Storage for ARC. For cores with more then one
RGF_NUM_BANKS the parameter is disabled by-default because banks syncronization
Disable current Thread Local Storage for ARC. For cores with more than one
RGF_NUM_BANKS the parameter is disabled by-default because banks synchronization
requires significant time, and it slows down performance.
ARCMWDT works with tls pointer in different way then GCC. Optimized access to
ARCMWDT works with TLS pointer in different way then GCC. Optimized access to
TLS pointer via the _current symbol does not provide significant advantages
in case of MetaWare.
@@ -274,7 +274,7 @@ config GEN_IRQ_START_VECTOR
config HARVARD
bool "Harvard Architecture"
help
The ARC CPU can be configured to have two busses;
The ARC CPU can be configured to have two buses;
one for instruction fetching and another that serves as a data bus.
config CODE_DENSITY

View File

@@ -8,14 +8,6 @@
__weak void *__dso_handle;
int __cxa_atexit(void (*destructor)(void *), void *objptr, void *dso)
{
ARG_UNUSED(destructor);
ARG_UNUSED(objptr);
ARG_UNUSED(dso);
return 0;
}
int atexit(void (*function)(void))
{
return 0;

View File

@@ -39,7 +39,7 @@ config ARC_XY_ENABLE
bool "ARC address generation unit registers"
help
Processors with XY memory and AGU registers can configure this
option to accelerate DSP instrctions.
option to accelerate DSP instructions.
config ARC_AGU_SHARING
bool "ARC address generation unit register sharing"

View File

@@ -6,6 +6,7 @@
#include <zephyr/llext/elf.h>
#include <zephyr/llext/llext.h>
#include <zephyr/llext/llext_internal.h>
#include <zephyr/llext/loader.h>
#include <zephyr/logging/log.h>
#include <zephyr/sys/util.h>
@@ -31,12 +32,32 @@ LOG_MODULE_REGISTER(elf, CONFIG_LLEXT_LOG_LEVEL);
* https://github.com/foss-for-synopsys-dwc-arc-processors/arc-ABI-manual/blob/master/ARCv2_ABI.pdf
* https://github.com/zephyrproject-rtos/binutils-gdb
*/
int arch_elf_relocate(elf_rela_t *rel, uintptr_t loc, uintptr_t sym_base_addr, const char *sym_name,
uintptr_t load_bias)
int arch_elf_relocate(struct llext_loader *ldr, struct llext *ext, elf_rela_t *rel,
const elf_shdr_t *shdr)
{
int ret = 0;
uint32_t insn = UNALIGNED_GET((uint32_t *)loc);
uint32_t value;
const uintptr_t loc = llext_get_reloc_instruction_location(ldr, ext, shdr->sh_info, rel);
uint32_t insn = UNALIGNED_GET((uint32_t *)loc);
elf_sym_t sym;
uintptr_t sym_base_addr;
const char *sym_name;
ret = llext_read_symbol(ldr, ext, rel, &sym);
if (ret != 0) {
LOG_ERR("Could not read symbol from binary!");
return ret;
}
sym_name = llext_symbol_name(ldr, ext, &sym);
ret = llext_lookup_symbol(ldr, ext, &sym_base_addr, rel, &sym, sym_name, shdr);
if (ret != 0) {
LOG_ERR("Could not find symbol %s!", sym_name);
return ret;
}
sym_base_addr += rel->r_addend;

View File

@@ -26,49 +26,6 @@
#include <zephyr/platform/hooks.h>
#include <zephyr/arch/cache.h>
/* XXX - keep for future use in full-featured cache APIs */
#if 0
/**
* @brief Disable the i-cache if present
*
* For those ARC CPUs that have a i-cache present,
* invalidate the i-cache and then disable it.
*/
static void disable_icache(void)
{
unsigned int val;
val = z_arc_v2_aux_reg_read(_ARC_V2_I_CACHE_BUILD);
val &= 0xff; /* version field */
if (val == 0) {
return; /* skip if i-cache is not present */
}
z_arc_v2_aux_reg_write(_ARC_V2_IC_IVIC, 0);
__builtin_arc_nop();
z_arc_v2_aux_reg_write(_ARC_V2_IC_CTRL, 1);
}
/**
* @brief Invalidate the data cache if present
*
* For those ARC CPUs that have a data cache present,
* invalidate the data cache.
*/
static void invalidate_dcache(void)
{
unsigned int val;
val = z_arc_v2_aux_reg_read(_ARC_V2_D_CACHE_BUILD);
val &= 0xff; /* version field */
if (val == 0) {
return; /* skip if d-cache is not present */
}
z_arc_v2_aux_reg_write(_ARC_V2_DC_IVDC, 1);
}
#endif
#ifdef CONFIG_ISA_ARCV3
/* NOTE: it will be called from early C code - we must NOT use global / static variables in it! */
static void arc_cluster_scm_enable(void)
@@ -92,8 +49,8 @@ static void arc_cluster_scm_enable(void)
/* Invalidate SCM before enabling. */
arc_cln_write_reg_nolock(ARC_CLN_CACHE_CMD,
ARC_CLN_CACHE_CMD_OP_REG_INV | ARC_CLN_CACHE_CMD_INCR);
while (arc_cln_read_reg_nolock(ARC_CLN_CACHE_STATUS) & ARC_CLN_CACHE_STATUS_BUSY)
;
while (arc_cln_read_reg_nolock(ARC_CLN_CACHE_STATUS) & ARC_CLN_CACHE_STATUS_BUSY) {
}
arc_cln_write_reg_nolock(ARC_CLN_CACHE_STATUS, ARC_CLN_CACHE_STATUS_EN);
}

View File

@@ -163,20 +163,20 @@ hw_pf_setup_done:
#if defined(CONFIG_SMP) || CONFIG_MP_MAX_NUM_CPUS > 1
_get_cpu_id r0
breq r0, 0, _master_core_startup
breq r0, 0, _primary_core_startup
/*
* Non-masters wait for master core (core 0) to boot enough
* Non-primary cores wait for primary core (core 0) to boot enough
*/
_slave_core_wait:
_secondary_core_wait:
#if CONFIG_MP_MAX_NUM_CPUS == 1
kflag 1
#endif
ld r1, [arc_cpu_wake_flag]
brne r0, r1, _slave_core_wait
brne r0, r1, _secondary_core_wait
LDR sp, arc_cpu_sp
/* signal master core that slave core runs */
/* signal primary core that secondary core runs */
st 0, [arc_cpu_wake_flag]
#if defined(CONFIG_ARC_FIRQ_STACK)
@@ -186,7 +186,7 @@ _slave_core_wait:
#endif
j arch_secondary_cpu_init
_master_core_startup:
_primary_core_startup:
#endif
#ifdef CONFIG_INIT_STACKS

View File

@@ -25,10 +25,10 @@ volatile struct {
} arc_cpu_init[CONFIG_MP_MAX_NUM_CPUS];
/*
* arc_cpu_wake_flag is used to sync up master core and slave cores
* Slave core will spin for arc_cpu_wake_flag until master core sets
* it to the core id of slave core. Then, slave core clears it to notify
* master core that it's waken
* arc_cpu_wake_flag is used to sync up primary core and secondary cores
* Secondary core will spin for arc_cpu_wake_flag until primary core sets
* it to the core id of secondary core. Then, secondary core clears it to notify
* primary core that it's waken
*
*/
volatile uint32_t arc_cpu_wake_flag;
@@ -50,13 +50,13 @@ void arch_cpu_start(int cpu_num, k_thread_stack_t *stack, int sz,
/* set the initial sp of target sp through arc_cpu_sp
* arc_cpu_wake_flag will protect arc_cpu_sp that
* only one slave cpu can read it per time
* only one secondary cpu can read it per time
*/
arc_cpu_sp = K_KERNEL_STACK_BUFFER(stack) + sz;
arc_cpu_wake_flag = cpu_num;
/* wait slave cpu to start */
/* wait secondary cpu to start */
while (arc_cpu_wake_flag != 0U) {
;
}
@@ -90,7 +90,7 @@ static void arc_connect_debug_mask_update(int cpu_num)
void arc_core_private_intc_init(void);
/* the C entry of slave cores */
/* the C entry of secondary cores */
void arch_secondary_cpu_init(int cpu_num)
{
arch_cpustart_t fn;
@@ -162,7 +162,7 @@ int arch_smp_init(void)
{
struct arc_connect_bcr bcr;
/* necessary master core init */
/* necessary primary core init */
_curr_cpu[0] = &(_kernel.cpus[0]);
bcr.val = z_arc_v2_aux_reg_read(_ARC_V2_CONNECT_BCR);
@@ -173,7 +173,7 @@ int arch_smp_init(void)
}
if (bcr.ipi) {
/* register ici interrupt, just need master core to register once */
/* register ici interrupt, just need primary core to register once */
z_arc_connect_ici_clear();
IRQ_CONNECT(DT_IRQN(DT_NODELABEL(ici)),
DT_IRQ(DT_NODELABEL(ici), priority),

View File

@@ -47,7 +47,7 @@ struct vector_table {
uintptr_t unused_2;
};
struct vector_table _VectorTable Z_GENERIC_SECTION(.exc_vector_table) = {
const struct vector_table _VectorTable Z_GENERIC_SECTION(.exc_vector_table) = {
(uintptr_t)__reset,
(uintptr_t)__memory_error,
(uintptr_t)__instruction_error,

View File

@@ -1,21 +1,31 @@
archs:
- name: arc
path: arc
full_name: Synopsys DesignWare ARC
- name: arm
path: arm
full_name: ARM
- name: arm64
path: arm64
full_name: ARM 64
- name: mips
path: mips
- name: nios2
path: nios2
full_name: MIPS
- name: posix
path: posix
full_name: POSIX
- name: riscv
path: riscv
full_name: RISC-V
- name: sparc
path: sparc
full_name: SPARC
- name: xtensa
path: xtensa
full_name: Xtensa
- name: x86
path: x86
full_name: x86
- name: rx
path: rx
full_name: Renesas RX

View File

@@ -49,7 +49,7 @@ config ROMSTART_RELOCATION_ROM
Most SOCs include an alias for the boot-vector at address 0x00000000
so a default which might be supported by the corresponding Linux rproc driver.
If it is not, additionnal options allows to specify the addresses.
If it is not, additional options allow to specify the addresses.
In general this option should be chosen if the zephyr,flash chosen node
is not placed into the boot-vector memory area.

View File

@@ -16,6 +16,7 @@ config CPU_CORTEX_M
select ARCH_HAS_USERSPACE if ARM_MPU
select ARCH_HAS_NOCACHE_MEMORY_SUPPORT if ARM_MPU && CPU_HAS_ARM_MPU && CPU_HAS_DCACHE
select ARCH_HAS_RAMFUNC_SUPPORT
select ARCH_HAS_VECTOR_TABLE_RELOCATION if CPU_CORTEX_M_HAS_VTOR
select ARCH_HAS_NESTED_EXCEPTION_DETECTION
select SWAP_NONATOMIC
select ARCH_HAS_EXTRA_EXCEPTION_INFO

View File

@@ -109,6 +109,17 @@ config VFP_U_DP_D16_FP16_FMAC
fused multiply-accumulate) and floating-point exception trapping with 16
double-word registers.
config VFP_DP_D32
bool
select CPU_HAS_VFP
select VFP_FEATURE_SINGLE_PRECISION
select VFP_FEATURE_DOUBLE_PRECISION
select VFP_FEATURE_REGS_S64_D32
help
This option signifies the use of a VFP floating-point coprocessor
that supports single- and double-precision operations
with 32 double-word registers.
config VFP_DP_D32_FP16_FMAC
bool
select CPU_HAS_VFP

View File

@@ -13,6 +13,15 @@
# CPU_AARCH32_CORTEX_A / if CPU_AARCH32_CORTEX_R blocks so they are not
# exposed if one selects a different ARM Cortex Family (Cortex-M).
config CPU_CORTEX_A7
bool
select CPU_AARCH32_CORTEX_A
select ARMV7_A
select CPU_HAS_ICACHE
select CPU_HAS_DCACHE
help
This option signifies the use of a Cortex-A7 CPU.
config CPU_CORTEX_A9
bool
select CPU_AARCH32_CORTEX_A
@@ -82,6 +91,8 @@ config CPU_CORTEX_R5
select CPU_AARCH32_CORTEX_R
select ARMV7_R
select ARMV7_R_FP if CPU_HAS_FPU
select CPU_HAS_ICACHE
select CPU_HAS_DCACHE
help
This option signifies the use of a Cortex-R5 CPU

View File

@@ -63,13 +63,13 @@ void arch_dcache_disable(void)
{
uint32_t val;
L1C_CleanInvalidateDCacheAll();
val = __get_SCTLR();
val &= ~SCTLR_C_Msk;
barrier_dsync_fence_full();
__set_SCTLR(val);
barrier_isync_fence_full();
arch_dcache_flush_and_invd_all();
}
int arch_dcache_flush_all(void)
@@ -203,16 +203,30 @@ int arch_icache_flush_and_invd_all(void)
int arch_icache_flush_range(void *start_addr, size_t size)
{
ARG_UNUSED(start_addr);
ARG_UNUSED(size);
return -ENOTSUP;
}
int arch_icache_invd_range(void *start_addr, size_t size)
{
return -ENOTSUP;
ARG_UNUSED(start_addr);
ARG_UNUSED(size);
/* Cortex A/R do have the ICIMVAU operation to selectively invalidate
* the instruction cache, but not currently supported by CMSIS.
* For now, invalidate the entire cache.
*/
L1C_InvalidateICacheAll();
return 0;
}
int arch_icache_flush_and_invd_range(void *start_addr, size_t size)
{
ARG_UNUSED(start_addr);
ARG_UNUSED(size);
return -ENOTSUP;
}

View File

@@ -100,6 +100,59 @@ static uint32_t dump_fault(uint32_t status, uint32_t addr)
reason = K_ERR_ARM_UNSUPPORTED_EXCLUSIVE_ACCESS_FAULT;
LOG_ERR("Unsupported Exclusive Access Fault @ 0x%08x", addr);
break;
#elif defined(CONFIG_ARMV7_A)
case FSR_FS_PERMISSION_FAULT_2ND_LEVEL:
reason = K_ERR_ARM_PERMISSION_FAULT_2ND_LEVEL;
LOG_ERR("2nd Level Permission Fault @ 0x%08x", addr);
break;
case FSR_FS_ACCESS_FLAG_FAULT_1ST_LEVEL:
reason = K_ERR_ARM_ACCESS_FLAG_FAULT_1ST_LEVEL;
LOG_ERR("1st Level Access Flag Fault @ 0x%08x", addr);
break;
case FSR_FS_ACCESS_FLAG_FAULT_2ND_LEVEL:
reason = K_ERR_ARM_ACCESS_FLAG_FAULT_2ND_LEVEL;
LOG_ERR("2nd Level Access Flag Fault @ 0x%08x", addr);
break;
case FSR_FS_CACHE_MAINTENANCE_INSTRUCTION_FAULT:
reason = K_ERR_ARM_CACHE_MAINTENANCE_INSTRUCTION_FAULT;
LOG_ERR("Cache Maintenance Instruction Fault @ 0x%08x", addr);
break;
case FSR_FS_TRANSLATION_FAULT:
reason = K_ERR_ARM_TRANSLATION_FAULT;
LOG_ERR("1st Level Translation Fault @ 0x%08x", addr);
break;
case FSR_FS_TRANSLATION_FAULT_2ND_LEVEL:
reason = K_ERR_ARM_TRANSLATION_FAULT_2ND_LEVEL;
LOG_ERR("2nd Level Translation Fault @ 0x%08x", addr);
break;
case FSR_FS_DOMAIN_FAULT_1ST_LEVEL:
reason = K_ERR_ARM_DOMAIN_FAULT_1ST_LEVEL;
LOG_ERR("1st Level Domain Fault @ 0x%08x", addr);
break;
case FSR_FS_DOMAIN_FAULT_2ND_LEVEL:
reason = K_ERR_ARM_DOMAIN_FAULT_2ND_LEVEL;
LOG_ERR("2nd Level Domain Fault @ 0x%08x", addr);
break;
case FSR_FS_SYNC_EXTERNAL_ABORT_TRANSLATION_TABLE_1ST_LEVEL:
reason = K_ERR_ARM_SYNC_EXTERNAL_ABORT_TRANSLATION_TABLE_1ST_LEVEL;
LOG_ERR("1st Level Synchronous External Abort Translation Table @ 0x%08x", addr);
break;
case FSR_FS_SYNC_EXTERNAL_ABORT_TRANSLATION_TABLE_2ND_LEVEL:
reason = K_ERR_ARM_SYNC_EXTERNAL_ABORT_TRANSLATION_TABLE_2ND_LEVEL;
LOG_ERR("2nd Level Synchronous External Abort Translation Table @ 0x%08x", addr);
break;
case FSR_FS_TLB_CONFLICT_ABORT:
reason = K_ERR_ARM_TLB_CONFLICT_ABORT;
LOG_ERR("TLB Conflict Abort @ 0x%08x", addr);
break;
case FSR_FS_SYNC_PARITY_ERROR_TRANSLATION_TABLE_1ST_LEVEL:
reason = K_ERR_ARM_SYNC_PARITY_ERROR_TRANSLATION_TABLE_1ST_LEVEL;
LOG_ERR("1st Level Synchronous Parity Error Translation Table @ 0x%08x", addr);
break;
case FSR_FS_SYNC_PARITY_ERROR_TRANSLATION_TABLE_2ND_LEVEL:
reason = K_ERR_ARM_SYNC_PARITY_ERROR_TRANSLATION_TABLE_2ND_LEVEL;
LOG_ERR("2nd Level Synchronous Parity Error Translation Table @ 0x%08x", addr);
break;
#else
case FSR_FS_BACKGROUND_FAULT:
reason = K_ERR_ARM_BACKGROUND_FAULT;

View File

@@ -33,6 +33,14 @@ extern void z_arm_reserved(void);
* Generic Interrupt Controller (GIC) and therefore the architecture interrupt
* control functions are mapped to the GIC driver interface.
*
* When GIC is used together with other interrupt controller for
* multi-level interrupts support (i.e. CONFIG_MULTI_LEVEL_INTERRUPTS
* is enabled), the architecture interrupt control functions are mapped
* to the SoC layer in `include/arch/arm/irq.h`.
* The exported arm interrupt control functions which are wrappers of
* GIC control could be used for SoC to do level 1 irq control to implement SoC
* layer interrupt control functions.
*
* When a custom interrupt controller is used (i.e.
* CONFIG_ARM_CUSTOM_INTERRUPT_CONTROLLER is enabled), the architecture
* interrupt control functions are mapped to the SoC layer in
@@ -40,17 +48,17 @@ extern void z_arm_reserved(void);
*/
#if !defined(CONFIG_ARM_CUSTOM_INTERRUPT_CONTROLLER)
void arch_irq_enable(unsigned int irq)
void arm_irq_enable(unsigned int irq)
{
arm_gic_irq_enable(irq);
}
void arch_irq_disable(unsigned int irq)
void arm_irq_disable(unsigned int irq)
{
arm_gic_irq_disable(irq);
}
int arch_irq_is_enabled(unsigned int irq)
int arm_irq_is_enabled(unsigned int irq)
{
return arm_gic_irq_is_enabled(irq);
}
@@ -65,10 +73,11 @@ int arch_irq_is_enabled(unsigned int irq)
* priority levels which are reserved: three for various types of exceptions,
* and possibly one additional to support zero latency interrupts.
*/
void z_arm_irq_priority_set(unsigned int irq, unsigned int prio, uint32_t flags)
void arm_irq_priority_set(unsigned int irq, unsigned int prio, uint32_t flags)
{
arm_gic_irq_set_priority(irq, prio, flags);
}
#endif /* !CONFIG_ARM_CUSTOM_INTERRUPT_CONTROLLER */
void z_arm_fatal_error(unsigned int reason, const struct arch_esf *esf);
@@ -123,7 +132,7 @@ static inline void z_arm_irq_dynamic_direct_isr_dispatch(void)
uint32_t irq = __get_IPSR() - 16;
if (irq < IRQ_TABLE_SIZE) {
struct _isr_table_entry *isr_entry = &_sw_isr_table[irq];
const struct _isr_table_entry *isr_entry = &_sw_isr_table[irq];
isr_entry->isr(isr_entry->arg);
}

View File

@@ -28,16 +28,13 @@ static inline void relocate_vector_table(void)
#else
#if defined(__GNUC__)
/*
* GCC can detect if memcpy is passed a NULL argument, however one of
* the cases of relocate_vector_table() it is valid to pass NULL, so we
* suppress the warning for this case. We need to do this before
* string.h is included to get the declaration of memcpy.
*/
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wnonnull"
#endif /* __GNUC__ */
TOOLCHAIN_DISABLE_WARNING(TOOLCHAIN_WARNING_NONNULL)
#include <string.h>
@@ -53,9 +50,7 @@ void __weak relocate_vector_table(void)
#endif
}
#if defined(__GNUC__)
#pragma GCC diagnostic pop
#endif
TOOLCHAIN_ENABLE_WARNING(TOOLCHAIN_WARNING_NONNULL)
#endif /* !CONFIG_AARCH32_ARMV8_R */

View File

@@ -227,12 +227,12 @@ EL1_Reset_Handler:
/* signal our desire to vote */
mov r5, #1
strb r5, [r4, r2]
mov r7, #0
ldr r3, [r0, #BOOT_PARAM_MPID_OFFSET]
cmn r3, #1
beq 1f
/* some core already won, release */
mov r7, #0
strb r7, [r4, r2]
b _secondary_core

View File

@@ -19,10 +19,10 @@ long semihost_exec(enum semihost_instr instr, void *args)
register long ret __asm__ ("r0");
if (IS_ENABLED(CONFIG_ISA_THUMB2)) {
__asm__ __volatile__ ("svc 0xab"
__asm__ volatile ("svc 0xab"
: "=r" (ret) : "r" (r0), "r" (r1) : "memory");
} else {
__asm__ __volatile__ ("svc 0x123456"
__asm__ volatile ("svc 0x123456"
: "=r" (ret) : "r" (r0), "r" (r1) : "memory");
}
return ret;

View File

@@ -5,6 +5,7 @@
#include <zephyr/kernel/thread_stack.h>
#include <zephyr/kernel.h>
#include <ksched.h>
#include <zephyr/arch/arm/cortex_a_r/lib_helpers.h>
#include <zephyr/drivers/interrupt_controller/gic.h>
#include <ipi.h>

View File

@@ -1,6 +1,7 @@
/*
* Copyright (c) 2013-2014 Wind River Systems, Inc.
* Copyright (c) 2021 Lexmark International, Inc.
* Copyright 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -37,6 +38,34 @@
*/
#define DEFAULT_EXC_RETURN 0xFD;
#ifdef CONFIG_USERSPACE
static void setup_priv_stack(struct k_thread *thread)
{
/* Set up privileged stack before entering user mode */
thread->arch.priv_stack_start = (uint32_t)z_priv_stack_find(thread->stack_obj);
/* CONFIG_PRIVILEGED_STACK_SIZE does not account for MPU_GUARD_ALIGN_AND_SIZE or
* MPU_GUARD_ALIGN_AND_SIZE_FLOAT. Therefore, we must compute priv_stack_end here before
* adjusting priv_stack_start for the mpu guard alignment
*/
thread->arch.priv_stack_end = thread->arch.priv_stack_start + CONFIG_PRIVILEGED_STACK_SIZE;
#if defined(CONFIG_MPU_STACK_GUARD)
/* Stack guard area reserved at the bottom of the thread's
* privileged stack. Adjust the available (writable) stack
* buffer area accordingly.
*/
#if defined(CONFIG_FPU) && defined(CONFIG_FPU_SHARING)
thread->arch.priv_stack_start +=
((thread->arch.mode & Z_ARM_MODE_MPU_GUARD_FLOAT_Msk) != 0) ?
MPU_GUARD_ALIGN_AND_SIZE_FLOAT : MPU_GUARD_ALIGN_AND_SIZE;
#else
thread->arch.priv_stack_start += MPU_GUARD_ALIGN_AND_SIZE;
#endif /* CONFIG_FPU && CONFIG_FPU_SHARING */
#endif /* CONFIG_MPU_STACK_GUARD */
}
#endif
/* An initial context, to be "restored" by z_arm_pendsv(), is put at the other
* end of the stack, and thus reusable by the stack when not needed anymore.
*
@@ -78,9 +107,24 @@ void arch_new_thread(struct k_thread *thread, k_thread_stack_t *stack,
#endif /* FP_GUARD_EXTRA_SIZE */
#endif /* CONFIG_MPU_STACK_GUARD */
#if defined(CONFIG_ARM_STORE_EXC_RETURN) || defined(CONFIG_USERSPACE)
thread->arch.mode = 0;
#if defined(CONFIG_ARM_STORE_EXC_RETURN)
thread->arch.mode_exc_return = DEFAULT_EXC_RETURN;
#endif
#if FP_GUARD_EXTRA_SIZE > 0
if ((thread->base.user_options & K_FP_REGS) != 0) {
thread->arch.mode |= Z_ARM_MODE_MPU_GUARD_FLOAT_Msk;
}
#endif
#endif
iframe = Z_STACK_PTR_TO_FRAME(struct __basic_sf, stack_ptr);
#if defined(CONFIG_USERSPACE)
thread->arch.priv_stack_start = 0;
if ((thread->base.user_options & K_USER) != 0) {
setup_priv_stack(thread);
iframe = Z_STACK_PTR_TO_FRAME(struct __basic_sf, thread->arch.priv_stack_end);
iframe->pc = (uint32_t)arch_user_mode_enter;
} else {
iframe->pc = (uint32_t)z_thread_entry;
@@ -112,20 +156,6 @@ void arch_new_thread(struct k_thread *thread, k_thread_stack_t *stack,
thread->callee_saved.psp = (uint32_t)iframe;
thread->arch.basepri = 0;
#if defined(CONFIG_ARM_STORE_EXC_RETURN) || defined(CONFIG_USERSPACE)
thread->arch.mode = 0;
#if defined(CONFIG_ARM_STORE_EXC_RETURN)
thread->arch.mode_exc_return = DEFAULT_EXC_RETURN;
#endif
#if FP_GUARD_EXTRA_SIZE > 0
if ((thread->base.user_options & K_FP_REGS) != 0) {
thread->arch.mode |= Z_ARM_MODE_MPU_GUARD_FLOAT_Msk;
}
#endif
#if defined(CONFIG_USERSPACE)
thread->arch.priv_stack_start = 0;
#endif
#endif
/*
* initial values in all other registers/thread entries are
* irrelevant.
@@ -196,10 +226,8 @@ static inline void z_arm_thread_stack_info_adjust(struct k_thread *thread,
FUNC_NORETURN void arch_user_mode_enter(k_thread_entry_t user_entry,
void *p1, void *p2, void *p3)
{
uint32_t sp_is_priv = 1;
/* Set up privileged stack before entering user mode */
_current->arch.priv_stack_start =
(uint32_t)z_priv_stack_find(_current->stack_obj);
#if defined(CONFIG_MPU_STACK_GUARD)
#if defined(CONFIG_THREAD_STACK_INFO)
/* We're dropping to user mode which means the guard area is no
@@ -216,29 +244,29 @@ FUNC_NORETURN void arch_user_mode_enter(k_thread_entry_t user_entry,
_current->stack_info.start -= MPU_GUARD_ALIGN_AND_SIZE;
_current->stack_info.size += MPU_GUARD_ALIGN_AND_SIZE;
#endif /* CONFIG_THREAD_STACK_INFO */
/* Stack guard area reserved at the bottom of the thread's
* privileged stack. Adjust the available (writable) stack
* buffer area accordingly.
*/
#if defined(CONFIG_FPU) && defined(CONFIG_FPU_SHARING)
_current->arch.priv_stack_start +=
((_current->arch.mode & Z_ARM_MODE_MPU_GUARD_FLOAT_Msk) != 0) ?
MPU_GUARD_ALIGN_AND_SIZE_FLOAT : MPU_GUARD_ALIGN_AND_SIZE;
#else
_current->arch.priv_stack_start += MPU_GUARD_ALIGN_AND_SIZE;
#endif /* CONFIG_FPU && CONFIG_FPU_SHARING */
#endif /* CONFIG_MPU_STACK_GUARD */
#if defined(CONFIG_CPU_AARCH32_CORTEX_R)
_current->arch.priv_stack_end =
_current->arch.priv_stack_start + CONFIG_PRIVILEGED_STACK_SIZE;
#endif
/* 2 ways how arch_user_mode_enter is called:
* - called as part of context switch from z_arm_pendsv, in this case privileged stack is
* already setup and stack pointer points to privileged stack.
* - called directly from k_thread_user_mode_enter, in this case privileged stack is not
* setup and stack pointer points to user stack.
*
* When called from k_thread_user_mode_enter, we need to check and setup the privileged
* stack and then instruct z_arm_userspace_enter to change the PSP to the privileged stack.
* Note that we do not change the PSP in this function to avoid any conflict with compiler's
* sequence which has already pushed stuff on the user stack.
*/
if (0 == _current->arch.priv_stack_start) {
setup_priv_stack(_current);
sp_is_priv = 0;
}
z_arm_userspace_enter(user_entry, p1, p2, p3,
(uint32_t)_current->stack_info.start,
_current->stack_info.size -
_current->stack_info.delta);
_current->stack_info.delta,
sp_is_priv);
CODE_UNREACHABLE;
}
@@ -409,6 +437,8 @@ int arch_float_disable(struct k_thread *thread)
int arch_float_enable(struct k_thread *thread, unsigned int options)
{
ARG_UNUSED(thread);
ARG_UNUSED(options);
/* This is not supported in Cortex-A and Cortex-R */
return -ENOTSUP;
}

View File

@@ -2,6 +2,23 @@
zephyr_library()
if(CONFIG_ARMV8_1_M_PACBTI_STANDARD)
zephyr_compile_options(-mbranch-protection=standard)
elseif(CONFIG_ARMV8_1_M_PACBTI_PACRET)
zephyr_compile_options(-mbranch-protection=pac-ret)
elseif(CONFIG_ARMV8_1_M_PACBTI_PACRET_LEAF)
zephyr_compile_options(-mbranch-protection=pac-ret+leaf)
elseif(CONFIG_ARMV8_1_M_PACBTI_BTI)
zephyr_compile_options(-mbranch-protection=bti)
elseif(CONFIG_ARMV8_1_M_PACBTI_PACRET_BTI)
zephyr_compile_options(-mbranch-protection=pac-ret+bti)
elseif(CONFIG_ARMV8_1_M_PACBTI_PACRET_LEAF_BTI)
zephyr_compile_options(-mbranch-protection=pac-ret+leaf+bti)
elseif(CONFIG_ARMV8_1_M_PACBTI_NONE)
#TODO: Enable this after Zephyr SDK updates to GCC version >=14.2
# zephyr_compile_options(-mbranch-protection=none)
endif()
zephyr_library_sources(
exc_exit.c
fault.c
@@ -61,3 +78,13 @@ zephyr_linker_sources(
vt_pointer_section.ld
)
endif()
if (CONFIG_CPU_CORTEX_M_HAS_VTOR)
zephyr_linker_sources_ifdef(CONFIG_SRAM_VECTOR_TABLE
RAM_SECTIONS
# Maybe need to be changed in order to be placed at the beginning of RAM
# (conflict with code relocation script)
SORT_KEY 0
ram_vector_table.ld
)
endif()

View File

@@ -1,6 +1,7 @@
# ARM Cortex-M platform configuration options
# Copyright (c) 2014-2015 Wind River Systems, Inc.
# Copyright 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
# SPDX-License-Identifier: Apache-2.0
# NOTE: We have the specific core implementations first and outside of the
@@ -298,6 +299,60 @@ config ARMV8_1_M_PMU
This option is enabled when the CPU implements ARMv8-M Performance
Monitoring Unit (PMU).
choice ARMV8_1_M_PACBTI
prompt "Pointer Authentication and Branch Target Identification"
default ARMV8_1_M_PACBTI_NONE
depends on ARMV8_1_M_MAINLINE
config ARMV8_1_M_PACBTI_STANDARD
bool "Standard (PACRET + LEAF + BTI)"
help
This option instructs the compiler to generate code with all branch protection features
enabled at their standard level.
config ARMV8_1_M_PACBTI_PACRET
bool "PACRET only"
help
This option instructs the compiler to generate code with return address signing for
all functions that save the return address to memory.
config ARMV8_1_M_PACBTI_PACRET_LEAF
bool "PACRET + Leaf"
help
This option instructs the compiler to generate code with return address signing for
all functions that save the return address to memory and,
also sign leaf functions even if they do not write the return address to memory.
config ARMV8_1_M_PACBTI_BTI
bool "BTI only"
help
This option enables Branch Target Identification (BTI), which inserts special landing
pad instructions at valid indirect branch targets. This option does not enable Pointer
Authentication (PAC).
config ARMV8_1_M_PACBTI_PACRET_BTI
bool "PACRET + BTI"
help
This option instructs the compiler to generate code with return address signing for
all functions that save the return address to memory and,
add landing-pad instructions at the permitted targets of indirect branch instructions
config ARMV8_1_M_PACBTI_PACRET_LEAF_BTI
bool "PACRET + Leaf + BTI"
help
This option instructs the compiler to generate code with return address signing for
all functions that save the return address to memory and,
also sign leaf functions even if they do not write the return address to memory and,
add landing-pad instructions at the permitted targets of indirect branch instructions
config ARMV8_1_M_PACBTI_NONE
bool "None"
help
This option instructs the compiler to generate code without branch protection or return
address signing
endchoice
config ARMV8_M_PMU_EVENTCNT
int "Number of event counters in the Performance Monitoring Unit"
depends on ARMV8_1_M_PMU

View File

@@ -96,6 +96,9 @@ int arch_icache_flush_and_invd_all(void)
int arch_icache_flush_range(void *start_addr, size_t size)
{
ARG_UNUSED(start_addr);
ARG_UNUSED(size);
return -ENOTSUP;
}
@@ -108,6 +111,9 @@ int arch_icache_invd_range(void *start_addr, size_t size)
int arch_icache_flush_and_invd_range(void *start_addr, size_t size)
{
ARG_UNUSED(start_addr);
ARG_UNUSED(size);
return -ENOTSUP;
}

View File

@@ -6,6 +6,7 @@
#include <string.h>
#include <zephyr/debug/coredump.h>
#include <zephyr/kernel/thread.h>
#define ARCH_HDR_VER 2
@@ -96,3 +97,8 @@ uint16_t arch_coredump_tgt_code_get(void)
{
return COREDUMP_TGT_ARM_CORTEX_M;
}
uintptr_t arch_coredump_stack_ptr_get(const struct k_thread *thread)
{
return (thread == _current) ? z_arm_coredump_fault_sp : thread->callee_saved.psp;
}

View File

@@ -98,6 +98,9 @@ void arch_cpu_idle(void)
SLEEP_IF_ALLOWED(__WFI);
#if defined(CONFIG_TRACING)
sys_trace_idle_exit();
#endif
__enable_irq();
__ISB();
}
@@ -137,6 +140,10 @@ void arch_cpu_atomic_idle(unsigned int key)
SLEEP_IF_ALLOWED(__WFE);
#if defined(CONFIG_TRACING)
sys_trace_idle_exit();
#endif
arch_irq_unlock(key);
#if defined(CONFIG_ARMV7_M_ARMV8_M_MAINLINE)
__enable_irq();

View File

@@ -27,7 +27,12 @@ void z_arm_interrupt_init(void)
{
int irq = 0;
/* CONFIG_2ND_LVL_ISR_TBL_OFFSET could be treated as total number of level1 interrupts */
#if defined(CONFIG_MULTI_LEVEL_INTERRUPTS) && defined(CONFIG_2ND_LVL_ISR_TBL_OFFSET)
for (; irq < CONFIG_2ND_LVL_ISR_TBL_OFFSET; irq++) {
#else
for (; irq < CONFIG_NUM_IRQS; irq++) {
#endif
NVIC_SetPriority((IRQn_Type)irq, _IRQ_PRIO_OFFSET);
}
}

Some files were not shown because too many files have changed in this diff Show More