Compare commits

...

4840 Commits

Author SHA1 Message Date
Jakub Rzeszutko
a04d8957c2 shell: fix race condition between prompt print and RX buffer flush
Move z_shell_backend_rx_buffer_flush() before state_set() in
shell_start() to prevent a race condition where incoming shell
commands could be lost.

Previously, the sequence was:
1. state_set() - prints the prompt
2. z_shell_backend_rx_buffer_flush() - flushes RX buffer

If the shell thread was preempted after printing the prompt,
the host could see the prompt and send commands. When the
thread resumed, z_shell_backend_rx_buffer_flush() would discard
those commands.

By flushing the RX buffer before printing the prompt, any
commands received after the prompt is visible will not be
affected by the flush operation.

Fixes #99674

Signed-off-by: Jakub Rzeszutko <jakub.rzeszutko@verkada.com>
2026-01-23 09:21:43 -06:00
Cristian Bulacu
f87fff19a7 tests: net: remove OT reference device flag for OT tests
This commit removes OPENTHREAD_REFERENCE_DEVICE flag for OpenThread tests.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2026-01-23 09:21:10 -06:00
Cristian Bulacu
089bb1f000 samples: net: openthread: Remove OT reference device flag for NXP RW612
This commit removes the OPENTHREAD_REFERENCE_DEVICE flag for NXP RW612
samples, as these are not meant to be included in a test setup.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2026-01-23 09:21:10 -06:00
Andrej Butok
6404f37814 boards: nxp: Fix NXP MCU board names in yaml
- Fixes an inconsistency in the board list
  of the MCUx-VSCode extension. No functional change.
- Adjusts names in yaml files to follow the currently used approach
  "NXP <board_name> [(cpu)] [(type)]".

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2026-01-23 09:20:47 -06:00
Benjamin Cabé
1feabd2552 shell: fix potential buffer overflow in shell_help_is_structured()
The function was casting a char* help pointer to struct shell_cmd_help*
and reading its 4-byte magic field. When the help string was shorter
than 4 bytes, this caused a read past the end of the buffer.

The fix replaces the struct cast with a byte-by-byte comparison of the
magic number.

Fixes zephyrproject-rtos/zephyr#102598

Co-authored-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-23 09:20:01 -06:00
Svitlana Drozd
cdfd692b76 boards: raspberrypi: rpi_5: correct DTB file name in doc
The DTB file was previously listed as bcm2712-rpi-5.dtb, which was
inaccurate, as the hyperlink referenced the `bcm2712-rpi-5-b.dtb`
file. To ensure documentation precision and avoid potential
confusion, update the file name to the correct
`bcm2712-rpi-5-b.dtb`.

Signed-off-by: Svitlana Drozd <svitlana_drozd@epam.com>
2026-01-23 09:19:25 -06:00
Svitlana Drozd
b4bbba70b1 boards: raspberrypi: rpi_5: remove unnecessary arm_64bit option
The ARM cores in BCM2712 are incapable of running the kernel in 32-bit
mode. The option `arm_64bit=1` is unnecessary and can be confusing, as
Raspberry Pi 5 runs in 64-bit mode by default.

Removed the `arm_64bit=1` configuration from documentation for Raspberry
Pi 5 (BCM2712).

Signed-off-by: Svitlana Drozd <svitlana_drozd@epam.com>
2026-01-23 09:19:25 -06:00
Cesar Santos
ec5c3420b3 samples: net: secure_mqtt_sensor_actuator: add missing POSIX libraries
In order to compile the demo application for a secure MQTT connection,
several networking API functions are used, which is properly defined by
some of the POSIX libraries already integrated onto Zephyr project. By
adding the missing libraries, compilation to the reference board
adi_eval_adin1110ebz passes.

As a minor change, reordered the sequence of included libraries to be
in alphabetical order.

Fixes #102372.

Signed-off-by: Cesar Santos <dev.cmsantos@gmail.com>
2026-01-23 09:19:01 -06:00
Wolfgang Betz
b84bdbcee3 dts: arm: st: n6: Use dedicated dts node for NPU cache (aka CACHEAXI)
The new node is called "npu_cache".

This way a possibility is offered to choose - thru an overlay - if to
enable the NPU cache or not.
This new node has a dependency with node "npu", so the NPU cache's
status is taken into account only in case node "npu" has status "okay".

Default status value of "npu_cache" is "okay"
(i.e. enable the NPU cache).

Signed-off-by: Wolfgang Betz <wolfgang.betz@st.com>
2026-01-23 09:18:34 -06:00
Alberto Escolar Piedras
92df06bf1d boards: native: nrf_bsim: Add simple model of LDREX/STREX/CLREX
Add a model of LDREX/STREX/CLREX, that although simple may be correct
enough to cover the needs of SW using these instructions.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-01-23 09:17:37 -06:00
Marcelo Roberto Jimenez
1ab8978e66 drivers: flash: flash_shell.c: Fix flash read help text
Actually, the parameter is the number of bytes to read, not the number
of double words.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2026-01-23 09:17:05 -06:00
Marcelo Roberto Jimenez
391ca7c7de drivers: flash: flash_shell.c: Fix parsing of "flash read"
The parsing of the number of bytes to read in the read command was being
done in hexadecimal, causing unexpected behavior.

Now the number can be interpreted in decimal or hexadecimal if prefixed
with 0x.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2026-01-23 09:17:05 -06:00
Marcelo Roberto Jimenez
ec8472c362 tests: subsys: shell: Clang-format on shell_flash_test.c
This patch runs clang-format on the shell_flash_test.c file
before the real patch gets applied, otherwise the changes
would be hard to read.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2026-01-23 09:17:05 -06:00
Marcelo Roberto Jimenez
9535aebafe drivers: flash: flash_shell.c: Run clang-format before patch
This patch runs clang-format on the flash_shell.c file before the
real patch gets applied, otherwise the changes would be hard to
read.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2026-01-23 09:17:05 -06:00
Gaetan Perrot
08f8223d55 boards: phytec: phyboard_atlas: xip: fix typos in comments
Fix spelling and wording issues in comments for phytec
phyboard_atlas xip FlexSPI NOR configuration headers.

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-23 13:57:14 +01:00
Mathieu Choplain
7a8bc1cdce soc: st: stm32: cleanup linker script of STM32MP2 series
Remove inclusion of files already included by the arch linker script from
the SoC-specific linker script.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-23 13:56:53 +01:00
Mathieu Choplain
c64c13e525 soc: st: stm32: cleanup linker scripts of STM32MP1 series
STM32MP1 series used a custom SOC_LINKER_SCRIPT, but all it did was
include the main Cortex-M script, unnecessarily re-include headers already
included by the main script(!) and add a custom section.

Get rid of the custom SOC_LINKER_SCRIPT but keep the custom section by
moving it to a linker script snippet file, added to the build system using
CMake directives.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-23 13:56:53 +01:00
Fabrice DJIATSA
d1e8918332 boards: shields: x_nucleo_dfx01m2: fix invalid dt enums in overlays
Fix the panel pixel format enum in the X-NUCLEO-GFX01M2 shield overlay
by using PANEL_PIXEL_FORMAT_RGB_565 as defined in panel dt-bindings.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-23 13:56:08 +01:00
Fabrice DJIATSA
de04861e29 samples: sensor: stream_drdy: fix invalid dt enums in overlays
Fix Devicetree compilation errors caused by incorrect enum macro
names used in DTS overlay files.

Replace LSM6DSV16X_DT_ODR_AT_120Hz with the correct Devicetree enum
LSM6DSVXXX_DT_ODR_AT_120Hz in the stream_drdy sample boards overlay.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-23 13:56:08 +01:00
Johan Hedberg
f64a999147 drivers: bluetooth: silabs_efr32: Fix default for max PAwR advertisers
This option already depends on BT_PER_ADV_RSP being enabled, so we should
have a more reasonable default for it. This way e.g. the existing PAwR
sample app should work without additional changes.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2026-01-23 13:55:25 +01:00
Pieter De Gendt
8402a4f8e5 drivers: gpio: mcux: Fix updating ICR registers without IRQ lock
During configuration the base->ICR1 or base->ICR2 register is written
without an IRQ lock. This can result in unwanted side-effects if the status
bit isn't cleared, or the edge select still needs to be updated.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-23 13:54:42 +01:00
Gaetan Perrot
7af0a2fcdf sensor: adi: adxl372: stream: check return value of adxl372_set_op_mode
Check the return value of adxl372_set_op_mode() in
adxl372_submit_stream() and abort on error.

Fix CID: 516239

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-23 13:54:21 +01:00
Gaetan Perrot
ed545d2302 drivers: ethernet: lan9250: Make interrupt mask constant unsigned
Add a 'U' suffix to the interrupt status mask passed to
lan9250_write_sys_reg() to make the constant explicitly unsigned.

This avoids signed/unsigned ambiguity and addresses a SonarQube
static analysis warning.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-23 13:53:59 +01:00
Gaetan Perrot
f18da88e3f drivers: ethernet: lan9250: fix uninitialized variable warning
The lan9250_thread() function declares a local variable that may be
used without being initialized, triggering a -Wmaybe-uninitialized
warning when building with -Werror.

Initialize the variable at declaration to ensure deterministic
behavior and avoid build failures.

No functional change intended.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-23 13:53:59 +01:00
Gaetan Perrot
2719679c26 drivers: ethernet: lan9250: fix error handling
Several LAN9250 helper functions ignored return values from register
access and wait routines, potentially hiding SPI or timeout
failures.

Propagate error codes from read/write/wait helpers throughout the
driver so failures are detected and handled by callers.

This improves robustness and makes error conditions visible during
initialization, PHY access, RX/TX paths, and MAC configuration.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-23 13:53:59 +01:00
Robert Lubos
10b9520cac net: lib: http_server: Prefer explicitly defined resources over FS ones
Do direct resource path comparison on all registered resources before
falling back to fnmatch() so that exact path matches get always
preference.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-23 13:52:47 +01:00
Robert Lubos
59b653bb4f tests: net: lib: http_server: Add test case for overlapping resources
Add a test case verifying that if there's a static resource defined
which overlaps a FS resource pointing to a directory, it takes
preference on exact URI match.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-23 13:52:47 +01:00
Hugues Fruchet
b0fd7d9665 samples: video: tcpserversink: release camera frame as soon as possible
Release camera frame immediately after video encoding.
Doing so, the frame could be reused by camera for next capture
without waiting for the end of network transmission.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2026-01-23 13:52:31 +01:00
Hugues Fruchet
9ebfb206af samples: video: tcpserversink: fix multiple connect/disconnect
Fix multiple connect/disconnect regression introduced in
6a7aefaa samples: video: tcpserversink: check video_enqueue/dequeue
return values.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2026-01-23 13:52:31 +01:00
Hugues Fruchet
0c0bb202c7 samples: video: tcpserversink: fix missing input buffer encoder dequeue
Fix missing input buffer encoder dequeue, this was corrupting camera
device fifo because of same buffer queued into two different fifo.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2026-01-23 13:52:31 +01:00
Hugues Fruchet
70f57d119a drivers: video: stm32_dcmipp: give back buffers at stream disable
Give back buffers at stream disable.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2026-01-23 13:52:31 +01:00
Hugues Fruchet
cc8475dd52 drivers: video: stm32_dcmipp: set multilines to 128 to limit interrupts
Set multiline on pixel pipes to 128 lines to limit slave IP hardware
handshakes and so reduce the number of interrupts received by slave IP.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2026-01-23 13:52:31 +01:00
Hugues Fruchet
8c8a021a5f drivers: video: stm32_venc: log interrupts
Log number of interrupts, including fuse interrupts at each
key frame and at the end of encoding.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2026-01-23 13:52:31 +01:00
Hugues Fruchet
f396ac9efc drivers: video: stm32_venc: fix completion on interrupt
Fix wait of hardware encoding completion by using
interrupt signaling instead of polling on irq status.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2026-01-23 13:52:31 +01:00
Hugues Fruchet
e84f195780 drivers: video: stm32_venc: fix delta frames generation
Only key frames were generated because of resync flag
always true, fix this.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2026-01-23 13:52:31 +01:00
Hugues Fruchet
a616f7b107 drivers: video: stm32_venc: fix release sequence
Fix missing H264 library release and total memory count reset.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2026-01-23 13:52:31 +01:00
Andy Lin
d807e39a2c arch: riscv: Add the support for Zbkb ISA extension
Introduce the missing flag to compile code with Zbkb extension,
which has already been supported by the GCC 12 in current SDK.

Signed-off-by: Andy Lin <andylinpersonal@gmail.com>
2026-01-23 13:51:55 +01:00
Łukasz Kędziora
261dfbc765 drivers: spi_dw: Add clock control
This adds optional clock control support to the spi_dw driver. The
support currently assumes that the clock control binding uses clkid for
the clock cell name.

Signed-off-by: Łukasz Kędziora <lkedziora@antmicro.com>
Signed-off-by: Piotr Zierhoffer <pzierhoffer@antmicro.com>
Signed-off-by: Andreas Weissel <andreas.weissel@synaptics.com>
2026-01-23 13:50:34 +01:00
Marcelo Roberto Jimenez
e73e2f148c drivers: ethernet: xmc4xxx: BUG Fix: RX code dropping packets
The ethernet DMA driver code was causing the silent dropping of packets
with length 125, 126 and 127. The root cause of the problem is that the
DMA engine performs an extra four bytes transfer corresponding to the
Receive Status Word. For those particular packet lengths, the previous
code incorrectly calculated the last fragment size.

The new code avoids that pitfall by decrementing the total frame size as
the fragments are being collected, while avoiding the creation of an
extra fragment on the extracted network packet.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2026-01-23 13:49:34 +01:00
Johann Fischer
506a59396f usb: device_next: fix compilation if the user disables HWINFO
Make USBD_HWINFO_DEVID_LENGTH prompt optional so that the code compiles
even if HWINFO is disabled.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2026-01-23 13:48:16 +01:00
Robert Lubos
ba04734220 net: sockets: tls: Optimze helper buffer for sendmsg and CID check
Both cases use a large static buffer, we can optimize here and use a
single mutex-protected buffer for both.

sendmsg() test case needed adjustments, as it was also testing a buffer
overflow scenario. This can only be properly tested however if CID
feature is disabled, as otherwise the common helper buffer size is
increased for the CID use case, preventing the overflow from taking
place.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-23 10:46:05 +01:00
Robert Lubos
3cc194ee35 tests: net: sockets: tls: Add test cases for DTLS server multi-client
Add test cases verifying that DTLS server socket can handle multiple
clients.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-23 10:46:05 +01:00
Robert Lubos
8afc2af3c2 net: sockets: tls: Make socket options work with multi-client server
For options that return the handshake status, make sure they work in
multi-client DTLS server case, by returning the status for the session
that completed handshake most recently. For TLS and DTLS client cases
that should make no difference, as there should only be one session per
context.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-23 10:46:05 +01:00
Robert Lubos
ab07f69128 net: sockets: tls: DTLS server session timeout rework
With support for multiple client sessions for DTLS server socket, the
session timeout can no longer rely on built-in mbed TLS timing out
mechanism, as this only works for the session that is currently active.
Background sessions would never time out if the client just went silent.
Therefore, allocate a per-session timestamp, that keeps track of the
last activity on the session. Then, whenever poll() or recv() is called
loop over all sessions to identify those that timed and should be
released.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-23 10:46:05 +01:00
Robert Lubos
53be38d3f0 net: sockets: tls: Implement DTLS server session matching by CID
In case a client address changes, but a session uses Connection ID
extension, the server should verify if the packet belongs to any of the
established sessions based on the CID value.

Therefore, before attempting to allocate a new session in such case,
loop over sessions and try to match the packet to one of the existing
sessions based on CID. In case of success, update the corresponding peer
address.

If no session is found based on CID, only then try to allocate a new
one.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-23 10:46:05 +01:00
Robert Lubos
4197720be8 net: sockets: tls: Free DTLS server active session on errors
In case of errors on an active session (in most cases peer closing the
session), the session should be freed. Note, that as mbed TLS needs some
session context to work with, the last session on a socket is not freed,
but only reset instead.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-23 10:46:05 +01:00
Robert Lubos
6f58b3f24f net: sockets: tls: DTLS server session matching on TX
For TX, the DTLS server needs to check the peer address before passing
the packet to mbed TLS. In case the peer address doesn't match the
active session, it needs to switch sessions.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-23 10:46:05 +01:00
Robert Lubos
cc6248d87c net: sockets: tls: Refactor RX part for DTLS server
Refactor RX side for DTLS server to allow session switching when a
datagram from a peer that does not match current session. The server
needs to loop over established sessions, and in case no session is
found allocate a new one.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-23 10:46:05 +01:00
Robert Lubos
9e544a9ec7 net: sockets: tls: Split DTLS BIO functions
Split DTLS BIO RX functions for client and server case, given the
functionality will differ heavily. DTLS server needs to peek packet
before passing it to mbed TLS to allow to switch DTLS sessions in case
peer address doesn't match.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-23 10:46:05 +01:00
Robert Lubos
779bfe2e5e net: sockets: tls: Split TLS session and context initialization
It has to be possible to initialize TLS sessions separately of the TLS
socket context.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-23 10:46:05 +01:00
Robert Lubos
42754f8f8d net: sockets: tls: Separate TLS session context from socket context
Separate TLS session context from the TLS socket context so that a
single DTLS server socket can support multiple client sessions.
Other socket types will only have a single session per TLS socket.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-23 10:46:05 +01:00
Benjamin Cabé
72a1c9e43e doc: _scripts: gen_devicetree_rest: ensure blank lines around transition
Transition markers ("----") require blank lines before and after, so
this ensures that is always the case.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-23 10:45:39 +01:00
Tim Lin
e13971b796 dts: ite/it8xxx2: Reduce devicetree size with omit-if-no-ref
Mark unused pinctrl and wuc nodes in it8xxx2 with /omit-if-no-ref/,
so that they are omitted from the final devicetree when not referenced.

After this change, test: "west build -p always -b it8xxx2_evb" shows a
reduction in devicetree size:

Before:
  build/zephyr/zephyr.dts 164,449 bytes
  build/zephyr/include/generated/zephyr/devicetree_generated.h
  3,125,359 bytes

After:
  build/zephyr/zephyr.dts 124,108 bytes
  build/zephyr/include/generated/zephyr/devicetree_generated.h
  1,892,313 bytes

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2026-01-23 10:45:20 +01:00
Ren Chen
f1c1ef170d dts: riscv: it51xxx: omit pinctrl and wuc nodes if not referenced
This commit prefixes pre-generated nodes with
`/omit-if-no-ref/` to keep the generated devicetree
C headers minimal.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2026-01-23 10:45:05 +01:00
Tomasz Moń
288802461c dts: bindings: clock: fix reference audio frequencies
Reference audio clock frequencies are supposed to be integer multiplies
of sampling frequency (44100 * 256 = 11289600, 48000 * 256 = 12288000)
and not some arbitrary numbers.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2026-01-23 10:44:43 +01:00
Maochen Wang
67ac1ddd77 manifest: hal_nxp: upgrade wifi version to r53.p2
Upgrade wifi driver version to r53.p2.
Support static ipv4 address connection for STA interface.
Improved throughput value for SDIO case.
Support event based FW dump for IW61x.
Fix several bugs.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2026-01-23 10:44:20 +01:00
Gaetan Perrot
e18e1c06c8 drivers: dai: intel: dmic: make dai_dmic_probe void
dai_dmic_probe() and dai_dmic_probe_wrapper() never reports errors
and always returns 0.
The error check at the call site is therefore dead code.

Make functions void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-23 10:44:10 +01:00
Ryan Wiebe
8135c56cf6 modbus: Fixed serial RX enablement for ASYNC and client mode
Modbus is failing to turn on RX when using serial ASYNC mode. This
causes modbus to never receive inbound requests, leaving it inoperable.
Additionally, modbus also enables RX when in client mode, leading to
issues when running as a client. These have been fixed by enabling rx
only when serial init is successful and modbus is in server mode during
initialisation.

Signed-off-by: Ryan Wiebe <ryan.wiebe@analog.com>
2026-01-23 10:43:59 +01:00
Peter van der Perk
b76f37c5da boards: nxp: mr_canhubk3: Increase FS26 init priority
We've to ensure nothing blocks the watchdog init on startup,
otherwise we'll get into bootloop. Hence increase the piority.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2026-01-23 10:43:47 +01:00
Peter van der Perk
80c2beff83 drivers: watchdog: FS26 watchdog support RTIO
Under RTIO SPI behaves differently and thus FS26 didn't work and
would reset the board. This changes to add 8-bit transfer support
and doesn't lock the irq anymore since the SPI driver got changed.
Which would yield an assertion, best it ensure feed callee priority
is high enough.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2026-01-23 10:43:47 +01:00
Vincent Tardy
6f350ae64d soc: st: stm32wba: adjust thread size if BT enabled
SYSTEM_WORKQUEUE_STACK_SIZE KConfig is setting to 1024 in case of
BT_TX_PROCESSOR_THREAD is enabled, else 2048.
BT_TX_PROCESSOR_STACK_SIZE KConfig is setting to 2048 in case of
BT_TX_PROCESSOR_THREAD is enabled.

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2026-01-23 10:43:19 +01:00
Albort Xue
59ffa602b4 drivers: counter: mcux_lpit: Add clock configuration and enable
Add explicit clock configuration and enable calls during driver
initialization. The driver now attempts to configure the clock
subsystem before enabling it.

Note: -ENOSYS is temporarily ignored as not all clock control
drivers currently implement the configure API. This handling
should be removed once all clock drivers support configure.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-01-23 10:43:08 +01:00
Camille BAUD
f8f94fd6cd drivers: rp2: Add support for RP2350 for vreg
Adds support for RP2350 in vreg regulator driver

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-23 10:42:35 +01:00
David Jewsbury
1cbaa5f3f5 drivers: mspi_dw: nrf_qspi_v2: Remove redundant EVDMA definitions
EVDMA register access has been cleaned up to remove redundant macros.
EVDMA_PLAIN_DATA enum has also been added of value 0x3F which previously
had been assumed to be a masking of all the other values but isn't, it's
its own distinct value. Other enums still exist for future use.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2026-01-23 10:42:15 +01:00
David Jewsbury
2043119bcc drivers: mspi_dw: nrf_qspi_v2: Add ifdef to include DMA code if enabled
DMA functions will not only be included if enabled for the nrf_qspi_v2
peripheral

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2026-01-23 10:42:15 +01:00
David Jewsbury
a2b583081a drivers: mspi_dw: fix DMA transfer size logic
Fixing of erroneous RXTRANSFERLENGTH and number of transfer frames
calculation.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2026-01-23 10:42:15 +01:00
Lyle Zhu
cc18a23ec9 bluetooth: classic: GOEP: fix L2CAP MTU calculation
Correct the minimum MTU calculation for GOEP over L2CAP to account
for the L2CAP I-frame overhead.

- Update BT_BUF_ACL_RX_SIZE default from 264 to 265 bytes for GOEP
- Update BT_GOEP_L2CAP_MTU minimum range from 259 to 265 bytes
- Add detailed comment explaining L2CAP I-frame field length (6 bytes):
  * 4 bytes for extended control field
  * 2 bytes for FCS field

The previous calculation only accounted for the L2CAP header (4 bytes)
but missed the 6-byte L2CAP I-frame overhead (extended control field
and FCS), resulting in an incorrect minimum of 264 bytes instead
of the correct 265 bytes. And it causes the minimum MTU of L2CAP
to be incorrectly set to 254. The MTU cannot meet the minimum
requirement of GOEP MOPL.

The correct calculation for GOEP over L2CAP is:
255 bytes (GOEP minimum MTU) + 4 bytes (L2CAP header) + 6 bytes
(L2CAP I-frame) = 265 bytes total.

Set the default value of CONFIG_BT_BUF_ACL_RX_SIZE to 265 if GOEP is
enabled.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-23 10:41:38 +01:00
Dat Nguyen Duy
2247f4dc7a tests: drivers: support watchdog tests for s32k5xxcvb
Enable wdt_basic_api watchdog only for cm7. For cr52,
because the SoC set the cores in Thumb mode after reset,
so a debugger is always needed to switch the core to Arm
state before loading zephyr application.

wdt_basic_reset_none test can be enabled for both.

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-23 10:41:27 +01:00
Dat Nguyen Duy
2d019f163d samples: support watchdog samples for s32k5xxvcb
Only enable watchdog sample for cm7. For cr52, because the
SoC set the cores in Thumb mode after reset, so a debugger
is always needed to switch the core to Arm state before
loading zephyr application.

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-23 10:41:27 +01:00
Ha Duong Quang
640c4d1ba3 boards: nxp: s32k5xxcvb: add support for watchdog
Add support for Watchdog (SWT)

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
Co-authored-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-23 10:41:27 +01:00
Dat Nguyen Duy
3836420f2f dts: nxp: add watchdog devicetree nodes for s32k566
Add watchdog devicetree nodes for S32K566

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-23 10:41:27 +01:00
Kevin Chan
e7720307ef tests: drivers: sdhc: support PSE84
- add overlay files for CM55 in order to run sdhc app.

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2026-01-23 10:41:07 +01:00
Kevin Chan
ac0ad06f9e tests: subsys: sd: sdmmc: support PSE84
- add overlay file for CM55

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2026-01-23 10:41:07 +01:00
Kevin Chan
365ce11066 samples: subsys: fs: fs_sample: support PSE84
- add overlay and conf file

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2026-01-23 10:41:07 +01:00
Kevin Chan
2e8b47462a samples: net: wifi: shell: support PSE84
- add conf. file

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2026-01-23 10:41:07 +01:00
Kevin Chan
0c950801d3 drivers: sdhc: add SDHC driver for PSE84 & cy8cproto_062_4343w
- add SDHC driver code to support both SDMMC and SDIO fucntion
- add SDHC dts node and Kconfig
- add clock configuration for SDHC

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2026-01-23 10:41:07 +01:00
Thinh Le Cong
642127e1d7 dts: arm: renesas: add SCI SPI node for Renesas RA
Add SCI SPI nodes for Renesas RA SoCs

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-01-23 10:40:51 +01:00
Thinh Le Cong
0f80ee260d drivers: spi: Initial support for SCI SPI driver on Renesas RA
Add SCI SPI driver support on Renesas RA devices

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-01-23 10:40:51 +01:00
Dave Lacerte
64c88e9bb3 boards: arduino: portenta_h7 : Update doc about WiFi functionality
Removes a forgotten note about the WiFi feature, which is now supported.

Signed-off-by: Dave Lacerte <lacerte.dave@hydroquebec.com>
2026-01-22 14:35:11 -06:00
Scott Worley
705fc203e5 soc: microchip: mec: Disable deprecated MEC5 HAL for MEC165xB/174x/175x
Due to multiple customer requests we are deprecating the MEC5 HAL.
Customers prefer all code to be in the main Zephyr tree. They do
not want a dependency on an outside SoC HAL. These changes remove
the MEC5_HAL select from MEC165xB, MEC174x, and MEC175x. The SoC
code calling the HAL for debug configuration was replaced with
a small amount of code common to all SoC's. We also moved all
the common header includes into a common SoC header to prevent
changing multiple files if new common headers are added.
Note: the in-tree drivers: kernel timer, GPIO, PINCTRL, and UART
are all non-HAL.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2026-01-22 14:34:49 -06:00
Brandon Edmonds
554a765de9 drivers: sensor: shell: Add SENSOR_TRIG_TIMER to the sensor stream shell.
In sensor_shell_stream.c, cmd_sensor_stream() checks for valid trigger
types, but it is missing SENSOR_TRIG_TIMER option.

Signed-off-by: Brandon Edmonds <bedmonds91@gmail.com>
2026-01-22 14:34:17 -06:00
Kevin Chan
72b13523f6 drivers: spi: add SPI-DMA logic
support SPI-DMA logic

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2026-01-22 14:34:05 -06:00
Kevin Chan
aa58db6622 tests: drivers: spi: spi_loopback: support SPI-DMA on PSE84
Added SPI-DMA overlay

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2026-01-22 14:34:05 -06:00
Kevin Chan
09ffa475c9 drivers: dma: fix channel_state
channelState depends on descriptor count

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2026-01-22 14:34:05 -06:00
Peter Mitsis
e18a048c84 kernel: Add K_TIMEOUT_SUM() macro
The K_TIMEOUT_SUM() macro is intended as a means to add two
k_timeout_t values together. This may be useful for a developer
applying an exponential backoff algorithm.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2026-01-22 14:33:23 -06:00
Mohamed Azhar
29493ced6f boards: sam_e54_xpro: Update dts files for spi support
Add required DTS and pinctrl changes to enable SPI on sam_e54_xpro.

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2026-01-22 14:32:38 -06:00
Mohamed Azhar
139f2e7b83 drivers: spi: microchip: Add SPI g1 driver
- Add SPI driver for Microchip SERCOM g1
- Add and update Kconfig files to support the driver
- Update CMakeLists.txt to include the new driver

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2026-01-22 14:32:38 -06:00
Mohamed Azhar
61dea0bcc8 dts: arm: microchip: sam: add SPI node and binding file
Add device tree binding file for Microchip g1 SPI driver

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2026-01-22 14:32:38 -06:00
Liam Ogletree
4bf67fca7a samples: cs40l5x: Update sample application based on driver changes
Modifies sample application to use error callback mechanism added to
haptics API instead of device-specific API extension.

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
2026-01-22 14:31:31 -06:00
Liam Ogletree
339d2df232 drivers: haptics: Update CS40L5x driver to use new haptics API
Modifies the CS40L5x driver to use the error callback mechanism
added to the haptics API instead of a device-specific API
extension.

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
2026-01-22 14:31:31 -06:00
Liam Ogletree
abaf251800 drivers: haptics: Add error callback mechanism to haptics API
Haptics devices provide protection features to prevent damage during
operation. Adds an error callback mechanism to the haptics API to
enable haptics device drivers to raise these conditions to the
application layer. Enumerates a subset of errors that are common
to modern haptics devices across major vendors.

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
2026-01-22 14:31:31 -06:00
Marcelo Roberto Jimenez
62a49211b1 drivers: serial: uart_xmc4xxx: Enable run time configuration
This patch enables run time configuration for the XMC4xxx serial ports.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2026-01-22 14:30:26 -06:00
Marcelo Roberto Jimenez
7744d20840 drivers: serial: uart_xmc4xxx: Run clang-format before applying a patch
This patch just formats the uart_xmc4xxx.c file before the real
patch, otherwise the changes would be hard to read.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2026-01-22 14:30:26 -06:00
Thomas Lang
b5f71d3028 samples: sensor: apds9960: Added gesture support
Added a new channel fetch to demonstrate reading gestures

Signed-off-by: Thomas Lang <thomaslang2003@me.com>
2026-01-22 14:29:50 -06:00
Thomas Lang
109f0e15c4 drivers: sensor: apds9960: Added gesture detection
Created logic to calculate gestures from the APDS9960 sensor

Signed-off-by: Thomas Lang <thomaslang2003@me.com>
2026-01-22 14:29:50 -06:00
Thomas Lang
f505d31be6 drivers: sensor: apds9960: Setup gesture sensing configuration
Created sensor specific channels and Kconfig for gesture sensing.

Signed-off-by: Thomas Lang <thomaslang2003@me.com>
2026-01-22 14:29:50 -06:00
Thomas Lang
75640be632 drivers: sensor: apds9960: Allow multiple sensor instances
Allow for multiple apds9960s to be present

Signed-off-by: Thomas Lang <thomaslang2003@me.com>
2026-01-22 14:29:50 -06:00
Hanan Arshad
151a9a33e6 drivers: sensor: pms7003: add support for additional PM parameters
The current PMS7003 sensor driver in Zephyr only supports reading the
basic PM1.0, PM2.5, and PM10 concentration values.

This update extends the driver to support additional data provided by the
PMS7003 sensor, including:

- Standard particle concentration values (CF=1) for PM1.0, PM2.5, and PM10
- Particle counts for particles greater than or equal to 0.3 µm, 0.5 µm,
  1.0 µm, 2.5 µm, 5.0 µm, and 10.0 µm per 0.1 liter of air

Adding support for these readings allows applications to access more
detailed particulate data, improving the sensor’s usability in air quality
monitoring and analysis scenarios.

Signed-off-by: Hanan Arshad <hananarshad619@gmail.com>
2026-01-22 14:29:37 -06:00
dependabot[bot]
5ca1fe7399 ci: github: bump the actions-deps group across 1 directory with 15 updates
Bumps the actions-deps group with 15 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [actions/checkout](https://github.com/actions/checkout) | `5.0.0` | `6.0.2` |
| [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) | `11` | `12` |
| [EnricoMi/publish-unit-test-result-action](https://github.com/enricomi/publish-unit-test-result-action) | `2.21.0` | `2.22.0` |
| [tj-actions/changed-files](https://github.com/tj-actions/changed-files) | `47.0.0` | `47.0.1` |
| [actions/upload-artifact](https://github.com/actions/upload-artifact) | `5.0.0` | `6.0.0` |
| [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) | `5.1.0` | `5.1.1` |
| [actions/download-artifact](https://github.com/actions/download-artifact) | `6.0.0` | `7.0.0` |
| [codecov/codecov-action](https://github.com/codecov/codecov-action) | `5.5.1` | `5.5.2` |
| [github/codeql-action](https://github.com/github/codeql-action) | `4.31.2` | `4.31.10` |
| [actions/setup-node](https://github.com/actions/setup-node) | `6.0.0` | `6.2.0` |
| [zephyrproject-rtos/action-zephyr-setup](https://github.com/zephyrproject-rtos/action-zephyr-setup) | `1.0.11` | `1.0.12` |
| [carpentries/actions](https://github.com/carpentries/actions) | `0.15.0` | `0.17.0` |
| [zgosalvez/github-actions-ensure-sha-pinned-actions](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions) | `4.0.0` | `4.0.1` |
| [actions/stale](https://github.com/actions/stale) | `10.1.0` | `10.1.1` |
| [codecov/test-results-action](https://github.com/codecov/test-results-action) | `1.1.1` | `1.2.1` |



Updates `actions/checkout` from 5.0.0 to 6.0.2
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](08c6903cd8...de0fac2e45)

Updates `dawidd6/action-download-artifact` from 11 to 12
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](ac66b43f0e...0bd50d53a6)

Updates `EnricoMi/publish-unit-test-result-action` from 2.21.0 to 2.22.0
- [Release notes](https://github.com/enricomi/publish-unit-test-result-action/releases)
- [Commits](34d7c956a5...27d65e188e)

Updates `tj-actions/changed-files` from 47.0.0 to 47.0.1
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](24d32ffd49...e002140703)

Updates `actions/upload-artifact` from 5.0.0 to 6.0.0
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](330a01c490...b7c566a772)

Updates `aws-actions/configure-aws-credentials` from 5.1.0 to 5.1.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](00943011d9...61815dcd50)

Updates `actions/download-artifact` from 6.0.0 to 7.0.0
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](018cc2cf5b...37930b1c2a)

Updates `codecov/codecov-action` from 5.5.1 to 5.5.2
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](5a1091511a...671740ac38)

Updates `github/codeql-action` from 4.31.2 to 4.31.10
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](0499de31b9...cdefb33c0f)

Updates `actions/setup-node` from 6.0.0 to 6.2.0
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](2028fbc5c2...6044e13b5d)

Updates `zephyrproject-rtos/action-zephyr-setup` from 1.0.11 to 1.0.12
- [Commits](cefbf9086c...360ff9b36e)

Updates `carpentries/actions` from 0.15.0 to 0.17.0
- [Release notes](https://github.com/carpentries/actions/releases)
- [Commits](2e20fd5ee5...083bb9952b)

Updates `zgosalvez/github-actions-ensure-sha-pinned-actions` from 4.0.0 to 4.0.1
- [Release notes](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions/releases)
- [Commits](9e9574ef04...6124774845)

Updates `actions/stale` from 10.1.0 to 10.1.1
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](5f858e3efb...997185467f)

Updates `codecov/test-results-action` from 1.1.1 to 1.2.1
- [Release notes](https://github.com/codecov/test-results-action/releases)
- [Commits](47f89e9acb...0fa95f0e1e)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.2
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: dawidd6/action-download-artifact
  dependency-version: '12'
  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.22.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
- dependency-name: tj-actions/changed-files
  dependency-version: 47.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: actions/upload-artifact
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: aws-actions/configure-aws-credentials
  dependency-version: 5.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: actions/download-artifact
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: codecov/codecov-action
  dependency-version: 5.5.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: github/codeql-action
  dependency-version: 4.31.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: actions/setup-node
  dependency-version: 6.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
- dependency-name: zephyrproject-rtos/action-zephyr-setup
  dependency-version: 1.0.12
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: carpentries/actions
  dependency-version: 0.17.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: 4.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: actions/stale
  dependency-version: 10.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: codecov/test-results-action
  dependency-version: 1.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-22 13:03:37 -05:00
Victor Brzeski
6b31178272 uac2: disable active terminals when class is disabled
When the USB Bus is reset, the USBD stack will disable and re-enable
all Classes. If this occurs while streaming audio with UAC2, the
terminals remain active when re-enabled, yet the endpoints have
yet to be enabled (resulting in -ENODEV logspam). This change
disables all active terminals when the class is disabled.

Signed-off-by: Victor Brzeski <vbrzeski@gmail.com>
2026-01-22 13:01:30 -05:00
Braeden Lane
56014df8d9 tests: Add cy8ckit_041s_max test overlays
Add test and sample overlays for CY8CKIT-041S-MAX board:
- GPIO basic API test using P1.2 and P1.3 pins
- Button sample using P11.5 with pull-up configuration

Signed-off-by: Braeden Lane <Braeden.Lane@infineon.com>
2026-01-22 13:01:21 -05:00
Braeden Lane
060fe41df0 boards: infineon: Add CY8CKIT-041S-MAX board
Add support for Infineon CY8CKIT-041S-MAX development kit
based on CY8C4149AZI-S598 (PSoC 4100S Max).

Board features:
- 100-pin TQFP PSOC 4100S Max MCU (384KB Flash, 32KB SRAM)
- User LED and button
- KitProg3 for programming/debugging
- Common dtsi structure for peripheral configuration

Signed-off-by: Braeden Lane <Braeden.Lane@infineon.com>
2026-01-22 13:01:21 -05:00
Braeden Lane
f68885f1c6 drivers: Add PSOC 4 clock control and serial support
Add clock control and UART support for PSOC 4 family:
- Clock control drivers with PSOC 4 compatibility
- PSOC4xx clock source bindings and definitions
- HF clock divider configuration support
- UART FIFO trigger level configuration for PSOC 4100S Max
  series with 8-deep FIFO (RX trigger=7, TX trigger=0)

Signed-off-by: Braeden Lane <Braeden.Lane@infineon.com>
2026-01-22 13:01:21 -05:00
Braeden Lane
fe9ecee97e drivers: gpio: Add Infineon PSOC 4 GPIO driver support
Add GPIO driver for Infineon PSOC 4 series MCUs using the
Infineon PDL.

Signed-off-by: Braeden Lane <Braeden.Lane@infineon.com>
2026-01-22 13:01:21 -05:00
Braeden Lane
fd991b7491 dts: arm: infineon: psoc4: Add PSOC 4100S Max devicetree
Add devicetree support for PSOC 4100S Max series including:
- Base SoC dtsi with GPIO, UART, HSIOM peripherals
- 100-TQFP package dtsi for pin multiplexing
- CY8C4149AZI-S598 MPN-specific devicetree include
- Updated compatible strings for PSOC 4 support
- Clock structure with clk_hf and clk_pump nodes
- Simplified peripheral clock naming (peri_clk_div)
- PSOC4xx clock source definitions and bindings

Signed-off-by: Braeden Lane <Braeden.Lane@infineon.com>
2026-01-22 13:01:21 -05:00
Braeden Lane
14268793a9 soc: infineon: psoc4: Add PSOC 4100S Max series support
Add initial support for the PSOC 4100S Max series, starting
with the CY8C4149AZI-S598 (100-TQFP package) used on the
CY8CKIT-041S-MAX development board.

The infrastructure supports adding additional part numbers
in the future as needed.

Signed-off-by: Braeden Lane <Braeden.Lane@infineon.com>
2026-01-22 13:01:21 -05:00
Vinayak Kariappa Chettimada
891d50c396 tests: bsim: Bluetooth: Cover settings without snprintk use
Cover settings without snprintk use in bsim test.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-22 13:01:07 -05:00
Vinayak Kariappa Chettimada
43dede5acc Bluetooth: Host: settings: Add early len check without strncpy/cmp use
Add early len check, remove use of strcpy, strncpy and
strncmp.

Co-authored-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-22 13:01:07 -05:00
Vinayak Kariappa Chettimada
230453b6ea Bluetooth: Host: settings: Fix truncation detection after strncpy
Fix truncation detection after strncpy, as strlen cannot be
used if the src was truncated due to insufficient size of
dst.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-22 13:01:07 -05:00
Vinayak Kariappa Chettimada
d98c2cf0d8 Bluetooth: Host: Rework settings without snprintk to return error
Rework settings implementation for not reusing the OS
snprintk implementation with CONFIG_PRINTK=n and to return
error if path buffer is insufficient.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-22 13:01:07 -05:00
Vinayak Kariappa Chettimada
d8f3e43b20 Bluetooth: Host: Rework settings without snprintk use
Rework settings implementation for not reusing the OS
snprintk implementation with CONFIG_PRINTK=n.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-22 13:01:07 -05:00
Vinayak Kariappa Chettimada
2db3f7978f Bluetooth: Host: settings without snprintk use
Update settings implementation for not reusing the OS
snprintk implementation with CONFIG_PRINTK=n.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-22 13:01:07 -05:00
Vinayak Kariappa Chettimada
4a914bf281 Bluetooth: Host: ATT: Do not use bt_addr_le_to_str when CONFIG_LOG=n
Do not use bt_addr_le_to_str() when CONFIG_LOG=n.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-22 13:01:07 -05:00
Antoine Pradoux
2cc03f791d tests: rtc_api: Add RTC test configuration for nucleo_u385rg_q board
- Add a new test configuration file enabling RTC calibration and alarm
features for the nucleo_u385rg_q board
- Add the nucleo_u385rg_q device tree overlay defining the RTC alias

Signed-off-by: Antoine Pradoux <antoine.pradoux@st.com>
2026-01-22 13:00:57 -05:00
Antoine Pradoux
254c6e8377 boards: st: Enable RTC support on nucleo_u385rg_q board
- Activate the RTC node in the device tree by enabling its clocks and
setting its status to okay
- Add 'rtc' to the supported features in the board YAML configuration

Signed-off-by: Antoine Pradoux <antoine.pradoux@st.com>
2026-01-22 13:00:57 -05:00
Antoine Pradoux
c10819f93a drivers: rtc: stm32: Add STM32U3 support for RTC alarm, clock & counter
Extend RTC driver to handle STM32U3 series specifics:
- Include STM32U3X in condition where RTC Alarm event is not routed to EXTI
- Use LL_RCC_RTC_ClockEnable call for STM32U3 instead of LL_RCC_EnableRTC
- Adapt counter_stm32_rtc driver for STM32U3 clock and EXTI handling

Signed-off-by: Antoine Pradoux <antoine.pradoux@st.com>
2026-01-22 13:00:57 -05:00
Antoine Pradoux
e97559b6f2 dts: arm: st: Add RTC node for STM32U3 series
- Add the rtc node for the stm32u3
- This enables RTC support for STM32U3 platforms once enabled

Signed-off-by: Antoine Pradoux <antoine.pradoux@st.com>
2026-01-22 13:00:57 -05:00
Anil Ozrenk
565bb11549 cmake: xcc: prioritize board-specific toolchain version
Change the toolchain version resolution order to check for
board-specific TOOLCHAIN_VER_${NORMALIZED_BOARD_TARGET} first,
falling back to the generic TOOLCHAIN_VER if not defined.

Now if we want to use various boards lots of them uses same version
but fewer ones differ. We won't have to define TOOLCHAIN_VER for
every board.

Signed-off-by: Anil Ozrenk <anil.ozrenk@analog.com>
2026-01-22 13:00:38 -05:00
Albort Xue
5a06cbdf82 boards: mcx_nx4x_evk: correct W25Q64JV JEDEC ID
The JEDEC ID for the Winbond W25Q64JV flash on the MCX NX4X EVK board
was incorrectly specified as [ef 40 17]. According to the W25Q64JV
datasheet, the correct JEDEC ID is [ef 60 17], where:
- ef: Winbond manufacturer ID
- 60: Memory type (W25Q series)
- 17: Capacity (64 Mbit)

Update the jedec-id property to match the actual flash device.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-01-22 13:00:23 -05:00
Albort Xue
9d817c7992 drivers: flash: flash_mcux_flexspi_nor: fix QER S2B1v5 status reg case
The JESD216_DW15_QER_VAL_S2B1v5 case had incorrect status register
read/write logic. It was reading only SR2 but writing both SR1 and SR2,
which could corrupt SR1 if not read first.

Merge the S2B1v5 case with S2B1v1/v4 cases since they all set bit 1 of
SR2. Update the common path to properly handle both single-byte (SR2 only)
and two-byte (SR1+SR2) read/write operations by:

- Reading SR1 first when rd_size is 2, saving it temporarily
- Reading SR2 using the scratch command
- Combining both bytes with SR2 in the upper byte when needed
- Writing the combined value with the QE bit set

Remove the now-redundant S2B1v5-specific case and simplify the LUT
sequence to read SR2 directly instead of reading SR1 first.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-01-22 13:00:23 -05:00
Maochen Wang
6ebf1963e8 manifest: fix DPP remain_on_channel wait timeout
The remain_on_channel callback triggers cookie_event, which checks
pending_remain_on_channel before giving drv_resp_sem. Previously,
pending_remain_on_channel was set after calling
dev_ops->remain_on_channel, causing drv_resp_sem to timeout.
Move the pending_remain_on_channel assignment before invoking
dev_ops->remain_on_channel to ensure proper synchronization.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2026-01-22 13:00:10 -05:00
Vincent Tardy
86d55a8d81 drivers: bluetooth: hci: remove RAM allocation in send process
Remove local Tx buffer allocated in the
bt_hci_stm32wba_send() function.
Get Event buffer resource to store data returned
by lower layer and provide it to Host in case of
Tx packet is an HCI Command type.

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2026-01-22 13:00:00 -05:00
Vincent Tardy
77f933e7d3 drivers: bluetooth: hci: fix RAM allocation in stm32wbax ble hci driver
Remove useless allocated RAM in stm32wbax ble hci driver.

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2026-01-22 13:00:00 -05:00
Bill Waters
db5ec5f58f dts: arm: infineon: edge: pse84: ITCM/DTCM
- There was a mistake with the CM33 core.  It does
  not have ITCM/DTCM.  Only the CM55 core does.
- Also enabled ITCM/DTCM in the cm55 board file.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2026-01-22 12:59:49 -05:00
Yangbo Lu
41f296bc01 boards: nxp: imx93_evk_mimx9352_m33: enable lpi2c2
Enabled lpi2c2, and verified with I2C shell commands.

uart:~$ i2c scan i2c@44350000
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:             -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- 22 -- -- 25 -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- 34 -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
3 devices found on i2c@44350000
uart:~$
uart:~$ i2c read i2c@44350000 0x22 0x4 1
00000000: ff
uart:~$ i2c write i2c@44350000 0x22 0x4 0x0 1
uart:~$ i2c read i2c@44350000 0x22 0x4 1
00000000: 00

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2026-01-22 12:56:25 -05:00
Yangbo Lu
8f5f337419 dts: arm: nxp_imx93_m33: add lpi2c dts nodes
Added lpi2c dts nodes.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2026-01-22 12:56:25 -05:00
Robert Lubos
a34409f006 doc: migration-guide-4.4: Document secure socket version enforcement
Document that TLS version passed to a zsock_socket() function is no
longer ignored and is now enforced as the minimum TLS version for the
TLS session.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-22 12:56:12 -05:00
Robert Lubos
8a5c82ae1d doc: net: sockets: tls: Document the meaning of the protocol version
Document explicitly that the TLS version passed in the protocol
parameter matters and specifies the minimum TLS version to use for the
socket.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-22 12:56:12 -05:00
Robert Lubos
5a0f33b31f net: sockets: tls: Enforce minimum TLS version
Enforce the minimum TLS version on mbed TLS, based on the protocol
version provided by the application when creating socket. This ensures
that when application creates a TLS 1.3 socket, mbed TLS won't downgrade
the session to TLS 1.2 for instance.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-22 12:56:12 -05:00
Miika Karanki
c7fb653046 serial: uart_native_pty: send UART_RX_DISABLED event
When uart_rx_disable is called, or rx gets otherwise disabled,
UART_RX_DISABLED event should be emitted.

Signed-off-by: Miika Karanki <miika.karanki@vaisala.com>
2026-01-22 12:55:41 -05:00
Maciej Perkowski
0455416c52 maintainers: Add fundakol as twister collaborator
Lukasz Fundakowski is a python expert with an interest in
testing frameworks and coding standards. He is a valuable
reviewer with attention to details. He had a major impact on
design and implementation of the pytest plugin for twister.

Signed-off-by: Maciej Perkowski <maciej.perkowski@nordicsemi.no>
2026-01-22 12:55:31 -05:00
Scott Worley
df13dcc560 dts: arm: microchip: mec: Fix MEC1653B code sram base address
Microchip MEC1653B has 416KB of SRAM. ARM ICCM SRAM is 356KB
starting at 0xC0000. ARM DCCM SRAM is 64KB starting at 0x118000.
Chip DTS file had incorrect ICCM starting address.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2026-01-22 12:55:22 -05:00
Muhammad Waleed Badar
1350164d67 drivers: uart: bcm2711: fix poll_in
uart_bcm2711_poll_in() incorrectly returned the received byte
instead of writing it to the provided buffer.

Update the implementation to store the character in *c and
return 0 on success, matching the UART poll_in API.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-01-22 12:55:13 -05:00
Flavio Ceolin
59a57722ae pm: Fix wrong type promotion
In pm_system_suspend there is a possible invalid type promotion
in sys_clock_set_timeout(MAX(0, ticks - exit_latency_ticks), true);

ticks is int32_t and exit_latency_ticks is uint32_t consequently
ticks is promoted to uint32_t resulting in a possible underflow and
setting a wrong value in sys_clock_set_timeout().

Fixes #100005
Coverity CID: 535628

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-22 12:54:52 -05:00
Johann Fischer
53e6b7d543 MAINTAINERS: remove jfischer-no from display collaborators
I do not have any plans in the near future to collaborate in this area.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2026-01-22 12:54:38 -05:00
Jamie McCrae
195a3ff63a tests: dfu: img_util: Disable variant image for slot 1 build
Fixes an issue whereby a variant of the slot 1 image is built...
which would occupy the same slot that the test is building for,
therefore disable using the new experimental variant image Kconfig
in this configuration

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-22 12:54:28 -05:00
Adrian Bonislawski
2d0139aa22 MAINTAINERS: add myself as collaborator to Intel Xtensa platforms
Intel Platforms (Xtensa)
Drivers: DAI

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2026-01-22 12:54:18 -05:00
Benjamin Cabé
0a8564a9b9 dts: auxdisplay: add auxdisplay_0 label to sparkfun,serlcd example
This is technically a workaround for a limitation in the Pygments DTS
lexer causing the highlighting to break when rendering this example
in the documentation, but this is also an excuse to plug the label that
is used in the official auxdisplay sample.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-22 09:07:48 -08:00
Grzegorz Chwierut
2d7b42ddc5 tests: boot: mcuboot_direct_xip: escape plus signs in regex patterns
The plus signs in version strings need to be escaped with double
backslashes when used in regex patterns for the test harness.
This ensures proper pattern matching during test execution.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2026-01-22 14:14:48 +00:00
Mathieu Choplain
4228409128 drivers: sensor: stm32_temp: read calibration data once during init
Instead of reading calibration data (device-unique, but never changing!)
as part of each conversion, perform the read once and cache the value.

This notably avoids frequently an ICACHE disable/enable cycle on STM32H5,
which is a somewhat slow operation.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-22 14:11:20 +00:00
Mathieu Choplain
bc9efec896 drivers: sensor: stm32_temp: use union as calibration info type
Using a union enables accessing the calibration data using member names
instead of an array index, which makes the code more readable.

As long as the layout of struct { T m1; ... T mN; } and array A[N] is the
same (implementation-specific?), usage of the union type as done should
be Standard-compliant: accessing through either member of the union will
use an lvalue with compatible type to the same underlying object, which
is one of the allowed aliasing situations listed in §6.5.7 of N1548.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-22 14:11:20 +00:00
Mathieu Choplain
32260932f6 drivers: sensor: stm32_temp: move constants to instance configuration
Various fields were stored in the instance data despite being initialized
at compile-time to a constant value.
Move these fields to the instance configuration instead.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-22 14:11:20 +00:00
Mathieu Choplain
c9c23bef54 drivers: sensor: stm32_temp: use CAL_RES everywhere
The raw "12" constant was used in a place where the "CAL_RES" define should
have been used instead.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-22 14:11:20 +00:00
Håkon Amundsen
155d22a117 soc: kconfig: gen_uicr: elaborate on setting ERASEPROTECT
Provide some information on how to find the command that is used for
generating the UICR hex file so that its easier for users to
know what command to use.

Signed-off-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
2026-01-22 14:10:18 +00:00
Lingao Meng
d845a2230e fs: nvs: prevent ATE writes at sector boundary
In NVS, allocation table entries (ATEs) are written backwards within
each sector. Under delete-only or delete-heavy workloads, a sector may
contain only delete ATEs, causing the ATE write pointer to approach the
sector boundary.

Without an explicit boundary check, ATE writes may occur at offset 0 of
the current sector, allowing the write pointer to underflow into the
previous sector and corrupt unrelated data or metadata.

Fix this by disallowing ATE writes when the write pointer is at the
sector boundary. This ensures that ATE writes remain confined to the
current sector and prevents pointer underflow across sectors.

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2026-01-22 14:09:23 +00:00
Vinayak Kariappa Chettimada
73c182509c Bluetooth: Controller: LLL prepare at margin Kconfig
Introduce Kconfig option to enfore LLL prepare at margin
irrespective of whether there is an overlapping state/role.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-22 14:09:11 +00:00
Vinayak Kariappa Chettimada
5fe53aaa84 Bluetooth: Controller: Use PPI/DPPI to start s/w switch timer
Use PPI/DPPI to start s/w switch timer to reduce current
consumption.

Explicitly starting the s/w switch timer at prepare meant
current being consumed in the prepare margin duration. Use
of PPI/DPPI ensure s/w switch timer is start when event
timer is started after the prepare margin.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-22 14:09:11 +00:00
Vinayak Kariappa Chettimada
0b1b099196 Bluetooth: Controller: Fix PAST sync_offset_us calculation
Fix the missing use of remainder value in the sync_offset_us
calculations. Also, Periodic Sync reception is relative to
Peripheral event hence ticks_anchor does not require the
ticker margin and event jitter to be subtracted.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-22 14:09:11 +00:00
Peter van der Perk
40d79b1f64 sensor: bmm150: fix init when no trigger is selected
When no trigger was chosen case statement fell through to
default which causes the return code to -ENOTSUPP

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2026-01-22 14:08:56 +00:00
Gaetan Perrot
27be4443fc drivers: clock_control: litex: remove redundant initialization
Local variables are initialized but always overwritten before being
read or return.

Drop the redundant initialization.

No functional change intended.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-22 14:08:19 +00:00
Gaetan Perrot
49de45225d drivers: clock_control: litex: make litex_clk_dts_clkouts_read void
litex_clk_dts_clkouts_read() never reports errors and always returns
0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-22 14:08:19 +00:00
Gatien Chevallier
40c98c82d7 boards: st: stm32n6570_dk: read the MAC address from the OTP fuses
On STM32N6x SoCs, secrets and persistent information such as Ethernet
MAC addresses are stored in the BSEC OTP fuses. Therefore, default enable
OTP support if NET_L2_ETHERNET and NVMEM are enabled so that the MAC
address can be read from the BSEC OTP fuses through the NVMEM API.

Use the "mac_address0" NVMEM cell to be able to read the ethernet MAC
address from the OTP fuses.

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
2026-01-22 14:07:37 +00:00
Gatien Chevallier
28a988cc10 dts: arm: st: n6: Add BSEC node for OTP handling
The STM32N6 has a BSEC peripheral for the OTP management, add it to the
SoC device tree file. Moreover, there are 4 OTP words dedicated for
Ethernet MAC addresses, describe them in the NVMEM layout.

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
2026-01-22 14:07:37 +00:00
Gatien Chevallier
84dc327084 drivers: ethernet: stm32: handle MAC address with net_eth_mac_load()
This new API handles if the MAC address should be fetched from NVMEM,
is static or be randomly generated. Use it so that the driver can
fetch the MAC address from the OTP fuses, when possible.

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
2026-01-22 14:07:37 +00:00
Gatien Chevallier
ff864b3cd3 drivers: otp: add stm32 BSEC driver
Introduce the Boot and SECurity(BSEC) control driver. The BSEC
peripheral manages the accesses to an embedded one time
programmable(OTP) array of fuses. Those fuses are used to store
on-chip, non-volatile data like boot and security parameters (e.g:
secret keys, non-volatile counters, etc...).

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
2026-01-22 14:07:37 +00:00
Nicola Vetrini
fc7fae6090 sca: ECLAIR: update configuration for ECLAIR 3.14.0
This is the version of the tool that Zephyr infrastructure uses,
and the configuration needs to be adjusted accordingly.

Setting *_ALIASES variables is not necessary anymore.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
2026-01-22 14:03:17 +00:00
Valerio Setti
647f68cb2c doc: migration-guide: add notes for changes in flash_map's integrity check
Add notes about changes in flash_map's Kconfig for what concerns the
crypto libraries used for integrity check.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2026-01-22 14:03:06 +00:00
Valerio Setti
484fb7d7fc tests: storage: flash_map: rename conf file for integrity check
Since now there is a single backend for crypto, i.e. the PSA Crypto API
one, it's better to rename corresponding test case and related
configuration file so that instead of mentioning "psa" they mention
"integrity-check".

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2026-01-22 14:03:06 +00:00
Valerio Setti
74740148b4 tests: storage: flash_map: remove testing of legacy Mbed TLS crypto
Following the removal of legacy Mbed TLS crypto for SHA-256 in the
subsys, this commit updates the related sample. "overlay-mbedtls.conf" is
removed as no more necessary and the corresponding test case is removed
from "testcase.yaml". "overlay-psa.conf" is updated removing unnecessary
Kconfig selections.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2026-01-22 14:03:06 +00:00
Valerio Setti
77d603a5e0 storage: flash_map: remove legacy Mbed TLS crypto for integrity check
Remove Kconfig and code related to legacy Mbed TLS crypto for SHA-256.
This was used for the integrity check functionality as alternative to
PSA Crypto API. This support was already deprecated and now it's removed
in order to prepare for the next Mbed TLS 4.0 release where legacy crypto
won't be available anymore.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2026-01-22 14:03:06 +00:00
Khoa Tran
ca8e82532a drivers: rtc: Add update to use with new battery backup inplementation
Update Renesas RTC driver to use with the new battery backup inplementation

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2026-01-22 14:02:40 +00:00
Khoa Tran
caf40f2581 drivers: misc: update Renesas RA ethos_u init flow
Remove the NPU power domain enabling inside ethos_u code due to it
has already been done by soc_reset_hooks()

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2026-01-22 14:02:40 +00:00
Khoa Tran
0a37e1f43f drivers: display: update GLCDC device init flow
Remove power domain on for GLCDC controller inside driver code
due to it has already been done by soc_reset_hooks()

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2026-01-22 14:02:40 +00:00
The Nguyen
cb47fb2706 drivers: clock_control: remove clock early init for Renesas RA
Remove the root clock control early initialization because it has
already been done in the soc_reset_hooks()

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2026-01-22 14:02:40 +00:00
Khoa Tran
d8c1333295 boards: renesas: Disable sub-clock for boards lacking a crystal
This commit disables the sub-clock node for boards without a
populated onboard crystal.

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2026-01-22 14:02:40 +00:00
The Nguyen
9dd9132688 soc: renesas: ra: soc init hooks refactor
This commit updates the source files for Renesas RA initialization:
- The SoC reset/init now uses generic hooks from the
"soc/renesas/ra/common" instead of SoC-specific initialization hooks.
- Add soc_reset_hooks() to perform the early reset code.
- Battery-backup domain initialization has been removed from
soc_early_init() and reallocated to soc_reset_hooks().

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2026-01-22 14:02:40 +00:00
The Nguyen
0923d2cedf manifest: update revision of hal_renesas
Update hal_renesas revision to add BSP code support

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2026-01-22 14:02:40 +00:00
Lucien Zhao
f63b15ddd0 tests: drivers: pwm: enable pwm_api case by using flexio0
- enable pwm_api case by using flexio function
- record platform information in testcase.yaml

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-22 14:02:24 +00:00
Lucien Zhao
dd8e364863 boards: nxp: frdm_mcxe247: config flexio0 pinmux
- configure flexio pwm default pinmux

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-22 14:02:24 +00:00
Camille BAUD
7ac12165dd boards: bflb: Add ADC entry to boards with marked 'ADC' pins
Adds adc entry so driver is built.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-22 14:01:57 +00:00
Camille BAUD
b8b2d2ed21 samples: adc_dt: Add some bflb boards
Add ADC sample overlays

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-22 14:01:57 +00:00
Camille BAUD
bddaa08afd drivers: adc: add bflb adc driver
Adds a driver for the GPADC

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-22 14:01:57 +00:00
Camille BAUD
33196ff3cd dts: adc: add bindings for bflb adc
Adds the bindings for the GPADC

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-22 14:01:57 +00:00
TOKITA Hiroshi
81fd57078d MAINTAINERS: Add area for QNX Hypervisor
Add area for supporting QNX Hypervisor Virtual Machine.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-22 08:41:12 +00:00
Yangbo Lu
b2ac268a66 drivers: ethernet: dsa: make dsa_tag_netc driver native
The DSA tag protocol driver should be native for packet
tagging and untagging. There is possibility other vendors/IPs
use it. So, just defined DSA tag structures in header file
instead of using hal header file.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2026-01-22 08:41:00 +00:00
Yangbo Lu
05c1fecb5b drivers: ethernet: dsa: move dsa_tag_netc driver out of subsys
Moved dsa_tag_netc driver out of subsys. Maintained it in
drivers/ethernet/dsa as vendor driver.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2026-01-22 08:41:00 +00:00
Yangbo Lu
cd5bc5caa5 drivers: ethernet: dsa: improve DSA_NXP_NETC_GCL_LEN Kconfig option
Renamed DSA_NXP_NETC_GCL_LEN to DSA_NXP_IMX_NETC_GCL_LEN for
naming consistency, and wrapped it in DSA_DRIVERS condition.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2026-01-22 08:41:00 +00:00
Yangbo Lu
1b14cb18a2 net: dsa: support dsa protocol registering with iterable section
Supported dsa protocol registering with iterable section.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2026-01-22 08:41:00 +00:00
Yangbo Lu
d9d46c0ce3 net: dsa: make dsa_tag.h as common header file
Moved dsa_tag.h to include folder as common header file.
And we will support iterable section for vendor dsa tag
protocol drivers registering.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2026-01-22 08:41:00 +00:00
Felix Wang
50ba0244c1 MAINTAINERS: add FelixWang47831 as counter collaborator
Add FelixWang47831 as a collaborator for the counter driver.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-22 08:40:54 +00:00
Gaetan Perrot
981872e203 drivers: ethernet: nxp_imx_netc: netc_blk: make ierb_init() void
ierb_init() never reports an error and cannot fail in practice.
Returning an int led to a dead error.

Convert ierb_init() to a void function, drop the unused return value
checks, and provide a no-op implementation for SoCs that do not
require IERB initialization.

This simplifies the control flow and removes an unnecessary error
condition.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-22 08:40:44 +00:00
Gaetan Perrot
0f046ac0de drivers: adc: adc_ambiq: check return value of adc power control
Handle the return value of am_hal_adc_power_control() during ADC
initialization.

The previous code overwrote the return value before it was checked,
which could silently ignore failures when powering on the ADC.

Fix this by validating the return code and propagating an error if
the operation fails.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-22 08:40:37 +00:00
Camille BAUD
a780587ccb drivers: display: move ssd1306.c to display_ssd1306.c
add missig prefix

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-22 08:40:29 +00:00
Camille BAUD
74975b0be5 drivers: display: ssd1306: move registers from header to main file
standard self-containment

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-22 08:40:29 +00:00
Camille BAUD
fa30e17ffa doc: release: Notes about SSD1306/9 bindings
Adds notes about SSD1306/9 bindings

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-22 08:40:29 +00:00
Camille BAUD
fad7e5dfe6 drivers: display: rename ssd1306/9fb to ssd1306/9
harmonize with other drivers, remove irrelevant suffix

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-22 08:40:29 +00:00
Peter Mitsis
3944b0cfc7 kernel: Extend thread user_options to 16 bits
Upgrades the thread user_options to 16 bits from an 8-bit value to
provide more space for future values.

Also, as the size of this field has changed, the values for the
existing architecture specific thread options have also shifted
from the upper end of the old 8-bit field, to the upper end of
the new 16-bit field.

Fixes #101034

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2026-01-22 08:40:17 +00:00
Peter Mitsis
924874baef kernel: Fix two k_condvar_wait() issues
1. When the timeout is K_NO_WAIT, the thread should not be added
   to the wait queue as that would otherwise cause to the thread
   to wait until the next tick (which is not a no-wait situation).
2. Threads that were added to the wait queue AND did not receive
   a signal before timing out should not lock the supplied mutex.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2026-01-22 08:39:55 +00:00
Vinit Mehta
c5bc58e3bd Samples: bluetooth: a2dp_sink: Audio support for 1060EVKC
Add codec driver overlay file to enable audio
rendering for A2DP sink sample application for
1060EVKC platform

Signed-off-by: Vinit Mehta <vinit.mehta@nxp.com>
2026-01-22 08:39:40 +00:00
Daniel Leung
50e980d9a8 xtensa: mmu: halt system if not enough L2 tables during boot
If there are not enough free L2 tables to map all predefined
memory regions at boot, halt the system in case assertion is
not enabled. Without all the needed memory regions mapped,
it is very unlikely that anything will run properly.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-01-22 08:39:30 +00:00
Daniel Leung
82b7d94d45 xtensa: mmu: add debug logs on page table allocations
Adds some debug logs when we are allocating page tables.
This provides a more visible way of seeing whether
we need to have more free tables.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-01-22 08:39:30 +00:00
Daniel Leung
0777dbea02 xtensa: mmu: assert when L2 table allocation fails during dup
Add an assertions to halt the system if L2 table allocation
fails when we need to duplicate an existing L2 table, as it is
a must-have and must-success operation.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-01-22 08:39:30 +00:00
Dharun krithik k
682493add9 drivers: watchdog: infineon: add PSoC4 support
Add support for the Infineon PSoC4 family to the infineon watchdog driver.
PSoC4 specific ILO frequency and tick period definitions.
Initialization and configuration logic specific to PSoC4.

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-22 08:39:16 +00:00
Dharun krithik k
8eec4c5fc4 boards: cy8cproto_041tp: enable watchdog
Enable the watchdog0 node and add an alias for it on the
CY8CPROTO-041TP board.

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-22 08:39:16 +00:00
Dharun krithik k
2acacec3f3 dts: infineon: add watchdog node for PSoC4
Add the watchdog controller node to the PSoC4 SoC definition.

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-22 08:39:16 +00:00
Ibrahim Abdalkader
0c5e7a6a95 sensing: sensor_mgmt: Use kernel heap for allocations
Use the kernel heap instead of the libc heap, improving
security and consistency.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2026-01-22 08:38:34 +00:00
Ibrahim Abdalkader
afa47a2765 mgmt: mcumgr: grp: Use kernel heap for allocations
Use the kernel heap instead of the libc heap, improving
security and consistency.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2026-01-22 08:38:34 +00:00
Ibrahim Abdalkader
2a432c65a2 drivers: wifi: Use kernel heap for allocations
Use the kernel heap instead of the libc heap, improving
security and consistency.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2026-01-22 08:38:34 +00:00
Ibrahim Abdalkader
5e61c06c85 drivers: i3c: Use kernel heap for allocations
Use the kernel heap instead of the libc heap, improving
security and consistency.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2026-01-22 08:38:34 +00:00
Mark Wang
f66ce9c251 bluetooth: shell: a2dp: include error code in failure messages
Add error code parameter to all A2DP shell error messages to provide
more detailed diagnostic information when operations fail. This applies
to configure, establish, release, start, suspend, delay report, and
abort response handlers.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2026-01-22 08:37:41 +00:00
Mark Wang
d8eb0ce5f4 bluetooth: shell: a2dp: use bt_shell_error for error messages
Replace bt_shell_print() calls with bt_shell_error() for all error
conditions and failure cases in the A2DP shell implementation to
properly distinguish error messages from informational output.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2026-01-22 08:37:41 +00:00
Mark Wang
313478b026 bluetooth: shell: a2dp: use bt_shell_xxx instead of shell_xxx
Replace all shell_print() and shell_error() calls with bt_shell_print()
and bt_shell_error() respectively to use the common Bluetooth shell
printing functions throughout the A2DP shell implementation.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2026-01-22 08:37:41 +00:00
Mark Wang
36ab1ba154 Bluetooth: shell: a2dp: Update a2dp sdp profile version
The newest a2dp spec set the profile version as 1.4.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2026-01-22 08:37:41 +00:00
Mark Wang
37a048abef doc: Bluetooth: shell: improve a2dp shell doc
describe all the a2dp shell cmds.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2026-01-22 08:37:41 +00:00
Mark Wang
6f0b31c709 bluetooth: shell: a2dp: improve a2dp shell cmds
add abort req and rsp callbacks, improve register_ep cmd to support delay
report, check buf tailroom for sending media, add get_conn cmd to test
bt_a2dp_get_conn.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2026-01-22 08:37:41 +00:00
Mark Wang
c92d617855 bluetooth: shell: a2dp: use common function to check a2dp initialization
Before every cmd, call one common function to check whether a2dp is
initialized.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2026-01-22 08:37:41 +00:00
Bernardo Perez Priego
42fcca480b drivers: i2c: microchip: Add mutex to transaction implementation
Currently, I2C transfer implementation does not have a mutex to
prevent multiple users from sending data at the same time, this could
lead to devices malfunction due to mixing I2C transaction data.

This patch adds mutex into transfer implementation to allow only one
user to send data at the time.

Signed-off-by: Bernardo Perez Priego <bernardo.perez.priego@intel.com>
2026-01-22 08:37:21 +00:00
Rex Chen
cbc881cc51 drivers: wifi: nxp: Add scan limit configure item
Expose scan limit configuration to customer.

Signed-off-by: Rex Chen <rex.chen_1@nxp.com>
2026-01-21 20:08:14 +01:00
Rex Chen
e9b257a1f9 manifest: hal_nxp: Add scan limit configure item
Sync hal_nxp to add scan limit configure item.

Signed-off-by: Rex Chen <rex.chen_1@nxp.com>
2026-01-21 20:08:14 +01:00
Armando Visconti
af6264e4b9 drivers/sensor: lsm6dsv16x: add device self test
Add device Self Test procedure. It is required to enable the
per device self-test DT property as well as the LSM6DSV16X_SELF_TEST
configuration.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2026-01-21 20:08:05 +01:00
Supper Thomas
bd9bf13a0e logging: Fix backoff calculation to use K_CYC instead of K_TICK
The backoff timeout calculation in z_log_msg_claim_oldest() was
incorrectly using K_TICK macro. Changed to K_CYC to properly convert
cycle-based timing differences to kernel timeouts for accurate backoff
in multi-domain message processing.

Signed-off-by: Supper Thomas <78900636@qq.com>
2026-01-21 20:07:56 +01:00
Karol Werner
c84a5eb24f drivers: sensor: ina3221: fix measurement wait time calculation
INA3221 performs measurements sequentially for all enabled channels (see
datasheet chapter 7.3.1), but the driver was not accounting for this
when calculating the wait time. Additionally, when measuring both bus
and shunt voltages, conversion times should be summed rather than taking
greater value.

Fix by counting enabled channels and multiplying them with per-channel
conversion time. For combined measurement, sum both conversion times
instead of using MAX().

Signed-off-by: Karol Werner <karol@ppkt.eu>
2026-01-21 20:07:46 +01:00
Jimmy Johnson
abeca66759 sensor: shell: battery: Update support for battery shell queries
Added a `supported` flag to battery status query so if the
charger does not support the query (returns -ENOTSUP) the
command still returns any other supported queries and
doesn't error out without reporting anything. Any other
errors than -ENOTSUP still cause the request to return
immediately, as was the case before the changes. Tested
on nordic npm 13xx.

Signed-off-by: Jimmy Johnson <catch22@fastmail.net>
2026-01-21 20:07:36 +01:00
Albort Xue
65438886e6 drivers: serial: uart_mcux_lpuart: configure clock before initialization
Add clock configuration step before UART initialization to ensure
proper clock setup. The clock is first disabled, then configured
if supported by the clock controller.

If clock configuration is not supported (ENOTSUP/ENOSYS), the driver
continues with default settings. Other errors are treated as failures
and propagated to the caller.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-01-21 20:07:26 +01:00
Greg Leach
5064eda9a4 tests: app_development: Add efr32bg22 support
Map test IRQ to SGI to prevent clash with EUART0 TX IRQ for EFR32BG22 SoC.

Signed-off-by: Greg Leach <greg.leach@ezurio.com>
2026-01-21 20:07:16 +01:00
Greg Leach
730b301009 boards: ezurio: Add rm126x_dvk support
Add support for the Ezurio RM126x DVK board family.

Signed-off-by: Greg Leach <greg.leach@ezurio.com>
2026-01-21 20:07:16 +01:00
Camille BAUD
9e39daadfd doc: release: Notes about SSD1327 Driver
Adds note about Kconfig change for SSD327 driver

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-21 20:07:07 +01:00
Camille BAUD
c5c4df5dd6 tests: build_all: display: Add ssd1325
Add ssd1325 test, rename ssd1327

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-21 20:07:07 +01:00
Camille BAUD
384abc7489 drivers: display: Introduce SSD1325, update driver
Adds SSD1325 support to SSD1327 driver, update and
improve driver.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-21 20:07:07 +01:00
Sven Ginka
f54a3fa8cd dts: bindings: fix filename typo in sy1xx-i2c.yaml
this fixes the incorrect filename of the sy1xx-i2c.yml
file.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2026-01-21 20:06:57 +01:00
Camille BAUD
18652dea69 drivers: serial: bflb: do not enable rx and err interrupt by default
It breaks things when callback doesnt expect them.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-21 20:06:48 +01:00
Benjamin Cabé
27120315d3 arch: arm: avoid the use of "sanity check" term
As per coding guidelines, "sanity check" must be avoided.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-21 20:06:35 +01:00
Benjamin Cabé
71262d0e07 arch: xtensa: avoid the use of "sanity check" term
As per coding guidelines, "sanity check" must be avoided.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-21 20:06:25 +01:00
Benjamin Cabé
5a9715add1 arch: x86: avoid the use of "sanity check" term
As per coding guidelines, "sanity check" must be avoided.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-21 20:06:15 +01:00
Benjamin Cabé
f64bb4bf1e arch: riscv: avoid the use of "sanity check" term
As per coding guidelines, "sanity check" must be avoided.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-21 20:06:06 +01:00
Benjamin Cabé
ff78913fa8 arch: arm: smp: Master core should be referred to as "primary"
As per Zephyr guidelines re: inclusive language, the term
"master" is replaced with "primary".

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-21 20:05:54 +01:00
Tahsin Mutlugun
2de323cd3e testsuite: Correct broken link to coverage documentation
The existing documentation link pointed to a non-existent page.
Update the link to use the current documentation URL.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2026-01-21 17:09:07 +01:00
Jukka Rissanen
96121bfb57 net: posix: Avoid multiple definitions of IFNAMSIZ symbol
One might see this compile error depending on what order the
POSIX headers are included

include/zephyr/net/net_compat.h:143: error: "IFNAMSIZ" redefined
.../zephyr/include/zephyr/net/net_compat.h:143:
                                error: "IFNAMSIZ" redefined [-Werror]
  143 | #define IFNAMSIZ NET_IFNAMSIZ
      |
In file included from ...
.../zephyr/include/zephyr/posix/net/if.h:16:
                note: this is the location of the previous definition
   16 | #define IFNAMSIZ IF_NAMESIZE
      |

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2026-01-21 17:08:55 +01:00
Jeroen Broersen
a10f7f3541 net: lwm2m: senml opaque base64 encoding fix
The SenML-JSON specification mentions base64-encoded data with the
URL-safe alphabet and padding omitted.
For sending data, zephyr used normal base64 with padding. Change the
base64 data to use the URL-safe format without padding when sending opaque
data via SenML-JSON.
Fixes #102390

Signed-off-by: Jeroen Broersen <jeroen.broersen@wioniq.com>
2026-01-21 17:08:41 +01:00
Robert Lubos
fbd9079148 net: dns: Implement CONFIG_DNS_RESOLVER_ADDITIONAL_QUERIES
There was a Kconfig option defined to limit the number of additional DNS
queries sent for aliases received in CNAME records (to avoid potential
query loops), however it was not implemented. This commit implements the
feature - the resolver will now only send up to
CONFIG_DNS_RESOLVER_ADDITIONAL_QUERIES follow-up queries after
receiving CNAME record with an alias w/o any IP addresses.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-21 17:08:29 +01:00
Robert Lubos
38d9c632d6 net: dns: Fix query redirection in case of CNAME result
In case CNAME record is received with no IP addresses, DNS resolver will
attempt to re-send the query for the name indicated by the CNAME record.
The logic for scheduling the new query was inconsistent though:
dispatcher_cb() assumes that it'll reuse the query context with the same
query id, while dns_read() cancelled the query, which shouldn't really
happen, as that would cause an error to be reported to the application
via callback.

Fix that by skipping the query cancel in case of DNS_EAI_AGAIN result.
The query context will be properly reused then, and freed either when
reply for another query arrives, or the query times out.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-21 17:08:29 +01:00
Robert Lubos
2a1b814f7b net: dns: Don't report CNAME records via callback
Don't report CNAME records via application callback (as it used to be
done). They don't carry any data in the info struct and are only used
internally to redirect DNS queries.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-21 17:08:29 +01:00
Sudan Landge
6891d57c01 boards: arm: musca_s1: disable crypto HW acceleration
Disable HW acceleration to fix CI failures caused by -Werror triggered
by prototype mismatches in the crypto accelerator path between TF-M and
Mbed TLS.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2026-01-21 17:08:08 +01:00
Sudan Landge
c30ab4e404 boards: arm: musca_b1: disable crypto HW acceleration
TF-M documentation states that code sharing on Musca-B1 is only
supported with software crypto and requires crypto hardware acceleration
to be disabled. So, force CRYPTO_HW_ACCELERATOR=OFF for the Musca-B1
non-secure TF-M build to match this requirement.

This also fixes CI failures caused by -Werror triggered by prototype
mismatches in the crypto accelerator path between TF-M and Mbed TLS.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2026-01-21 17:08:08 +01:00
Sudan Landge
7294fca0ac boards: arm: musca: Update flash layout to fix ci failure
Flash layout of musca_b1 and musca_s1 is updated as recommended by
mcuboot. This also fixes the below cmake build failures reported in
Zephyr ci.

```
CMake Error at
zephyrproject/zephyr/cmake/modules/extensions.cmake:3877
(message):
  required nodelabel not found: slot0_partition
Call Stack (most recent call first):
  zephyrproject/zephyr/modules/trusted-firmware-m/CMakeLists.txt:489
  (dt_nodelabel)
```

Note that the flash address of musca_b1 board is fixed from 0x0A07_0000
to 0x0A08_0000 as this was missed after the layout was changed in TF-M
in e1570bd143ef4843a531b57f77f0c2814b075dd9

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2026-01-21 17:08:08 +01:00
Magne Værnes
c2011b9d0f lib: posix: add missing getopt_long guard
Added ifdef guard (CONFIG_GETOPT_LONG) around the functions in
getopt_shim.c that requires getopt_long implementation.

Signed-off-by: Magne Værnes <magne.varnes@nordicsemi.no>
2026-01-21 17:07:49 +01:00
Jonas Berg
7c66a65c73 boards: shields: Add Adafruit HTS221 humidity sensor shield
Tested with the command mentioned in index.rst

Compile testing of the overlay file is done via
the dht_polling sample.

Product photo from https://learn.adafruit.com/assets/89387

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-21 17:07:33 +01:00
Sylvio Alves
be501ebb06 drivers: i2s: skip syscall validation when unconfiguring stream
When frame_clk_freq is set to 0, the I2S API specifies that the
stream should transition to NOT_READY state (i.e., unconfigure).
In this case, other config fields like mem_slab and block_size
are not used by the driver.

Skip the mem_slab and block_size validation in the syscall handler
when frame_clk_freq is 0 to match the driver behavior and avoid
rejecting valid unconfigure requests due to uninitialized fields.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-21 17:07:19 +01:00
Sylvio Alves
a5dd03b029 tests: drivers: i2s: initialize i2s_config struct to avoid garbage
Initialize the i2s_config struct to zero before use in the
test_i2s_state_not_ready_neg test case.

When frame_clk_freq is set to 0 to unconfigure a stream, other
fields in the struct were left uninitialized. On platforms with
userspace support, the syscall handler validates block_size against
the mem_slab block size before calling the driver.
Uninitialized garbage values could cause this validation to
fail unexpectedly.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-21 17:07:19 +01:00
Albort Xue
f5bee07bf5 drivers: spi: nxp_lpspi: Add clock configuration support
Add clock_control_configure() call during initialization to properly
configure the LPSPI clock. The implementation gracefully handles
platforms that don't support clock configuration by checking for
-ENOTSUP and -ENOSYS return codes and continuing with default
settings. Real configuration errors are logged and propagated.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-01-21 17:06:57 +01:00
Grzegorz Chwierut
efc36d96d3 twister: refactor DUT class to dataclass for serialization support
Convert the DUT class from a traditional class to a dataclass to enable
proper serialization and support for future multi-device testing with
pytest-harness.

Key changes:
- Migrated DUT class to use `dataclass` decorator with proper type hints
- Renamed `baud` property to `serial_baud` for consistency
- Updated hardware map schema to support both `baud` (legacy) and
`serial_baud` fields for backward compatibility
- Updated tests

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2026-01-21 17:06:36 +01:00
Gaetan Perrot
8340e8c264 drivers: sensor: ina2xx: get: remove redundant channel NULL checks
The ina2xx channel get helpers assume that channel descriptors are
valid when the driver exposes a given sensor channel.

Checking for NULL channel pointers after they are already
dereferenced does not provide any real safety and can hide
configuration errors.

Drop the late NULL checks and rely on the driver contract that
supported channels must be properly defined.

No functional change intended.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-21 17:06:19 +01:00
Gaetan Perrot
ae44e1e7b7 drivers: sensor: ina2xx: fetch: remove redundant channel NULL checks
The INA2xx fetch path assumes valid channel descriptors for all
supported sensor channels.

NULL checks performed after channel data is accessed are ineffective
and misleading, as invalid channel definitions indicate a
configuration error rather than a runtime condition.

Remove the redundant checks and keep the channel handling consistent
with the driver expectations.

No functional change intended.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-21 17:06:19 +01:00
Pieter De Gendt
3a961db126 doc: releases: 4.4: Add COBS streaming support entry
Add a Utilities entry with added COBS structs and functions.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-21 17:06:04 +01:00
Pieter De Gendt
aa76c1d10d tests: lib: cobs: Add streaming tests
Add test cases for streaming variants of COBS encoder/decoder.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-21 17:06:04 +01:00
Pieter De Gendt
f344ab6b98 cobs: Introduce streaming
This commit does:

- Introduce COBS streaming
- Refactor custom delimiter with XOR'ed encoded data
- Update tests

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-21 17:06:04 +01:00
Pieter De Gendt
d4bf9ea2e8 tests: lib: cobs: Remove malloc/free
Use static fixture struct so no malloc/free is needed.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-21 17:06:04 +01:00
James Roy
ae556f8914 dts: bindings: can: Move the dts clips to the examples
Move the dts sample nodes from the binding `description`
into the `examples` block.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2026-01-21 17:05:41 +01:00
James Roy
55870811db dts: bindings: timer: Move the dts clips to the examples
Move the dts sample nodes from the binding `description`
into the `examples` block.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2026-01-21 17:05:41 +01:00
James Roy
08ba0d242c dts: bindings: cache: Move the dts clips to the examples
Move the dts sample nodes from the binding `description`
into the `examples` block.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2026-01-21 17:05:41 +01:00
James Roy
a93c789c51 dts: bindings: charger: Move the dts clips to the examples
Move the dts sample nodes from the binding `description`
into the `examples` block.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2026-01-21 17:05:41 +01:00
James Roy
3989a59e9b dts: bindings: auxdisplay: Move the dts clips to the examples
Move the dts sample nodes from the binding `description`
into the `examples` block.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2026-01-21 17:05:41 +01:00
James Roy
6524e670b3 edtlib: Fix the accidental merging of examples in the binding
Fix the example nodes in the examples block being accidentally
merged and overwritten during build.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2026-01-21 17:05:41 +01:00
Aditya Ganesh
f9de2777d9 drivers: sensor: i3g4250d: migrate SPI support to stmemsc
Convert the i3g4250d driver to use the ST MEMS SC API for SPI

Signed-off-by: Aditya Ganesh <adga5133@colorado.edu>
2026-01-21 17:05:13 +01:00
Tim Lin
125d88c172 soc: it8xxx2: Select KERNEL_NO_LTO only when LTO is enabled
Select KERNEL_NO_LTO only when LTO is enabled. This ensures proper
handling when kernel code is placed in RAM.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2026-01-21 17:04:50 +01:00
Tim Lin
2edece9d58 kernel: Add Kconfig option to disable LTO for kernel sources
Some SoCs require kernel code to be placed in RAM, which makes
link-time optimization (LTO) unsuitable for these files.
Disabling LTO allows the affected code to be linked as separate
objects and placed in specific memory regions.

Running kernel code from RAM can improve execution performance,
especially for timing-critical routines or context switch paths.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2026-01-21 17:04:50 +01:00
Alberto Escolar Piedras
4d0852b005 lib/midi2: Do not add to include path always
Do not add this folder to the include path when this component is not
enabled. As that creates noise and slows down builds.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-01-21 13:03:38 +00:00
Gang Li
0a92e6f908 modules: hostap: Fix DPP show UNKNOWN security type after reconfiguration
In case DPP reconfiguration test, if the dpp_akm has psk,
it will set WPA_KEY_MGMT_PSK | WPA_KEY_MGMT_PSK_SHA256 |
WPA_KEY_MGMT_FT_PSK to key_mgmt, then wifi status shows
security as "Unknown".

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2026-01-21 13:03:26 +00:00
Lucien Zhao
0e0757cc3c soc: nxp: delete HAS_MCUX_SIM/RCM kconfig symbols
- Remove HAS_MCUX_SIM and HAS_MCUX_RCM Kconfig symbols
on NXP platforms

- delete HAS_MCUX_SIM/HAS_MCUX_RCM kconfigs,
use dt ways to get enabled SIM/RCM devices

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-21 13:03:11 +00:00
Lucien Zhao
0a6e0160b4 hwinfo: mcux_sim/mcux_rcm: Add new dependency
Change to use DT_HAS_NXP_SIM_UUID_ENABLED/DT_HAS_NXP_RCM_HWINFO_ENABLED
as the dependency condition for HWINFO_MCUX_SIM/HWINFO_MCUX_RCM to
enable the driver when the nxp,sim-uuid/nxp,rcm-hwinfo compatible
is present in the devicetree.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-21 13:03:11 +00:00
Lucien Zhao
eb43ffc6b8 dts: arm: nxp: Add specific compatible strings for RCM and SIM
Add vendor-specific compatible strings to RCM and SIM nodes:
- "nxp,rcm-hwinfo" for Reset Control Module (hwinfo-reset functionality)
- "nxp,sim-uuid" for System Integration Module (hwinfo-UUID functionality)

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-21 13:03:11 +00:00
Lucien Zhao
215a35c78f dts: bindings: hwinfo: add nxp,rcm-hwinfo and nxp,sim-uuid.yaml
- add nxp,rcm-hwinfo.yaml and nxp,sim-uuid.yaml to support hwinfo
  features by using dts ways

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-21 13:03:11 +00:00
Peter Hoddie
ec3c28db0f boards: adafruit: correct gpio pin numbers for feathers
These DTS uses absolute GPIO numbers for some
pins where relative pin numbers are required.
This causes crash on booth when these pins
are enabled. Follow on PR to #101857.

Signed-off-by: Peter Hoddie <peter@moddable.com>
2026-01-21 13:02:55 +00:00
Tom Hughes
2d6aa47398 tests: mcumgr: Re-enable clang warning by using variables
When removing TOOLCHAIN_DISABLE_CLANG_WARNING, building the
settings.mgmt test with clang fails with:

tests/subsys/mgmt/mcumgr/settings_mgmt/src/main.c:87:22: error:
variable 'test_response_read_data_start' is not needed and will not be
emitted [-Werror,-Wunneeded-internal-declaration]
   87 | static const uint8_t test_response_read_data_start[5] = {
      |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/subsys/mgmt/mcumgr/settings_mgmt/src/main.c:91:22: error:
variable 'test_response_read_data_end' is not needed and will not be
emitted [-Werror,-Wunneeded-internal-declaration]
   91 | static const uint8_t test_response_read_data_end[1] = {

Add additional asserts to use these variables in the test.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2026-01-21 13:02:20 +00:00
Stephan Linz
8bf8eeb338 drivers: display: rm67162: avoid uninitialized variable
Warning as error was:

.../drivers/display/display_rm67162.c: In function ‘rm67162_write_fb’:
.../drivers/display/display_rm67162.c:383:9: error: ‘wlen’ may be used
          uninitialized in this function [-Werror=maybe-uninitialized]
  383 |  return wlen;
      |         ^~~~
cc1: all warnings being treated as errors

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-21 13:01:53 +00:00
Evgenii Kosenko
7deab5e334 Bluetooth: Shell: Add per-bearer pool for GATT operations
The original implementation used a single global parameter structure for
GATT operations, preventing concurrent operations on different bearers. By
introducing a per-bearer context pool, each bearer can maintain its own
operation state, enabling simultaneous GATT operations.

Signed-off-by: Evgenii Kosenko <Evgenii.Kosenko@silabs.com>
2026-01-21 13:01:42 +00:00
Laurentiu Mihalcea
bf747b8e03 bindings: scmi: modify description format
Modify the description format of all SCMI-related bindings such that the
SCMI/SHMEM acronym is spelled out in between parentheses and not the other
way around. This will make the generated documentation more compact.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2026-01-21 11:25:46 +00:00
Braeden Lane
4e314b4aec boards: infineon: standardize pinctrl in supported list
Update board YAML files to use 'pinctrl' instead of 'pin_ctrl'
in the supported features list for consistency with Zephyr
naming conventions.

Affected boards:
- cy8cproto_041tp
- kit_pse84_ai
- kit_pse84_eval

Signed-off-by: Braeden Lane <Braeden.Lane@infineon.com>
2026-01-21 11:25:38 +00:00
Robert Lubos
699da43045 samples: net: sockets: http_get: Fix addrinfo dump
The debug code for dumping resolved addresses was modifying the addrinfo
res pointer (effectively setting it to NULL), causing crash later in the
sample. Fix this, by using a temporary pointer copy for iterating over
resolved addresses.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-21 11:24:43 +00:00
Felix Wang
c7425884d6 MAINTAINERS: add FelixWang47831 as PWM collaborator
Add FelixWang47831 as a collaborator for the PWM driver.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-21 11:24:32 +00:00
Aksel Skauge Mellbye
a2b64c9335 dts: arm: silabs: Clean up radio feature selection
Sort ble radio feature properties alphabetically according to
the coding standard.

Certain features on xg22 and xg28 depend on the specific SoC
selected, move the properties from the generic .dtsi file to
the SoC specific one.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2026-01-21 11:24:21 +00:00
Flavio Ceolin
3d5a3ae075 entropy: mcux_rng: Do not ignore possible error
Propagate the HAL error otherwise it may return success even
when it fails causing invalid entropy and compromising security.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-21 11:24:07 +00:00
Daniel Leung
231e72af8e boards: snps/arc: add nsim_vpx5/mpuv3 board
This adds the nsim_vpx5/mpuv3 board for MPU. The files
are based on nsim_vpx5 board files.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-01-21 11:23:33 +00:00
Daniel Leung
ee8f9915a4 soc: arc: mark nsim_vpx5 as supporting MPU
This selects CONFIG_CPU_HAS_MPU for nsim_vpx5 series SoC as
it supports ARC MPUv3.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-01-21 11:23:33 +00:00
Daniel Leung
2c911b1b8a soc: snps: vpx5: no -Hccm compiler option for userspace
With -Hccm, the linker automatically moves stuff in RODATA
section into DATA section. Our current kobject related
scripts cannot accommodate this, resulting in space not
being reserved correctly. So for now, disable -Hccm
compiler option if userspace is enabled.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-01-21 11:23:33 +00:00
Waqar Tahir
8e7198392a manifest: tf-m: BL2 support mcxn947
Updated TF-M repo for BL2 support in mcxn947

Signed-off-by: Waqar Tahir <waqar.tahir@nxp.com>
2026-01-21 11:23:17 +00:00
Waqar Tahir
07384efb72 samples: tfm_ipc: update mcxn947 board support
As the board now supports TF-M with bl2, spport
from sample.tfm_ipc.no_bl2 is removed and
added in sample.tfm_ipc test.

Signed-off-by: Waqar Tahir <waqar.tahir@nxp.com>
2026-01-21 11:23:17 +00:00
Waqar Tahir
bdcb5c6b4b boards: nxp: mcxn947: updated partitions
- Updated partitions in non-secure device tree
  files as tfm now supports Bl2.
- Flash_base address updated for ns-app as
  tfm apps are now using bl2 by default.

Signed-off-by: Waqar Tahir <waqar.tahir@nxp.com>
2026-01-21 11:23:17 +00:00
Hui Bai
0cafc3e4f6 modules: hostap: Add new APIs to set operating mode for SoftAP
Add new APIs to set operating mode 11n, 11ac and 11ax for SoftAP.
Currently, the 11n, 11ac and 11ax are enabled by default. Theses APIs
can be used to configure operating modes enable/disable for SoftAP.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2026-01-21 11:22:57 +00:00
Adrian Warecki
c1a2b3be45 xtensa: Restore the EXCCAUSE register when returning from Double Exception
Preserve EXCCAUSE and EXCVADDR values on entry to _Level1Vector.
Restore EXCCAUSE when exiting TLB miss exception handling in the double
exception handler.

During first-level exception handling, a LoadStoreTLBMissException may
occur during the initial register dump to BSA. It modifies EXCCAUSE and
EXCVADDR registers before they are saved in BSA. Therefore, these values
must be captured as early as possible.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2026-01-21 11:22:35 +00:00
Adrian Warecki
fd8188a408 xtensa: Remove saving EXCCAUSE in BSA from _Level1Vector
Remove saving EXCCAUSE register in BSA through the _Level1Vector handler.
These value are later overwritten by the ODD_REG_SAVE macro called by
EXCINT_HANDLER, so saving it here is pointless.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2026-01-21 11:22:35 +00:00
Gaetan Perrot
1a12292846 tests: drivers: flash: negative_tests: fix write/fill alignment tests
The negative flash write and fill tests assumed that unaligned
offsets are always invalid.

This is not true for flash drivers reporting a write_block_size of
1, where all offsets and sizes are naturally aligned.

Condition the unaligned offset and size tests on the actual
write_block_size reported by the driver to avoid false failures and
ensure the tests follow the flash API contract.

No functional change for drivers with write_block_size > 1.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-21 11:22:25 +00:00
Jiafei Pan
b1946cba2a boards: imx943_evk: use 100M PHY for net switch port
Currently the PHY for 2.5G SGMII is not enabled, so could only use 100M
PHY for two switch ports on the board.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2026-01-21 11:22:09 +00:00
Jiafei Pan
4edfd97621 dts: arm64: mimx943; add MSI device ID for ENET3 port
ENET3 port is internal port for switch, add MSI device ID to enable
interrupt for it.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2026-01-21 11:22:09 +00:00
Jamie McCrae
b0467a0313 doc: release: migration_guide: 4.4: Add MCUmgr change
Adds a note on a required change for MCUmgr if using the UART
transport

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-21 11:21:46 +00:00
Jamie McCrae
917404f5d7 mgmt: mcumgr: transport: uart: Change Kconfig to depends on
Changes CONFIG_MCUMGR_TRANSPORT_UART from selecting
CONFIG_UART_MCUMGR to instead of depending upon it, as it should
never have selected a driver Kconfig and instead always depended
upon it, and is needed for supporting different UART transports

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-21 11:21:46 +00:00
Khai Cao
71389b3dd5 doc: releases: document ek_ra8t2/r7ka8t2lfecac rename
Document the board rename from ek_ra8t2/r7ka8t2lfecac/cm85 to
ek_ra8t2/r7ka8t2lflcac/cm85 in the Zephyr v4.4.0 migration guide.

Signed-off-by: Khai Cao <khai.cao.xk@renesas.com>
2026-01-21 11:21:27 +00:00
Khai Cao
c1a356e5ef boards: renesas: Correct part number for mck_ra8t2 board
Correct part number for mck_ra8t2 board by change
r7ka8t2lfecac to r7ka8t2lflcac

Signed-off-by: Khai Cao <khai.cao.xk@renesas.com>
2026-01-21 11:21:27 +00:00
Ederson de Souza
86f7962d2c drivers/i3c/mcux: Handle short reads from target
Sometimes, the size of a message coming from a target is not known in
advance. In those cases, we must rely on the T-bit to get the end of
message, which is signaled as the `COMPLETE` bit of `MSTATUS`.

This patch verifies the COMPLETE bit before starting to wait for data,
and if set, simply returns what was read so far.

As a bonus, this simplifies the handling of IBI bytes: no need to rely
on timeouts, if it's reading from IBI, etc.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2026-01-21 11:19:57 +00:00
Ederson de Souza
3311d9734c drivers/i3c/mcux: Don't lose return value for function
Return value for `mcux_i3c_do_one_xfer` was being lost due reuse
of `ret` variable. Use another variable for timeout check.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2026-01-21 11:19:57 +00:00
Ederson de Souza
0bbe07bbc7 drivers/i3c/mcux: Use size_t for buffer size
Or a buffer whose size is 256 will become zero.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2026-01-21 11:19:57 +00:00
Kate Wang
6f5e752187 drivers: display: co5300: Fix pitch calculation in write function
The previous implementation incorrectly calculated the source pointer
advancement when pitch differs from width. The calculation was using
`total_bytes_sent` which accumulated across iterations, leading to
incorrect pointer arithmetic.

Replace `total_bytes_sent` with `line_each_sent` to track lines written
per iteration. Simplify the pointer advancement by:
- Calculating complete lines written from bytes_written
- Advancing by full pitch-sized lines
- Adding any remaining partial line bytes

This fixes the source pointer calculation when the buffer pitch is
greater than the display width.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2026-01-21 11:19:44 +00:00
Etienne Carriere
fdda5f5fad manifest: psa-arch-tests: build PSA arch tests from Zephyr
Restore build of TF-M PSA-arch-tests using the Zephyr SDK toolchain.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-01-21 11:19:32 +00:00
Jakub Zymelka
7431163b52 samples: ipc: icmsg: Extend support for nRF54LM20A
Extends support and adds new overlays.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2026-01-21 11:19:21 +00:00
Pieter De Gendt
93b5f19f99 doc: releases: 4.4: Add ADC_DT_SPEC_GET_*_OR
Add an entry to the release notes with the added ADC DT spec macros.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-20 20:11:59 -05:00
Pieter De Gendt
6dcc156258 tests: lib: devicetree: api_ext: Add ADC_DT_SPEC with fallback tests
Add tests for the _OR variant sf the different ADC_DT_SPEC_GET macros.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-20 20:11:59 -05:00
Pieter De Gendt
0d4435984a include: zephyr: drivers: adc: Add adc_dt_spec _OR variants
Add _OR variations for the differen adc_dt_spec initialization macros.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-20 20:11:59 -05:00
Pieter De Gendt
12408745f4 tests: lib: devictree: api_ext: Add ADC_DT_SPEC_GET_BY_IDX cases
Add tests for the ADC_DT_SPEC_GET_BY_IDX and ADC_DT_SPEC_INST_GET_BY_IDX
macros.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-20 20:11:59 -05:00
Matthias Blankertz
f58602891a drivers: watchdog: wdog32: Add missing include for k_msleep
In commit 1f9e39752a ("drivers: watchdog: wdog32: add delay before
init") a reference to k_msleep was added to
drivers/watchdog/wdt_mcux_wdog32.c without including the necessary
header. At least for the board frdm_mcxw71/mcxw716c, this causes a
compile failure in this file as soon as CONFIG_WATCHDOG is enabled.

Add the missing include to zephyr/kernel.h to fix the issue.

Signed-off-by: Matthias Blankertz <matthias.blankertz@inovex.de>
2026-01-20 20:11:49 -05:00
Matthias Blankertz
b672a265a4 boards: nxp: frdm_mcxw71: Connect Arduino header I2C
The I2C bus of the lpi2c1 I2C controller is connected to the Arduino
Shield header on the usual pins. Label it with "arduino_i2c" in the
board device tree so that the frdm_mcxw71 board can be used with I2C
shields.

Signed-off-by: Matthias Blankertz <matthias.blankertz@inovex.de>
2026-01-20 20:11:49 -05:00
Jacob Wienecke
87baf78082 boards: shields: nxp_m2_wifi_bt remove oob-gpios
Remove oob-gpios property from nxp_m2_1xk_wifi_bt.overlay. There is no
binding for this property at bindings\wifi\nxp,wifi.yaml. Therefore,
builds using this shield will fail.

Signed-off-by: Jacob Wienecke <jacob.wienecke@nxp.com>
2026-01-20 20:11:40 -05:00
farsin NASAR V A
5f91dc2a75 tests: drivers: dac: Add SAM E54 Xplained Pro test support
Add board-specific configuration and overlay files for
running DAC API tests on the SAM E54 Xplained Pro board.
- Add sam_e54_xpro.conf
- Add sam_e54_xpro.overlay
- Update DAC API test to support the board

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2026-01-20 20:11:31 -05:00
Arunprasath P
8b778f57f9 boards: microchip: sam_e54_xpro: Add DAC pinctrl and feature support
Add DAC pinctrl definitions and update the board metadata
to list DAC as a supported feature on the SAM E54 Xplained Pro board.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2026-01-20 20:11:31 -05:00
Arunprasath P
74bafaf20e drivers: dac: microchip: Introduce DAC G1 Driver
Add G1 DAC driver for Microchip DAC Peripherals.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2026-01-20 20:11:31 -05:00
Arunprasath P
dc0360df2c dts: arm: microchip: Introduce dac g1 binding file and dts node
Add the device tree node and the binding file for
microchip DAC G1 Peripherals.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2026-01-20 20:11:31 -05:00
Ali Hozhabri
03822df9a7 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>
2026-01-20 20:11:22 -05:00
Ali Hozhabri
2bc754e581 drivers: timer: Fix a typo in the STM32WB07 radio timer
Replace one extra CONFIG_SOC_STM32WB06XX with the CONFIG_SOC_STM32WB07XX.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2026-01-20 20:11:22 -05:00
Ali Hozhabri
a32b5cfe34 drivers: timer: Fix radio timer issue on STM32WB07/STM32WB05
Due to the hardware limitation, the time between the CPU wake-up IRQ fire
(IRQ 23) and the next call of LL_RADIO_TIMER_SetCPUWakeupTime should not
be less than 16 MTU (Machine Time Unit), i.e. approximately 30us.
otherwise, the next CPU wake-up doesn't happen unless the timer wraps.

Lock IRQs while sys_clock_set_timeout is being executed.

Remove HAL_RADIO_TIMER_WakeUpCallback and it will be implemented
differently in the future.

Remove HAL_RADIO_TIMER_TimeoutCallback as it is not needed anymore.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2026-01-20 20:11:22 -05:00
Ali Hozhabri
e1257bf845 drivers: entropy: Fix STM32WB07/STM32WB05 init issue
Change the initialization priority. According to the documentation, kernel
services should not be used during device configuration with PRE_KERNEL_1.
In "entropy_stm32_rng_init", there is "start_pool_filling" which calls
"k_work_schedule". Moreover, "k_work_schedule" requires system timer which
is initialized within PRE_KERNEL_2. Therefore, the SoC gets stuck.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2026-01-20 20:11:22 -05:00
Yongxu Wang
0296e2ee3b dts: arm: nxp: imx943: enable runtime PM auto for LPI2C
Enable automatic runtime power management for all LPI2C instances
to support interrupt-driven when suspend and resume device
by scmi firmware interface.

On i.MX943 with System Manager firmware, clock operations require
SCMI communication which needs interrupts. The system-managed PM
approach locks interrupts during device suspend/resume, preventing
SCMI from completing.

Although lpi2c mcux driver have enabled pm runtime in driver init,
set lpi2c auto runtime in dts to record this issue that only
device runtime can be supported now.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2026-01-20 20:11:10 -05:00
Yongxu Wang
9a8acec820 drivers: i2c: mcux_lpi2c: add PM device support
Add PM device support for the LPI2C peripheral.

Implement PM device callback to gate and ungate the device clock
during suspend and resume. No attach register save and restore as
it's preserved by hardware

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2026-01-20 20:11:10 -05:00
Pisit Sawangvonganan
ec2b92c1e6 drivers: spi_nxp_lpspi: prevent null pointer dereference
The condition `!spi_context_rx_buf_on(ctx) && spi_context_rx_on(ctx)`
only returns early when RX is active with a NOP buffer.
However, when `rx_len == 0`, `spi_context_rx_on(ctx)` returns false,
causing the early return to be skipped.
This leaves `ctx->rx_buf` (which can be NULL) to be dereferenced.

Since `lpspi_handle_rx_irq()` already guarantees `spi_context_rx_on(ctx)`
is true before calling this function, only check
`!spi_context_rx_buf_on(ctx)` to safely handle NOP buffers.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2026-01-20 20:11:01 -05:00
Pisit Sawangvonganan
e28b3b04ce drivers: spi_nxp_lpspi: simplify lpspi_rx_buf_write_words
Refactor `lpspi_rx_buf_write_words()` to compute `words_read` upfront
using `MIN(rx_len, max_read)`, simplifying control flow and making
the read limit explicit without changing behavior.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2026-01-20 20:11:01 -05:00
Jonas Berg
e35cb66069 boards: Add support for Longan Labs CANBed RP2040
Tested with the commands mentioned in index.rst

Product photo from https://docs.longan-labs.cc/1030018/

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-20 20:10:52 -05:00
Jonas Berg
00fceded42 dts: bindings: vendor-prefixes: Add longan
Add vendor prefix for Longan Labs

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-20 20:10:52 -05:00
TOKITA Hiroshi
45cde341dc drivers: serial: pl011: Allows mixed IRQ settings.
Allows a mixture of IRQ-enabled and IRQ-disabled nodes.
Enabled nodes are identified by the presence or absence of
the interrupt-names property.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-20 20:10:42 -05:00
Albort Xue
d9e86ad878 drivers: can: mcux_flexcan: Add clock configuration and enable
Add explicit clock configuration and enable calls during driver
initialization.

Note: -ENOSYS is temporarily ignored as not all clock control
drivers currently implement the configure API. This handling
should be removed once all clock drivers support configure.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-01-20 20:10:31 -05:00
Albort Xue
dba5c5081f drivers: pwm: mcux_tpm: Add clock configuration support
Add clock_control_configure() call during initialization to properly
configure the TPM clock. The driver now attempts to configure the
clock and handles cases where configuration is not supported by the
platform (-ENOTSUP/-ENOSYS) by continuing with default settings.
Real configuration errors are logged and cause initialization to fail.

Note: -ENOSYS is temporarily ignored as not all clock control
drivers currently implement the configure API. This handling
should be removed once all clock drivers support configure.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-01-20 20:10:19 -05:00
Ederson de Souza
e30b0acea9 MAINTAINERS: Add edersondisouza as PMCI collaborator
Add edersondisouza as a collaborator to PMCI - it should've been done
when edersondisouza was added as libmctp West module collaborator, but
it was missed.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2026-01-20 20:09:55 -05:00
Daniel Leung
61e9f9ea04 soc: intel_adsp: rename CONFIG_SOC_INTEL_ACE* to CONFIG_SOC_ACE*
Just following guidelines here.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-01-20 20:09:40 -05:00
Daniel Leung
1dae40fa2e soc: rename CONFIG_INTEL_CAVS_V25 to CONFIG_SOC_CAVSV25
Just following the guideline.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-01-20 20:09:40 -05:00
Gillian Minnehan
987722df9d doc: add license/terms to external module template
It is important to include license and terms of use information
in the documentation for external modules. This helps users
understand their rights and obligations when using these modules
within the Zephyr project.

Signed-off-by: Gillian Minnehan <gillian.minnehan@nordicsemi.no>
2026-01-20 20:09:23 -05:00
Tom Hughes
8ea64b7b33 bluetooth: audio: Fix redundant initialization
When building the bluetooth.general.tester_le_audio test with clang and
-Winitializer-overrides, it warns:

subsys/bluetooth/audio/mpl.c:318:2: error: initializer overrides prior
initialization of this subobject [-Werror,-Winitializer-overrides]
  318 |         .add_group = NULL,
      |         ^~~~~~~~~~~~~~~~~
subsys/bluetooth/audio/mpl.c:317:15: note: previous initialization is here
  317 |         .add_track = NULL,
      |                      ^~~~

Remove redundant initializer for add_group which overlaps with add_track
in an anonymous union.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2026-01-20 20:09:06 -05:00
Benjamin Cabé
e6b8ffba92 drivers: modem: adopt SHELL_HELP in modem_at shell
Use SHELL_HELP macro for help strings to ensure consistency across
various shell modules.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-20 20:08:47 -05:00
Benjamin Cabé
114b3bd50c drivers: mdio: adopt SHELL_HELP in MDIO shell
Use SHELL_HELP macro for help strings to ensure consistency across
various shell modules.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-20 20:08:34 -05:00
Benjamin Cabé
25448bc996 task_wdt: adopt SHELL_HELP in task watchdog shell
Use SHELL_HELP macro for help strings to ensure consistency across
various shell modules.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-20 20:07:37 -05:00
Benjamin Cabé
39a8408b30 drivers: pm_cpu_ops: adopt SHELL_HELP in psci shell
Use SHELL_HELP macro for help strings to ensure consistency across
various shell modules.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-20 20:07:25 -05:00
Tom Hughes
f9664d51c3 samples: net: midi2: Fix compiler warning
When building with clang we get the following warning when building the
sample.net.midi2.host_auth_user test:

samples/net/midi2/src/main.c:122:54: error: initializer element is not a
compile-time constant
  122 | NETMIDI2_EP_DEFINE_WITH_USERS(midi_server, ump_ep_dt.name, NULL, 0,
      |                                            ~~~~~~~~~~^~~~
include/zephyr/net/midi2.h:99:12: note: expanded from macro
'NETMIDI2_EP_DEFINE_WITH_USERS'
   99 |                 .name = (_ep_name), \
      |                          ^~~~~~~~

Instead of using ump_ep_dt.name for initialization, we use the
equivalent expression that UMP_ENDPOINT_DT_SPEC_GET(DT_NODELABEL(midi2))
initializes the ".name" member with.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2026-01-20 20:06:50 -05:00
Benjamin Cabé
8f8502c0c7 drivers: i3c: shell: adopt SHELL_HELP in I3C shell
Use SHELL_HELP macro for help strings to ensure consistency across
various shell modules and save quite a bit of flash.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-20 20:06:18 -05:00
Gaetan Perrot
5e16700cb2 drivers: ethernet: phy: phy_dm8806: fix error handling
The return value of gpio_pin_set_dt() and
gpio_pin_interrupt_configure_dt() was not stored before being
checked, causing the error condition to always evaluate to false.

Store the return value and properly handle potential GPIO errors
during PHY reset.

No functional change intended.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-20 20:06:06 -05:00
Fabian Blatz
3658dbd489 manifest: Update LVGL to 9.4.X
Update the west yaml to point to the new LVGL version.
Update CMakeLists and samples accordingly.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2026-01-20 20:05:25 -05:00
Eden Uhde
98573a57cd drivers: display: ls0xx: add Kconfig setting VCOM thread priority for ls0xx
The ls0xx driver VCOM inversion thread has a hardcoded priority of 3,
while in some applications this may be considered lower priority than
time sensitive tasks, maintaining close to an even polarity balance is
best, but this change allows developers to determine the approach.

Signed-off-by: Eden Uhde <eden@rainbowtree.house>
2026-01-20 20:05:15 -05:00
Benjamin Cabé
474d502df3 doc: link-roles: Update path handling to use document name
Use docname instead of source from get_source_and_line() because
source can be a relative path to an included file (e.g., .rst.inc),
while docname is always the main document being processed.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-20 20:04:57 -05:00
Benjamin Cabé
608fdac2d7 doc: release: convert broken zephyr_file links to literal paths
Fix dead links by replacing them to normal strings. This is in
preparation for a fix in zephyr_file role link check that will make the
checks more strict and fail on these even if they hadn't been flagged
until now.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-20 20:04:57 -05:00
Guðni Már Gilbert
284a30053f scripts: twister: don't parse west modules in TestPlan
TwisterEnv already parses west modules during initialization, but TestPlan
was parsing them again via zephyr_module.parse_modules(), duplicating work.

Store the parsed module objects on TwisterEnv (self.modules) and have
TestPlan derive its module name list from env.modules instead. This drops
the redundant parse in TestPlan by removing handle_modules() and its call
site.

Each call to parse_modules() takes around 250-300ms on my end.

Update twister unit tests

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
2026-01-20 20:04:37 -05:00
Felix Wang
0bce58b4fe boards: nxp: frdm_mcxe247: Add supported list in board yaml
Newly supported items: counter, pwm

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-20 14:36:24 -05:00
Felix Wang
765476405a tests: drivers: pwm: Enable FTM pwm test on frdm_mcxe247
Provide overlay file to configure ftm to
enable pwm_api and pwm_loopback

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-20 14:36:24 -05:00
Felix Wang
a2e3327273 boards: nxp: frdm_mcxe247: Enable FTM0 in device tree
Enable FTM0 for frdm_mcxe247, which using fircdiv1_clk.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-20 14:36:24 -05:00
Felix Wang
c6e6463918 boards: nxp: frdm_mcxe247: Fix typo in ASSERT_ASYNC_CLK_DIV_VALID
The val should be 32, not 2.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-20 14:36:24 -05:00
Felix Wang
b7106127af drivers: counter: Support multiple interrputs
For devices like MCXE247, the FTM peripheral instance
has multiple interrupts. In this patch, add FTM_CONFIG_FUNC
macro to support single or multiple interrupts based on irq
number.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-20 14:36:24 -05:00
Neil Chen
03aef0d156 boards: nxp: frdm_mcxaxx6: Support usb for NXP frdm_mcxaxx6 board
Support usb for NXP frdm_mcxa1366 and frdm_mcxa266 board.
Test it using samples/subsys/usb/console and tests/drivers/udc

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-20 14:36:14 -05:00
Neil Chen
ed75a28d9c dts: arm/nxp: Add usb nodes to NXP MCXA366 and MCXA266 dtsi file
Add usb nodes to NXP MCXA366 and MCXA266 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-20 14:36:14 -05:00
Neil Chen
b2d28bc8d5 boards: nxp: frdm_mcxaxx6: add arduino labels
Added arduino_header node labels to FRDM-MCXA366,FRDM-MCXA346 and
FRDM-MCXA266 device tree board definition, allowing compatible
shield boards to be used. Also extend the board YAML file with
related support tags arduino_gpio.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-20 14:36:14 -05:00
Kate Wang
cf7763ea37 tests: drivers: build_all: input: Add TMA525B to build test
Add the TMA525B touch controller driver to the input build_all test.
This includes:
- Device tree overlay entry for the TMA525B device
- Test configuration enabling interrupt mode

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2026-01-20 14:36:06 -05:00
Kate Wang
ec5a3db24b samples: lvgl: demos: Add zc143ac72mipi shield to test platforms
Adds the zc143ac72mipi shield configuration for the mimxrt700_evk
platform to the LVGL demos sample test platforms.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2026-01-20 14:36:06 -05:00
Kate Wang
504cf082d8 boards: shields: g1120b0mipi: Move configs to board-specific files
Move MIPI_DSI_MCUX_2L_SWAP16 and LV_COLOR_16_SWAP configuration from
the shield's Kconfig.defconfig to board-specific configuration files.
This allows for better board-level customization and removes the
conditional logic from the shield defaults.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2026-01-20 14:36:06 -05:00
Kate Wang
a6df355b12 boards: shields: zc143ac72mipi: Add touch controller and LVGL config
- Add support for the TMA525B touch controller to the
zc143ac72mipi shield
- Add Kconfig.defconfig with LVGL configuration defaults
- Update board specific configuration

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2026-01-20 14:36:06 -05:00
Kate Wang
0e6c2aedaf drivers: input: Add TMA525B capacitive touch controller driver
This commit adds support for the Parade Tech TMA525B capacitive touch
controller. The driver supports both interrupt-driven and polling modes,
and can handle up to 4 simultaneous touch points.

Key features:
- I2C communication interface
- Multi-touch support (up to 4 touch points)
- Interrupt mode with GPIO callback support
- Polling mode with timer
- Power management support with PM notifier
- Reset and power control via GPIO
- Touch event tracking (down, contact, up)

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2026-01-20 14:36:06 -05:00
Camille BAUD
2c1d2c8e83 tests: build_all: add ch9350l test
Adds a build test for CH9350L

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-20 14:35:50 -05:00
Camille BAUD
fd9b0b81b7 drivers: input: Add CH9350L USB keyboard driver
Adds a driver that allows using CH9350 as a USB keyboard interface chip

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-20 14:35:50 -05:00
Dat Nguyen Duy
0c97804b3d boards: nxp_s32k5xx_mb: add support for can
Add support can (canxl) for nxp_s32k5xx_mb

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-20 14:35:42 -05:00
Dat Nguyen Duy
abb4ca3845 drivers: can: add support canxl for s32k5
- The RX Message Descriptor in CANXL on newer SoC such as
the S32K5 supports receiving both classic and FD frames,
so enable the RX FIFO only for S32ZE SoC.

- The CANXL bare-metal driver has significant changes, the
current codebase for S32ZE need to be guarded and modified
to support newer SoC

- Expand the peripheral region to 1G to include the CANXL
area.

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-20 14:35:42 -05:00
Dat Nguyen Duy
478a0ffc6b dts: arm: nxp: add canxl node for s32k566
Add CANXL node for S32K566

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-20 14:35:42 -05:00
Dat Nguyen Duy
7bb9b42c99 drivers: can_nxp_s32_canxl: switch to freeze mode before setting baudrate
Switch canxl hw to freeze mode before setting baudrate

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-20 14:35:42 -05:00
Greg Leach
c584b86010 boards: ezurio: Add lyra_dvk support
Add support for the Ezurio Lyra DVK board family.

Signed-off-by: Greg Leach <greg.leach@ezurio.com>
2026-01-20 14:35:34 -05:00
Greg Leach
c170fede6b boards: ezurio: Add lyra_24_dvk support
Add support for the Ezurio Lyra 24 DVK board family.

Signed-off-by: Greg Leach <greg.leach@ezurio.com>
2026-01-20 14:35:26 -05:00
Albort Xue
c9dc320cf5 drivers: watchdog: wdt_mcux_wdog32: Support named clocks for clock sources
Add support for named clocks in the WDOG32 driver to properly handle
different clock sources. The driver now uses clock-names property to
identify which clock source is being used, based on the clk-source
property.

This change enables proper clock configuration and control for platforms
where the clock frequency is not statically defined in the device tree.
The driver will now configure and enable the appropriate clock during
initialization.

Updated all affected device tree files to include the clock-names
property aligned with their clk-source configuration.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-01-20 14:35:20 -05:00
Laura Carlesso
0b02c507c9 soc: infineon: Fix NMI handling in PSOC6 for legacy boards
cy8ckit_062_wifi_bt board requires NMI handler to point to
the prefefined address 0x0000000D in order to correctly run
system calls. This can be achieved by specifying the runtime
nmi configuration and hardcoding the address in soc.c.
With the introduction of this change the system calls can
correctly be executed correctly thus resolving open
issue #99642 .

Signed-off-by: Laura Carlesso <laura.carlesso@infineon.com>
2026-01-20 14:35:11 -05:00
Guðni Már Gilbert
e19ebfb49a scripts: twister: use os.scandir for platform YAML discovery
Use a single os.scandir() pass per board directory to load twister.yaml
and collect legacy *.yaml files, replacing Path checks and globbing.

On my end this reduces execution time by ~50ms on Ubuntu 24.04 and
eliminates  ~80k Python function calls.

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
2026-01-20 14:35:03 -05:00
Grzegorz Chwierut
f8e4c6cf6a twister: pytest: Fix post-script calling in initialization phase
The post-script was being called multiple times and during the
initialization phase when it should only run after the reader
thread has started and the device testing is complete.

Fixes #102386

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2026-01-20 14:34:54 -05:00
Carlo Caione
c4a5c5cc32 lorawan: loramac-node: Use zephyr_library_compile_definitions_ifdef
Replace zephyr_compile_definitions_ifdef with
zephyr_library_compile_definitions_ifdef to avoid setting options globally.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2026-01-20 14:34:44 -05:00
Flavio Ceolin
6595aaf280 pm: device_runtime: Fix documentation typo
s/EWOUDBLOCK/EWOULDBLOCK in pm_device_runtime_get() documentation.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-20 14:34:37 -05:00
Flavio Ceolin
9003da65b7 pm: policy: Fix pm_policy_event signatures
Fix pm_policy_event_register() and pm_policy_event_update signatures
when CONFIG_PM is disabled.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-20 14:34:37 -05:00
Flavio Ceolin
dbf3bb64a9 pm: state: Fix pm_state_in_constraints stub
It was missing the const qualifier in pm_state_in_constraints
when CONFIG_PM is not enabled.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-20 14:34:37 -05:00
Flavio Ceolin
18e3d5c368 pm: device_runtime: Fix doxygen inconsistency
Fix an inconsistency / typo in pm_device_runtime_get return
value documentation.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-20 14:34:37 -05:00
Fin Maaß
77c4fd9a53 console: add functions to set the timeout
While the tty_* api already has functions
to set the rx and the tx timeout, the console_*
api didn't had one.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-20 14:34:29 -05:00
Fin Maaß
2ed0e04dc8 console: use k_timeout_t internally
use k_timeout_t internally, that way
the timeout has only to be calculated, when setting it and not
every time when it is used.

Also use the ys_timepoint* api instead of
counting the ms.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-20 14:34:29 -05:00
Flavio Ceolin
cc1391b5f7 random: entropy: Always check device is ready
Use a proper branch instead of an assert to check if the device
is ready. It can potentialy lead to improper random
value that can compromise security.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-20 14:34:13 -05:00
Flavio Ceolin
213b1605d8 random: ctr_drbg: Fix sys_csrand_get types
This implementation of sys_csrand_get was using a
different type for the length parameter.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-20 14:34:13 -05:00
Lukasz Fundakowski
c5bc1a9779 twister: fix access to item in empty list
Fixed default argument in run_cmake_script method,
which cannot be an empty list.

Signed-off-by: Lukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2026-01-20 14:34:05 -05:00
Chaitanya Tata
0305a9f157 net: l2: ethernet: Fix build error
When Ethernet management is not enabled, the respective calls should
also be compiled out. In case there are no callers the toolchain will
remove this, hence it worked till date.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-20 14:33:58 -05:00
Chaitanya Tata
6100817e34 drivers: nrf_wifi: Fix raw TX shell
When using shell the users input raw header as big-endian, so, add
support for both formats for the magic number.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-20 14:33:58 -05:00
Chaitanya Tata
acd5815cb1 doc: connectivity: networking: Add zperf raw TX mode
Add a section for raw TX mode.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-20 14:33:58 -05:00
Chaitanya Tata
ec1bdb212b samples: net: zperf: Add raw TX to twister
Add raw TX for QEMU and nRF7002DK to twister.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-20 14:33:58 -05:00
Chaitanya Tata
0907ffb370 net: lib: shell: Add TX injection command
This to make the interface operationally UP to allow data packets in RAW
socket mode.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-20 14:33:58 -05:00
Chaitanya Tata
23ba648b82 net: lib: zperf: Add raw socket upload support
This helps in benchamrking raw socket (packet socket) performance in the
lines of UDP/TCP.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-20 14:33:58 -05:00
Chaitanya Tata
55e6102ac2 mainfest: nrf_wifi: Pull fix for raw TX header alignment
Align the raw TX header to 4bytes and make it packed.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-20 14:33:58 -05:00
Szymon Janc
258eef1017 tests: Bluetooth: Bump qualification materials to Core Spec 6.2
This enables Bluetooth Core 6.2. No functional changes.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2026-01-20 15:33:36 +00:00
Grzegorz Chwierut
3881d4bad7 scripts: west: Fix sysbuild overwrite by test item parameter
When sysbuild is enabled globally and running west build with a
selected test scenario, the sysbuild setting was being overwritten
with False when sysbuild was not explicitly set in the test YAML file.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2026-01-20 15:33:30 +00:00
Holt Sun
4138155273 drivers: uart_mcux_lpuart: refine DMA TX busy/error handling
Split DMA status error from busy state handling. Use LOG_DBG for
busy state and LOG_ERR for status query failures. Return -EBUSY
as required by async UART API when transfer is in progress.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-20 15:33:20 +00:00
Razvan Heghedus
8f2b245fe6 dma: mcux_edma: Fix channel gap for edma_reload_loop
`edma_reload_loop` doesn't take into account the DMA possible channel
gap. This is an issue for S32K3 series leading to system crashes when
higher DMA channels are used.

Signed-off-by: Razvan Heghedus <razvan.heghedus@protonmail.com>
2026-01-20 15:33:15 +00:00
Gaetan Perrot
551843cff0 boards: nxp: fix typos in comments
Fix spelling and wording issues in comments across NXP board FlexSPI
NOR configuration headers.

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-20 15:33:02 +00:00
Yongxu Wang
1b5e94197b soc: nxp: imx95_m7: enable power domain support
Enable power domain support for i.MX95 M7 core when PM_DEVICE is enabled.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2026-01-20 15:32:32 +00:00
Yongxu Wang
ae6be9bed6 dts: arm: nxp: imx95_m7: add NETC power domain support
Add SCMI power domain definition for NETC (Network Controller) subsystem.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2026-01-20 15:32:32 +00:00
Yongxu Wang
6df440012b drivers: power_domain: add SCMI power domain driver
Add ARM SCMI-based power domain driver for managing power domains
through the SCMI protocol.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2026-01-20 15:32:32 +00:00
Fabio Baltieri
cf356b32a1 tests: twister: only instantiate the Linux instance
This test has been changed in d7a8f29ce7 to drop all the steps that
were running on the other platforms, change it to just instantiate the
Linux instance and drop the conditional.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-20 15:32:20 +00:00
Axel Le Bourhis
f6c7299295 hal_nxp: move multicore middleware to mcux-sdk-ng integration
Move the multicore middleware to the new mcux-sdk-ng integration from
hal_nxp, instead of using the legacy integration method.
This will allow for easier integration of future releases.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2026-01-20 15:32:09 +00:00
Jamie McCrae
e3371aaf24 mgmt: mcumgr: Add name to CMake libraries
Adds names to these libraries to prevent using auto-generated
names of the paths, which can be longer than the maximum supported
length on the current version of gcc for windows

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 15:31:50 +00:00
Jamie McCrae
42ee9832b4 mgmt: mcumgr: kconfig: Fix various issues
Fixes various issues in the Kconfigs including not properly having
abbreviations in the correct case, line lengths, duplicating other
Kconfigs, etc.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 15:31:50 +00:00
Jamie McCrae
e830376b71 mgmt: mcumgr: Refactor callback header files
Refactors these so that each group defines the events it raises

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 15:31:50 +00:00
James Roy
34a6cac24c doc: Add dt api documentation for hwspinlock
Add devicetree API documentation for hwspinlock, it's
located in `api.html#hardware-specific-apis`.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2026-01-20 15:31:32 +00:00
James Roy
2faf427d6a doc: Add dt api documentation for ordinals
Add devicetree API documentation for ordinals, it's
located in `api.html#hardware-specific-apis`.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2026-01-20 15:31:32 +00:00
James Roy
9c6cc7d6cb doc: Add dt api documentation for display
Add devicetree API documentation for display, it's
located in `api.html#hardware-specific-apis`.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2026-01-20 15:31:32 +00:00
James Roy
253336c396 doc: Add dt api documentation for nvmem
Add devicetree API documentation for nvmem, it's
located in `api.html#hardware-specific-apis`.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2026-01-20 15:31:32 +00:00
Jiafei Pan
ec8205162f boards: frdm_imx93: add J-Link runner support
Added J-Link runner to support west flash and west debug.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2026-01-20 15:31:17 +00:00
Jiafei Pan
fd6fdb817f boards: frdm_imx91: add J-Link runner support
Added J-Link runner to support west flash and west debug.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2026-01-20 15:31:17 +00:00
Jamie McCrae
58f9d5e6c3 doc: releases: release-notes: 4.4: Add notes on new bits
Adds a new on the newly introduced sysbuild variant image feature
and a new slot1-partition snippet

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 15:31:06 +00:00
Jamie McCrae
78772ba863 doc: build: sysbuild: Add details on variant images
Adds details about the ``ExternalZephyrVariantProject_Add`` sysbuild
function which has been newly added, that allows for creating
variant images

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 15:31:06 +00:00
Jamie McCrae
43b0c9895d tests: boot: Add mcuboot_direct_xip test
Adds a test which checks that the sysbuild slot1 variant image is
generated, and ensures that it boots properly when both images are
present or when only the second image is present

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 15:31:06 +00:00
Jamie McCrae
8312b20ca9 sysbuild: Add ability to generate slot 1 variant image
Adds a new experimental Kconfig option to sysbuild which allows
generating a variant image to use with MCUboot in direct-xip mode.
It also includes base sysbuild infrastructure for creating
additional variant images in future (including out-of-tree),
whereby they use the base configuration of an existing image but
modify it, without creating the default zephyr extra targets for
images (e.g. menuconfig) to prevent changing configuration that
should not be changed.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 15:31:06 +00:00
Jamie McCrae
fddcf70d57 snippets: Add slot1-partition snippet
Adds a snippet which sets the chosen code partition to
slot1_partition, which can be used with things like MCUboot

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 15:31:06 +00:00
Vinit Mehta
46d8f1baa9 drivers: bluetooth: hci: add host wakeup for IW612 BT controller
Add wakeup IO config for IW612 shield for BT host wakeup
functionality.
Add kconfig to enable/disable BT host wakeup functionality
Add kconfig to toggle onboard LED upon detecting BT activity

Signed-off-by: Vinit Mehta <vinit.mehta@nxp.com>
2026-01-20 15:30:54 +00:00
Grzegorz Chwierut
5d73bc00ca twister: fix --list-tests output, remove duplication in names
This fixes the issue where --list-tests and --test-tree commands
showed duplicated testsuite IDs in the output,
simplifies testcase name handling in harness and runner modules.
Removed feature to extend behaviour of --no-detailed-test-id to shorten
test case names - feature was introduced in #82302.
This makes the twister output more predictable and the codebase easier
to maintain.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2026-01-20 15:30:44 +00:00
Jiafei Pan
0be4e58871 boards: imx943_evk: add A55 SMP board variant
The default SMP board variant runs SMP Zephyr on four A55 Cores, it
could be changed by disabling some CPU core nodes in dts and change
CONFIG_MP_MAX_NUM_CPUS accordingly.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2026-01-20 15:30:33 +00:00
Jiafei Pan
7f864309a7 boards: imx943_evk: fix board document footer
Move footer to the end of the document.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2026-01-20 15:30:33 +00:00
Jamie McCrae
ac348a7ab5 scripts: dts: gen_dts_cmake: Output compatibles for no prop. nodes
Seemingly partitions (fixed-partitions) have no properties when
the edt file is loaded, work around this issue by outputting
compatibles for nodes that have them but have no properties, also
fixes some other outputs for misc. devices

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 15:30:18 +00:00
Aiden Hu
1cbc2de20f drivers: usb: uhc: fix unused variable warning for phy_config
Remove phy_config local variable then use controller-specific
config struct for usb PHY initialization

Signed-off-by: Aiden Hu <weiwei.hu@nxp.com>
2026-01-20 15:30:03 +00:00
Biwen Li
7a1cc72efa drivers: i2s: mcux_sai: init base,mask,offset as 0
Initialize mclk_control_base,
mclk_pin_mask, mclk_pin_offset as 0
and skip mclk settings when
there is no property pinmuxes.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2026-01-20 15:29:36 +00:00
Alain Volmat
7cc95ae919 boards: shields: st_b_cams_omv_mb1683: add stm32h7s78_dk confs
Add board specific configuration and overlay for enabling the
st_b_cams_omv_mb1683 shield on the stm32h7s78_dk board.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-20 15:29:27 +00:00
Alain Volmat
cd82d84153 boards: st: stm32h7s78_dk: use PSRAM for video buffers
Use the psram to store video buffers.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-20 15:29:27 +00:00
Alain Volmat
8078db0419 boards: st: add camera connector and camera interface in stm32h7s78
Describe the camera related pins of the 30pins connectors of the
stm32h7s78 as well as DCMIPP pin assignments for the stm32h7s78

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-20 15:29:27 +00:00
Alain Volmat
9e993d3111 boards: st: stm32h7s78_dk: correct SPI4 chip select
On this board the chip select is connected to GPIO E10
and must be controlled via GPIO since SPI4 CS is accessible
via either E4 or E11 which are both already used by other
functions on this board.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-20 15:29:27 +00:00
Alain Volmat
94d5de3ffe dts: arm: st: add dcmipp node in stm32h7rs.dtsi
The STM32H7RS series embeds a parallel interface based DCMIPP
block allowing to capture data from sensors and store them into
memory.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-20 15:29:27 +00:00
Alain Volmat
8f9e370bfb drivers: clock: h7rs: add PCLKx support
Addition of PCLKx clock source which can be used by some
peripherals.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-20 15:29:27 +00:00
Alain Volmat
39a60f8a0b video: st: remove soc specific dcmipp compatibles
Only st,stm32-dcmipp is described and only st,stm32n6-dcmipp
was used within the driver to decide if CSI / PIXEL_PIPES
are available. Instead of this, look at HAL provided macros
to know if the selected soc has the functionalities or not.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-20 15:29:27 +00:00
Ren Chen
7b81e406d6 board: ite: it515xx_evb: rename it515xx_evb to it51xxx_evb
This change accommodates support for next-generation
soc(it51600).

Tested with:
west build -p always -b it51xxx_evb/it51526aw samples/hello_world/

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2026-01-20 15:28:09 +00:00
Khoa Nguyen
04a334360c soc: renesas: ra: Update condition for SOC_RA_ENABLE_START_SECOND_CORE
Update condition to use config RENESAS_PN_NUMBER_OF_CORES
for SOC_RA_ENABLE_START_SECOND_CORE

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2026-01-20 13:26:43 +00:00
Khoa Nguyen
4d5f4888b4 soc: renesas: ra: Add invisible RENESAS_PN config
Add invisible RENESAS_PN config to reflect the SoC hardware
information and provide input for hal_renesas

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2026-01-20 13:26:43 +00:00
Mathieu Choplain
dac9d3e1c3 drivers: usb: common: stm32: pwr: add power disable support
Add code to disable the USB power supply.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-20 13:26:11 +00:00
Mathieu Choplain
2120eb3027 drivers: usb: udc: stm32: move power configuration to common code
Create infrastructure for shared USB common code on STM32 family, and move
the Power Controller configuration logic to common code. This removes some
midly unrelated code from the UDC driver while enabling reuse by a future
UHC driver implementation for STM32.

While at it, clean up the migrated code.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-20 13:26:11 +00:00
Deepika R
47ed66bcc2 dts: arm: infineon: Change TCPWM Base Register
-Change base register for TCPWM to 0x40200000
 which controls the entire IP block.
- enabling/disabling counters and handling
 global interrupts.

Signed-off-by: Deepika R <deepika@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-20 13:25:58 +00:00
Deepika R
4c295bf681 samples: drivers: counter: alarm: boards: Add overlay file
- Add an overlay to enable TCPWM Counter sample.
- Contains configurations for Counter and Clock

Signed-off-by: Deepika R <deepika@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-20 13:25:58 +00:00
Deepika R
f1edde06f0 drivers: counter: Add Infineon counter driver
Add implementation of the Infineon PSoC4 TCPWM-based counter driver.
- Provides basic counter operations
including start, stop, read, and set alarm.
- Supports configuration and initialization through Device Tree.
- Enables alarm callback handling for
precise time-based event generation.

Signed-off-by: Deepika R <deepika@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-20 13:25:58 +00:00
Nhut Nguyen
541e732f35 doc: migration-guide-4.4: Document renesas,rz-gpio change
Document renesas,rz-gpio change

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-01-20 13:25:13 +00:00
Nhut Nguyen
315ea7bdcc tests: drivers: gpio: Update Renesas RZ overlay files
Update all Renesas RZ overlays for GPIO tests to replace raw
values with IRQ phandles.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-01-20 13:25:13 +00:00
Nhut Nguyen
af766e0cda boards: renesas: Update irq property of gpio nodes to use irq phandle
Update irq property of gpio nodes to use irq phandle for rzn2l_rsk,
rzt2l_rsk, rzt2m_rsk

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-01-20 13:25:13 +00:00
Nhut Nguyen
45c7710fe4 dts: renesas: Update pinctrl and gpio nodes for RZ family
Update pinctrl and gpio nodes for Renesas RZ family

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-01-20 13:25:13 +00:00
Nhut Nguyen
e200e82909 drivers: gpio: renesas: Refactor gpio for RZ family
- Decouple interrupt settings from gpio drivers, making them configured
  and handled independently by tint and ext_irq drivers.
- Remove device-specific hardware definitions in gpio_renesas_rz.h and
  take advantage of pinctrl data type and dtsi for certain series.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-01-20 13:25:13 +00:00
Nhut Nguyen
69285c4294 drivers: pinctrl: renesas: Refactor RZ pinctrl data structure
- Replaced the previous struct layout with a union
  type. This change exposes all register fields that were hidden
  for pinctrl, but now they are useful for gpio to reuse.
- Remove `_t` suffix from struct tag to avoid duplication with
  typedef alias.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-01-20 13:25:13 +00:00
Nhut Nguyen
f671c98b08 bindings: pinctrl: Remove required tag from Renesas RZ
Remove required tag from `req` and `reg-names` as the pinctrl node is
changed into a dummy node to avoid cycle in devicetree between irq,
gpio and pinctrl so these properties are not required for Renesas
RZ/A,G,V series.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-01-20 13:25:13 +00:00
Nhut Nguyen
ad2ca49df7 dts: renesas: Update renesas,rz-ext-irq nodes
Added `#irq-cells` to `renesas,rz-ext-irq` nodes to reflect the update
of `renesas,rz-ext-irq` binding.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-01-20 13:25:13 +00:00
Nhut Nguyen
2537ee030a drivers: intc: renesas: Update external interrupt of RZ family
Added a condition to check trigger type as high-level detection is not
supported by Renesas RZ external interrupt.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-01-20 13:25:13 +00:00
Nhut Nguyen
1de74c98e2 bindings: intc: Update Renesas RZ external interrupt
Add `#irq-cells` to Renesas RZ external interrupt binding
`renesas,rz-ext-irq`.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-01-20 13:25:13 +00:00
Nhut Nguyen
76d3333d22 dts: renesas: Add interrupt controller nodes for RZ family
Add interrupt controller `intc` and `tint` nodes for Renesas RZ family.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-01-20 13:25:13 +00:00
Nhut Nguyen
982231a8fe drivers: intc: renesas: Add gpio interrupt (tint) for RZ family
Add support for gpio interrupt (tint) for Renesas RZ familiy.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-01-20 13:25:13 +00:00
Holt Sun
0037a5fc4b boards: frdm_ke17z: Add power management support
Enable power management using LPTMR0 as the idle timer.

- Set zephyr,cortex-m-idle-timer to lptmr0
- Remove redundant stop state DTS overrides
- Add power_mgmt_soc test configuration and overlay

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-20 13:25:01 +00:00
Holt Sun
8260974216 soc: nxp: ke1xz: Add power management support
Implement power management with IDLE, STOP, PSTOP1, and PSTOP2 modes.

- Add power state definitions with timing parameters
- Implement pm_state_set() with proper SLEEPDEEP handling
- Add XIP-safe WFI execution from RAM
- Enable SMC driver and power mode protection
- Remove forced timer Kconfig defaults

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-20 13:25:01 +00:00
Chris Friedt
e59a65386e doc: release: 4.4: deprecate CONFIG_XOPEN_STREAMS (again)
Deprecate the CONFIG_XOPEN_STREAMS Kconfig option in favour of
CONFIG_XSI_STREAMS, which matches the naming conventions of other XSI
Kconfig options and the actual Option Group name in the specification.

Please use CONFIG_XSI_STREAMS instead.

Note: this option was originally deprecated prior to 4.3.

Signed-off-by: Chris Friedt <chris@fr4.co>
2026-01-20 13:24:51 +00:00
Chris Friedt
c2cad209a3 posix: xsi_streams: add tc-provides-xsi-streams kconfig option
Enable the toolchain to provide the XSI_STREAMS Option Group.

Signed-off-by: Chris Friedt <chris@fr4.co>
2026-01-20 13:24:51 +00:00
Chris Friedt
25c2aaef9b posix: xsi: streams: deprecate CONFIG_XOPEN_STREAMS (again)
CONFIG_XOPEN_STREAMS does not follow the pattern of other XSI Option
Groups, where the Option Group name is not the same as the feature
test macro that indicates it is supported by the implementation.

Deprecate CONFIG_XOPEN_STREAMS and rename it to CONFIG_XSI_STREAMS.

For more information, please see
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/\
V1_chap02.html#tag_02_01_05_09

Signed-off-by: Chris Friedt <chris@fr4.co>
2026-01-20 13:24:51 +00:00
Emil Gydesen
a25598eab9 Bluetooth: CSIP: Fix set member register issue
Fix issue with re-registering CSIS where it relied on
a stack allocated value during the service unregistering
and reset. To fix this properly, and to allow for further
optimization, the register function was refactored to dynamically
create the service, rather than relying on a static allocation
and dynamically remove unwanted characteristics.

Additionally this new approach also allow us to rely on
IS_ENABLED and remove some #if defined, as well as reducing
both ROM and RAM memory usage.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-20 13:23:28 +00:00
Lyle Zhu
ef7b132bfd Bluetooth: Classic: Fix initialization to support re-initialization
In current implementation, the Classic L2CAP server list will be
cleared when the function `bt_enable()` called. It causes the
registered Classic L2CAP servers are unregistered. However, the
higher-ups were completely unaware of this behavior. It causes the
Classic L2CAP server cannot work after executing the sequence
`bt_enable()`, `bt_disable()`, and `bt_enable()`. Also this behavior
is inconsistent with LE L2CAP server.

Remove the initialization of Classic L2CAP server list from function
`bt_l2cap_br_init()` to fix the issue.

Make Bluetooth Classic profile initialization functions idempotent
by adding static initialized flags to prevent re-initialization.
Change return type from int to void since errors are now logged
but not propagated.

Changes include:
- Add initialized flag to prevent multiple initialization
- Change return type to void for init functions
- Mark err variables as __maybe_unused where appropriate
- Improve error logging with error codes
- Handle -EEXIST and -EALREADY errors for re-registration
- Initialize connection pools before checking initialized flag
  in AVRCP to support re-initialization scenarios
- Remove unnecessary sys_slist_init in bt_l2cap_br_init

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-20 13:23:14 +00:00
Lyle Zhu
4146c053d2 bluetooth: shell: Fix error code formatting in BR/EDR shell
Fix incorrect error code formatting in Bluetooth BR/EDR shell commands.
Error codes are already negative values, so remove the redundant negation
when printing error messages. Also update PSM registration message to
print the PSM value in hexadecimal format for consistency.

Changes:
- Remove negation of error codes in shell_error() calls
- Change PSM format specifier from %u to %04x for hex display
- Affects l2cap_disconnect, l2cap_send, l2cap_credits, l2cap_echo_reg,
  l2cap_echo_unreg, l2cap_echo_req, and l2cap_echo_rsp commands

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-20 13:23:03 +00:00
Jamie McCrae
7a18e3a8cc scripts: dts: gen_dts_cmake: Add DT_UNIT_ADDR to pickled CMake
Adds a new property which outputs the absolute address of a dts
device (if it is available) which will take the parent nodes into
consideration without a user having to manually trawl through
devices (which is error prone depending upon how they are layered)

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:22:53 +00:00
cyliang tw
df32725c46 boards: nuvoton: add support for numaker m55m1
Add new development board numaker_gai_m55m1 for m55m1x series.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2026-01-20 13:22:40 +00:00
Farsin Nasar V A
d5317f5d42 tests: drivers: watchdog: Adds pic32cxsg test support files
- Adds pic32cx_sg41_cult.overlay for wdt test projects.
- Adds pic32cx_sg41_cult platform allow in testcase.yaml.
- Adds wdt board specific configuration in main.c

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2026-01-20 13:22:14 +00:00
Muhammed Asif
a6335e34e2 samples: drivers: watchdog: Adds pic32cx_sg61_cult board overlay file
- Adds the overlay file for pic32cx_sg61_cult board for supporting
   watchdog sample application

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-20 13:22:14 +00:00
Muhammed Asif
c6b8d5c470 boards: microchip: pic32cx_sg61_cult: Add watchdog tag in board file
- Add watchdog tag in the board yaml file section to allow
   CI run watchdog tests on this board.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-20 13:22:14 +00:00
Muhammed Asif
a207f0d8a8 samples: drivers: watchdog: Adds pic32cx_sg41_cult board overlay file
- Adds the overlay file for pic32cx_sg41_cult board for supporting
   watchdog sample application

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-20 13:22:14 +00:00
Muhammed Asif
7dc784a3f9 boards: microchip: pic32cx_sg41_cult: Add watchdog tag in board file
- Add watchdog tag in the board yaml file section to allow
  CI run watchdog tests on this board.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-20 13:22:14 +00:00
Muhammed Asif
96c4de16ca dts: arm: microchip: pic32cx_sg: Add dts node of watchdog
- Add the watchdog node for pic32cx_sg device

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-20 13:22:14 +00:00
Håvard Reierstad
f5f7bb4461 Bluetooth: Host: Add bt_keys config flag
Adds a flag `cfg_flags` to the `bt_keys` struct  and a version field
`cfg_version` in order to be able to detect configuration changes
between firmware updates. This is needed because the `bt_keys` struct
has fields which are compiled in depending on which Kconfig options are
enabled, enabling the possibility of stored data being intepreted
wrongly if the struct changes.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2026-01-20 13:22:05 +00:00
Yasushi SHOJI
6006b3b32a MAINTAINERS: Add Space Cubics Platforms entry
Register Space Cubics on-board computer platforms in MAINTAINERS.yml.

Mark the area as maintained, set yashi as maintainer, and scope it to
boards/sc/. Add a short description for the platform group.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2026-01-20 13:21:46 +00:00
Jamie McCrae
3233c2915a arch: arm: core: cortex_m: timing: Remove stray comment
Removes a stray comment mentioning a Kconfig which actually has
nothing to do with the code

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:21:38 +00:00
Jamie McCrae
8c093a08f5 doc: release: migration_guide: 4.4: Add note on NRF Kconfig change
Adds a note on required changed for SOC_SERIES_NRF Kconfigs with
an X in them

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:21:38 +00:00
Jamie McCrae
2d0f632c31 soc: nordic: kconfig: Deprecate SOC_SERIES_NRF Kconfigs with X in
Deprecates these Kconfigs, as they have been replaced

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:21:38 +00:00
Jamie McCrae
70fcffd5de tests: Update to use SOC_SERIES_NRF Kconfigs without X suffix
Updates usage of the old Kconfig to use the new Kconfig

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:21:38 +00:00
Jamie McCrae
9700579f6a bluetooth: Update to use SOC_SERIES_NRF Kconfigs without X suffix
Updates usage of the old Kconfig to use the new Kconfig

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:21:38 +00:00
Jamie McCrae
a7e099f20b scripts: Update to use SOC_SERIES_NRF Kconfigs without X suffix
Updates usage of the old Kconfig to use the new Kconfig

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:21:38 +00:00
Jamie McCrae
cc9287d291 samples: Update to use SOC_SERIES_NRF Kconfigs without X suffix
Updates usage of the old Kconfig to use the new Kconfig

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:21:38 +00:00
Jamie McCrae
723476370d modules: Update to use SOC_SERIES_NRF Kconfigs without X suffix
Updates usage of the old Kconfig to use the new Kconfig

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:21:38 +00:00
Jamie McCrae
3a9189aa3e drivers: Update to use SOC_SERIES_NRF Kconfigs without X suffix
Updates usage of the old Kconfig to use the new Kconfig

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:21:38 +00:00
Jamie McCrae
212b63a6ca soc: nordic: Update to use SOC_SERIES_NRF Kconfigs without X suffix
Updates usage of the old Kconfig to use the new Kconfig

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:21:38 +00:00
Jamie McCrae
03e8e88d79 soc: nordic: Add SOC_SERIES_NRF* Kconfigs without X suffix
This is to start the process of fixing the issue of the SoC series
not matching the value in the soc.yml file, which is needed to
support future build system features for automatically creating
SoC Kconfigs by the build system.
This also fixes some oddities with how the Kconfigs were set out,
which included duplicated Kconfigs and duplicate selections and
having them in the wrong (or differing) files, to actually follow
how HWMv2 should define these Kconfigs.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:21:38 +00:00
Kyra Lengfeld
ed5683250c Bluetooth: Host: make TX processor stack size configurable
While the tx processor thread is needed to prevent deadlocks and is as
such always enabled, its stack size may be adjusted based on need.
What is needed is dependent on which features are enabled in the
zephyr host as well as other project configurations impacting the
zephyr host.

Signed-off-by: Kyra Lengfeld <kyra.lengfeld@nordicsemi.no>
2026-01-20 13:21:17 +00:00
Tomasz Gorochowik
e5126a0874 doc/develop/manifest/external: add grvl
Add grvl [1] as an external module to Zephyr.

1: https://github.com/antmicro/grvl

Signed-off-by: Tomasz Gorochowik <tgorochowik@antmicro.com>
2026-01-20 13:21:08 +00:00
Emil Gydesen
a6c54dcf68 doc: releases: Add note about UTF8 for CONFIG_BT_AUDIO
CONFIG_BT_AUDIO now depends on CONFIG_UTF8. Add instructions
on how to (easily) migrate.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-20 13:20:52 +00:00
Emil Gydesen
d74f5d7d23 Bluetooth: Audio: depend on UTF8
Add a dependency for UTF8 for LE Audio. Since (nearly?) all
string in LE Audio are UTF8 and that the stack wants to be
able to check and validate strings coming both from remove
deviecs and from the application, it will depend on the utf8
API that is guarded by CONFIG_UTF8.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-20 13:20:52 +00:00
Jamie McCrae
7d54f9c7c5 soc: arm: mps4: Fix SoC Kconfig naming
Fixes the Kconfig name of this so that it matches the value from
soc.yml, this has not been deprecated because this SoC is a virtual
SoC used only with the boards in zephyr meaning it should not cause
any breakage of out-of-tree boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:20:45 +00:00
Jamie McCrae
fcb77f2491 soc: arm: mps3: Fix SoC Kconfig naming
Fixes the Kconfig name of this so that it matches the value from
soc.yml, this has not been deprecated because this SoC is a virtual
SoC used only with the boards in zephyr meaning it should not cause
any breakage of out-of-tree boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:20:45 +00:00
Jamie McCrae
13bcf52b29 soc: arm: mps2: Fix SoC Kconfig naming
Fixes the Kconfig name of this so that it matches the value from
soc.yml, this has not been deprecated because this SoC is a virtual
SoC used only with the boards in zephyr meaning it should not cause
any breakage of out-of-tree boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:20:45 +00:00
Jamie McCrae
bf5460b661 soc: arm: musca: Fix SoC Kconfig naming
Fixes the Kconfig name of this so that it matches the value from
soc.yml, this has not been deprecated because this SoC is a virtual
SoC used only with the 2 boards in zephyr meaning it should not
cause any breakage of out-of-tree boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-20 13:20:45 +00:00
Kyra Lengfeld
4ae5f63aa9 Bluetooth: Host: Give option to disable TX processor thread
It is not recommended to disable the tx processor thread as otherwise
deadlocks may occur, but it has been observed that some boards and
configurations may have too little RAM to accommodate the TX processor
thread stack.
As such BT_TX_PROCESSOR_THREAD gets a prompt.

Signed-off-by: Kyra Lengfeld <kyra.lengfeld@nordicsemi.no>
2026-01-20 13:20:04 +00:00
Flavio Ceolin
15d6ab8ae8 pm: device: Acknowledge unused variable
action_cb is not used in pm_device_driver_deinit is
not used when CONFIG_PM_DEVICE is enabled.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-20 13:17:37 +00:00
Flavio Ceolin
96c44c540b pm: device_runtime: Fix possible inconsistent state
In pm_device_runtime_get, when resume fails after the domain as claimed,
the flag PM_DEVICE_FLAG_PD_CLAIMED is not cleared (but the domain is
released). This leaves this flag in a consistent state and in a further
resume this device won't resume its domain leading to bigger problems.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-20 13:17:37 +00:00
Jingxing Lai
0fa079d81e boards: seeed: xiao_nrf54l15: enable key SoC peripherals and HFXO config
Enable and configure essential peripherals that are typically required
for meaningful use of the XIAO nRF54L15 board, especially for wireless
and sensing applications:

- Configure HFXO with internal load capacitors (16 pF) for better
  RF performance/stability
- Enable IEEE 802.15.4 radio support
- Enable temperature sensor
- Enable radio core
- Enable NFCT (NFC tag)
- Enable clock controller

These changes make the board usable out-of-the-box for Bluetooth LE,
Thread, Matter, NFC and basic temperature monitoring use cases.

Signed-off-by: Jingxing Lai <starsphere@foxmail.com>
2026-01-20 13:17:16 +00:00
Jingxing Lai
dcfa19b3cf boards: seeed: xiao_nrf54l15: fix IMU device tree driver binding
Fix the device tree configuration for the IMU sensor to ensure proper
driver binding.

Signed-off-by: Jingxing Lai <starsphere@foxmail.com>
2026-01-20 13:17:01 +00:00
Jingxing Lai
52ac7438e7 boards: seeed: xiao_nrf54l15: add more GPIO mappings
Add GPIO mappings for D11 to D15

Signed-off-by: Jingxing Lai <starsphere@foxmail.com>
2026-01-20 13:17:01 +00:00
Gaetan Perrot
1efa88e51a drivers: ethernet: phy: phy_tja11xx: remove dead error handling
phy_tja11xx_get_link_state() always returns 0, making callers' error
checks ineffective.

Remove the unused return variable and drop the dead conditional in
invoke_link_cb() to silence static analysis warnings and simplify
the code.

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-20 13:16:02 +00:00
Gaetan Perrot
537b8a635b boards: arduino: fix intereface typo in openocd cfg file
Fix a spelling mistake in the board openocd cfg file for arduino
boards.

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-20 13:15:48 +00:00
Joel Guittet
00dfe39149 dts: fix nxp mcxn94x opamp1 reg value
It seems there is currently no impact except a warning displayed when
building: "unit address and first address in 'reg' (0x40113000) don't
match for /soc/peripheral@50000000/opamp@113000"

Signed-off-by: Joel Guittet <joelguittet@gmail.com>
2026-01-19 18:49:17 -06:00
Benjamin Cabé
93bf06a235 drivers: firmware: scmi: inclusive language fixes
As per coding guidelines, "sanity check" must be avoided.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-19 18:48:51 -06:00
Gaetan Perrot
44e0c38c63 net: coap: coap_client: make coap_client_schedule_poll void
coap_client_schedule_poll() never reports errors and always returns
0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-19 18:48:26 -06:00
Charles Hardin
fb9c9f034b drivers: ethernet: lan9250: Add promiscuous mode support
Handle both multicast packets and promiscuous mode in the driver. This
will allow the lan9250 to be added to a bridge as well as process
multicast packets being received.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2026-01-19 18:47:57 -06:00
Pieter De Gendt
eee57d48cb drivers: pwm: mcux: Print status value on error
When PWM_SetupPwm returns an error, add the value of status to the error
log message.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-19 18:47:25 -06:00
Pieter De Gendt
42f96fc78d manifest: Update hal_nxp with PWM assert to error patch
Update the NXP HAL with a change where PWM_Setup can return an error value
instead of asserting.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-19 18:47:25 -06:00
Tim Knodel
e734c05d78 drivers: i2c: mcux_flexcomm: Add ip block reset to bus recovery
The bus recovery implementation did not reset the I2C block. If
a glitch on the bus looks like a start condition, the I2C block
will be stuck forever waiting for the associated stop. This adds
reset to the I2C block to address this type of error.

Signed-off-by: Tim Knodel <tbk@google.com>
2026-01-19 18:46:41 -06:00
Fabrice DJIATSA
11f7d3be2f tests: drivers: rtc: rtc_api: remove alarm support from wb09ke
Alarms are not supported due to RTC interrupt not triggered
in Run mode erratum.

Delete the overlay since RTC node already defined in the
board dts.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-19 16:22:56 -06:00
Alain Volmat
4711521016 boards: st: avoid enabling CONFIG_INPUT in board/shield defconfig
Usage or not of the input subsystem is an application decision hence
boards or shields defconfig should not force it, even if there might
be a touchpanel available on the board.
This commit remove enabling of CONFIG_INPUT in ST shields / boards.
This shouldn't have impact on in-tree application since LVGL samples
already enable CONFIG_INPUT.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:22:31 -06:00
Alain Volmat
2619ef5e5f samples: display: lvgl: make CONFIG_INPUT common in prj.conf
Always enable the CONFIG_INPUT in the project since it is trying
to use inputs, and let inside the application figure out if there
is really an input device available or not to either simply
draw a label or a button with a label.
This also allow avoid need to have board specific conf file just
to enable CONFIG_INPUT as well has allow to use shields which
embed touchpanels.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:22:31 -06:00
Alain Volmat
143fa22b4d samples: lvgl: demos: remove CONFIG_INPUT from st25dv_mb1283_disco.conf
CONFIG_INPUT=y is already part of the demos sample prj.conf file so
it is not necessary to have it enabled in the st25dv_mb1283_disco
board specific conf file.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:22:31 -06:00
Tomas Galbicka
c057340a86 soc: RT600 DSP Hifi4 enable cache handling
This commit adds cache handling for Hifi4 core on RT600.
Enable CACHE_MANAGEMENT and HAS_DCACHE.

This is required for proper data coherency when the DSP shares memory
with other cores (e.g., Cortex-M33) or DMA peripherals.

With this change, applications can now use sys_cache_data_flush_range()
and sys_cache_data_invd_range() to ensure cache coherency in shared
memory scenarios.

Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
2026-01-19 16:21:37 -06:00
Martin Moya
dd2dedf343 sensor: bosch: bma4xx: add attr_get to device API
This feature allows the user to get the chip's id
from the sensor's API easily

Signed-off-by: Martin Moya <moyamartin1@gmail.com>
2026-01-19 16:21:11 -06:00
Eve Redero
60c1970c4d doc: build: use dt_freq_m in example
Example dts should use dt_freq_m instead of lots of zeros.

Signed-off-by: Eve Redero <eve.redero@gmail.com>
2026-01-19 16:20:56 -06:00
Guillaume Gautier
c62748a9e0 doc: releases: migration guide: add a note for stm32f2/f4/f7 pll rework
Add a note for the STM32F2/F4/F7 PLL clock rework in the migration guide.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
3e7fa6c5e9 drivers: clock: stm32_f2_f4_f7: remove __unused from exported functions
Remove the __unused keyword from exported functions.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
911d6905d0 dts: arm: st: add clk48 clock mux for f446, f469, f479 and f7
For STM32F446, F469, F479 and F7x, add the clk48 node in the dtsi.
This allows configuring the clock source of the CLK48 clock.
It is necessary to add it for the SDIO peripheral that can have either
SYSCLK or CLK48 as clock source.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
a26ad94d82 drivers: clock: stm32f2_f4_f7: extend get_ck48_frequency function
On STM32F446, F469, F479 and on STM32F7x, the CK48M mux can have either
PLL Q or PLLSAI P as input. Adds the support for the PLLSAI P input in
the driver.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
4536b15bca drivers: clock: stm32f2_f4_f7: move get_ck48_frequency function
Move get_ck48_frequency function outside of the #if STM32_PLL_ENABLED
because it should be usable even if the main PLL is not used. The mux
can indeed be used with PLLI2S.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
e5dbb600bc include: dt-bindings: clock: stm32f4: rename clock sel macro
Rename CLK48M_SEL to CK48M_SEL for consistency with stm32f410_clock.h.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
4bf38ff694 boards: stm32f4: add missing pll properties
With the new PLL bindings, fixes a few board dts and overlays
that are missing some properties.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
21e433eed6 include: drivers: clock: stm32: clean up indentation
Clean up indentation for consistency.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
5960c2d5a1 drivers: clock: stm32: update stm32f2_f4_f7 driver with the new binding
This commit updates the STM32Fx clock driver to add complete support for
all PLLs for all SoCs.

Supports  all outputs and additional divisors:
- PLL-DIV-R
- PLLI2S-P
- PLLI2S-DIV-Q
- PLLI2S-DIV-R

Adds global checks to make sure that all:
- All PLLs share the same source clocks
- All PLLs share the same M-Divisor (on applicable SoCs)
- Both div-X and div-divX are defined (on applicable SoCs)

Functions get_plli2s_source and get_plli2ssrc_frequency are added to make
sure that PLLI2S can be used even if PLL is not defined.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
447d552ac0 include: dt-bindings: clock: stm32fx: add missing clock sources
Add some missing clock sources and reorganize them to class the PLL outputs
together for STM32F4 and F7.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
97cc7adf25 dts: arm: st: update stm32f2, f4 and f7 pll compatibles
For all STM32F2, F4 and F7, use the new binding instead of the various ones
previously defined.

For F411 and F446, this removes the need to define the PLLI2S since it is
already included in F401.

For F7, this commit also adds the PLLI2S that was missing.

Also update post-div-x properties for some boards and overlays.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
d985cfa9f5 dts: bindings: clock: st: use a single binding for stm32f2, f4 and f7 PLLs
STM32F2, F4 and F7 have up to 3 PLLs: PLL, PLLI2S and PLLSAI. These PLLs
are very similar, the principal differences are which outputs are available
for which PLL of each SoC.

Instead of having a large number of files to describe all the possible
very similar variants, use one single binding to rule them all.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
8d677b2c29 drivers: clock: use concat instead of ##
Use CONCAT macro instead of ## to create the PLL division macro.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Ashirwad Paswan
68b86a15a1 dma: rpi_pico: fix transfer count calculation
The Pico SDK expects a transfer count (items), not a byte count. The
driver incorrectly passed the byte size, causing buffer overflows on
16-bit and 32-bit transfers.Fix this by storing the transfer width in
the channel configuration and dividing the block size by that width
to calculate the correct transfer count.

Fixes #99435

Signed-off-by: Ashirwad Paswan <ashi06712@gmail.com>
2026-01-19 16:19:56 -06:00
Alessandro Manganaro
b93fabaf25 drivers: timers: stm32: improving lptim configuration sequence
Moving the reset of ltpim hw ip at the beginning of
sys_clock_driver_init to improve the reliability of lptim hw
configuration sequence.

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2026-01-19 16:04:36 +00:00
Yves Wang
9214274464 tests: watchdog: Enable watchdog reset none for more nxp socs
Enable reset_none_ewm for frdm_ke15z, frdm_mcxe247 and mimxrt1170.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2026-01-19 16:04:24 +00:00
Yves Wang
0d66cdd54b dts: nxp: support watchdog on more nxp platforms
Add ewm dts node for mimxrt1170.
Enable ewm clock for frdm_mcxe247.
Enable wdog for frdm_mcxe247 and frdm_ke15z.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2026-01-19 16:04:24 +00:00
Alain Volmat
290b8e6748 samples: display: use white background for ARGB_8888
Set the background color to 0xFF (white) in case of ARGB_8888
framebuffer format so that it is same for all formats except
AL88 and MONO.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Alain Volmat
5b5cdecb97 display: fix SDL display format handling
Switch SDL buffers from SDL_PIXELFORMAT_ARGB8888 to
SDL_PIXELFORMAT_BGRA32. BGRA32 is platform endianness independent
description, defined as below:

	Byte 0   Byte 1   Byte 2   Byte 3
	7......0 15.....8 23....16 31....24
	Bbbbbbbb Gggggggg Rrrrrrrr Aaaaaaaa

The driver is then updated in order to ensure that all buffers,
given via a PIXEL_FORMAT_ described format are properly converted
into the SDL_PIXELFORMAT_BGRA32. At the same time endianness
conversion code is also added in order to avoid taking assumption
that the running platform is little-endian and ensure that data
are properly read as expected.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Alain Volmat
b39b8bc94c samples: display: add corner colors in L_8 mode
Draw different greyscale in all 4 corners in L_8 mode.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Alain Volmat
321f08ae97 samples: display: fix RGB888 red/blue values
The RGB888 colors generated leads to having
  byte0 - R
  byte1 - G
  byte2 - B
while the RGB888 is usually described as B - G - R
going from byte0 to byte2.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Alain Volmat
26afede1db samples: display: ensure data proper endianness buffer fill
Ensure proper endianness when data are written via 16 or 32bit write.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Alain Volmat
83e6e4379b include: display: Add description for all formats
Add detailed description for all supported display formats.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Alain Volmat
b13d9a0510 display: rename current BGR_565 format into RGB_565X
The format currently expected by devices and sample display
application for BGR_565 is actually RGB_565 format with bytes
swapped (not B / R swapped). That is:

PIXEL_FORMAT_RGB_565:
         * @code{.unparsed}
         *   7......0 15.....8
         * | gggBbbbb RrrrrGgg | ...
         * @endcode

current PIXEL_FORMAT_BGR_565:
         * @code{.unparsed}
         *   7......0 15.....8
         * | RrrrrGgg gggBbbbb | ...
         * @endcode

This is explained in both st7796s display driver but also is
what is generated by the sample display application. As a video
format (ex: V4L2), such format is not mentioned as BGR (for
which R and B are swapped) but RGB_565X.

Within the whole Zephyr tree, rename the curremt BGR_565 format
into RGB_565X in order to emphasis that this is a byte swapped
format rather than a B/G component swapped format.

This also correct the description of the format in display.h
file, which wasn't correct based on what was being used by
display driver or sample display app.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Stephan Linz
9d205d65f9 MAINTAINERS: include MCP251xFD Click shields in CAN drivers
This commit adds the MikroE MCP251xFD Click shields under the same
assignees as other of the CAN driver based shields.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-19 16:03:49 +00:00
Stephan Linz
ef55e9bfc1 boards: shields: mikroe_mcp251xfd_click: add MCP251863 click shield
Adds MikroElektronica MCP251xFD click shield with the Microchip
MCP251863 CAN FD controller.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-19 16:03:49 +00:00
Stephan Linz
c6ae75b0d7 boards: shields: mikroe_mcp251xfd_click: add MCP2517FD click shield
Adds MikroElektronica MCP251xFD click shield with the Microchip
MCP2517FD CAN FD controller.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-19 16:03:49 +00:00
Stephan Linz
db302632e6 boards: shields: mikroe_mcp251xfd_click: adjust documentation
The documentation now contains an introductory section covering
the possible variants of this shield. Furthermore, the existing
documentation for the MikroElektronika MCP2518FD click shield
has been enhanced with additional WEB references and the missing
picture.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-19 16:03:49 +00:00
Stephan Linz
e9b8784f2f boards: shields: mikroe_mcp2518fd_click: prepare for variations
MikroElektronica offers various click shields, all based on the MCP251xFD
chip family. These include, for example, the MCP2517FD and MCP251863. All
of these chips are software compatible, meaning they can be used with the
same driver.

This preparation makes it possible to introduce additional click shields,
each with their own name. These do not differ in terms of functionality
and handling, so a separate directory for each additional "similar"
module is not necessary. Only an additional DTS overlay and documentation
need to be added.

In addition, missing copyright strings have been added or their labeling
has been adapted to the current guidelines.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-19 16:03:49 +00:00
Gaetan Perrot
e38ddf4edf tests: bluetooth: btp_mesh: return error when blob target list is full
cmd_blob_target() always returned 0 even when the target list was
full, making error checks at call sites unreachable.

Return a proper error code when no more targets can be added so
callers can correctly detect and handle the failure.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-19 16:03:28 +00:00
Alberto Escolar Piedras
c8e1138bc6 manifest: Update nRF hw models to latest
Update the HW models module to:
4d11a73d62bf999205f16de21a0ef675501f5b21

Including the following:
4d11a73 makefile: Check for more types of build warnings
e53f8db hal: Disable unused-parameter warning when building hal files
5dfba9f RADIO: Avoid 2 shadow redefinition warnings
4a4f979 nrf_hack: Avoid a shadowed redefinition warning
4b9e63b misc: Fix a couple of signedness comparison warnings
d46094f CRACEN: Fix an unused parameter warning
1cf2b04 CLOCK: Fix prototype and one warning
2dab612 nrf_clock: Select header based on symbol instead of platform
0b45a30 54 CRACEN: Make it clear that fallthrough is intentional
7945bf8 GRTC: Add PASTCC model
0a997e5 nrf_hack: Trivial refactoring to remove duplicate code
f328e9b cmake: Add build defines to nrfx library
3824f9c hal: nrf_common: Add repl. for nrf_address_{bus,slave}_get()

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-01-19 16:03:20 +00:00
Fabio Baltieri
fa646a28fc ci: pr_metadata_check: do not rerun on edited
This workflow used to host the "empty" description check and had to
rerun on PR title edit, but that has been moved to into the (faster) dnm
workflow in db18e4c507. Drop the "edited" trigger from this one as it's
not needed anymore.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-19 16:03:05 +00:00
Ren Chen
5720f4aa54 tests: secure_storage: skip flash erase if no storage partition
On the it51xxx soc, the psa/its twister test was failing because
there is no storage partition defined. This change ensures the
flash erase function in the psa/its test only runs if fixed
partition labeled 'storage_partition' exists.

Tested with:
- west twister -p it51xxx_evb/it51526aw \
  -s secure_storage.psa.its.secure_storage.custom.both
- west twister -p it51xxx_evb/it51526aw \
  -s secure_storage.psa.its.secure_storage.custom.store

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2026-01-19 16:02:44 +00:00
Georgios Vasilakis
347b2c9077 dts: nordic: Rename the dts/vendor dtsi files
This renames the dtsi files in the dts/vendor/nordic
to include the cpuapp in the filename.

At the same time it updates the inclusion of these files
to include the vendor in the path because the same filenames
exists in both:
dts/vendor/nordic
dts/arm/nordic

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2026-01-19 15:24:50 +01:00
Georgios Vasilakis
dac69073cd dts: nordic: Rename all Nordic dtsi files for non secure
Rename all dtsi files for Nordic boards for non secure builds
to have a _ prefix before "ns" to increase readiblity.

At the same time, change the path to include the arm
folder in order to be able to differentiate with the
vendor folder which has similar files.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2026-01-19 15:24:50 +01:00
Georgios Vasilakis
00287376c4 dts: nordic: nrf54l refactor SRAM partitioning for NS builds
Refactor the SRAM partitioning for TF-M builds for the Nordic
nRF54L devices. Instead of using the reserved-memory node this
just partitions the normal SRAM node. This aligns the design with
the rest of the Nordic devices.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2026-01-19 15:24:50 +01:00
Georgios Vasilakis
ba59fa7882 dts: nordic: nrf54l10 ns refactor/update memory mapping
Update the memory layout of nrf54l10 for TF-M builds so that
it does not reserve any memory for FLPR since it is not supported
with TF-M.

This affects both the SRAM and the RRAM partitioning.

I moved the SRAM partitioning to the nrf54l10_ns_partition.dtsi
and removed it from individual board files so it can be updated
for all the platforms in one place.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2026-01-19 15:24:50 +01:00
Georgios Vasilakis
01056bcfab dts: nordic: nrf54lm20a ns refactor/update memory mapping
Update the memory layout of nrf54lm20a for TF-M builds so that
it does not reserve any memory for FLPR since it is not supported
with TF-M.

This affects both the SRAM and the RRAM partitioning.

I moved the SRAM partitioning to the nrf54lm20a_ns_partition.dtsi
and removed it from individual board files so it can be updated
for all the platforms in one place.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2026-01-19 15:24:50 +01:00
Georgios Vasilakis
0b71dea510 dts: nordic: nrf54l15 ns refactor/update memory mapping
Update the memory layout of nrf54l15 for TF-M builds so that
it does not reserve any memory for FLPR since it is not supported
with TF-M.

This affects both the SRAM and the RRAM partitioning.

To do that I refactored the dts files, specifically:
1) I created new files for the _ns targets since they have
   different available RRAM/SRAM sizes now.
2) I moved the SRAM partitioning to the nrf54l15_ns_partition.dtsi
   and removed it from individual board files so it can be updated
   for all the platforms in one place.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2026-01-19 15:24:50 +01:00
Georgios Vasilakis
8345c07ed3 manifest: tf-m: Remove reserved memory for FLPR in TF-M for Nordic
Update the memory layout of the Nordic nRF54L devices to avoid
reserving volatile and non-volatile memory for FLPR since it is
not yet supported with TF-M.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2026-01-19 15:24:50 +01:00
Piotr Kosycarz
6bd273ad9f samples: subsys: ipc: ipc_service: icmsg: Skip test if no second UART
If a second UART was not configured in the hardware map, then skip
the testcase instead of failing.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2026-01-19 15:24:37 +01:00
Aleksandr Khromykh
bf261206bb bluetooth: mesh: remove secure sorage for tfm crypto provider
Commit removes selection secure storage for tfm
crypto provider. The secure storage is under
the secure image management. Non-secure image
is not required in the secure storage subsystem.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2026-01-19 15:24:22 +01:00
Jamie McCrae
b016be13a1 soc: nordic: kconfig: Fix dt function usage
Fixes using a dt function which suffered from firstly trying to
take the value from a variable that isn't defined, and which if is
ignored, was entirely invalid due to supplying a chosen node, not
a path as the dt function explicitly requires

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-19 15:24:10 +01:00
Felix Wang
88d4709b45 drivers: pwm: mcux_ctimer: Fix multi-line assertion message formatting
Fix formatting of the __ASSERT message in
mcux_ctimer_pwm_get_cycles_per_sec to properly concatenate the
string across multiple lines.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-19 15:18:20 +01:00
Neil Chen
58bdfd1f46 drivers: syscon: Fix mcxn547 CLOCK_GetFlexcanClkFreq issue
mcxn547 only have one flexcan, but When calling CLOCK_GetFlexcanClkFreq,
parameters are required.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-19 15:16:39 +01:00
Flavio Ceolin
6a8be27ec0 dts: arm/gd: Add entropy to chosen properties
Add zephyr,entropy and sets to TRNG0. This is needed by
the random subsys when using entropy device.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-19 15:15:52 +01:00
Flavio Ceolin
4690b7f966 entropy: gd32: Fix build error
entropy_gd32_recover() had not return type defined causing the
following issue when building:

drivers/entropy/entropy_gd32.c:61:8: error: return type defaults to
'int' [-Werror=implicit-int]

Fix it and change the function to void since it was returning a
constant 0 that is never checked or used.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-19 15:15:52 +01:00
Pieter De Gendt
bc63b5cd30 nvmem: Improve doxygen in public APIs
Update the NVMEM doxygen in accordance with the contribution guidelines.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-19 15:15:07 +01:00
Jamie McCrae
f3fa86ec1a soc: andestech: Fix Kconfig naming
Fixes Kconfig naming to be properly set as required by HWMv2, to
allow for future build system features to work

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-19 15:14:13 +01:00
Jamie McCrae
a53edb7cfd soc: andestech: ae350: Fix wrong implementation of SoC
Fixes a wrongly added SoC feature which should not have been
accepted in the original way it was added, by correctly adding a
Kconfig to select an optional build configuration for this SoC

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-19 15:14:13 +01:00
Gaetan Perrot
287d6e9ddd net: mqtt_sn: make process_advertise void
process_advertise() never reports errors and always returns 0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-19 15:13:05 +01:00
Gaetan Perrot
32e3057009 net: mqtt_sn: make process_search void
process_search() never reports errors and always returns 0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-19 15:13:05 +01:00
Pieter De Gendt
7fb1573311 drivers: flash: flexspi-nor: Support reset GPIO
Add optional reset pin to flash devices.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-19 15:12:25 +01:00
Fin Maaß
9ff85c87d5 drivers: ethernet: nxp: remove redunant tx mutex
remove redunant tx mutex, as the networking
subsystem already provides one since
f65ac5effb

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-19 15:11:50 +01:00
Fin Maaß
77cbd69a3e drivers: ethernet: stm32: remove redunant tx mutex
remove redunant tx mutex, as the networking
subsystem already provides one since
61c392c5b1

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-19 15:11:50 +01:00
Fin Maaß
d043dd3cdf drivers: ethernet: sensry: remove redunant tx mutex
remove redunant tx mutex, as the networking
subsystem already provides one since
61c392c5b1

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-19 15:11:50 +01:00
Fin Maaß
999223f36e drivers: ethernet: numaker: remove redunant tx mutex
remove redunant tx mutex, as the networking
subsystem already provides one since
61c392c5b1

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-19 15:11:50 +01:00
Fin Maaß
6fc50ff4f0 drivers: ethernet: litex: remove redunant tx mutex
remove redunant tx mutex, as the networking
subsystem already provides one since
61c392c5b1

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-19 15:11:50 +01:00
Holt Sun
2f3b4a4611 drivers: timer: cortex_m_systick: fix counter read order on LPM exit
Read the idle timer counter value after getting interrupt status and
top value to ensure more accurate timing measurements when exiting
low-power mode.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-19 15:10:27 +01:00
Holt Sun
f9444d2d80 drivers: timer: cortex_m_systick: fix LPM entry with RESET_BY_LPM
Clear pending SysTick interrupt before entering low-power mode when
CONFIG_CORTEX_M_SYSTICK_RESET_BY_LPM is enabled. A pending interrupt
can inhibit LPM entry or cause immediate wakeup. This is safe since
cycle_count was already updated.
Also improve RESET_BY_LPM Kconfig help text.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-19 15:10:27 +01:00
Can Wang
d9a5b9cc4a Bluetooth: OBEX: add setpath flags enum
Add documentation for the setpath flags parameter by defining a new
enum bt_obex_setpath_flags that describes the available flags:
- BT_OBEX_SETPATH_FLAG_BACKUP: backup a level before applying name
- BT_OBEX_SETPATH_FLAG_NO_CREATE: don't create folder if it doesn't exist

Update the documentation for bt_obex_setpath() and the setpath callback
in bt_obex_server_ops to reference the new enum, improving clarity for
users of the OBEX setpath operation.

Signed-off-by: Can Wang <can.wang@nxp.com>
2026-01-19 15:08:42 +01:00
Can Wang
40931508ca Bluetooth: OBEX: fix incorrect error code in obex_transport_disconn
The function obex_transport_disconn() was always returning -EINVAL
regardless of the actual error code returned by the transport
disconnect operation.

Fix this by returning the actual error code from the transport
disconnect call instead of the hardcoded -EINVAL value.

Signed-off-by: Can Wang <can.wang@nxp.com>
2026-01-19 15:08:42 +01:00
Can Wang
3138be0b08 Bluetooth: OBEX: allow zero-length body in End-of-Body header
According to OBEX Version 1.5, section 2.2.9, it is legal to send a
zero-length End-of-Body header when object body data is generated on
the fly and the end cannot be anticipated.

Update parameter validation in bt_obex_add_header_body_or_end_body()
and bt_obex_add_header_end_body() to allow NULL body pointer when
length is zero, while still rejecting NULL body with non-zero length.

This enables proper support for zero-length End-of-Body headers as
specified in the OBEX specification.

Signed-off-by: Can Wang <can.wang@nxp.com>
2026-01-19 15:08:42 +01:00
Can Wang
85446aafd7 Bluetooth: OBEX: add bt_obex_has_app_param helper function
Add a new helper function bt_obex_has_app_param() to check whether
a specific application parameter tag exists in the OBEX buffer.

The function uses the existing bt_obex_get_header_app_param() to
retrieve the application parameters, then parses them using
bt_obex_tlv_parse() with a callback to search for the specified tag ID.

This simplifies checking for the presence of application parameters
without needing to manually parse the TLV structure.

Signed-off-by: Can Wang <can.wang@nxp.com>
2026-01-19 15:08:42 +01:00
Krzysztof Chruściński
5cfcbf2e87 drivers: counter: nrfx_timer: Optimize interrupt handler
Check only events which have interrupt enabled.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2026-01-19 15:08:06 +01:00
Robert Hancock
8b287a6a74 drivers: dma: dma_xilinx_axi_dma: Make descriptors per-instance
Move the descriptor storage into the per-instance data structure rather
than being global, as they should not be shared between instances.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2026-01-19 15:07:05 +01:00
Robert Hancock
0345fc9d2a drivers: dma: dma_xilinx_axi_dma: Fix up IRQ locking
The way the driver was storing IRQ numbers for later use in the various
locking modes was not correct, causing the wrong IRQs to potentially be
disabled/enabled in some modes. Refactor the way this is done to be
cleaner, and also the way the different locking modes are implemented in
order to ensure that all modes receive compile test coverage.

Also, ensure that the IRQ for the RX or TX channel is always disabled
during the execution of the corresponding ISR, to prevent it from being
preempted by itself if the DMA core raises another interrupt during the
ISR execution.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2026-01-19 15:07:05 +01:00
Robert Hancock
c00f01fb97 drivers: dma: dma_xilinx_axi_dma: Use selective dcache flush/invalidate
This driver has a config option
DMA_XILINX_AXI_DMA_DISABLE_CACHE_WHEN_ACCESSING_SG_DESCRIPTORS to allow
it to be used on platforms where DMA memory access is not automatically
cache coherent. However, fully disabling the dcache when accessing DMA
buffers/descriptors is not necessary and is potentially problematic.
This can be handled more selectively by doing explicit cache invalidate
and/or flush operations on the buffers involved as required.

Note that this does introduce a requirement that RX DMA buffers provided
to the driver are cache line aligned, as otherwise the required cache
invalidate operation could potentially corrupt unrelated data. This is
explicitly checked when a DMA RX operation is started.

Tested on Cortex-R5 with data cache enabled.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2026-01-19 15:07:05 +01:00
Robert Hancock
01d089ae02 drivers: dma: dma_xilinx_axi_dma: Remove polling timer
The driver previously had a timer to periodically check for completed
TX/RX transfers in case an interrupt notification was missed. With
previous changes to the driver to avoid lost interrupt wakeups, this
workaround should no longer be required, so remove it.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2026-01-19 15:07:05 +01:00
Robert Hancock
dd352c1e5d drivers: dma: dma_xilinx_axi_dma: Fixes for DMA interrupt processing
Fix some issues in the driver's DMA interrupt handling:

-Ensure that interrupts are cleared prior to handling interrupt events,
so that events raised during interrupt processing will cause the
hardware to raise a new interrupt

-Ensure that we do not overwrite existing DMA descriptors which are
incomplete (such as by trying to execute more transfers than there are
slots in the descriptor ring)

-Ensure that error events reported by the DMA engine are reported

-Rename some of the variables to track pending and completed ring
locations for better clarity

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2026-01-19 15:07:05 +01:00
Robert Hancock
1874b172b0 drivers: dma: dma_xilinx_axi_dma: Move global reset to init function
Doing a reset of the DMA engine during the dma_configure operation is
problematic when using the DMA core in combination with the Xilinx AXI
Ethernet core, since the DMA core's reset signals are normally
propagated into the Ethernet core. This means that after the Ethernet
core initializes and starts a DMA operation for the first time, the DMA
core is reset, wiping out all of the register settings that the Ethernet
core has made.

To avoid this, move the DMA core reset and other initialization which
only needs to be done once into the init function, so this is done
during initial driver load and not deferred until later.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2026-01-19 15:07:05 +01:00
Robert Hancock
36909486e7 drivers: dma: dma_xilinx_axi_dma: Cleanup register access
Instead of using a packed structure to define the register map, just
create an enum for the registers and use that to refer to them. This
avoids the need for repeatedly disabling GCC warnings for taking the
address of packed structure members.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2026-01-19 15:07:05 +01:00
Robert Hancock
e0a268f501 drivers: dma: dma_xilinx_axi_dma: Add dependency for cache disable option
The DMA_XILINX_AXI_DMA_DISABLE_CACHE_WHEN_ACCESSING_SG_DESCRIPTORS
option is not meaningful to enable unless the platform/configuration
actually supports the corresponding cache maintenance operations. Add
dependencies accordingly.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2026-01-19 15:07:05 +01:00
Nicolas Pitre
6b5af82164 cmake: compiler: arm64: Disable SVE for ARMv9-A when CONFIG_ARM64_SVE=n
When building for ARMv9-A platforms with CONFIG_ARM64_SVE disabled,
compilers still emit SVE instructions because ARMv9-A includes SVE
by default in the architecture specification.

Add explicit +nosve flag to -march when CONFIG_ARMV9_A=y but
CONFIG_ARM64_SVE=n to prevent SVE instruction emission. This ensures
the compiler respects the SVE configuration and only emits SVE
instructions when explicitly enabled.

Applied to both GCC and Clang/LLVM toolchains.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2026-01-19 12:22:34 +01:00
Thomas Hebb
bf81b7ca07 bluetooth: cyw43xxx: Wire up vendor command to set MAC address
There's a standardized way to set a public Bluetooth address in the
core, and this hardware has a vendor specific command to do just that.
Tell the core we support the operation and implement the command. This
allows applications to set a MAC by calling bt_id_create() prior to
bt_enable().

Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
2026-01-19 12:21:32 +01:00
Thomas Hebb
0b75b100cc drivers: bluetooth: h4: Pass params to vendor setup function
If the vendor driver knows how to set a public MAC, it can select
CONFIG_BT_HCI_SET_PUBLIC_ADDR and set the address in this argument,
allowing applications to set a public address with bt_id_create().

Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
2026-01-19 12:21:32 +01:00
Wilfried Chauveau
b25ecfd358 cmake: sysbuild: propagate WEST_PYTHON & Python3_EXECUTABLE
Without this, the parent CMake and the sub-processes may use different
Python environment.

Co-authored-by: Torsten Tejlmand Rasmussen <torsten.rasmussen@nordicsemi.no>
Signed-off-by: Wilfried Chauveau <wilfried.chauveau@arm.com>
2026-01-19 12:20:01 +01:00
Abderrahmane JARMOUNI
ddaf21c02d Revert "drivers: display: st7796s: Add display_set_orientation API"
This reverts commit 132ab06a3f.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2026-01-19 12:18:36 +01:00
Antoni Duda
4419420618 tests: Bluetooth: Test for unregistering of per adv callbacks
Introduces a testcase for the new api function
bt_le_per_adv_sync_cb_unregister.

Signed-off-by: Antoni Duda <antoni.duda@programmer.net>
2026-01-19 12:17:53 +01:00
Antoni Duda
28a9b43459 bluetooth: host: Allow unregistering per adv sync cbs
Introduce bt_le_per_adv_sync_cb_unregister to allow
unregistering of the periodic sync callbacks.

Signed-off-by: Antoni Duda <antoni.duda@programmer.net>
2026-01-19 12:17:53 +01:00
Yves Wang
587e4aacaa tests: watchdog: fixed incorrect skip statement
- Remove ztest_test_skip in sub testcase because it will skip all
  following code in the testcase.
- Print sub testcase name at the case begining.
- Wrap bad window and wait mode test with macros.
- For nxp,cop, need disable it when the testcase ends.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2026-01-19 12:17:02 +01:00
Yves Wang
de2b8994ac tests: watchdog: format wdt_basic_api
Format the file with clang-format

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2026-01-19 12:17:02 +01:00
Hieu Nguyen
33914a65db tests: drivers: pwm: Add support for RZ devices
Add test support for PWM driver of:
- RZ/T2L-RSK
- RZ/G2L-SMARC, RZ/G2LC-SMARC
- RZ/V2N-EVK, RZ/V2H-EVK

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-19 12:13:58 +01:00
Hieu Nguyen
002a7a7cbd boards: renesas: Add PWM support for RZ devices
Add PWM support for:
- RZ/T2L-RSK
- RZ/G2L-SMARC, RZ/G2LC-SMARC
- RZ/V2N-EVK, RZ/V2H-EVK

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-19 12:13:58 +01:00
Hieu Nguyen
4890a26f1c drivers: pwm: Update driver for RZ devices
Implement interrupt settings to expand the driver to RZ/V2H, V2N SoCs

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-19 12:13:58 +01:00
Hieu Nguyen
577906b09b dts: renesas: Add PWM support for RZ SoCs
Add GPT nodes for devicetree of
- RZ/T2L
- RZ/G2L, RZ/G2LC
- RZ/V2H R8 Core, RZ/V2H M33 Core, RZ/V2N
Update GPT nodes for devicetree of RZ/G3S

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-19 12:13:58 +01:00
Pierre-Henry Moussay
b60fbc2abc MAINTAINERS.yml: Add pic64 SoC and pic64gx_curiosity_kit
Add pic64 SoC and pic64gx_curiosity_kit to Microchip RISCV board and SoC

Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@emdalo.com>
2026-01-19 12:11:40 +01:00
Pierre-Henry Moussay
e19fd33b6c boards: microchip: Add minimal support for pic64gx_curiosity_kit
Add minimal support for PIC64GX curiosity kit

Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@emdalo.com>
2026-01-19 12:11:40 +01:00
Pierre-Henry Moussay
8c82334f5b soc: microchip: pic64: Add minimal support for PIC64GX
Add minimal support for PIC64GX SoC and devicetree

Signed-off-by: Pierre-Henry Moussay <pierre-henry.moussay@emdalo.com>
2026-01-19 12:11:40 +01:00
Daniel Schultz
16c40508fd tests: i2c: i2c_speed: Add phyBOARD-Atlas Files
Add an overlay and conf file for the phyBOARD-Atlas. Those
files are copies from NXP's RT1176 board, because the phyBOARD-Atlas
is using the same MCU.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2026-01-19 12:09:44 +01:00
Daniel Schultz
e540442ec9 samples: net: prometheus: Exclude phyBOARD-Atlas
This sample doesn't compile for the phyBOARD-Atlas. Exlude this board
until it got fixed.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2026-01-19 12:09:44 +01:00
Daniel Schultz
1e3602b735 tests: dac: Add phyBOARD-Atlas
phyBOARD-Atlas is based on NXP's RT1176 MCU. Add this
board nex to the NXP defines.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2026-01-19 12:09:44 +01:00
Daniel Schultz
b56a4e1000 boards: phytec: add support for phyBOARD-Atlas i.MX RT1170
Add initial support for PHYTEC phyBOARD-Atlas i.MX RT1170 based on the
PHYTEC phyCORE-i.MX RT1170 SOM. SOM uses dual-core NXP i.MX RT1170 SoC
as a basis, with Cortex-M7 core running at 1 GHz and Cortex-M4 core at
400 MHz.

Supported features:
 * Accelerometer
 * Audio codec
 * CAN
 * DAC
 * EEPROM
 * Ethernet
 * External display
 * I2C
 * RS-232
 * SD-Card
 * SPI
 * UART
 * USB

Signed-off-by: John Ma <jma@phytec.com>
Signed-off-by: Florijan Plohl <florijan.plohl@norik.com>
Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2026-01-19 12:09:44 +01:00
Florijan Plohl
c4bd68def0 dts: arm: phytec: add support for phyCORE-RT1170 SOM
Add phyCORE-1170 SOM dtsi for streamlined inclusion on carrier
boards and uses a dual-core NXP i.MX RT1170 SoC as a basis.

Signed-off-by: Florijan Plohl <florijan.plohl@norik.com>
Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2026-01-19 12:09:44 +01:00
Gaetan Perrot
47ae7f4a50 pmci: mctp: mctp_i3c_controller: remove dead code in controller start
mctp_i3c_controller_start() contains a conditional check on a return
code that is never updated, making the error handling path
unreachable.

Remove the dead code to avoid misleading logic and make the current
controller startup behavior explicit.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-19 10:10:18 +01:00
Yasushi SHOJI
31863b30ae soc: xlnx: versal: Select VFPv3-D16
The Versal RPU uses Arm Cortex-R5F cores, which implement VFPv3-D16
(single and double precision with 16 double-word registers):.

Select VFP_DP_D16 to describe the available VFP configuration for this SoC.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2026-01-19 10:09:44 +01:00
Gaetan Perrot
9f39f80e72 sensing: sensor_mgmt: make set_sensor_state void
set_sensor_state() never reports errors and always returns 0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-19 10:08:21 +01:00
Gaetan Perrot
363387890d sensing: sensor_mgmt: make init_sensor void
init_sensor() never reports errors and always returns 0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-19 10:08:21 +01:00
Can Wang
b723880279 Bluetooth: Classic: OBEX: adjust MOPL handling when exceeding MTU
When MOPL exceeds MTU, adjust it to match MTU instead of sending the
error code. This handles the common case where mainstream mobile
operating systems (iPhone and Android) negotiate
MOPL values greater than the RFCOMM or L2CAP MTU.

Signed-off-by: Can Wang <can.wang@nxp.com>
2026-01-19 10:07:52 +01:00
Farsin Nasar V A
73efb8678c tests: drivers: pwm: Adds pwm test support file
Adds PWM test support files for pic32cx_sg41_cult

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2026-01-19 10:07:28 +01:00
Muhammed Asif
d0d7df2568 boards: microchip: pic32cx_sg41_cult: Adds pwm tc node
- Adds support for pwm with tc node on the board file

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-19 10:07:28 +01:00
Muhammed Asif
81437027cc boards: microchip: pic32cx_sg61_cult: Adds pwm tc node
- Adds support for pwm with tc node on the board file

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-19 10:07:28 +01:00
Muhammed Asif
695dd30ba0 dts: arm: microchip: pic32cx_sg : Add tc nodes
- Adds the tc nodes to the common dtsi files

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-19 10:07:28 +01:00
Grzegorz Ferenc
a4d8ee8836 doc: smp_svr: CDC USB port note
Added a note to the USB CDC_ACM building scenario.
The note reminds the user to connect to the correct USB port
when programming. NCSIDB-1733.

Signed-off-by: Grzegorz Ferenc <Grzegorz.Ferenc@nordicsemi.no>
2026-01-19 10:07:00 +01:00
Gaetan Perrot
46ad3814cc drivers: clock_control: bl60x: make set_root_clock_dividers void
clock_control_bl60x_set_root_clock_dividers() never reports errors
and always returns 0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-19 10:06:51 +01:00
Gaetan Perrot
9927c16d1f drivers: clock_control: bl70x: make set_root_clock_dividers void
clock_control_bl70x_set_root_clock_dividers() never reports errors
and always returns 0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-19 10:06:51 +01:00
Jonas Berg
ac6e27d95b boards: Add support for Pimoroni Tiny 2040
Tested with the commands mentioned in the index.rst file.

Product photo from https://shop.pimoroni.com/products/tiny-2040

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-19 10:06:11 +01:00
Jonas Berg
0c169bb5ea boards: Add support for DFRobot Beetle RP2350
Tested with the commands mentioned in index.rst

Product photo from
https://www.dfrobot.com/product-2913.html

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-19 10:04:38 +01:00
alperen sener
8907c9ab8d tests: Bluetooth: tester: Fix Central Address Resolution chr. read
CAR characteristic read process was incomplete, CAR status was not
actually stored.

Added a new BTP_GAP_EV_PEER_CAR_RECEIVED to tester. This is to
prevent disconnect events before IUT successfully reads CAR from
central.

Updated start_directed_advertising() so that if the central has
no CAR support we must not send directed advertisements. IUT
might enter another connectable mode according to specification,
thus IUT starts sending connectable undirected advertisements with
resovable address.

Signed-off-by: alperen sener <alperen.sener@nordicsemi.no>
2026-01-19 10:04:25 +01:00
Neil Chen
c0473e1fbe boards: nxp: frdm_mcxa344: Support wwdt for NXP frdm_mcxa344 board
Support watchdog for NXP frdm_mcxa344 board.
Test using samples/drivers/watchdog.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-19 10:04:03 +01:00
Neil Chen
f782c6e32e tests: drivers: spi: add spi test support for frdm_mcxa344 board
add spi test support for frdm_mcxa344 board

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-19 10:04:03 +01:00
Neil Chen
9f866e17c9 boards: nxp: frdm_mcxa344: Support lpspi for NXP frdm_mcxa344 board
Support lpspi for NXP frdm_mcxa344 board.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-19 10:04:03 +01:00
Neil Chen
7d522e1064 tests: drivers: i2c: add i2c test support for frdm_mcxa344 board
add i2c test support for frdm_mcxa344 board

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-19 10:04:03 +01:00
Neil Chen
8564d10c75 boards: nxp: frdm_mcxa344: Support lpi2c for NXP frdm_mcxa344 board
Support lpi2c for NXP frdm_mcxa344 board.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-19 10:04:03 +01:00
Thomas Hebb
21cd98a5e1 drivers: sdhc: imx_usdhc: Extend all reset timeouts
commit bf61a47887 ("drivers: sdhc: imx_usdhc: extend reset timeout
duration") extended the timeout from 100 iterations to 1000 iterations
for the USDHC_Reset() call in imx_usdhc_reset() but not in the other
places it's called. I have observed a "usdhc: Failed to reset command
line" error from imx_usdhc_error_recovery() on an i.MX RT1061, which
goes away if I extend the timeout. Do so there and also at other call
sites for good measure.

Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
2026-01-19 10:03:39 +01:00
Etienne Carriere
82ef82dff1 drivers: ethernet: stm32: factorize clock handles
Factorize STM32 interface clocks configuration in a single array.
This change eases later integration of other SoCs with different
clocks names while the driver only has to enable (possibly disable)
the clocks on a single sequence.

Suggested-by: Fin Maaß <f.maass@vogl-electronic.com>
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-01-19 10:03:16 +01:00
Etienne Carriere
c623c4544d drivers: ethernet: stm32: finalize move of clocks to controller node
Remove helper macro used to transition from MAC clocks defined
by the MAC node to definition in the controller (parent) node.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-01-19 10:03:16 +01:00
Etienne Carriere
0a49c46958 dts: arm: st: move ethernet clocks from mac to controller node
Move the ethernet controller clocks from mac node to controller node.
This change simplifies how clocks are gathered and handled in STM32
ethernet drivers.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-01-19 10:03:16 +01:00
Etienne Carriere
d965feeea4 drivers: ethernet: stm32: prepare move of MAC clocks to parent node
Prepare move of STM23 ethernet MAC clocks to the controller node (parent
node). For sake of simplicity, define a filed for all possible clocks in
struct eth_stm32_hal_dev_cfg, a later change will replace the whole
with a single STM32 clock instance (struct stm32_pclken) array pointer.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-01-19 10:03:16 +01:00
Etienne Carriere
6e095400c2 drivers: ethernet: stm32: use STM32_DT_INST_CLOCK_INFO_BY_NAME()
Update STM32 ethernet driver to use STM32_DT_INST_CLOCK_INFO_BY_NAME()
helper macro to always get all clock information, not only the bus ID
and bit position.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-01-19 10:03:16 +01:00
Arunprasath P
f04a3cfa7a tests: comparator: microchip: Add board overlay file
Add board overlay file for pic32cx_sg41_cult to enable comparator
test cases to run on this board.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2026-01-18 09:40:33 -06:00
Arunprasath P
33845c2e44 boards: microchip: pic32cx_sg61_cult: Add comparator support
Update pic32cx_sg61_cult.yml to include Comparator in the supported
features list.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2026-01-18 09:40:33 -06:00
Arunprasath P
c201b11a85 boards: microchip: pic32cx_sg41_cult: Add comparator support
Update pic32cx_sg41_cult.yml to include Comparator in the supported
features list.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2026-01-18 09:40:33 -06:00
Arunprasath P
11b51eafe0 dts: arm: microchip: Add AC node for PIC32CX-SG family devices
Add Analog comparator node to enable Comparator G1 driver
support on PIC32CX-SG devices.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2026-01-18 09:40:33 -06:00
Peter Johanson
a17503cb17 drivers: input: Add sleep-mode-enable property for Pinnacle
Add a new sleep-mode-enable property for the Cirque Pinnacle input driver,
to enable the sleep-mode for those peripherals, which will go into a lower
power state after 5 seconds with no fingers detected.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2026-01-18 09:40:21 -06:00
Peter Johanson
fa7037ca71 input: pinnacle: Perform software reset on init
Don't rely on power-on-reset for the connected device, issue a software
reset on init to be sure we're reset before continuing.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2026-01-18 09:40:12 -06:00
Chay Guo
035d026741 samples: nxp: frdm_ke15z: Enable ADC samples.
ADC0 CH0 as input channel
Enabled samples/drivers/adc on frdm_ke15z

Signed-off-by: Chay Guo <changyi.guo@nxp.com>
2026-01-18 10:31:24 +01:00
Chay Guo
43d73f19bd boards: nxp: frdm_ke15z: Support ADC feature.
Enable ADC0 CH0 as input channel
Tested with tests/drivers/adc/adc_api/ on frdm_ke15z

Signed-off-by: Chay Guo <changyi.guo@nxp.com>
2026-01-18 10:31:24 +01:00
Chay Guo
58febe8690 boards: nxp: doc: ke1xz: Correct system clock source and frequency
The System clock was changed to LPFLL by commit 68937acbb8.
Updated the clock source and frequency description in board documentation.
Regarding boards: frdm_ke15z, frdm_ke17z, frdm_ke17z512

Signed-off-by: Chay Guo <changyi.guo@nxp.com>
2026-01-18 10:31:24 +01:00
Henrik Lindblom
79e9b72534 drivers: adc: ads1x4s0x: configure reference buffers
Configure the reference buffers when using external reference voltage for a
channel. For the internal reference the datasheet[1] recommends that the
buffers are disabled and for external references they should be disabled if
REFPx/REFNx is close to AVDD/AVSS. After reset the positive reference
buffer is enabled and the negative is disabled. The default values
correspond to the example circuit for a two-wire and four-wire PT100 RTD
measurement with low-side reference.[2][3]

The values configured by the driver are maybe a little opinionated, but the
current behaviour is kept to avoid surprises for people that are happy with
the drivers defaults.

The change applies to both ads11xs0x and ads124xs0x series.

Link: [1]: https://www.ti.com/lit/ds/symlink/ads124s08.pdf
Link: [2]: https://www.ti.com/lit/an/sbaa329b/sbaa329b.pdf
Link: [3]: https://www.ti.com/lit/an/sbaa336b/sbaa336b.pdf

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2026-01-18 10:30:42 +01:00
Henrik Lindblom
2c81aef924 dts: bindings: ads1x4s0x: add reference buffers
Add boolean properties to control whether the reference voltage buffers are
enabled or not. After reset the positive reference buffer is enabled and
the negative is disabled.

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2026-01-18 10:30:42 +01:00
Benjamin Cabé
3dfe5a98f6 doc: code_data_relocation: Add syntax highlight to cmake snippets
Fix code-blocks that had improper syntax highlighting set

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-17 20:30:15 +00:00
Pieter De Gendt
84415a1252 boards: nxp: mimxrt1064_evk: Fix PWM polarity for user LED
The user LED is active low, or when using the PWM, polarity inverted.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-17 20:30:00 +00:00
Neil Chen
348cc0116d tests: drivers: flash: add flash test support for frdm_mcxac444
add erase_block and flash_map support for frdm_mcxc444 board

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-17 20:29:52 +00:00
Neil Chen
7ade290225 boards: frdm_mcxc444: add flash support
- enable flash support
- verified tests/drivers/flash/common

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-17 20:29:52 +00:00
Daniel Schaefer
e64a7a2817 boards: framework: Remove unnecessary figure
Requested during code review to remove.
Apparently zephyr:board:: automatically does it.

Signed-off-by: Daniel Schaefer <dhs@frame.work>
2026-01-17 20:29:34 +00:00
Daniel Schaefer
7bd6c0079b boards: framework: Add framework_ledmatrix board
The following examples build and work as expected:

> west build -p -b framework_ledmatrix samples/basic/button
> west build -p -b framework_ledmatrix samples/basic/minimal
> west build -p -b framework_ledmatrix samples/subsys/usb/console
> west build -p -b framework_ledmatrix samples/subsys/usb/cdc_acm
> west build -p -b framework_ledmatrix samples/subsys/input/input_dump

Signed-off-by: Daniel Schaefer <dhs@frame.work>
2026-01-17 20:29:34 +00:00
Felix Wang
63c2ea0054 tests: drivers: pwm: pwm_loopback: boards: Enabe test on lpcxpresso55s36
Add lpcxpresso55s36  board configuration file.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-17 17:05:00 +01:00
Felix Wang
e72d11e903 drivers: pwm: Add input capture support to nxp,sctimer-pwm
Implement PWM input capture functionality for the NXP SCTimer
driver with support for both pulse width and period measurement
in single-shot and continuous modes.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-17 17:05:00 +01:00
Felix Wang
3a5f9c886e dts: bindings: pwm: Add input capture properties to nxp,sctimer-pwm
Add input-channels and inputmux-connections properties to the
nxp,sctimer-pwm device tree binding to support SCTimer input
capture configuration.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-17 17:05:00 +01:00
Felix Wang
e7840a9d27 drivers: pwm: Fix polarity update on duty cycle change
1.Add mcux_sctimer_pwm_update_polarity() function to properly
reconfigure PWM output polarity when duty cycle is updated.
2.Update Match Reload Value register when Match register is
set.
3.Stop timer before update to prevent bus error

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-17 17:05:00 +01:00
Felix Wang
c30ad66e46 tests: drivers: pwm: pwm_api: boards: Enable frdm_mcxa153 test
Add device tree overlay to enable PWM API testing on the frdm_mcxa153
board using ctimer0. The overlay configures:
- PWM test alias pointing to ctimer0
- Pin P2_12 (J2_12) as PWM output
- ctimer0 in PWM mode with prescaler set to 1

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-17 17:04:44 +01:00
Felix Wang
fa48bee6c4 drivers: pwm: fix prescaler calculation for pwm_mcux_ctimer
The prescaler divides the clock by (prescaler + 1), not by the prescaler
value directly. Update the calculation to correctly account for this.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-17 17:04:44 +01:00
Felix Wang
d2c4dda0c6 dts: bindings: pwm: clarify prescaler description for ctimer pwm
Clarify that the prescaler value divides the clock by (prescaler + 1),
not by the prescaler value directly. This helps users understand the
actual clock division behavior.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-17 17:04:44 +01:00
Derek Snell
694ecafce2 boards: nxp: mimxrt1180_evk: enable CM7 execution from hyperram
* adds CM7 HyperRAM overlay and documentation
* removes hardcoded Kconfig settings for ITCM
* adds example cm33_sram_dtcm.overlay

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2026-01-17 17:04:35 +01:00
Derek Snell
baaf468bc1 soc: nxp: imxrt1180: enable more CM7 memory execution options
Enables other RAM locations for CM7 instead of hardcoding to ITCM.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2026-01-17 17:04:35 +01:00
Felix Wang
c84fdef122 tests: pwm: pwm_loopback: Add board overlay for mimxrt1180_evk
Add device tree overlay for PWM loopback testing on the
MIMXRT1180EVK board using FlexPWM1 module.

Configuration includes:
- Pin configuration for PWM output (gpio_ad_00/J69-3) and input
  capture (gpio_ad_06/J70-1) using FlexPWM1 channels
- PWM loopback test node with output on channel 0 and input on
  channel 2
- Input filter settings with minimal count and period for testing
- Physical connection requirement between J69-3 and J70-1

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-17 17:04:24 +01:00
Felix Wang
8dcd7579eb drivers: pwm: Add PWM capture functionality for pwm_mcux
Add support for PWM input capture functionality to the NXP MCUX PWM
driver. This enables measurement of pulse width and period of external
PWM signals.

Key features added:
- PWM capture configuration and control APIs
- Interrupt-driven capture with overflow handling
- Support for both pulse width and period measurement
- Configurable input filtering
- Support for continuous and one-shot capture modes

The implementation uses FlexPWM channel X as the dedicated input
capture channel, while channels 0 and 1 remain available for PWM
output. Capture functionality is conditionally compiled based on
CONFIG_PWM_CAPTURE configuration option.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-17 17:04:24 +01:00
Felix Wang
bf829e6476 dts: bindings: pwm: Add input filter properties for nxp,imx-pwm.yaml
Add device tree binding properties for PWM input capture filtering
functionality to the NXP i.MX PWM driver binding.

New properties added:
- input-filter-count: Configure number of consecutive samples
  required before accepting input transitions
- input-filter-period: Set sampling period in IPBus clock cycles
  for input capture filtering

These properties enable configuration of input filtering to reduce
noise and improve signal integrity for PWM capture operations.
Setting filter period to 0 bypasses the input filter entirely.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-17 17:04:24 +01:00
Felix Wang
f46f921b7f drivers: pwm: Fix ASSERTION FAIL in pwm_mcux
In PWM_SetupPwm implementation, there is a check:
    temp = pwmClock / pwmFreq_Hz;
    assert(temp <= 0xFFFFU);
Currently pwmFreq_Hz is 1, makes assert failed with
high frequency pwmClock. Since VALx values is set
directly for edge aligned PWM, the pwmFreq_Hz here is
a dummy value, set pwmFreq_Hz equal to pwmClock
frequency to pass assert check.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2026-01-17 17:04:24 +01:00
Tom Hughes
a0fdebcc90 tests: drivers: build_all: input: Fix warning
When building the drivers.input.adc_keys test with clang and
-Winitializer-overrides, it warns:

subsys/input/input_keymap.c:123:29: error: initializer overrides prior
initialization of this subobject [-Werror,-Winitializer-overrides]
  123 | DT_INST_FOREACH_STATUS_OKAY(INPUT_KEYMAP_DEFINE)
      | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/include/zephyr/devicetree.h:5306:25: note: expanded from macro
'DT_INST_FOREACH_STATUS_OKAY'
 5304 |         COND_CODE_1(DT_HAS_COMPAT_STATUS_OKAY(DT_DRV_COMPAT),   \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 5305 |                     (UTIL_CAT(DT_FOREACH_OKAY_INST_,            \
      |                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 5306 |                               DT_DRV_COMPAT)(fn)),              \
      |                               ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
 5307 |                     ())
      |                     ~~~

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2026-01-17 14:28:33 +01:00
Tom Hughes
a28b6f8ed7 arc: Use ARG_UNUSED instead of self-assignment to avoid clang warnings
clang warns about self assignment when -Wself-assign is enabled.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2026-01-17 14:28:18 +01:00
TOKITA Hiroshi
c4f1ccb960 boards: qnx: Add support for QNX Hypervisor virtual machine
Adding support for running Zephyr OS as a guest virtual machine
in the QNX Hypervisor environment.
This change introduces a new board configuration for ARM64-based
QNX Hypervisor VM.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-17 14:28:08 +01:00
Derek Snell
051940789d boards: nxp: mimxrt1040_evk: enable Ethernet
Tested with samples dhcpv4_client and http_server.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2026-01-17 14:27:35 +01:00
Neil Chen
eac5cfa0e4 boards: nxp: frdm_mcxn947,mcx_n9xx_evk: Update doc
Update frdm_mcxn947,mcx_n9xx_evk boards' Datasheet and
Reference manual link

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-17 14:27:09 +01:00
Chay Guo
0b30562497 doc: boards: mimxrt700_evk: fix build command for display
- Fix the build command for display samples.

Signed-off-by: Chay Guo <changyi.guo@nxp.com>
2026-01-17 14:26:47 +01:00
Yves Wang
334f5726b4 soc: nxp: unify DISABLE_WDOG condition
Aligh the macro to determine DISABLE_WDOG definition for nxp devices.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2026-01-17 14:26:25 +01:00
Isabelle OGER
a2a14b548e boards: shields: add support for ST87M01 module.
Add support for the STMicroelectronics ultra-compact low-power NB-IoT
industrial ST87M01 module.

Signed-off-by: Isabelle OGER <isabelle.oger@st.com>
2026-01-17 14:25:46 +01:00
Isabelle OGER
69a826c7f5 tests: drivers: build_all: add support for ST87M01 module.
Add support for the STMicroelectronics ultra-compact low-power NB-IoT
industrial ST87M01 module.

Signed-off-by: Isabelle OGER <isabelle.oger@st.com>
2026-01-17 14:25:46 +01:00
Isabelle OGER
d6e3b49837 dts: bindings: add support for STMicroelectronics ST87M01 module.
Add support for the STMicroelectronics ultra-compact low-power NB-IoT
industrial ST87M01 module.

Signed-off-by: Isabelle OGER <isabelle.oger@st.com>
2026-01-17 14:25:46 +01:00
Isabelle OGER
bdf1e58a97 drivers: modem: introduce STMicroelectronics ST87M01 modem driver
The STMicroelectronics ST87M01 modem is an ultra-compact low-power
NB-IoT industrial module.
The ST87M01 is a high-performance, fully programmable, ultra-compact,
and low-power LTE Cat NB2 NB-IoT industrial module series,
offering comprehensive worldwide band coverage and advanced
security features.
Supporting a wide range of IoT protocols, the ST87M01 module includes
PDU SMS services and internet protocols such as TCP/IP, TLS/DTLS, CoAP,
LwM2M, MQTT, and HTTP/HTTPS, enabling versatile connectivity and
application scenarios.

This driver introduces support for AT commands to query modem
information and socket offloading for TCP/UDP transfers.

Signed-off-by: Isabelle OGER <isabelle.oger@st.com>
2026-01-17 14:25:46 +01:00
Fabio Baltieri
69c7befe26 drivers: eth_nxp_enet_qos: add promisc mode support
Add support for ETHERNET_CONFIG_TYPE_PROMISC_MODE.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-16 20:56:56 +00:00
Jason Yu
4808de2498 drivers: flash: soc_mcux: Fix ram function permission issue
Add workaround for MCUXSDK FTFX driver when FTFx_DRIVER_IS_FLASH_RESIDENT
is enabled.
The SDK places the run command function in data section which
is not executable when Zephyr configures memory permissions.
Implement a RAM function to replace the FTFX driver's run command function

Fixes: #98560

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2026-01-16 20:56:50 +00:00
Gaetan Perrot
bc5f5f8829 boards: adi: fix evaluation typo in board names
Fix a spelling mistake in the board name description for ADI
evaluation boards.

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-16 18:08:51 +01:00
Malon Tian
16ffda989b scripts: west: fix typos and formatting in sdk help message
Specific fixes include:
- Add missing space after period in the disk space warning.
- Fix mismatched quotes in the --install-base example (usage of `...').
- Removed a typo double quote in the installation description.

This addresses the CLI help message issues reported.

Fixes #95609

Signed-off-by: Malon Tian <a3205153416@gmail.com>
2026-01-16 18:08:24 +01:00
Robert Lubos
602b91039a net: core: Queue loopback packets instead of processing directly
Instead of processing loopback packets from the TX thread directly,
queue them for further processing by RX thread (if possible), just as
regular packets. It's now possible as the information regarding the
packet is a loopback one or not is stored directly in the net_pkt
structure.

This allows to avoid unexpected stack consumption increases if packets
are sent for loopback destinations.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-16 18:07:57 +01:00
Mathieu Choplain
e0d6d425bd drivers: disk: sdmmc_stm32: error out when no domain clock is provided
If CONFIG_SDMMC_STM32_CLOCK_CHECK=y but the SDMMC node lacked domain clock,
the driver would perform an out-of-bounds access to priv->pclken[1] and
provide garbage as the "subsystem" in the call to clock_control_get_rate().

Detect this situation and error out with an explicit message instead to
prevent UB and help users.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-16 18:07:27 +01:00
Tim Pambor
9066af6a70 soc: st: stm32: {h5, l5, u5, wbax}: Correct cache line size
STM32H5, STM32L5, STM32U5, and STM32WBAX series MCUs have external
ICACHE/DCACHE with a cache line size of 16 bytes. The previous
configuration incorrectly set the cache line size to 32 bytes (the
default cache line size for Cortex-M cores).

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-01-16 18:07:00 +01:00
Andrej Butok
46e1c2a52e boards: nxp: mimxrt1170_evk: unify the documentation title
Removed revision from the MIMXRT1170-EVK documentation title,
to be consistent with all other MIMXRT boards.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2026-01-16 18:06:36 +01:00
Bjarki Arge Andreasen
e0481a1f30 drivers: i2c: i2c_nrfx: Use NRF_DT_INST_IRQ macros
Use NRF_DT_INST_IRQ_ macros which support building with and without
SW ISR table for all nordic socs.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-16 18:06:06 +01:00
Bjarki Arge Andreasen
7f685ca60a drivers: gpio: nrfx_gpio: Use NRF_DT_INST_IRQ macros
Use NRF_DT_INST_IRQ_ macros which support building with and without
SW ISR table for all nordic socs.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-16 18:06:06 +01:00
Bjarki Arge Andreasen
2e9586b33b drivers: spi: nrfx_spim: Use NRF_DT_INST_IRQ macros
Use NRF_DT_INST_IRQ_ macros which support building with and without
SW ISR table for all nordic socs.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-16 18:06:06 +01:00
Bjarki Arge Andreasen
46a5734ece soc: nordic: common: Introduce NRF_DT_(INST)_IRQ_ utility macros
Introduce the NRF_DT_IRQ_DIRECT_DEFINE and NRF_DT_IRQ_CONNECT macros
which reduce provide a common way for nordic drivers to adapt to the
presence of the SW ISR table which is commonly excluded as it is not
required for nordic socs. Also adds device driver inst variants of
the macros.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-16 18:06:06 +01:00
Andrej Butok
cd530875a5 boards: nxp: Fix NXP FRDM names in yaml
- Fixes NXP FRDM names in yaml files.
- The '-' was missed for some NXP FRDM boards.
- It caused an inconsistent board list in MCUx-VSCode extension.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2026-01-16 18:05:35 +01:00
Thorsten Klein
de18a52a20 scripts: west_commands: tests: test_build: add tests for west build args
Add tests to ensure 'west build' arguments are correctly forwarded to
CMake in the correct order.

Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
2026-01-16 18:05:26 +01:00
Thorsten Klein
fe13def7a5 scripts: west_commands: build: support cmake arguments via --cmake-opt
Support cmake options specified via argument --cmake-opt, in order to
avoid `--` in alias commands.

Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
2026-01-16 18:05:26 +01:00
Thorsten Klein
47db2c6522 scripts: west_commands: build: remove shadowed function argument
Remove _run_cmake argument 'cmake_opts' which is never used and shadowed
by a local variable.

Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
2026-01-16 18:05:26 +01:00
Neil Chen
1d2fe6ef0f tests: drivers: can: timing: enable full timing test
Enable the full range of CAN timing tests on the NXP FRDM-MCXA366,
FRDM-MCXA346 and FRDM-MCXA266 boards.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-16 18:04:54 +01:00
Neil Chen
393d8807e3 boards: nxp/frdm_mcxaxx6: Support Flexcan for NXP frdm_mcxaxx6 board
Support Flexcan for NXP frdm_mcxa366,frdm_mcxa346,frdm_mcxa266 board

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-16 18:04:54 +01:00
Neil Chen
6b5489b850 dts: arm/nxp: Add Flexcan nodes to NXP mcxaxx6 dtsi file
Add Flexcan0,Flexcan1 node to NXP MCXA366,MCXA266 dtsi file
Add Flexcan0 node to NXP MCXA346 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-16 18:04:54 +01:00
Neil Chen
a52ff9a7bb drivers: syscon: update syscon driver to support mcxa flexcan clock
Add mcxa flexcan clock support

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-16 18:04:54 +01:00
Kate Wang
a600317285 MAINTAINERS: Add Kate Wang as collaborator for Display drivers
Add myself as a collaborator for the Display drivers subsystem.
I have been actively contributing to display driver implementations
and will continue developing and reviewing patches.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2026-01-16 11:43:59 +00:00
Kate Wang
d087bf9a25 MAINTAINERS: Add Kate Wang as collaborator for MIPI DBI/DSI
Add myslef as a collaborator for the MIPI DBI and MIPI DSI subsystems.
I have been actively contributing to MIPI DBI/DSI implementations
and will continue developing and reviewing patches.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2026-01-16 11:43:59 +00:00
Zhaoxiang Jin
e790de88c6 doc: releases: add migration guide for NXP compile flag scope changes
Document the scope changes for NXP compile flags that were
moved from global to local scope in PR #100252. Applications
that depended on these flags being globally available may need
to be updated.

The following flags have been moved to use
zephyr_library_compile_definitions():
- BOARD_FLASH_SIZE: moved to SoC layer CMake for RT10xx and RT11xx
- XIP_BOOT_HEADER_ENABLE: scoped to boards CMake or SoC layer as needed
- BOOT_HEADER_ENABLE: scoped to boards CMake, removed from RW61x boards
- XIP_BOOT_HEADER_DCD_ENABLE: scoped to boards CMake or SoC layer as needed

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-16 11:43:49 +00:00
Zhaoxiang Jin
a4b8d3ed7c boards: nxp: rd_rw612_bga: remove unused build flag
'BOOT_HEADER_ENABLE' is not used in RW61x build tree,
so should remove it from RW61x board CMakeLists.txt.

Note: if out-of-tree files still need to use this flag,
please add it in your own CMakeLists.txt.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-16 11:43:49 +00:00
Zhaoxiang Jin
3eb60a9792 boards: nxp: convert 'XIP_BOOT_HEADER_DCD_ENABLE' to Kconfig options
1. This commit converts the 'XIP_BOOT_HEADER_DCD_ENABLE' preprocessor
define to Kconfig options across NXP i.MX RTxxxx evaluation boards.
The changes enable flexible boot header configuration through the
Kconfig build system instead of compile-time defines, improving
configurability and maintainability.

2. Now 'XIP_BOOT_HEADER_DCD_ENABLE' flag is only used in
hal_nxp/rtxxxx/fsl_flexspi_nor_boot.h which is included by soc.c,
therefore, this flag should be passed in the rtxxxx/SoC layer CMake
using zephyr_library_compile_definitions(). and can be removed from
each board CMakeLists.txt.

Note: if out-of-tree files still need to use this flag, please add
it in your own CMakeLists.txt.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-16 11:43:49 +00:00
Zhaoxiang Jin
c323ac7f7e boards: nxp: convert 'BOOT_HEADER_ENABLE' to Kconfig options
1. This commit converts the 'BOOT_HEADER_ENABLE' preprocessor
define to Kconfig options across NXP i.MX RTxxx evaluation boards.
The changes enable flexible boot header configuration through the
Kconfig build system instead of compile-time defines, improving
configurability and maintainability.

2. Now this flag is not used in Zephyr tree, so removed
'zephyr_compile_definitions(BOOT_HEADER_ENABLE=1)' from the
CMakeLists.txt files of the following boards:
- mimxrt595_evk
- mimxrt685_evk
- mimxrt700_evk

Note: for out-of-tree projects that still require this flag,
users can define it in their own CMakeLists.txt or prj.conf files.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-16 11:43:49 +00:00
Zhaoxiang Jin
2849272e60 boards: nxp: convert 'XIP_BOOT_HEADER_ENABLE' to Kconfig options
1. This commit converts the 'XIP_BOOT_HEADER_ENABLE' preprocessor
define to Kconfig options across NXP i.MX RTxxxx evaluation boards.
The changes enable flexible boot header configuration through the
Kconfig build system instead of compile-time defines, improving
configurability and maintainability.

2. Now 'XIP_BOOT_HEADER_ENABLE' flag is only used in
hal_nxp/rt11xx/fsl_flexspi_nor_boot.h which is included by soc.c,
therefore, this flag should be passed in the rt11xx/SoC layer CMake
using zephyr_library_compile_definitions(). and can be removed from
each board CMakeLists.txt.

Note: if out-of-tree files still need to use this flag, please add
it in your own CMakeLists.txt.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-16 11:43:49 +00:00
Zhaoxiang Jin
7ff326ef56 boards: nxp: move 'BOARD_FLASH_SIZE' to SoC layer cmake
For RT10xx and RT11xx, flag 'BOARD_FLASH_SIZE' is only used
in hal_nxp fsl_flexspi_nor_boot.h which is included by soc.c,
therefore, this flag should be passed in the SoC layer CMake
using zephyr_library_compile_definitions() to limit its scope.

Normally, 'BOARD_FLASH_SIZE' should not be used elsewhere.
If an out-of-tree user uses this flag elsewhere, please define
the flag yourself.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-16 11:43:49 +00:00
Zhaoxiang Jin
a86a84afdf boards: nxp: remove 'BOARD_FLASH_SIZE' for RTxxx boards
Flag 'BOARD_FLASH_SIZE' is not used for RTxxx, so remove it
from mimxrt595_evk, mimxrt685_evk, and mimxrt700_evk board
CMakeLists.txt files.

Normally, 'BOARD_FLASH_SIZE' should not be used elsewhere.
If an out-of-tree user uses this flag elsewhere, please define
the flag yourself.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-16 11:43:49 +00:00
Zhaoxiang Jin
174f1f71c4 soc: nxp: scope boot-header compile defs to soc library
Create a dedicated Zephyr library for the imxrt11xx and
imxrt10xx SoC in CMakeLists.txt and move soc.c into it
(zephyr_library() + zephyr_library_sources(soc.c)).

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-16 11:43:49 +00:00
Camille BAUD
bc07d91cca drivers: lora: Add ability to force enable LDRO
Allows Enabling LDRO all the time via DTS

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-16 11:43:43 +00:00
Camille BAUD
cd65845ba2 drivers: lora: Enable LDRO when symbol time > 16.38ms
Enable LDRO when it should be enabled

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-16 11:43:43 +00:00
Camille BAUD
6b2f1c19ac drivers: lora: Add missing Bandwidth and Spreading Factor values
Add missing values and replace arbitrary BW enum with actual value

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-16 11:43:43 +00:00
Richard Mc Sweeney
213d95358c dts: arm: infineon cat1b mpns
Disabled flash controller as it is not yet updated to support PSC3

Signed-off-by: Richard Mc Sweeney <Richard.McSweeney@infineon.com>
2026-01-16 11:43:25 +00:00
Richard Mc Sweeney
415986b89f dts: arm: infineon cat1b psc3
Add power-states to PSC3

Signed-off-by: Richard Mc Sweeney <Richard.McSweeney@infineon.com>
2026-01-16 11:43:25 +00:00
Richard Mc Sweeney
5dbd980dce soc: infineon: add psc3 power management
Adds power management support for the Infineon PSC3 device

Signed-off-by: Richard Mc Sweeney <Richard.McSweeney@infineon.com>
2026-01-16 11:43:25 +00:00
Gaetan Perrot
f15e645e35 drivers: watchdog: nxp_ewm: fix redundant NULL check
nxp_ewm_install_timeout() accesses cfg fields before checking for
NULL, making the later NULL check ineffective.

Remove the redundant check.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-16 11:43:06 +00:00
Gatien Chevallier
1b988e9014 MAINTAINERS: Add area for OTP
Create a section for the OTP subsystem. NVMEM is referenced in the test
category as the OTP subsystem is tested using the NVMEM API.

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
2026-01-16 11:42:50 +00:00
Gatien Chevallier
afab067381 tests: nvmem: Add OTP testcase
Add an overlay/config to test the NVMEM subsystem with an emulated
OTP driver.

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
2026-01-16 11:42:50 +00:00
Gatien Chevallier
a6953f6427 boards: native_sim: add OTP memory emulator node
Add an OTP memory emulator node to the board native_sim board device
tree file.

Additions of a node to the native sim device tree shifts the device
index, hence making the check_init_priorities test fail. Update the
index in the reference data of the test.

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
2026-01-16 11:42:50 +00:00
Gatien Chevallier
1d42f375cd drivers: otp: add OTP memory emulation driver
In order to make some basic tests on the OTP API, add an OTP memory
emulator driver. It implements the .program() and .read() APIs.

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
2026-01-16 11:42:50 +00:00
Gatien Chevallier
624e018a5f nvmem: Add OTP API support
OTP drivers are the interface to One Time Programmable memory, which
is NVMEM. Add the interface with the OTP API to the NVMEM one.

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
2026-01-16 11:42:50 +00:00
Gatien Chevallier
7db8328b08 drivers: Introduce new OTP subsystem
Introduce a new OTP subsystem to be able to interact with One Time
Programmable(OTP) memory. For now, add basic read()/program() APIs.
Program() API is default disabled due to its sensitivity.

File drivers/otp.h is inspired by drivers/eeprom.h as the basic
features are similar.

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
2026-01-16 11:42:50 +00:00
Carlo Caione
89b097428d modules: lora-basics-modem: Add remaining HAL stub functions
Add stub implementations for all remaining smtc_modem_hal functions
required by LoRa Basics Modem. These functions are not yet implemented
but provide the necessary symbols for linking.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2026-01-16 11:42:37 +00:00
Carlo Caione
a4dbdba2e7 modules: lora-basics-modem: Add HAL implementation with porting tests
Add the initial smtc_modem_hal implementation for Zephyr that provides the
hardware abstraction layer required by LoRa Basics Modem.

To fully port the LoRa Basic Modem library to Zephyr we need to port and
adapt three parts (see [0]):

1. Radio Driver HAL
2. RAL BSP
3. LoRa Basics Modem HAL

Right now the Radio Driver HAL and the RAL BSP are correctly implemented by
the lbm_sx126x drivers, this patchset is taking care of the initial work of
porting and adapting also the LoRa Basics Modem HAL.

The LBM library provides a porting tool [1] that (quoting from [2]) "[...]
provides a automatic suite of tests that will help user ensures that lora
basics modem mcu and radio HAL functions are implemented in a good way
(SPI, radio_irq, time, timer, random, radio config, sleep and low power)"

This patchset is taking care of making the porting tool a first class test
suite for Zephyr implementing the needed HAL functions.

[0] https://github.com/Lora-net/SWL2001/blob/master/lbm_lib/PORTING_GUIDE.md
[1] https://github.com/Lora-net/SWL2001/blob/master/lbm_examples/main_examples/main_porting_tests.c
[2] https://github.com/Lora-net/SWL2001/blob/master/lbm_examples/README.md

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2026-01-16 11:42:37 +00:00
Carlo Caione
ca0703f9e6 modules: lora-basics-modem: Refactor and fix CMake
A set of preliminary (but harmless) changes to prepare for adding the HAL
implementation.

- Rename CMake variables for clarity and consistency, adding an 'LBM_LIB_'
  prefix when the path is a library / module path.

- Change zephyr_library_include_directories to zephyr_include_directories
  for the RAL/RALF includes, since these headers may be needed outside the
  library itself.

- Make lbm_common.h available to code outside the driver directory.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2026-01-16 11:42:37 +00:00
TOKITA Hiroshi
523941037c tests: sensor: Add liteon,ltr553 to build_all test suite
Enable LTR553 driver testing.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-16 11:42:27 +00:00
TOKITA Hiroshi
0c506c6300 boards: m5stack: cores3: Add LTR 553 sensor configuration
Adding configuration for enabling LTR553 ambient light and
proximity sensor.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-16 11:42:27 +00:00
TOKITA Hiroshi
717bc816b9 drivers: sensor: liteon: ltr553: Add support for LTR553
Extends the LTR329 driver to support the LTR553.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-16 11:42:27 +00:00
TOKITA Hiroshi
ab6699c03a dts: bindings: liteon: ltr329: deprecate legacy ALS props
To add support for LTR553, we will migrate device-tree
properties to new ones and mark the old ones as deprecated.
We will also refactor variable names accordingly.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-16 11:42:27 +00:00
TOKITA Hiroshi
0f40d36f6b drivers: sensor: liteon: ltr55x: Split definitions to header
ADd ltr55x.h to split definitions from .c file.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-16 11:42:27 +00:00
TOKITA Hiroshi
69bee427ba drivers: sensor: liteon: Rename ltr329 to ltr55x
The LTR329 is a functional subset of the LTR55X series,
lacking the proximity sensor functionality.

To maintain symbol consistency, we will use LTR55X as the base name.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-16 11:42:27 +00:00
Jiafei Pan
b6866c15d3 boards: imx943_evk: enable watchdog for Cortex-A55
Enable WDOG4 for A55 on imx943_evk board. It could be verified by
building application by:
west build -p always -b imx943_evk/mimx94398/a55 samples/drivers/watchdog

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2026-01-16 11:42:08 +00:00
Jiafei Pan
4197520016 dts: arm64: imx943: add watchdog device nodes
Added device nodes for WDOG3 and WDOG4 which is used by A55.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2026-01-16 11:42:08 +00:00
Biwen Li
eb7827869c dts: arm: nxp: imx95: m7: disable disp_irqsteer
This is a workaround to fix a bug that failed
to access registers of display irqsteer when
display mix is in power off state.
- Display irqsteer is in display mix, need to
  power on display mix firstly.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2026-01-16 11:41:50 +00:00
Sylvio Alves
a03afda472 boards: espressif: update hw breakpoint limits per soc
Fix max number of hardware breakpoints based on SOC.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-16 11:41:34 +00:00
Zhaoxiang Jin
ab16cca665 drivers: adc: nxp_sar_adc: Add compatibility for SoCs without ADCLKSEL
Some NXP SAR ADC variants don't implement the MCR[ADCLKSEL] field.
Add conditional compilation guards to define compatibility macros
that evaluate to 0 when ADCLKSEL is not available, allowing the
driver to compile across different NXP SoCs.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-16 11:41:16 +00:00
Carlo Caione
d6dce1ca51 lorawan: rename region Kconfig symbols to be backend-agnostic
Move and rename the region Kconfig symbols from LORAMAC_REGION_* to
LORAWAN_REGION_* to make them backend-agnostic.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2026-01-16 11:41:01 +00:00
Carlo Caione
5eab8eb693 lorawan: move emulator to separate backend directory
Move the LoRaWAN emulator from the loramac-node backend directory to its
own directory because the emulator currently still depends on loramac-node
for some types and functions.

Once these dependencies are removed in a follow-up, the emulator can become
a fully standalone backend.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2026-01-16 11:41:01 +00:00
Carlo Caione
0a45c8dc70 lorawan: make NVM header documentation backend-agnostic
Remove loramac-node specific references (LORAMAC_NVM_NOTIFY_FLAG_*)
from the NVM interface documentation, making it suitable for any
LoRaWAN backend implementation.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2026-01-16 11:41:01 +00:00
Carlo Caione
429d98f80d lorawan: move loramac-node backend to subdirectory
Refactor the LoRaWAN subsystem to support multiple backends by moving
the loramac-node specific implementation into a dedicated subdirectory.

This change prepares the subsystem for adding lora-basics-modem support
as an alternative backend.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2026-01-16 11:41:01 +00:00
Ritesh Kudkelwar
14a4591ec0 doc: document west sdk under zephyr-specific west commands
Move west sdk documentation to the Zephyr-specific west commands page
and clarify listing, interactive install behavior, and toolchain
selection.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2026-01-16 11:40:47 +00:00
Scott Worley
dc9d70307d boards: microchip: Use new, common UART driver for all MEC boards
Modify Microchip mec_assy6941 boards to use the new, common
UART driver. We also added chose "zephyr,shell-uart" to all
MEC boards allowing building of the "echo_bot" sample application.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2026-01-16 11:40:38 +00:00
Scott Worley
63b7e57fe9 dts: arm: microchip: mec: Update UART nodes with new driver properties
We updates all the UART hardware nodes for all MEC parts with
properties used by the new, common UART driver.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2026-01-16 11:40:38 +00:00
Scott Worley
c6a959dcc3 drivers: serial: microchip: mec: Common UART driver
We modified the Microchip MEC UART driver to be HAL
independent and be usuable on all MEC SoCs. The only
hardware difference is an extra register in the MEC174x/5x
family providing TX FIFO full and current byte count.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2026-01-16 11:40:38 +00:00
Henrik Brix Andersen
b5980bcc75 doc: releases: migration-guide: 4.4: mention change to FlexCAN DT clock
Mention that the NXP FlexCAN devicetree property "clk-source" now
automatically selects between named input clocks.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2026-01-16 11:40:27 +00:00
Henrik Brix Andersen
b359f9037d drivers: can: nxp: mcux: flexcan: add proper support for clock multiplexer
Add proper support for the 1-bit CAN protocol engine clock multiplexer
present in some NXP FlexCAN instances.

Both possible input clocks are now represented as named clocks in the
devicetree nodes ("clksrc0" and "clksrc1") and the existing devicetree
property "clk-source" now selects the correct clock in addition to setting
the multiplexer bit (CLKSRC) in the FlexCAN CTRL1 register.

Fixes: #94517

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2026-01-16 11:40:27 +00:00
Henrik Brix Andersen
b1aa1a394a dts: bindings: can: nxp: flexcan: make clk-source property optional
Make the clk-source property of the NXP FlexCAN devicetree nodes optional
as not all FlexCAN instances have an internal clock multiplexer.

Remove the clk-source property from the SoCs where the internal clock
multiplexer is not present, limit the values this property can be assigned,
and default the clock selection bit to 0 in the driver.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2026-01-16 11:40:27 +00:00
Emil Gydesen
d30ed27049 Bluetooth: Tester: Remove empty file hci_ipc.conf
The file is unused and the use of it has been removed from
autopts.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-16 11:40:13 +00:00
Fabrice DJIATSA
2e20e83109 tests: boot: with_mcumgr: exclude stm32h573i_dk from running ble scenario
add stm32h573i_dk to the list of excluded platforms for
test_upgrade_ble scenario since it's not supported.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-16 11:40:00 +00:00
Gaetan Perrot
bb214df802 ipc: ipc_service: ipc_static_vrings: make vq_teardown void
vq_teardown() never reports errors and always returns 0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-16 11:39:51 +00:00
Bjarki Arge Andreasen
547d0ffe25 scripts: checkpatch: extend has_arg_concat to include CONCAT()
The has_arg_concat check checks for ## and UTIL_CAT, but is missing
the CONCAT macro. This is causing spurious occurances of
MACRO_WITH_FLOW_CONTROL warnings for functions defined with macros
if they use the CONCAT() macro (its like UTIL_CAT but supports up
to 10 concatenations).

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-16 11:39:41 +00:00
Bjarki Arge Andreasen
636e104b23 util: Use CONCAT() instead of internal _CONCAT_\d() in tree
The explicit, and internal, _CONCAT_\d macros are used in a few
files instead of the public CONCAT() macro which automatically
expands to the correct _CONCAT_\d macro based on number of args
passed to it. Update files to use CONCAT().

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-16 11:39:41 +00:00
Andrew Davis
9c3343d00f boards: ti: Add support for the AM62L EVM
The AM62L evaluation module (TMDS62LEVM) is designed for low-cost and
performance optimized AM62L family of application processors. More
information here:

https://www.ti.com/tool/TMDS62LEVM

Add base board support here.

Signed-off-by: Andrew Davis <afd@ti.com>
2026-01-16 11:39:06 +00:00
Andrew Davis
a159d0ee03 soc: ti: k3: Add support for AM62L
The TI AM62L is a low-power ARM Cortex-A53 based SoC with display for
IOT, HMI and general purpose applications. More information here:

https://www.ti.com/product/AM62L

Add initial SoC and DTS support here.

Signed-off-by: Andrew Davis <afd@ti.com>
2026-01-16 11:39:06 +00:00
Jamie McCrae
13eeffbc4b samples: mgmt: mcumgr: smp_svr: Document/rename UDP DTLS file
Renames the UDP DTLS Kconfig fragment file, due to wrongly using an
underscore instead of a dash like the other Kconfig fragments, and
also documents how to use it in the readme

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-16 11:38:42 +00:00
Fabio Baltieri
1c353a3924 ci: twister_tests_blackbox: filter the toolchain list
Only install arm, riscv and x86 toolchains for the twister blackbox
workflow, save some space.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-16 11:38:31 +00:00
Christopher Hofmeister
a893e1dccf boards: silabs: siwx917_dk2605a: fix LED polarity
Fix incorrect LED polarity definitions for the SiWx917 DK.

The user LEDs on the SiWx917 DK are wired as active-low according
to the board schematic, but were previously defined as
GPIO_ACTIVE_HIGH. Update the devicetree LED gpio definitions to
GPIO_ACTIVE_LOW so LED behavior matches the hardware and sample
applications behave as expected.

Signed-off-by: Christopher Hofmeister <chofmeister@gopresto.com>
2026-01-16 11:38:22 +00:00
Tom Hughes
6d7b8b6b2d drivers: gpio: max14906: Fix initialization
Found when building with clang with -Winitializer-overrides:

drivers/gpio/gpio_max14906.c:495:29: error: initializer overrides prior
initialization of this subobject [-Werror,-Winitializer-overrides]
  495 | DT_INST_FOREACH_STATUS_OKAY(GPIO_MAX14906_DEVICE)
      | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2026-01-16 11:38:13 +00:00
Derek Snell
f69cb62868 maintainers: add DerekSnell as collaborator
to NXP Platforms (MCU)

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2026-01-16 11:37:55 +00:00
Laura Carlesso
9541db5f9c tests: drivers: gpio: gpio_basic_api: Updated pins for cy8cproto_063_ble
Updated pins for the gpio basic tests for cy8cproto_063_ble to pins not
used by other tests so that a single board can be wired for all tests
without overlaps.

Signed-off-by: Laura Carlesso <laura.carlesso@infineon.com>
2026-01-16 11:37:42 +00:00
Yves Wang
678adcd77b MAINTAINER: Add yvesll as Watchdog Collaborator
Add yvesll as Watchdog Collaborator

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2026-01-16 11:37:34 +00:00
Andrej Butok
32823f39fb boards: mikroe: move the hexiwear board
- The vendor of the hexiwear board is mikroe (not nxp)
  https://www.mikroe.com/hexiwear.
- Move the board files from 'nxp' to 'mikroe'.
- Delete hexiwear from the nxp maintained board list.
- Update paths in the documentation.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2026-01-15 16:42:24 +00:00
Marcin Niestroj
060682fb8d drivers: nsos: release socket lock while polling
So far using recvfrom() and send() from two different threads was not
possible, since thread attempting send() was blocked by the thread
executing recvfrom(). All other APIs were also blocking each other, while
it was not necessary. One example use case in Zephyr tree is MCUMGR SMP
over UDP implementation, which resuled in communication timeouts.

Release socket lock while actively polling, so other APIs executed from
other threads can safely progress. Do this using k_condvar_wait() API with
socket mutex, so that mutex is safely released and reaquired during wait.

Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2026-01-15 16:41:50 +00:00
Sylvio Alves
f6adcad1a6 drivers: wifi: esp32: fix AP mode MAC address mismatch
When ESP32 operates in AP-only mode the network interface is
initialized with the STA MAC address, but the Wi-Fi hardware operates
with the AP MAC address (typically STA MAC + 1).

Some Wi-Fi clients correctly address frames to the AP MAC, causing them
to be dropped by the ethernet L2 layer with "Dropping frame, not for me"
because the interface link address doesn't match.

Fix this by updating the interface link address to the AP MAC when
enabling AP mode, and restoring the STA MAC when disabling AP mode.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-15 16:41:41 +00:00
Axel Le Bourhis
68cf4b7b50 hal_nxp: move connectivity_framework to mcux-sdk-ng integration
Move the connectivity framework to the new mcux-sdk-ng integration from
hal_nxp, instead of using the legacy integration method.
This will allow for easier integration of future releases.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2026-01-15 16:41:13 +00:00
Fabio Baltieri
68999e6fcf samples: button: rework to use the input and leds subsystem
Rework the button sample to use the input subsystem for the button and
LED subsystem for the LED. This is a better representation of how a
button and LED should be controlled in Zephyr.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-15 16:40:48 +00:00
Fabio Baltieri
d8b9b7ff33 samples: copy the button example into drivers/gpio/button_interrupt
Make space for reworking the one in basic in the next commit.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-15 16:40:48 +00:00
Nikita Divakov
b807da4f56 scripts: gen_relocate_app.py: add quotes around section names in templates
Section names may contain paths to files with special characters.
For example, a valid file path might contain '@'. Then using
CONFIG_CODE_DATA_RELOCATION to relocate section, macro
__in_section_unique() will generate section name like this:

KEEP(*file.c.obj(.noinit.WEST_TOPDIR/path_with@char/file.c.0))

Such section names cannot be processed by ld because '@'
is a special character for ld.

This fix wraps section names in double quotes to escape
special characters for ld.

Signed-off-by: Nikita Divakov <grommerin@gmail.com>
2026-01-15 16:40:39 +00:00
Nikita Divakov
dbc30c5e2f toolchain: gcc: iar: add ___in_section_unique()
Macros __in_section_unique() and __in_section_unique_named() use
___in_section with  __FILE__ argument to create a unique section name.
Since __FILE__ is a string, calling Z_STRINGIFY(__FILE__) in
___in_section() causes double quotes in __FILE__ value to be masked.
This prevents ld from matching section names output by this script.
For example, when using CONFIG_CODE_DATA_RELOCATION to relocate
a noinit section, __in_section_unique() generates the following
section name:

KEEP(*file.c.obj(.noinit."WEST_TOPDIR/path/file.c".symbol))

Besides, __FILE__ is used to create unique sections in two macros,
so why not unify this approach.

This fix adds ___in_section_unique() macro, which substitutes __FILE__
string into section name without additional stringification. Thus,
resulting section is correctly matched by ld.

Signed-off-by: Nikita Divakov <grommerin@gmail.com>
2026-01-15 16:40:39 +00:00
Ibrahim Abdalkader
d320921cd1 tests: subsys: llext: Add test for LLEXT_RODATA_NO_RELOC.
Test extension for CONFIG_LLEXT_RODATA_NO_RELOC feature.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2026-01-15 16:40:29 +00:00
Ibrahim Abdalkader
dca4136f5e llext: Keep constant data in flash.
This patch adds a new Kconfig option that allows read-only data sections
without relocations to be mapped directly (remain in flash) instead of
being copied to RAM during extension loading. This helps extensions that
have large constant data, such as certificates, lookup tables etc.. to
save saving significant RAM, especially with MPU is enabled.

This feature requires the extension to place rodata sections without
relocations in LLEXT_RODATA_NO_RELOC section.

Note that we chose to disable this optimization when MMU or USERSPACE is
enabled because the NO_RELOC section may not be aligned to the MPU/MMU
requirements on some architectures. If we leave it in place, llext will
attempt to create an MPU region for it using a misaligned address, and
if we allow it to be copied to RAM, it defeats the purpose of this feature.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2026-01-15 16:40:29 +00:00
Mark Inderhees
234aa30a8f build: Dependency handling for syscall gen for changed API
Fix issue where changing an existing syscall API does not result in
regeneration of syscalls. This causes a build break on incremental
builds. The issue comes from an incorrect assumption that file
modifications result in updates to folder timestamps on Linux. The fix
is to use the same mechanism Windows is using to track file changes,
making explicit deps on header files that have syscalls.

Signed-off-by: Mark Inderhees <markind@meta.com>
2026-01-15 16:40:11 +00:00
Sergei Ovchinnikov
e572a6f7c6 drivers: regulators: regulator_fixed, regulator_gpio: change init
Change init procedure of regulator_fixed and regulator_gpio to not rely
on reading the state of the enable pin as it might not be available.
Initialize the enable pin to the appropriate state based on the
REGULATOR_INIT_ENABLED flag.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2026-01-15 16:40:02 +00:00
Sergei Ovchinnikov
9c3b2f0648 drivers: regulators: regulator_gpio: remove gpio_pin_get_dt call
Since input buffer may not always be connected when a GPIO is configured
as an OUTPUT, setting its state based on what is returned by
gpio_pin_get_dt can lead to faulty behavior. Remove this check as
redundant.

Fixes #93012

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2026-01-15 16:40:02 +00:00
Benjamin Cabé
60f97b4c7c cmake: modules: boards: fix typo in "outcome" target name
The module sets a target named "boards", not "board".

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-15 15:27:50 +01:00
Tim Pambor
a793acaff0 drivers: flash: shell: increase max repeat limit for speed tests
Increase the maximum allowed repeat count for flash speed tests from
10 to 10000. This allows for more accurate measurements over
longer test durations.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-01-15 15:27:26 +01:00
Gaetan Perrot
69f318ab16 tests: net: lwm2m: interop: client: make lwm2m_setup void
lwm2m_setup() never reports errors and always returns 0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-15 15:27:04 +01:00
Ivan Iushkov
f0c26dfb85 Bluetooth: fix potential unaligned access in CS HCI fields
This commit fixes an issue reported by LLVM Clang compiler
when building with -Wunaligned-access:
```
bluetooth/hci_types.h:4044:2: error: field  within
'struct bt_hci_le_cs_step_data_mode_1'
is less aligned than 'union bt_hci_le_cs_step_data_mode_1::
(include/zephyr/bluetooth/hci_types.h:4044:2)' and is usually due to
'struct bt_hci_le_cs_step_data_mode_1' being packed, which can lead
to unaligned accesses [-Werror,-Wunaligned-access]
```
and similar issues for other CS-specific types containing
unions

Signed-off-by: Ivan Iushkov <ivan.iushkov@nordicsemi.no>
2026-01-15 15:26:52 +01:00
Alberto Escolar Piedras
a3df33722c manifest: update hal_nordic to get cache hal fix
Update hal_nordic to get a fix in the definition of
nrf_cache_data_unit_validity_check()

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-01-15 15:26:40 +01:00
Farsin Nasar V A
752c1d97c6 boards: microchip: pic32cm_jh01_cpro: add RESET to supported list
Update pic32cm_jh01_cpro.yaml to include RESET in the supported
modules list.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2026-01-15 15:26:19 +01:00
Farsin Nasar V A
9d156cc98b drivers: reset: microchip: update RSTC G1 driver for PIC32CM JH
Update the reset driver to add support for the
PIC32CM JH family

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2026-01-15 15:26:19 +01:00
Farsin Nasar V A
a28ee312b0 dts: arm: microchip: add RSTC node
Add the device tree node for microchip RSTC G1 IP.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2026-01-15 15:26:19 +01:00
Karol Werner
9e9eb8e3ca doc: rp2040_zero: Update pin mapping to match pinctrl
The pin mapping documented for I2C0 and I2C1 did not match actual
pinctrl definitions. Update the documentation to reflect correct pins
and add missing SPI and RGB LED mappings.

Signed-off-by: Karol Werner <karol@ppkt.eu>
2026-01-15 15:25:45 +01:00
Ha Duong Quang
31fb05d9b2 boards: nxp: s32k5xxcvb: add pwm support
Add support PWM (FTM) for S32K5XXCVB

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
Co-authored-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-15 15:25:30 +01:00
Dat Nguyen Duy
af3d6a25c7 tests: drivers: pwm_ftm: enable tests for s32k5xxcvb
Enable PWM (FTM) tests for s32k5xxcvb. The board supports
eMIOS and FTM for PWM

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-15 15:25:30 +01:00
Dat Nguyen Duy
837eac94e0 dts: nxp: add pwm (ftm) devicetree nodes for s32k566
Add PWM (FTM) devicetree nodes for s32k566

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-15 15:25:30 +01:00
Lucien Zhao
2f6a4191a7 boards: nxp: frdm_mcxe31b: add pit support
- add some necessary static parameter for pit instances
- Enable counter_basic_api case by using pit0 instance
- Test counter_basic_api passed

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-15 15:25:08 +01:00
Lucien Zhao
f0a528bbb2 drivers: clock_control_nxp_mc_cgm.c: update clock driver
- Update switch usage for mc_cgm_clock_control_on function
- add pit clock on/get rate feature

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-15 15:25:08 +01:00
Tarang Patel
b43382c685 boards: u-blox: ubx_evk_iris_w1_rw612: fix flash config
correct flash_config.c file for different flash varient
fix spelling error across board files
update boards/deprecated.cmake to help older release support

Signed-off-by: Tarang Patel <tarang3399.patel@gmail.com>
2026-01-15 15:24:45 +01:00
Guillaume Gautier
5688afaf0d dts: arm: st: fix rng nist compliant configs
In order to comply to NIST SP800-90B, the STM32 RNG should set its
registers as documented in Application Note AN4230 (Rev12, Table 3) [1].
To that effect, some values have been modified to match the table, and some
have been added.

For STM32H7R/S and WBA, configure the RNG as per configuration C of the
Reference Manual since the NSCR register is not available yet (internal
issues 221082 and 221083).

[1]: https://www.st.com/resource/en/application_note/dm00073853.pdf

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-15 15:24:20 +01:00
Guillaume Gautier
ffa1c2fad4 drivers: entropy: stm32: add noise source control support
Set the content of the noise source control register if the corresponding
property is set in device tree.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-15 15:24:20 +01:00
Guillaume Gautier
40df5225e2 drivers: entropy: stm32: remove STM32L4 specific code
STM32L4 was using different LL functions from the other series.
With the latest HAL update, the usual functions are now defined, so
the L4-specific code can now be removed.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-15 15:24:20 +01:00
Guillaume Gautier
8c729eec2f dts: bindings: rng: stm32: add noise source control property
Some STM32 series need to configure the RNG source noise control register
for NIST SP800-90B compliance.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-15 15:24:20 +01:00
Jordan Yates
7e3c5ab2bb samples: net: nsos: remove CONFIG_HEAP_MEM_POOL_SIZE
Remove the explicit setting of `CONFIG_HEAP_MEM_POOL_SIZE` from NSOS
samples, letting the build system construct the heap size from Kconfig
options.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2026-01-15 11:09:33 +00:00
Jordan Yates
3feb7ca425 net: heap default for NSOS DNS results
DNS queries using native posix can return multiple results. Add a
relatively large default to pre-empt failures due to the query being
too successful.

Extra RAM usage can be ignored since NSOS sockets can only exist on
native posix, which has essentially infinite RAM.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2026-01-15 11:09:33 +00:00
Jordan Yates
16c2444d7a net: nsos_sockets: update heap size check
The final system heap size is now stored in `K_HEAP_MEM_POOL_SIZE`, not
`CONFIG_HEAP_MEM_POOL_SIZE`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2026-01-15 11:09:33 +00:00
Qiang Zhao
203c92980d net: shell: fix qbv command documentation and help text
Fix inconsistencies in the QBV (IEEE 802.1Qbv Time-Aware Shaper) shell
command documentation and help messages:

1. Add missing "net qbv" command documentation to net_shell.rst
2. Correct command examples in help text - add missing "net" prefix
   to "qbv set_gc" commands
3. Fix command usage descriptions for set_config and set_gc to match
   actual command names

This ensures users see correct command syntax in both documentation
and interactive help.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2026-01-15 11:09:22 +00:00
Zhaoxiang Jin
a3f95c886a drivers: ipm: ipm_mbox: fix qualifier warning in callback
mbox_msg::data is a const pointer, but ipm_callback_t expects a
volatile void * payload. Passing the mailbox payload through the
IPM callback was triggering compiler warnings about discarded
qualifiers.

Convert the mailbox payload pointer to the IPM callback payload
type via a uintptr_t round-trip to avoid -Wdiscarded-qualifiers
or -Wcast-qual noise without changing the runtime behavior.

fix:https://github.com/zephyrproject-rtos/zephyr/issues/102057

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-15 11:08:58 +00:00
Tom Hughes
32b63c63ed tests: bluetooth: classic: Remove self assignment
When building with clang it warns about self-assignment in the
bluetooth.classic.sdp_s test:

tests/bluetooth/classic/sdp_s/src/sdp_server.c:258:5: error: explicitly
assigning value of variable of type 'const struct shell *' to itself
[-Werror,-Wself-assign]
  258 |         sh = sh;
      |         ~~ ^ ~~
tests/bluetooth/classic/sdp_s/src/sdp_server.c:277:5: error: explicitly
assigning value of variable of type 'const struct shell *' to itself
[-Werror,-Wself-assign]
  277 |         sh = sh;
      |         ~~ ^ ~~
tests/bluetooth/classic/sdp_s/src/sdp_server.c:290:5: error: explicitly
assigning value of variable of type 'const struct shell *' to itself
[-Werror,-Wself-assign]
  290 |         sh = sh;
      |         ~~ ^ ~~
tests/bluetooth/classic/sdp_s/src/sdp_server.c:368:5: error: explicitly
assigning value of variable of type 'const struct shell *' to itself
[-Werror,-Wself-assign]
  368 |         sh = sh;
      |         ~~ ^ ~~
4 errors generated.

The "sh" variable is used later in the functions.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2026-01-15 11:08:21 +00:00
Tom Hughes
c1b8c14995 tests: net: Use ARG_UNUSED instead of self assignment
When building with clang it warns about self-assignment in these tests:

* net.icmpv6
* net.shell
* net.arp
* net.tcp
* net.ip_addr
* net.6lo
* net.icmpv4
* net.udp

Example:

error: explicitly assigning value of variable of type
'struct net_udp_context *' to itself [-Werror,-Wself-assign]

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2026-01-15 11:07:52 +00:00
Bill Waters
12d68dc496 samples: drivers: counter: alarm: kit_psc3m5_evk
Updating overlay file for the kit_psc3m5_evk board
to work with device tree updates.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2026-01-15 11:07:33 +00:00
Daniel Leung
6cab38312b soc: intel_adsp: add GDB stub register list for ACE 4.0
This adds the register list for GDB stub that is suitable for
ACE 4.0.

Fixes #102084

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-01-15 11:07:21 +00:00
Khoa Nguyen
448d3c04f7 modules: Update Kconfig USE_RA_FSP for RA I2C controller
Since the latest hal_renesas has updated the I2C Controller config
to build the IIC Controller source. Without this update, many
current PRs on mainstream which has the update for hal_renesas
revision will fail.

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2026-01-15 11:07:02 +00:00
Khoa Nguyen
cab3ad6137 manifest: Update latest hal_renesas revision
Update latest hal_renesas revision

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2026-01-15 11:07:02 +00:00
Camille BAUD
8049f25a08 boards: add weact rp2350b_core
add weact rp2350b board

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-15 11:06:50 +00:00
Gaetan Perrot
21c1417f31 drivers: usb: usb_dc_numaker: make usbd_ep_fifo_copy_to_user void
numaker_usbd_ep_fifo_copy_to_user() never reports errors and always
returns 0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-15 11:06:31 +00:00
Gaetan Perrot
f6060eb31f drivers: usb: usb_dc_numaker: make usbd_ep_fifo_copy_from_user void
numaker_usbd_ep_fifo_copy_from_user() never reports errors and
always returns 0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-15 11:06:31 +00:00
Sara Touqan
772bfccd68 drivers: mspi: stm32: remove unused mspi_stm32_ospi_verify_device function
Remove unused function in OSPI driver.

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
2026-01-15 11:06:14 +00:00
Sara Touqan
da5f20c5ad dts: bindings: mspi: stm32: Make clock-frequency a required property
Add clock-frequency property as required for
MSPI/OSPI/QSPI binding files.

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
2026-01-15 11:06:14 +00:00
Sara Touqan
0651092295 drivers: mspi: stm32: refactor frequency handling to rely on devicetree
Remove max frequency Kconfig and uses clock-frequency
property instead

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
2026-01-15 11:06:14 +00:00
Sara Touqan
a0918b6ed2 samples: mspi_flash: add clock-frequency in STM32 DTS files
Add clock-frequency property under some overlay files.

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
2026-01-15 11:06:14 +00:00
Gaetan Perrot
9217ce54c6 Bluetooth: VCP: avoid NULL dereference
Avoid calling vcp_vol_ctlr_discover_complete() with a NULL
controller pointer when lookup fails during AICS discovery.

The vcp_vol_ctlr_discover_complete() helper dereferences the
controller unconditionally, which could otherwise lead to a NULL
pointer dereference.

Fix by returning early if the controller lookup fails.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-15 11:06:01 +00:00
Gaetan Perrot
01e3a54f20 Bluetooth: MICP: avoid NULL dereference
Avoid calling micp_mic_ctlr_discover_complete() with a NULL
controller pointer when lookup fails during AICS discovery.

The micp_mic_ctlr_discover_complete() helper dereferences the
controller unconditionally, which could otherwise lead to a NULL
pointer dereference.

Fix by returning early if the controller lookup fails.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-15 11:06:01 +00:00
Lin Yu-Cheng
c15bd8daa5 drivers: spi: use transfer config to set spi frequency
use transfer config to set spi frequency

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2026-01-15 11:05:53 +00:00
Aleksandr Senin
13286c2ddf tests: drivers: entropy: enable GD32 TRNG on gd32f450i_eval
Enable TRNG node and select it as zephyr,entropy for the API test.
Configure CK48M source via RCU DT properties.

Signed-off-by: Aleksandr Senin <al@meshium.net>
2026-01-15 11:05:28 +00:00
Aleksandr Senin
57993e7d8e soc: gd32: gd32f4xx: init CK48M from devicetree
Add DT properties to select CK48M source for GD32 RCU.
Apply CK48M source selection during early SoC init.

Signed-off-by: Aleksandr Senin <al@meshium.net>
2026-01-15 11:05:28 +00:00
Aleksandr Senin
f8cf0d3803 drivers: entropy: add GD32F4xx TRNG driver
Add entropy driver for the GD32F4xx TRNG.
Implement get_entropy_isr() semantics and bounded DRDY wait.
Add DT binding and SoC TRNG node; hook driver Kconfig.

Signed-off-by: Aleksandr Senin <al@meshium.net>
2026-01-15 11:05:28 +00:00
Lyle Zhu
6531d415b6 sample: Bluetooth: HFP_AG: Make global variables static
Make global variables static in the HFP AG sample to improve
encapsulation and avoid potential symbol conflicts.

Change the following variables from global to static scope:
- hfp_ag
- hfp_ag_call
- discover_work
- call_connect_work
- call_disconnect_work
- call_remote_ringing_work
- call_remote_accept_work

These variables are only used within main.c and do not need to be
externally visible.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-15 11:05:12 +00:00
Lyle Zhu
8ca34066c6 sample: Bluetooth: HFP_AG: Support voice transmission and playback
Add PCM and CODEC support for voice streaming in the HFP AG sample.

Implement PCM interface to handle voice data transmission between the
Bluetooth controller and the application using I2S driver.

Implement CODEC interface to handle voice playback and capture using
I2S and audio codec drivers.

Add bidirectional voice streaming: capture voice from CODEC and
transmit through PCM when SCO connection is established, and receive
voice from PCM and playback through CODEC.

Initialize PCM and CODEC interfaces based on the SCO air mode (CVSD or
mSBC) when SCO connection is established.

Add codec negotiation callbacks to support codec selection.

Enable codec negotiation and mSBC codec support for mimxrt1170_evk
board.

Add configuration options for audio transfer interval, buffer counts,
and thread priorities for both PCM and CODEC RX threads.

Update documentation with voice streaming topology diagram and running
instructions.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-15 11:05:12 +00:00
Francis Roi Manabat
6ca6fb8233 tests: rtc: include adi,max31331 in build_all test suite
Add the MAX31331 RTC device to the build_all RTC test suite. This ensures
it compiles on all supported platforms without requiring actual hardware.

Signed-off-by: Francis Roi Manabat <francisroi.manabat@analog.com>
2026-01-15 11:05:00 +00:00
Francis Roi Manabat
51fa798260 drivers: rtc: add MAX31331 RTC Support
Add MAX31331 RTC driver, an ultra-low-power real-time clock (RTC)
that provides timekeeping with
extremely low current consumption (65 nA).

Signed-off-by: Francis Roi Manabat <francisroi.manabat@analog.com>
2026-01-15 11:05:00 +00:00
Nicolas Moreno
d689916186 doc: releases: add ili9xxx fixes to 4.4 releases notes & migration guide
Added documentation for doc/releases/migration-guide-4.4.rst
in reference with the changes on ili9xxx and ili9341
controllers

Signed-off-by: Nicolas Moreno <niko722795@gmail.com>
2026-01-15 11:04:16 +00:00
Nicolas Moreno
69e353904c drivers: display: features for ILI9341 driver
Replaced display-controller.yaml with lcd-controller.yaml
Deleted pixel format property, replacing it with the
property on lcd-controller.yaml. Replace ILI9XXX RGB macro
with PANEL RGB macro. Also, added condition to verify pixel
format is RGB565, BRG565 or RGB888, otherwise it will show error
Replaced <zephyr/dt-bindings/display/ili9xxx.h> with
<zephyr/dt-bindings/display/panel.h> and
ILI9XXX_PIXEL with PANEL_PIXEL in some Devicetrees
and files that contained both elements. Fixed some
script sintax. Deleted drivers/display/display_ili9xxx.c

Signed-off-by: Nicolas Moreno <niko722795@gmail.com>
2026-01-15 11:04:16 +00:00
Nicolas Moreno
9b2593b8c5 drivers: display: issue with configuration on ILI9341
ILI9341 is not deploying correctly the display sample.
The screen looks mirrored vertically and the color
doesn't match with the sequence expected. To fix it,
change the Memory Access Control configuration data.

Signed-off-by: Nicolas Moreno <niko722795@gmail.com>
2026-01-15 11:04:16 +00:00
Benjamin Cabé
8e4a55cedb doc: contribute: add Doxygen guidelines
Add Doxygen guidelines to help maintain code documentation consistency
across the project in particular for constructs or commands that are Zephyr
specific, such as properly documenting API symbols that are gated by
Kconfig.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-15 11:04:02 +00:00
Sylvio Alves
caa8079a53 tests: debug: coredump: use k_panic() for Espressif SoCs
Espressif RISC-V chips (ESP32-C3, ESP32-C6, etc.) with PMP enabled
use dynamic PMP mode (CONFIG_PMP_NO_LOCK_GLOBAL). In this mode,
null pointer dereference to address 0 causes a bus hang instead
of generating a clean exception, since address 0 is outside any
valid memory region and there's no PMP entry protecting it.

Use k_panic() instead, which reliably triggers the coredump path
on all Espressif chips.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-14 13:07:14 -06:00
Robert Lubos
59206e4132 doc: net: http_server: Update header capture code snippet
Update outdated code snippet for the header capture feature in HTTP
server docs.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-14 13:06:50 -06:00
Fabrice DJIATSA
93c0172d4d boards: st: add netif:eth twister support for f207zg
The Twister netif:eth was missing on the STM32F207ZG board,
and hence it was not built against net tests/samples

Additionally,sort the supported peripherals in alphabetical order.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-14 13:06:26 -06:00
Robert Lubos
6d51407803 net: tcp: Fix possible assertion when peer advertises zero window
If peer lowered its receive window and advertised zero-window length,
TCP stack would pause the retransmission timer until non-empty window is
advertised again. This however could trigger an assertion, that verified
that the retransmission timer is running whenever there is data to
transmit. Add an exception to the assertion for the zero-window case.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-14 13:05:55 -06:00
Sylvio Alves
85e1ea0259 runners: openocd: refactor flash methods into single do_flash
Add _openocd_cmd() helper method to reduce code duplication when
building openocd command lists. Consolidate do_flash, do_flash_elf,
and do_flash_bin into a single do_flash method using match statement
on image_type parameter.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-14 13:05:34 -06:00
Sylvio Alves
cb196db575 boards: esp32: add openocd flash support
Configure ESP32 boards to use OpenOCD for flashing with BIN files.
The --flash-address argument is combined with its value to avoid
YAML parsing issues where hex values like 0x0 are parsed as integers.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-14 13:05:34 -06:00
Sylvio Alves
2ba21af69d runners: openocd: add BIN file flash support
Add --use-bin and --flash-address arguments to allow flashing BIN
files at a specific address. This is needed for targets like ESP32
where HEX files contain virtual addresses (due to MMU mapping)
rather than physical flash addresses.

The new do_flash_bin() method uses the load command with the BIN
file path and flash address, similar to how ELF flashing works.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-14 13:05:34 -06:00
Lyle Zhu
18d6e8c8b1 drivers: bluetooth: hci: nxp: enable calibration data by default
Enable HCI_NXP_SET_CAL_DATA and HCI_NXP_SET_CAL_DATA_ANNEX100 by
default for NW612 and IW416 modules to ensure proper calibration
during HCI initialization.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-14 13:04:42 -06:00
Gerson Fernando Budke
9d5731d0d0 west.yml: Replace native_posix by native_sim in tests
Repalce the native_posix by native_sim in tests and reformat platform
list to allow twister to correct recognize the platforms.

Fixes #101300

Signed-off-by: Gerson Fernando Budke <gerson.budke@ossystems.com.br>
2026-01-14 13:04:15 -06:00
Jacob Schloss
f51e2aaf39 tests: crypto: crypto_aes: enable nucleo_h753zi platform
Enable nucleo_h753zi platform for crypto_aes tests.

Signed-off-by: Jacob Schloss <jacob.schloss@suburbanmarine.io>
2026-01-14 13:03:36 -06:00
Jacob Schloss
4342789ee4 boards: st: nucleo_h753zi: enable cryp node
Enable cryp on board nucleo_h753zi.

Signed-off-by: Jacob Schloss <jacob.schloss@suburbanmarine.io>
2026-01-14 13:03:36 -06:00
Jacob Schloss
da0e264c9d dts: arm: st: h7: Add missing cryp reset controllers
Add missing reset to h755 / h757 cryp block.

Signed-off-by: Jacob Schloss <jacob.schloss@suburbanmarine.io>
2026-01-14 13:03:36 -06:00
Jacob Schloss
b432178303 dts: arm: st: h7: Add cryp to STM32H753/H755
Add cryp block to STM32H753, as in STM32H755.

Signed-off-by: Jacob Schloss <jacob.schloss@suburbanmarine.io>
2026-01-14 13:03:36 -06:00
Robert Robinson
bb042f0be8 tests: Add support for nRF7120 to CI tests
Initial porting of nRF7120 to zephyr requires support for a number of
tests that are run as part of the CI. This commit adds the support.

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2026-01-14 13:02:59 -06:00
Robert Robinson
cf6e4178e9 modules: tf-m: nordic: Add support for nRF7120 TF-M
This commit adds initial support for non secure nRF7120 targets in
zephyr.

There are important limitations, such as:
- The hardware Crypto accelerator is not supported and thus the non
  secure target is NOT secure for production applications in upstream
  Zephyr.
- The BL2 is not supported, so no DFU is supported with this support

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2026-01-14 13:02:59 -06:00
Robert Robinson
5445a6ac0f manifest: Update TF-M for nRF7120DK to align with upstream zephyr
Rename nRF7120PDK to nRF7120DK to align with upstream zephyr
Align to nrf4.0
Add tfm_platform_user_memory_ranges.h files

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2026-01-14 13:02:59 -06:00
Robert Robinson
eb647dbf64 soc: nordic: Add initial support for nRF7120 SoC
Add SoC files for nrf7120.

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2026-01-14 13:02:59 -06:00
Robert Robinson
a0ac5b0e22 boards: Add Nordic nrf7120dk_nrf7120 board support
Add all board files for nRF7120dk

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2026-01-14 13:02:59 -06:00
Robert Robinson
212a8fe8c9 dts: arm: nordic: Add support for nRF7120
Add dts files for nRF7120 SoC.

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2026-01-14 13:02:59 -06:00
James Roy
4c8cb73198 doc: Generate documentation for the binding examples
Generate an rst document with an `Examples` section
from the sample nodes written in the examples of the
binding.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2026-01-14 13:02:02 -06:00
James Roy
077e23482c doc: scripts: Add a language parameter to the to_code_block()
Introduce a `language` parameter in `to_code_block()` for syntax
highlighting support (default: None).

Signed-off-by: James Roy <rruuaanng@outlook.com>
2026-01-14 13:02:02 -06:00
Albort Xue
307c13ad7a drivers: flash: flexspi_nor: Add RDSR2 command to quad enable LUT
When qer is S2B1v1 or S2B1v4, reading Status Register
1 and Status Register 2 requires different opcodes,
and writing Status Register 1/2 requires two bytes in a
single write. Add the Read Status Register 2 command
sequence to the LUT used by the quad-enable function,
and ensure the write operation sends two bytes (SR1|SR2)
when setting the QE bit.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-01-14 13:01:34 -06:00
Qiang Zhang
22e754c77e doc: migration-guide-4.4: Document DMA_MCUX_EDMA_V5 removal
Add migration guide entry for the removal of CONFIG_DMA_MCUX_EDMA_V5
configuration option.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2026-01-14 13:00:55 -06:00
Qiang Zhang
a96905a601 tests: drivers/uart: Add async API support for frdm_mcxe31b
Add board-specific overlay file to enable UART async API testing on the
FRDM-MCXE31B board.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2026-01-14 13:00:55 -06:00
Qiang Zhang
be3e51d444 tests: drivers/dma: Add support for frdm_mcxe31b
Add board-specific configuration and overlay files to enable DMA
testing on the FRDM-MCXE31B board.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2026-01-14 13:00:55 -06:00
Qiang Zhang
3a5cdd0be9 dts: nxp: frdm_mcxe31b: Add LPUART2 DMA support
Add pinctrl configuration and DMA channel assignments for LPUART2
on the FRDM-MCXE31B board.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2026-01-14 13:00:55 -06:00
Qiang Zhang
33e71b448b dts: arm: nxp: Update EDMA device tree configurations
Update EDMA device tree nodes for NXP MCXE31B platforms to align
with the unified EDMA driver implementation.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2026-01-14 13:00:55 -06:00
Qiang Zhang
cdb53ec8aa drivers: dma: mcux_edma: Remove DMA_MCUX_EDMA_V5 configuration
The DMA_MCUX_EDMA_V5 configuration option has been removed and replaced
with DMA_MCUX_EDMA_V4, as both versions share the same register layout
and can use the same driver implementation.

Key changes:
- Remove CONFIG_DMA_MCUX_EDMA_V5 Kconfig option
- Replace DMA_MCUX_EDMA_V5 conditionals with DMA_MCUX_EDMA_V4
- Remove DMAx_Type typedef, use DMA_Type directly
- Update EDMA_HW_TCD macros for V4 to use HAL-provided accessor macros
- Add DMA_MCUX_EDMA_DMAMUX Kconfig option to control DMAMUX support
  based on device tree property
- Update device tree binding to add has-dmamux property
- Update HAL driver selection to use DMA_MCUX_EDMA_DMAMUX instead of
  DMA_MCUX_EDMA for DMAMUX component
- Add SOC_SERIES_MCXE31X to DMA_MCUX_TEST_SLOT_START configuration
- Calculate DMA_TCD_ALIGN_SIZE from edma_tcd_t structure size

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2026-01-14 13:00:55 -06:00
Mohamed Moawad
7fb39e806c twister: Add board-level flash_before support for pytest/shell harnesses
Add support for boards to specify flash_before in their board YAML files,
which is then used by pytest and shell harnesses. This is needed for
Synopsys ARC development boards (hsdk, hsdk/arc_hsdk/2cores, hsdk4xd
and iotdk) where the USB serial port disconnects during flashing.

Signed-off-by: Mohamed Moawad <moawad@synopsys.com>
2026-01-14 13:00:22 -06:00
Mohamed Moawad
c75ee62562 soc: arc_iot: add configurable custom CPU idle for UART retention
The ARC IoT SoC (used on iotdk board) has a hardware limitation where
entering CPU sleep mode causes some peripherals (e.g., UART) to lose
power, preventing the board from waking up via peripheral interrupts.

Add a configurable custom CPU idle option (CONFIG_ARC_IOT_CUSTOM_CPU_IDLE)
that enables interrupts without executing the sleep instruction. This
allows the system to remain responsive while keeping peripherals powered.

The option defaults to disabled (n) to preserve normal CPU sleep behavior
for most use cases. Tests that require continuous UART operation during
idle (pytest/shell harnesses) can enable it via platform-specific
extra_configs.

This approach allows timer-based idle to work correctly by default while
providing a workaround for tests that need UART retention.

Signed-off-by: Mohamed Moawad <moawad@synopsys.com>
2026-01-14 13:00:22 -06:00
Andreas Huber
c611a16ecd net: ipv4: Add missing broadcast check in address conflict detection
As described in RFC5227 ch. 2.1.1 ARP Probes are broadcasted.
ARP requests not being broadcasted should not be detected as
ARP Probes.

Signed-off-by: Andreas Huber <andreas.huber@sautergroup.com>
2026-01-14 09:23:48 -06:00
Chaitanya Tata
23efdfe309 drivers: nrf_wifi: Implement key installation for nRF71
For nRF71 series keys should be installed via PSA-APIs (KMU).

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-14 09:23:16 -06:00
Jukka Rissanen
74931644b5 net: tcp: Add NULL check when receiving SYN
Make sure that if the connection is closed but we still received
a SYN packet, we do not try to access already closed connection.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2026-01-14 09:22:38 -06:00
Tomi Fontanilles
d9b7fe379a modules: mbedtls: PKCS5: depend on, do not select MD
To avoid dependency loops.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2026-01-14 09:22:13 -06:00
Wilfried Chauveau
05dde46c4d build: cmake: print the board's qualifiers in the elf postbuild phase
When building for several cores of the same system it can be hard to
identify which build is currently running.
This addition helps disambiguate the logs.

Signed-off-by: Wilfried Chauveau <wilfried.chauveau@arm.com>
2026-01-14 09:19:39 -06:00
Tim Knodel
471060a354 logging: formatting: Add support for domain names
The domain name was always set to NULL. This adds a Kconfig
that will enable setting the domain name and sets the domain
name if the config is enabled.

Signed-off-by: Tim Knodel <tbk@google.com>
2026-01-14 09:18:52 -06:00
Samuel Kleiser
0fbbba2dc0 mcumgr: fs_mgmt: forward return values from fs_close
A new error code FS_MGMT_ERR_FILE_CLOSE_FAILED is returned when
closing a file fails. This is done on write or close operations - read
operations remain unchecked.

Signed-off-by: Samuel Kleiser <s.kleiser@vega.com>
2026-01-14 09:18:10 -06:00
Gaetan Perrot
d3868911f8 drivers: flash: spi_nor: fix typo in an error log message
Fix a typo in an error log message in mxicy_configure.

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-14 09:17:34 -06:00
Andrzej Głąbek
8a190d77fb drivers: mspi_dw: Add support for data only packets
The SSI core requires special handling of packets that are supposed
to contain only data (no instruction and data phases):
- for TX packets, the first data frame needs to be sent as the address
  (the instruction and address cannot be both set to zero length for TX,
  otherwise the transfer will not be performed correctly)
- for RX packets, a dummy write to the data register (DR) is needed to
  start the transfer.
Implement the above in the function that starts a packet transfer.
Rename also the `packet_frames` variable there to `data_frames` to avoid
confusion.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2026-01-14 09:17:18 -06:00
Andrzej Głąbek
bbf0187913 drivers: mspi_dw: Remove needless packet parameter
FIFO handling functions in the driver are supplied with a `packet`
parameter that is in fact not used anymore. Remove it to simplify
matters.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2026-01-14 09:17:18 -06:00
Gaetan Perrot
742c23a352 tests: drivers: flash: split mixed error conditions in negative tests
Some flash negative tests were validating multiple error conditions
in a single API call, such as combining unaligned offsets with
oversized operations.

This makes it unclear which condition is actually being tested and
can lead to fragile tests if drivers change the order of validation.

Split these cases so that each call checks a single expected error
condition, improving test clarity and robustness.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-14 09:16:25 -06:00
Marek Matej
34757ac269 samples,tests: remove obsolete overlays
Remove wifi enabling overlays that became obsolete.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2026-01-14 09:15:48 -06:00
Alain Volmat
1da7503904 drivers: video: stm32-dcmi: correct set_frmival handling
Correct set_frmival in order to avoid having un-optimized
frmival selection due to rounded values.
Computation has been done in usec, leading to incorrect
frmival selection due to value being rounded internally.
As an example, code was selecting 1/60 from sensor then 4 time
frame drop by DCMI instead of selecting directly 1/15 from
sensor.
Use msec instead to hide those rounding issue and avoid
as well 64bit variables.
This also put the first video_frmival_nsec outside of the
loop to avoid having to do the processing everytime.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-14 13:02:01 +00:00
Fabio Baltieri
a10d932c17 workflows: manually update action-zephyr-setup
Current version as a fix for something that is currently causing
problems in CI and dependabot is failing too, update this one manually
for now.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-14 13:00:45 +00:00
Lyle Zhu
dd76aa4402 doc: maintainers: update Bluetooth Classic file patterns
Update MAINTAINERS.yml to reflect the reorganization of Bluetooth
Classic documentation into subdirectories. Replace specific file
references with directory paths to cover all files within the
classic/ subdirectories for both shell and API documentation.

Changes include:
- Replace specific a2dp.rst file reference with classic/ directory
  in Bluetooth Classic section
- Add doc/connectivity/bluetooth/api/classic/ to Bluetooth Classic
- Add doc/connectivity/bluetooth/api/classic/ to Bluetooth Host
- Replace specific a2dp.rst with classic/ directory in Bluetooth Host

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-14 09:57:38 +01:00
Lyle Zhu
8dca624355 doc: bluetooth: reorganize Classic API documentation into subdirectory
Reorganize Bluetooth Classic API documentation by moving existing files
(SDP, RFCOMM, A2DP, HFP) into a new `classic/` subdirectory and adding
new documentation files for L2CAP BR/EDR, AVRCP, GOEP, and BIP.

Changes include:
- Move existing Classic API docs to subdirectory `classic/`
- Add new L2CAP BR/EDR documentation
- Add AVRCP, GOEP, and BIP API reference documentation
- Update HFP documentation to include both HFP Unit and HFP-AG sections
- Update index.rst to reflect new directory structure
- Add Doxygen group documentation to AVRCP header
- Update AVRCP Cover Art to be a subgroup of AVRCP
- Fix L2CAP BR/EDR Doxygen group name and description

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-14 09:57:38 +01:00
Abhinav Kulkarni
b1edb19033 drivers: wifi: nxp: Added WLS support
Added configuration to enable wifi location services.

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2026-01-14 09:57:28 +01:00
Matin Lotfaliei
8dbaca4131 drivers: sensor: bosch: bma4xx: Update RTIO callbacks with result arg
drivers: sensor: bosch: bma4xx: Update RTIO callbacks with result argument

Commit bc8d66d538 introduced
a result argument to some RTIO callback handlers.
Update for the BMA4XX sensor.

Signed-off-by: Matin Lotfaliei <matinlotfali@gmail.com>
2026-01-14 09:57:16 +01:00
Gaetan Perrot
646e93d294 net: coap: coap_client: fix request validation order in coap_client_req
Avoid accessing request fields before validating input arguments in
coap_client_req().

The request path length is now checked only after validating the
request pointer, preventing a potential NULL pointer dereference.

No functional change intended.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-14 09:57:03 +01:00
Firas Sammoura
6834cd5dae mem_mgmt: add mem_attr_get_region_index_by_name()
Add a new API to look up a memory region's index using its DeviceTree
node name. This allows callers to identify specific regions within the
internal regions array.

Includes unit tests for successful lookups and error handling for
non-existent names.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2026-01-14 09:56:53 +01:00
Tom Burdick
1c13761898 boards: kit_pse84_ai: Add ram property
Some tests depend on the ram board property to determine whether or not
to run, like LLEXT tests. Set the ram property for this board.

Signed-off-by: Tom Burdick <thomas.burdick@infineon.com>
2026-01-14 09:56:33 +01:00
Tom Burdick
4ff523d0fc boards: kit_pse84_eval: Add ram property
Some tests depend on the ram board property to determine whether or not
to run, like LLEXT tests. Set the ram property for this board.

Signed-off-by: Tom Burdick <thomas.burdick@infineon.com>
2026-01-14 09:56:33 +01:00
Muhammad Waleed Badar
ec758c9d1c drivers: wifi: esp32: use macro for mac address len
Replace magic number used for mac address lenght with
WIFI_MAC_ADDR_LEN macro

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-01-14 09:56:20 +01:00
Jay Vasanth
842d31c691 MAINTAINERS.YML: Add maintainer for Microchip MEC
Adding additional maintainer - Scott Worley for Microchip
MEC Platforms

Signed-off-by: Jay Vasanth <jay.vasanth@microchip.com>
2026-01-14 09:56:07 +01:00
Gaetan Perrot
3755392579 sensing: sensor_mgmt: fix potential NULL dereferences
Ensure pointers are validated before dereferencing them in
set_arbitrate_interval() and set_interval().

This avoids accessing sensor or connection fields prior to
validation and makes the code safe even when assertions are
disabled.

No functional change intended.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-14 09:55:53 +01:00
Carlo Caione
5e35f14b1e drivers: lora: rename lora_basics_modem directory to lora-basics-modem
Rename the lora_basics_modem backend directory to lora-basics-modem
for consistency with the module naming convention.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2026-01-14 09:55:43 +01:00
Carlo Caione
a309b3c127 drivers: lora: rename loramac_node directory to loramac-node
Rename drivers/lora/loramac_node to drivers/lora/loramac-node to align
with the module naming convention (modules/loramac-node).

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2026-01-14 09:55:43 +01:00
Siratul Islam
084adcd423 boards: arm: fix weact_stm32wb55_core led and button pins
LED: PB2 -> PE4
BUTTON: PE4 -> PH3
Signed-off-by: Siratul Islam <email@sirat.me>
2026-01-14 09:55:32 +01:00
Albort Xue
08df06727c drivers: clock_control: Consolidate NXP Kconfig files
Multiple individual Kconfig files for NXP clock control drivers are
consolidated into a single Kconfig.nxp file. This improves
maintainability by grouping all NXP-related clock control
configurations in one location.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-01-14 09:55:20 +01:00
Peter Hoddie
4c23ce6341 boards: adafruit: correct gpio1 pins for feather_esp32s3_tft
This DTS uses absolute GPIO numbers for pins on
gpio1 rather than relative pin numbers. This causes
an abort on boot when led1, neopixel_pwr, or mipi_dbi
is enabled.

Signed-off-by: Peter Hoddie <peter@moddable.com>
2026-01-14 09:54:58 +01:00
Jonas Berg
c9d5d2f62f boards: shield: Add Adafruit MAX17048 fuel gauge shield
Compile testing of the overlay file is done via the fuel-gauge
sample.

Product photo from https://learn.adafruit.com/assets/123027
with the license CC BY-SA 3.0

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-14 09:54:36 +01:00
Gaetan Perrot
e0ee5cd6e9 drivers: i3c: i3c_npcx: fix redundant NULL check
npcx_i3c_do_ccc() dereferences the device pointer before checking it
against NULL, making the defensive check ineffective.

Remove the redundant check.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-14 09:54:24 +01:00
Manojkumar Konisetty
cc7c11f6d2 samples: sensor: mpu6050: boards: Add overlay file
- Add an overlay to enable mpu6050 sensor sample.
- Contains configurations for I2C bus and Clock

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-14 09:54:14 +01:00
Manojkumar Konisetty
ad1b041608 samples: sensor: bme280: boards: Add overlay file
- Add an overlay to enable bme280 sensor sample.
- Contains configurations for I2C bus and Clock

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-14 09:54:14 +01:00
Manojkumar Konisetty
efce139fcd drivers: I2C: Add Infineon PSOC4 I2C slave support
De-initialize the SCB when switching between I2C master
and slave modes

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-14 09:54:14 +01:00
Manojkumar Konisetty
1cf68612d4 boards: cy8cproto_041tp: enable I2C
- Add pin control definitions with proper open-drain drive mode
  for SCL/SDA in cy8cproto_041tp-pinctrl.dtsi.
- Add I2C node and clock configuration to cy8cproto_041tp.dts.

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-14 09:54:14 +01:00
Manojkumar Konisetty
78a4516cd9 dts: infineon: add I2C pins for PSoC4100TP
Include package-level I/O mapping for I2C pins
in psoc4100tp.64-tqfp.dtsi

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-14 09:54:14 +01:00
Manojkumar Konisetty
6725a9a39b drivers: i2c: update Infineon PDL I2C driver
Implement I2C configure() handling in the driver
to apply speed settings and default hardware options.

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-14 09:54:14 +01:00
Matin Lotfaliei
417a37b20d boards: vicharak: shrike_lite: Add full name to the board.yml
boards: vicharak: shrike_lite: Add full name to the board.yml

Add the missing `full_name` field for the shrike_lite board added in
3f3b528997

Signed-off-by: Matin Lotfaliei <matinlotfali@gmail.com>
2026-01-14 00:52:16 +01:00
Gaetan Perrot
3dfdfad2de tests: drivers: eeprom: api: assert EEPROM size
Verify that the EEPROM is large enough to hold the test write buffer
before executing the test.

This makes the test assumptions explicit and avoids unused variable
in API test.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-13 14:13:12 -06:00
Fabio Baltieri
9035b77251 github: hello_world_multiplatform: trim the sdk list further
Trim the sdk list down to arm and riscv64, should be good enough for
testing the buildsystem and saves some disk space.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-13 14:12:41 -06:00
Charles Hardin
cc29ac7871 drivers: ethernet: lan9250: remove/simplifiy the runtime structure
Remove the unused variable tid_int and lock. Also, match the other drivers
by dropping the back reference to the device structure and just pass
in the dev for the thread and dereference the context from there.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2026-01-13 14:12:00 -06:00
Valerio Setti
24db35949e tests: benchmark: mbedtls: remove legacy crypto Kconfig
This is a leftover from the past that is no more required and that should
be removed in order to prepare for the next Mbed TLS release.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2026-01-13 14:11:32 -06:00
Camille BAUD
03eab92f89 drivers: i2c: Fix BFLB I2C again again
Maybe the last time? associated issue outlines details

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-13 14:11:03 -06:00
Jonas Berg
995a77ae3e boards: Add Grove headers for Cytron Maker Uno RP2040
Added the six Grove headers (and the Stemma QT header) to a separate
devicetree include file.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-13 14:10:13 -06:00
Dhruv Menon
da7d8d5c4b boards: vicharak: shrike_lite: Add initial board config
Add initial board configuration and device tree files for the
Vicharak Shrike Lite board.

Signed-off-by: Dhruv Menon <dhruvmenon1104@gmail.com>
2026-01-13 14:09:52 -06:00
Thomas Stranger
0aadb3f0c8 doc: develop: getting_started: fedora dnf5 group installation
The group display names don't work with dnf5.
As displaynames can depend on the locale and are not unique
dnf5 only supports the group identifiers.

Distributions with dnf4 like RHEL<=10, Fedora<41, and CentOS stream
shouldn't have any issues with the group id, but have not been tested.

Alternatives considered: use the @-sytax for groups introduced in dnf5,
but using the group command makes it more clear that package groups are
installed.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2026-01-13 14:09:01 -06:00
Mark Wang
952ee6a681 MAINTAINERS: bluetooth: add sbc.h and sbc.c to libsbc maintainer entry
Add include/zephyr/bluetooth/sbc.h and subsys/bluetooth/lib/sbc.c to
the libsbc module maintainer entry to ensure proper coverage of SBC
codec related files.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2026-01-13 14:08:32 -06:00
Qingsong Gou
2917cc90bc tests: drivers: build_all: add SF32LB dbi test
Add a SF32LB DBI test

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-13 14:08:12 -06:00
Qingsong Gou
60943ec684 drivers: mipi_dbi: add lcdc mipi-dbi driver for sf32lb
Add lcdc mipi-dbi driver for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-13 14:08:12 -06:00
Qingsong Gou
ec60b59eae dts: arm: sfili: sf32lb52x: add lcdc and mipi-dbi node
Add lcdc and mipi-dbi device for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-13 14:08:12 -06:00
Qingsong Gou
0d4640e71a dts: bindings: mipi-dbi: sf32lb: add sifli,sf32lb-lcdc-mipi-dbi
Add mipi-dbi device bingding for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-13 14:08:12 -06:00
Qingsong Gou
27c518ee6c dts: bindings: display: add sifli,sf32lb-lcdc
Add sifli,sf32lb-lcdc for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-13 14:08:12 -06:00
Ryan McClelland
6e227712d8 drivers: i3c: cdns: make idle timeout a kconfig
Rather than having a hardcoded timeout for entering idle, make it
a KConfig.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2026-01-13 14:07:26 -06:00
Andrei Smirnou
90abc8083d board: adi: eval_adin2111d1z
- Add ADIN2111D1Z board support
- Added documentation for eval_adin2111d1z
- Added regulator for the bypass relay

Co-authored-by: Andrei Smirnou <andrei.smirnou@analog.com>
Co-authored-by: Jules Rouillard <jules.rouillard@analog.com>
Signed-off-by: Andrei Smirnou <andrei.smirnou@analog.com>
2026-01-13 17:28:44 +01:00
Valerio Setti
c5dd4c7a0b net: lib: shell: make header file inclusion conditional
Include "websocket/websocket_internal.h" only when CONFIG_WEBSOCKET_CLIENT
is also enabled.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2026-01-13 17:28:29 +01:00
Valerio Setti
63cfa56bbb net: lib: http: http_server: replace usage of legacy Mbed TLS crypto
Use PSA Crypto API for SHA-1 computation instead of legacy Mbed TLS crypto.
The latter is going to be removed soon.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2026-01-13 17:28:29 +01:00
Valerio Setti
f331614bac net: lib: websocket: remove usage of legacy Mbed TLS crypto
Remove optional use of legacy Mbed TLS crypto in favor of the already
existing PSA Crypto API alternative. This is required in order to jump
to the next version of Mbed TLS (i.e. 4.0) where all this legacy crypto
support is no more available.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2026-01-13 17:28:29 +01:00
Andreas Huber
bb9616c0cd net: arp: Choose IP corresponding to the same network
If we have more than one IP on an interface we should choose the IP
corresponding to the same network as the target IP.

Signed-off-by: Andreas Huber <andreas.huber@sautergroup.com>
2026-01-13 17:28:16 +01:00
Sylvio Alves
f3deb7bed7 kernel: nothread: fix build when CONFIG_SYS_CLOCK_EXISTS=n
The k_timer API requires CONFIG_SYS_CLOCK_EXISTS to be enabled,
as timer.c is only compiled when this config is set. Guard the
timer-based k_sleep() implementation and fall back to the previous
busy-wait approach when no system clock exists.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-13 17:27:58 +01:00
Mathieu Choplain
517cd3e5c6 dts: arm: st: n6: fix reg property of NPU
The reg property on the NPU node indicated a base address of 0x580C0000 and
size of 4 KiB, neither of which are correct (in fact, this base address is
the one of the OTGPHYC2).

Set the reg property to the correct values: the NPU instance is mapped at
0x580E0000 and occupies 128 KiB of address space.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-13 17:27:23 +01:00
Ajay Neeli
1c6d0c0c2e MAINTAINERS: add neeliajay as Xilinx collaborator
Add neeliajay (Ajay Neeli) as a collaborator for "Xilinx Platforms"

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2026-01-13 17:27:07 +01:00
Sylvio Alves
8805de47b4 tests: arch: riscv: add PMP SoC regions test
Add test for PMP_SOC_REGION_DEFINE macro that allows SoCs to define
custom PMP regions via iterable sections.

The test verifies:
- Regions defined with PMP_SOC_REGION_DEFINE are programmed into PMP
  registers during z_riscv_pmp_init()
- SoC regions are placed in global PMP slots (first half of entries)
- STRUCT_SECTION_FOREACH correctly iterates over defined regions

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-13 17:26:48 +01:00
Sylvio Alves
b75d67fb1f soc: esp32c6: enable PMP and define SoC regions
Enable RISC-V PMP for ESP32-C6 and configure appropriate defaults:
- 16 PMP slots available on hardware
- Unlocked global entries for XIP flash execution
- MEM_ATTR subsystem for device tree memory regions

Define SoC-specific PMP regions:
- SoC ROM (0x40000000): libc functions, R+X
- IRAM text: interrupt handlers and critical code, R+X

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-13 17:26:48 +01:00
Sylvio Alves
52c9bd85ca soc: esp32c6: add userspace linker support
Add linker script support for CONFIG_USERSPACE:
- MPU alignment macros for PMP granularity
- User stacks section in noinit area
- Application shared memory partitions
- Kernel object sections (text, rom, data, priv-stacks)
- ROM region size symbol for PMP configuration

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-13 17:26:48 +01:00
Sylvio Alves
78fddf083a dts: esp32c6: add SoC ROM memory region
Add device tree node for ESP32-C6 SoC ROM at 0x40000000.
This 320KB ROM contains libc and utility functions used by
the application. PMP protection is configured separately
via PMP_SOC_REGION_DEFINE in pmp_regions.c.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-13 17:26:48 +01:00
Sylvio Alves
b05332abee arch: riscv: pmp: add SoC-specific region support
Add infrastructure for SoCs to define additional PMP regions
that need protection beyond the standard ROM region. This uses
iterable sections to collect region definitions at link time.

The PMP_SOC_REGION_DEFINE macro allows SoCs to register memory
regions with specific permissions. These regions become global
PMP entries shared between M-mode and U-mode.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-13 17:26:48 +01:00
Ibrahim Abdalkader
00bf0915d6 llext: Skip MPU region alignment if userspace is disabled.
llext aligns and rounds up memory regions to satisfy MPU requirements,
which can waste significant memory by relocating read-only regions,
with power-of-two alignment on some architectures. However, these
MPU-aligned regions are never actually used by the MPU unless
userspace (CONFIG_USERSPACE) is enabled.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2026-01-13 17:26:30 +01:00
Fin Maaß
35f2cd6353 doc: migration-guide: 4.4: mention litex,gpio change
mention litex,gpio change.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-13 17:26:08 +01:00
Fin Maaß
075f2e7361 drivers: gpio: litex: rework litex gpio driver
rework litex gpio driver.
It is now also supported to change direction.
now uses the reg names to detect if what modes the gpio
controller supports.
use the reg names directly from litex.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-13 17:26:08 +01:00
Fin Maaß
1ad13962ee tests: dts: add for DT_ANY/ALL_INST_REG_HAS_NAME_STATUS_OKAY
add test for DT_ANY_INST_REG_HAS_NAME_STATUS_OKAY
and DT_ALL_INST_REG_HAS_NAME_STATUS_OKAY macros.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-13 17:26:08 +01:00
Fin Maaß
6f9e5bed93 devicetree: add DT_ANY/ALL_INST for reg names
add DT_ANY_INST_REG_HAS_NAME_STATUS_OKAY
and DT_ALL_INST_REG_HAS_NAME_STATUS_OKAY
to check if any instance has a register with a specific
name.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-13 17:26:08 +01:00
Guðni Már Gilbert
6bb7a1b54b scripts: twister: Add full_name to board.yml
Fixes regression introduced by e45ac11aeb

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
2026-01-13 09:33:35 -05:00
Henrik Brix Andersen
7440bca13d drivers: pwm: shell: add command for getting cycles per second
Add PWM shell command for getting the number of cycles per second for a
given PWM controller/channel.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2026-01-13 15:21:21 +01:00
Benedek Kupper
12cd3703eb drivers: adc: stm32: only set CR2/DMA bit once on STM32F1
As reported in #101190, running adc_sequence sample on stm32f103c8 with 8
ADC channels causes all subsequent conversions after the first to be one
channel shifted. This is because writing to CR2 with ADON=1 and no other
changes triggers a conversion (which is why the bug happens on all
but the first sequence). Adding this check will ensure that CR2 is only
written when the DMA bit changes.

Signed-off-by: Benedek Kupper <kupper.benedek@gmail.com>
2026-01-13 15:21:05 +01:00
Lukasz Majewski
6628f16231 samples: net: doc: Add information to build and test the T1S driver
This commit provides information regarding building and executing stress
tests for LAN8651 based 10BASE T1S ethernet connection.

The LAN8651 is connected to nucleo_g474re board.

Signed-off-by: Lukasz Majewski <lukma@nabladev.com>
2026-01-13 15:20:53 +01:00
Lukasz Majewski
fbeb78fe6b net: samples: dts: spi: Enable LAN8651 (SPI) for T1S (echo_server)
This commit provides device tree description of the LAN8651 T1S
device to work with echo_server sample program.

Signed-off-by: Lukasz Majewski <lukma@nabladev.com>
2026-01-13 15:20:53 +01:00
Lukasz Majewski
b86999a7b0 net: samples: dts: spi: Enable LAN8651 (SPI) for T1S (zperf)
This commit provides device tree description of the LAN8651
T1S device to work with zperf performance test program.

Signed-off-by: Lukasz Majewski <lukma@nabladev.com>
2026-01-13 15:20:53 +01:00
Lukasz Majewski
65e4958f10 net: samples: echo_server: Add configuration for T1S - nucleo_g474re
This patch provides configuration to run T1S (OA_TC6) driver with
echo_server test program.

Signed-off-by: Lukasz Majewski <lukma@nabladev.com>
2026-01-13 15:20:53 +01:00
Lukasz Majewski
c2a3803b0f net: samples: zperf: Add configuration for T1S - nucleo_g474re
This patch provides configuration to run T1S (OA_TC6) driver with
zperf test program.

Signed-off-by: Lukasz Majewski <lukma@nabladev.com>
2026-01-13 15:20:53 +01:00
Pieter De Gendt
96a4d92c52 doc: releases: migration-guide-4.4: Add compatibles with MAC config support
Add ethernet driver compatibles to the migration guide that have support
for MAC address configuration.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-13 15:20:37 +01:00
Pieter De Gendt
9adc5bda07 doc: releases: migration-guide-4.4: Ethernet MAC config compatibles
Replace file references with compatibles, for users to refer to the
migration guide if it has any impact on out-of-tree boards.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-13 15:20:37 +01:00
Fin Maaß
2b6e2874c4 net: shell: explicitly check for NULL
explicitly check for NULL

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-13 13:36:20 +01:00
Fin Maaß
67c6ec66b5 net: shell: set constant array index directly
set constant array index directly.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-13 13:36:20 +01:00
Fin Maaß
06d257d41b net: shell: follow rule 78
Follow coding guidelines rule 78:

A full expression containing an increment (++) or decrement (–) operator
should have no other potential side effects other than that caused by the
increment or decrement operator

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-13 13:36:20 +01:00
Michał Stasiak
a1ccb9647f drivers: nrf: use NRF_ERRATA_DYNAMIC_CHECK macros
It is now the proper way of checking whether
an anomaly workaround should be performed.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2026-01-13 13:35:39 +01:00
Tomasz Moń
6fc1cd52af nrf_usbd_common: use NRF_ERRATA_DYNAMIC_CHECK macros
Upcoming MDK will make nrf52 errata check functions exist only for
nRF52 and therefore the code will no longer compile for nRF5340. Replace
nrf52 errata checks with new NRF_ERRATA_DYNAMIC_CHECK().

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2026-01-13 13:35:25 +01:00
Tim Pambor
427f872a56 samples: net: sockets: http_server: fix buffer undeclared error
Fix regression introduced in commit ddaeb13 which removed the
'buffer' function parameter from the dynamic endpoint callback
function signature but did not update the http_server sample
accordingly.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-01-13 13:35:07 +01:00
Andrzej Głąbek
ad40aa7f2b MAINTAINERS: remove anangl as I2S maintainer
I can no longer act as a maintainer in this area. Degrade my role
to collaborator.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2026-01-13 13:34:50 +01:00
Gaetan Perrot
ec85cddd15 samples: fs: fs_sample: fix typo in board overlay files
Fix a typo in several filesystem sample board overlay files where
'parition' was used instead of 'partition'.

This is a spelling-only change with no functional impact.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-13 13:34:38 +01:00
Joel Key
dd0dd16a81 MAINTAINER: Add jkey-eng as Safety Collaborator
Add myself as a Safety Collaborator

Signed-off-by: Joel Key <joel@keyengineeringllc.com>
2026-01-13 13:34:16 +01:00
Robert Lubos
735f16f12f samples: net: mdns_responder: Verify accept() result in echo server
The mdns_responder sample has a simple TCP echo server running, however
the accept() function errors were ignored, making the server defunct in
case server socket started to report errors (for example when network
went down).

Update the sample to restart the echo server in case of accept() errors
to make the sample more reliable.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-13 13:33:49 +01:00
Robert Lubos
1a2d9f7b8f net: sockets: Report an unrelying errors from accept()
If the underlying listening TCP context reported an error, it's no
longer usable, therefore accept() call for such a socket should report
an error as well, otherwise it may block indefinitely.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-13 13:33:49 +01:00
Robert Lubos
913fae5169 net: tcp: Make sure TCP context is dereferenced only once on network down
In case network interface goes down, all underlying TCP contexts are
being dereferenced, however they are not released until application
dereferences them as well (i.e. closed the socket). If the application
does not do so however timely, and network interface goes down again,
the TCP context would still be present on the active contexts list and
could've been dereferenced for the second time.

Fix this by checking the context state before dereferencing it on the
stack behalf. Non-listening TCP context are being set to CLOSED state
upon dereferencing.  For the listening contexts, the TCP context has
only one ref from the application side, so use the `accept_cb` pointer
value as an indicator that the accept callback, indicating an error,
has already been called for the context.

Additionally, add a mutex lock when releasing listening context on
network down even, to avoid potential races with yet unprocessed
incoming packets.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-13 13:33:49 +01:00
Sam Friedman
8ba115c2c5 net: coap_client: remove unused parameter in static function
75ef6392 removed the only call to coap_client_init_request() where
reconstruct==true. All remaining calls have reconstruct==false.
This commit removes the parameter.

Signed-off-by: Sam Friedman <sam@golioth.io>
2026-01-13 13:33:35 +01:00
Maochen Wang
399a3766ee manifest: update hal_nxp FW for RW61x/IW612/IW610/IW416
Remove unused IW612 part.
update IW610 FW version to 5.p86
update RW612 FW version to 6.p50
update IW61x FW version to p27.8
update IW416 FW version to p153.8

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2026-01-13 13:33:20 +01:00
Kai Vehmanen
72d06609af drivers: dai: intel: hda: implement get_properties_copy
Implement get_properties_copy(). This allows the driver to be used
from user-space threads.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2026-01-13 13:32:58 +01:00
Kai Vehmanen
43e45a2b50 drivers: dai: intel: dmic: implement get_properties_copy
Implement get_properties_copy(). This allows the driver to be used
from user-space threads.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2026-01-13 13:32:58 +01:00
Kai Vehmanen
82f28ff774 drivers: dai: intel: alh: implement get_properties_copy
Implement get_properties_copy(). This allows the driver to be used
from user-space threads.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2026-01-13 13:32:58 +01:00
Kai Vehmanen
6110b9728f drivers: dai: fix dai_config_set() syscall validation
Make a in-kernel copy of 'cfg' parameter before passing the struct
to kernel z_impl_dai_config_set() implementation. This ensures
user-space will not have access to the object when kernel part
of the syscall is running.

Also add separate handling for the case where bespoke configuration
object is NULL. While no current driver works without a bespoke
configuration, this is not forbidden in the API and the generic syscall
handler should not assume a bespoke object is passed.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2026-01-13 13:32:58 +01:00
Kai Vehmanen
8fb3da57f3 drivers: dai: intel: ssp: handle no properties case for properties_copy()
dai_ssp_get_properties() can return NULL if there are no properties
defined for the device. Handle this case correctly in ssp driver's
dai_ssp_get_properties_copy() by returning -ENOENT in this case.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2026-01-13 13:32:58 +01:00
Kai Vehmanen
a64a4325e7 drivers: dai: intel: ssp: fix indentation for dai_ssp_get_properties_copy
Fix function indentation to match coding style.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2026-01-13 13:32:58 +01:00
Kai Vehmanen
cf318bb1f2 drivers: dai: fix optional use of dai_get_properties_copy()
Handle the case if driver is not implementing get_properties_copy().

Document the behaviour and add a note that the method is optional and
users need to be handle the case that not all drivers will have this
method defined.

Also add documentation on error codes. Drivers should use -ENOENT if
no properties are defined for the device. This matches behaviour of
dai_get_properties() returning NULL if there are no properties.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2026-01-13 13:32:58 +01:00
Farsin Nasar V A
72b2a51f3e boards: microchip: pic32cx_sg61_cult: add hwinfo to supported list
- Update pic32cx_sg61_cult.yaml to reflect G1 hwinfo support on the board.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2026-01-13 13:32:29 +01:00
Farsin Nasar V A
31dbbf6aad boards: microchip: pic32cx_sg41_cult: add hwinfo to supported list
- Update pic32cx_sg41_cult.yaml to reflect G1 hwinfo support on the board.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2026-01-13 13:32:29 +01:00
Farsin Nasar V A
419b6d6658 dts: arm: microchip: Add HWINFO node
- Added hwinfo node in the pic32cx_sg.dtsi file

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2026-01-13 13:32:29 +01:00
Hieu Nguyen
6b266684c5 tests: drivers: pwm: Add support for RZ/A2M-EVK
Add test support for PWM driver of RZ/A2M-EVK

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-13 13:32:06 +01:00
Hieu Nguyen
d88dc4e751 boards: renesas: rza2m_evk: Add PWM support
Add PWM support for board RZ/A2M-EVK

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-13 13:32:06 +01:00
Hieu Nguyen
e58a100bbf dts: renesas: Add PWM support for RZ/A2M
Add GPT nodes and PWM child nodes to RZ/A2M devicetree

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-13 13:32:06 +01:00
Hieu Nguyen
a437d3057a drivers: pwm: Initial support for RZ/A2M
Add PWM driver support for Renesas RZ/A2M

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-13 13:32:06 +01:00
Bjarki Arge Andreasen
ae275eb4a1 boards: nordic: nrf54h20dk: cpurad: enable lfclk
The lfclk is required for bluetooth, so enable it by default for the
radio core. Applications are only affected if they enable
CLOCK_CONTROL, in which case either only the lfclk or all clocks are
enabled, so enabling lfclk alone is the lowest common denominator.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-13 13:31:11 +01:00
Mathieu Choplain
239fab93bc kconfig: treewide: use auto-generated Kconfig compatible macro variables
Replace some manually-defined DT_COMPAT_<> Kconfig macro variables with
their automatically generated counterparts. In most cases, this is
straightforward as the manually defined macro is named identically to the
one generated by the build system.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-13 13:30:54 +01:00
Jamie McCrae
e31140859d doc: build: snippets: writing: Add details on board revision support
Adds details of how to use the newly added board revision support
in snippets

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-13 13:30:38 +01:00
Jamie McCrae
f1772b94f1 tests: cmake: snippets: Add board revision check
Adds a check that snippets are correctly applied to named boards
with the correct board revision

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-13 13:30:38 +01:00
Jamie McCrae
c1a4c78c5c scripts: snippets: Add support for board revisions
Allows snippets to specify additional files for specific revisions
of boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-13 13:30:38 +01:00
Ravi Dondaputi
baef40786c drivers: wifi: nrf_wifi: Use filter_ssid for connect scan
Modify the scan logic to use filter_ssids for connect scan
and use ssids for other cases.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Chaitanya Tata
45029ab469 drivers: nrf_wifi: Fix the port authorization logic
For non-STA mode the vif level authorized flag is unused, simply allow
all group traffic and for unicast traffic check respective peer status.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Chaitanya Tata
3905d7a939 drivers: nrf_wifi: Set VIF type for non-STA
This is used in SoftAP/P2P GO modes.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Chaitanya Tata
ce937488b3 drivers: nrf_wifi: Workaround for failing tests
Test automation framework fails if there are any error prints, and we
had seen issues with networking that sends packets to the driver before
the assocation is up (either not checking dormant status or in a window
where dormant status is being updated).

Add a workaround to suppress the print till the issue root cause is
fixed.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Chaitanya Tata
797a87c29c modules: hostap: Fix SoF in softap mode
Due to recent changes, the stack usage is increased, fix the SoF.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Triveni Danda
f71d52c4dd drivers: wifi: nrf_wifi: Fix invalid pointer access
Fix pointer dereferencing by accessing the pointer only
after initialization, preventing fault exceptions.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Ravi Dondaputi
02756ea9da drivers: wifi: nrf_wifi: Suppress 11b rates in P2P scan
Add an identifier to P2P scan request. RPU can use this to
differentiate it from regular scan requests and suppress
11b rates.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Kapil Bhatt
85b8e880aa net: wifi: Add P2P power save shell command support
Add shell command support for P2P power save.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Kapil Bhatt
094d30cc05 net: wifi: Add API support for P2P power save
Add API support for P2P power save.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Ravi Dondaputi
8a5b39fd27 drivers: wifi: nrf_wifi: Add cookie handling support
Add cookie event callbacks to track RoC and cancel-RoC
requests and its responses from firmware.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Ravi Dondaputi
fbc0429906 drivers: wifi: nrf_wifi: Add P2P powersave support
Add ops to handle P2P powersave configuration.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Kapil Bhatt
bd1aec4ffc net: wifi: Add Wi-Fi direct P2P GO mode shell command
Add shell commands support for P2P GO mode.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Kapil Bhatt
4e5783f39a net: wifi: Add API support for P2P GO mode
Add structures and API support for P2P Go mode.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Ravi Dondaputi
1da38b7d0a drivers: wifi: nrf_wifi: Add per-peer authorized flag
Add per-peer authorized parameter. Port authorization command
from supplicant will set this flag and will be used by driver
to allow or nor allow data traffic.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Ravi Dondaputi
7b6930b746 modules: hostap: Add support for P2P GO mode ops
Enable build time configs required for supporting P2P GO mode.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Kapil Bhatt
aff682032f doc: networking: Add Wi-Fi P2P info
Add Wi-Fi P2P mode build command and info.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Kapil Bhatt
04a9692a91 drivers: nrf_wifi: Add default value to p2p mode Kconfig
The Kconfig NRF70_P2P_MODE should be enabled when
WIFI_NM_WPA_SUPPLICANT_P2P is enabled.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Kapil Bhatt
9428fe090f net: wifi: Add Wi-Fi direct P2P connect shell command support
Add shell command support for P2P connect.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Kapil Bhatt
c2649b5887 net: wifi: Add Wi-Fi direct P2P connect API support
Add structures and API support for P2P connect.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Chaitanya Tata
ca9e1eba5d modules: hostap: Remove obsolete conditional
We now support a single MbedTLS shim for hostap, so, this extra check is
not needed, we can always use DH5 groups from Mbedtls.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Ravi Dondaputi
000e41b2e8 modules: hostap: Define heap and stack for P2P support
Increase required heap and stack size for P2P. More stack was required
during WPS negotiation.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Ravi Dondaputi
041766d9cb drivers: wifi: nrf_wifi: Register frame without match
For frames like Probe Requests, there is no match criterion.
Re-arrange the checks to support registering of frames without
providing any matching info.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Ravi Dondaputi
ed56b9b97c drivers: wifi: nrf_wifi: Allow off channel TX for probe responses
For frames sent down by supplicant in station mode, inform RPU
to allow off-channel transmission. This is needed for sending
P2P probe responses.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Ravi Dondaputi
a9176ad7cb drivers: wifi: nrf_wifi: Add RoC support
Add ops for remain-on-channel and cancelling remain-on-channel.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Kapil Bhatt
2805347dfa net: wifi: Add Wi-Fi direct P2P discovery shell command support
Add shell command support for P2P discovery.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Kapil Bhatt
84db77c46b net: wifi: Add Wi-Fi direct P2P discovery API support
Add supplicant api and  mgmt ops support for P2P discovery.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Ravi Dondaputi
3ac9a46aba drivers: wifi: nrf_wifi: Set P2P capability
In P2P mode, inform supplicant that the driver is P2P capable.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Ravi Dondaputi
d9015cf5d0 drivers: wifi: nrf_wifi: Set SSID for P2P discovery
Use `ssids` instead of `filter_ssids` to set the SSID in probe
requests. `filter_ssids` are to filter scan results to include
only the specified SSIDs.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2026-01-13 13:30:23 +01:00
Gaetan Perrot
65f43b919e drivers: videos: ov767x: fix typos in comments
Fix typos in comments in ov767x_init_regtbl.

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-13 10:30:03 +01:00
Nakul Chauhan
a7cea5d58a native_simulator: Get latest from upstream
Align with native_simulator's upstream main
215ee859eee5e49dc09eda8f17a956ee7318caf2

Which includes:
215ee85: native timer_model: Fix printf format specifier warnings w
         debug logs

Signed-off-by: Nakul Chauhan <nakulchauhan111@gmail.com>
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-01-13 10:29:44 +01:00
Bjarki Arge Andreasen
4c0b2622a6 drivers: can: can_nrf: add missing soc.h include
The can_nrf driver uses defines from soc.h which happened to be
included by some other header when building for cpuapp, but not
when building for cpuflpr. Include soc.h explicitly.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-13 10:29:31 +01:00
Bjarki Arge Andreasen
f241ecedec boards: nordic: nrf54h20dk: rm hfxo/lfxo from common dtsi
The hfxo and lfxo should only be enabled for the cpuapp and cpurad
as these cores are the only ones which have access to the clock.
Leaving it enabled will break cpuppr and cpuflpr builds if
CONFIG_CLOCK_CONTROL is enabled as the drivers are not compatible.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-13 10:29:31 +01:00
Gaetan Perrot
a0c17db18e drivers: video: remove redundant rad_val initialization
Remove the unused initialization without changing behavior.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-13 10:27:39 +01:00
Gaetan Perrot
4655fa18d4 drivers: video: ov7725: fix uninitialized struct
Fix uninitialized struct fmt to fix Coverity issue.
CID: 524756

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-13 10:26:59 +01:00
Gaetan Perrot
b14f7e9e9f drivers: rtc: ds3231: drop impossible negative id check
rtc_ds3231_alarm_set_callback() takes an unsigned alarm id, making
the negative value check impossible.

The id < 0 condition is therefore dead code and can never be true.
Remove it and keep only the upper bound check.

No functional change intended.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-13 10:26:05 +01:00
Tom Burdick
769ac1b112 ci: Drop preemptible||preemptable spellcheck
Preemptable and preemptible are both commonly used spellings. Infineon
had chosen preemptable as the spelling and lead to CI failures when
using struct members in the PDL. Removing the check in Zephyr allows
for flexibility in spellings of this word.

Signed-off-by: Tom Burdick <thomas.burdick@infineon.com>
2026-01-13 10:25:26 +01:00
Tom Burdick
c97ccba142 twister: Support kitprog when generating hw map
Hardware map file generation should at least get you part way now with
Infineon boards with the Cypress derived KitProg3.

Signed-off-by: Tom Burdick <thomas.burdick@infineon.com>
2026-01-13 10:24:30 +01:00
Muhammad Waleed Badar
0d8c876448 doc: releases: v4.4: add pl011 uart poll_in changes
Add changes for pl011 uart poll_in function

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-01-13 10:21:58 +01:00
Lucien Zhao
2669090ce3 test: drivers: can: support can cases on frdm-mcxe247
- Support can test case: api/shell/timing
- Tese passed for three cases on my local

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-13 10:21:23 +01:00
Lucien Zhao
f2653dc523 boards: nxp: frdm_mcxe247: add flexcan0 support
- config flexcan0 pinmux
- enable flexcan0 instance
- add three flexcan clock enablement code

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-13 10:21:23 +01:00
Lucien Zhao
ba24cc36e5 dts: arm: nxp_mcxe24x_common.dtsi: update clk-source
- Update clk-source to 1 for all flexcan instances because
  we need to use sysclk as PE clock source and reduce customer's
  confused when configuring flexcan clock

  If user use a fast external osc and want to choose another choice,
  user can change it in overlay files

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-13 10:21:23 +01:00
Holt Sun
6623fbcb6f doc: releases: migration-guide-4.4: add GPT counter run-mode change
Document the breaking change in the NXP i.MX GPT counter driver that
introduces a devicetree "run-mode" property and changes the default
from hardcoded free-run to restart mode.

Out-of-tree boards must add `run-mode = "free-run";` to their GPT
devicetree nodes to preserve previous behavior.

This change aligns GPT configuration with the LPTMR driver, providing
consistency across NXP counter drivers in using devicetree properties
for hardware behavior control.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-13 10:20:24 +01:00
Holt Sun
a2e902b307 drivers: counter: mcux_gpt: add devicetree run-mode property
Add a "run-mode" devicetree property to the NXP i.MX GPT counter
driver to control counter behavior on compare events.

The property supports two modes:
- "restart": Counter resets to 0 when reaching Compare Channel 1 value
- "free-run": Counter continues counting without reset

This change makes the GPT run mode configurable per device instance
instead of being hardcoded. The driver now derives the enableFreeRun
setting from devicetree, defaulting to "restart" mode.

This update aligns the GPT driver configuration approach with the
NXP LPTMR counter driver, which also uses devicetree properties
for runtime behavior configuration.
This provides consistency across NXP counter drivers in how hardware
behavior is controlled through devicetree.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-13 10:20:24 +01:00
Henrik Brix Andersen
b947de920e doc: hardware: peripherals: can: shell: document can dump subcommand
Document the "can dump" subcommand of the CAN shell module.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-01-13 10:18:18 +01:00
Henrik Brix Andersen
008904d63e drivers: can: shell: add can dump subcommand
Add "can dump <device>" subcommand for dumping all CAN RX frames of a given
CAN controller.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-01-13 10:18:18 +01:00
Daniel Leung
b98fc2740a soc: intel_adsp/ace40: disable spin validation on simulator
xt-clang seems to generate some memory access patterns which
result in the simulator accessing incorrect memory and/or
messing with cached TLB entries when spinlock validation
is enabled. Not exactly sure what's going on here due to
the core of the simulator is built on top of pre-built
binaries provided by the toolchain without any sources so
debugging would be nearly impossible. But at least we have
an easy workaround by disabling spin lock validation.

Fixes #100885

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-01-13 10:17:49 +01:00
Johann Fischer
730880e266 doc: migration: add note about DAP subsystem changes
Add note about DAP subsystem changes. Keep it general, as there will be
more changes.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2026-01-13 10:16:27 +01:00
Johann Fischer
cfd748fff1 dap: add header and macro to instantiate DAP context
Although we have the three layers, SWDP driver API, DAP stack, and USB
backend, to implement a debug probe, there is no way for the user to
instantiate the DAP context, which would allow it to be used with
different backends or to change the configuration at runtime.

The Debug Access Port (DAP) is an implementation of the ARM Debug
Interface (ADI) that is typically integrated into SoC.
With all three layers, we implement a link to the DAP on the SoC.
Let's call it Zephyr DAP Link and use the dap_link prefix. There is also
a MBED DAPLink project that implements similar functionality, but using
a different name would likely cause more confusion.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2026-01-13 10:16:27 +01:00
Johann Fischer
2c254285cb drivers: dp: add common header for SWD drivers
Move the LUT to convert from simplified format to request packet
expected by the target, and the helper to calculate parity bits to
common header, so that they could be used by other drivers.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2026-01-13 10:16:27 +01:00
Johann Fischer
4b9f4106e2 dap: cmsis_dap: use SWD driver user API
Use SWD driver user API.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2026-01-13 10:16:27 +01:00
Johann Fischer
490fe49856 include: drivers: add SWD driver user API
Although the DAP subsystem is the only user in the tree, yet, we may have
other subsystems, libraries, or simple samples that could use this API
in the future.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2026-01-13 10:16:27 +01:00
Hau Ho
5c0bf4ee7a tests: drivers: gpio: Add overlay and config file for gpio tests
Add overlay and config file for EK-RX261 and FPB-RX261

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-13 10:14:54 +01:00
Hau Ho
44c64b007c boards: renesas: Add GPIO interrupt support for FPB-RX261 board
Add GPIO interrupt support for EK-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-13 10:14:54 +01:00
Hau Ho
33bfffc07a boards: renesas: Add GPIO interrupt support for EK-RX261 board
Add GPIO interrupt support for EK-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-13 10:14:54 +01:00
Hau Ho
94f08de684 dts: renesas: Add GPIO interrupt for RX261 SoC
Add GPIO interrupt for RX261 SoC

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-13 10:14:54 +01:00
Camille BAUD
de939ab796 boards: bflb: update ai_m61_32s for PWM
Adds PWM nodes and samples

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-13 10:13:04 +01:00
Camille BAUD
12aa44edbd boards: bflb: update ai_wb2_12f for PWM
Adds PWM nodes and samples

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-13 10:13:04 +01:00
Camille BAUD
cafc6a9c73 boards: bflb: update ai_m62_12f for PWM
Adds PWM nodes and samples

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-13 10:13:04 +01:00
Camille BAUD
396249fdd4 drivers: pwm: Add BFLB PWM 1 and 2
Adds BFLB PWMs

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-13 10:13:04 +01:00
Camille BAUD
f4bcc3cd55 drivers: clock_control: bflb: add PWM elements
Adds clock side elements for PWM

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-13 10:13:04 +01:00
Camille BAUD
918bc58761 dts: bflb: add PWM nodes
Adds nodes for BFLB pwm

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-13 10:13:04 +01:00
Piotr Kosycarz
f16c568c99 samples: boards: nordic: coresight_stm: enable uart at rtt config
Enable uart logging as it is required for testing.
Can be used at the same time with RTT.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2026-01-12 12:42:45 -06:00
Ian Morris
d6f9a4808f boards: renesas: ek_ra4l1: added arduino node labels
Added arduino_serial and arduino_header node labels to EK-RA4L1 device
tree board definition, allowing compatible shield boards to be used.

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2026-01-12 12:42:24 -06:00
Stefan Gloor
9ae3b77359 net: net_if: remove obsolete documentation about buffer lifetime
The net_linkaddr struct used to use pointers instead of copying the
data. Thankfully this was fixed in
https://github.com/zephyrproject-rtos/zephyr/pull/87027.

Remove the old comment to reflect the current state.

Signed-off-by: Stefan Gloor <stefan.gloor@siemens.com>
2026-01-12 12:41:54 -06:00
Grzegorz Chwierut
ca26f143f0 samples: sysbuild: hello_world: Skip test if no second UART
If a second UART was not configured in the hardware map, then skip
the testcase instead of failing.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2026-01-12 12:41:31 -06:00
Fin Maaß
e0da5fa899 MAINTAINERS.yml: add maass-hamburg to i2c colaborators
add me to the i2c collaborators, that we are going to
have at least 2 reviewers for that area.

I wrote the drivers/i2c/i2c_litex_litei2c.c driver and
the acording i2c core https://github.com/litex-hub/litei2c

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-12 12:41:07 -06:00
Gaetan Perrot
311769564c samples: sensor: soc_voltage: fix error propagation
print_voltage() always returned success even when sensor operations
failed, making the error check in main() dead code.

Return the actual error codes so failures are correctly propagated
to the caller.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-12 12:40:51 -06:00
Fin Maaß
eaca1fcf7f drivers: ethernet: nxp: netc: fix ethernet_hw_caps
ETHERNET_CONFIG_TYPE_FILTER is not supported
in the set_config, therefore remove
ETHERNET_HW_FILTERING from the
ethernet_hw_caps of this driver.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-12 12:40:31 -06:00
Fin Maaß
e6bd2151da drivers: ethernet: nxp: fix set_config case
the enum ethernet_config_type for the
multicast filter is ETHERNET_CONFIG_TYPE_FILTER.
ETHERNET_HW_FILTERING is only the according
ethernet_hw_caps.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-12 12:40:31 -06:00
Eric Mechin
8aec838deb drivers: stm32wb: ipm_stm32wb: Add extended advertising support
Set extended advertising setting in ipm_stm32wb.c with
stm32wb_set_stack_options function call for the BLE stack
Options flags initialization according to the
zephyr Kconfig options.

Signed-off-by: Eric Mechin <eric.mechin@st.com>
2026-01-12 12:39:56 -06:00
Zackery Backman
6defef2519 doc: develop: manifests: external: add wolfTPM
Add documentation to external module section for adding wolfTPM to Zephyr

Signed-off-by: Zackery Backman <backman23@live.com>
2026-01-12 12:39:19 -06:00
Zackery Backman
1753bdb0f6 doc: develop: manifests: external: add wolfMQTT
Add documentation to external module section for adding wolfMQTT to Zephyr

Signed-off-by: Zackery Backman <backman23@live.com>
2026-01-12 12:38:31 -06:00
Liam Ogletree
256f043644 samples: cs40l5x: Support CRD40L50 demonstration board
Add CRD40L50 board support to the CS40L5x sample application and update
documentation accordingly.

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
2026-01-12 12:37:28 -06:00
Liam Ogletree
5b92b6a66f boards: crd40l50: Add support for CRD40L50 demonstration board
Add support for the Cirrus Logic CRD40L50 demonstration board, which
features a CS40L5x haptics driver, AT25 SPI flash memory, status LEDs,
and a push button.

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
Co-authored-by: Ricardo Rivera-Matos <ricardo.rivera-matos@cirrus.com>
2026-01-12 12:37:28 -06:00
Gaetan Perrot
bca0b43be9 drivers: crypto: intel_sha: make set_resume_length_dw1 void
intel_sha_set_resume_length_dw1() never reports errors
and always returns 0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-12 12:36:48 -06:00
Gaetan Perrot
f017f4cb91 drivers: crypto: intel_sha: make set_ctl_enable void
intel_sha_set_ctl_enable() never reports errors
and always returns 0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-12 12:36:48 -06:00
Lyle Zhu
1cf21e55ca bluetooth: Classic: hfp_hf: make at_get_raw_string() return const char *
Change at_get_raw_string() return type from 'char *' to 'const char *'
to match at_get_string() and improve const-correctness. This function
returns read-only AT command response data that should not be modified.

- Update at_get_raw_string() signature in at.h and at.c
- Update return statement cast from 'char *' to 'const char *'
- Update local variables in hfp_hf.c to use 'const char *':
  * bvra_handle: 'id' variable
  * chld_handle: 'value' variable
  * cnum_handle: 'alpha' and 'speed' variables
- Mark unused 'alpha' and 'speed' in cnum_handle with __maybe_unused
- Change NULL check style from '!id' to 'id == NULL' for consistency

This completes the const-correctness improvements started in the
previous commit for HFP HF AT command string handling.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-12 12:36:18 -06:00
Eoin Jordan
e4bfc1d2a4 doc: add Edge Impulse SDK external module documentation
Add documentation for the Edge Impulse SDK Zephyr module to the external
modules section, including:

- Module overview describing the Edge Impulse ML development platform
- Integration instructions with west.yml manifest configuration
- West extension commands (ei-build, ei-deploy) for model deployment
- License information (BSD-3-Clause-Clear)
- References to official Edge Impulse documentation and tutorials

The Edge Impulse SDK module enables machine learning inference on Zephyr
devices by packaging the Edge Impulse SDK as a reusable Zephyr module
with west integration for streamlined ML model deployment workflows.

Signed-off-by: Eoin Jordan <eoin@edgeimpulse.com>
2026-01-12 12:35:55 -06:00
Sylvio Alves
3ff8115439 samples: bluetooth: hci_pwr_ctrl: remove unnecessary config
Remove CONFIG_BT_CTLR_ADVANCED_FEATURES from prj.conf. This option
only controls visibility of advanced features in menuconfig and is
not required by the sample. It also depends on BT_LL_SW_SPLIT which
is not available on all platforms (e.g., ESP32 uses a closed-source
controller blob).

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-12 12:34:47 -06:00
Sylvio Alves
c94930c6c9 soc: espressif: set BLE HCI buffer defaults
Set default values for BLE HCI buffer configuration that match
the ESP32 controller requirements:
- BT_BUF_ACL_RX_COUNT=24: Match controller's ACL buffer count
- BT_BUF_EVT_RX_COUNT=30: Match controller's event buffer count

Enable BT HCI node in device tree for all ESP32 SoCs that
support BLE.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-12 12:34:47 -06:00
Sylvio Alves
06890c3f92 drivers: bluetooth: esp32: add vendor-specific HCI commands
Implement VS HCI commands for ESP32 BLE controllers:
- Read/Write TX power level with per-handle support
- Read version info (platform, variant, firmware version)
- Read supported commands and features
- Read static addresses from eFuse (C2/C6/H2)
- Read build info (controller version string)

For original ESP32, use the legacy esp_ble_tx_power_set/get API.
For newer variants (ESP32-S3, ESP32-C2, ESP32-C3, ESP32-C6, ESP32-H2),
use the enhanced API that supports per-connection power control.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-12 12:34:47 -06:00
Sylvio Alves
6511eb4edf bluetooth: hci: add Espressif VS platform/variant definitions
Add Espressif platform and variant IDs to hci_vs.h for ESP32 family
SoCs (ESP32, ESP32-S3, ESP32-C2, ESP32-C3, ESP32-C6, ESP32-H2).

Add Espressif Systems to vs_hw_platform() and vs_hw_variant()
functions in hci_core.c for proper vendor identification.

Use CONFIG_SOC_FAMILY guards in vs_hw_variant() to reduce flash
usage by only compiling variant strings for the active SoC family.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-12 12:34:47 -06:00
Maximilian Werner
1602f3cff1 drivers: i2c: mcux: refactor target event handler
The target event handler i2c_mcux_target_transfer_cb() had a too high
cognitive complexity. Create a function for each event type to reduce
the complexity score.

Signed-off-by: Maximilian Werner <maximilian.werner96@gmail.com>
2026-01-12 12:34:11 -06:00
Maximilian Werner
c1722f5eda drivers: i2c: mcux: add support for target mode
Add i2c target support to the i2c_mcux driver.
Add the frdm_mcxc242 board to i2c_target_api tests.

Signed-off-by: Maximilian Werner <maximilian.werner96@gmail.com>
2026-01-12 12:34:11 -06:00
Yongxu Wang
52c712d4d1 firmware: scmi: add mutex protection to polling mode
Protect scmi_send_message_polling() with channel mutex to prevent
concurrent access with interrupt-driven transfers.

Without this fix, PM subsystem could send polling-mode messages
while an interrupt-mode transfer was in progress, corrupting the
shared channel state.

Fixes hang on i.MX943 during I2C initialization when PM attempted
to send power state notifications concurrently.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2026-01-12 12:33:40 -06:00
Igor Knippenberg
0d1863c409 drivers: can: stm32: fdcan: enable hardware RX timestamping
Enables hardware RX timestamping for the STM32 FDCAN driver by
leveraging the M_CAN timestamping interface.

Introduces a new `timestamp-counter` property in the device tree binding.
If `CONFIG_CAN_RX_TIMESTAMP` is enabled and this property is defined,
the driver configures the M_CAN Timestamp Select to use the
external timestamp counter value.

This allows linking a Zephyr Counter device to the FDCAN instance to
provide precise packet timing.

Signed-off-by: Igor Knippenberg <knippenberg@filics.eu>
2026-01-12 12:32:55 -06:00
Om Srivastava
eb2da4f4c6 bluetooth: shell: fix AD length validation
Fix validation of AD length handling in the Bluetooth shell.
Reject zero-length AD fields before subtracting the AD type size.

The previous implementation compared an unsigned length
against zero after subtraction, making the error path
unreachable.

Signed-off-by: Om Srivastava <srivastavaom97714@gmail.com>
2026-01-12 12:32:25 -06:00
Marek Matej
45dd7fa9ad xtensa: debug: enable xtensa thread awareness
Enable stack offset switching for Xtensa targets if arch_switch is used.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2026-01-12 12:31:57 -06:00
Sylvio Alves
b6e6a4c0c4 doc: esp32: document openocd thread awareness
Document the OpenOCD version required for Zephyr thread
awareness and how to use CONFIG_DEBUG_THREAD_INFO.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-12 12:31:57 -06:00
Sylvio Alves
f9e81d6ded boards: esp32: set openocd target handle for RTOS support
ESP32 OpenOCD uses $_TARGETNAME_0 instead of $_TARGETNAME.
Set the correct target handle to enable RTOS awareness.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-12 12:31:57 -06:00
Sylvio Alves
aaec098e0e boards: esp32: enable Zephyr RTOS in openocd config
Change ESP_RTOS from none to Zephyr in all ESP32 board
openocd.cfg files to enable thread awareness during debug.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-12 12:31:57 -06:00
Sylvio Alves
7695aefce1 boards: esp32: remove --no-init from openocd args
Remove the --no-init flag to fix west debugserver on boards
with built-in USB JTAG (ESP32-C6, ESP32-H2).

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-01-12 12:31:57 -06:00
Kapil Bhatt
2b2ac80eea drivers: wifi: Change WPA3 to WPA3_HNP and WPA3_H2E
Change WPA3 into WPA3-HNP, WPA3-H2E for Display scan fix.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-12 12:31:08 -06:00
Kapil Bhatt
7885303422 driver: nrf_wifi: Add config option for No-ACK policy in Tx packets
Build time configuration option to set No-ACK policy for Tx packets
with a specific TID.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-12 12:31:08 -06:00
Kapil Bhatt
16c97c5170 manifest: Update hostap revision for p2p fixes
Listen for probe request in GO mode
Reducing a delay in p2p connection.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-12 12:31:08 -06:00
Karun Kumar Eagalapati
cef6b4a760 manifest: Update nrf_wifi with latest rpu bins
1. Fixes an issue in UMAC where valid P2P devices were filtered
      during a connect scan due to strict SSID length matching.
   2. P2P NOA Bug Fix.
   3. Linker issue fix in Raw modes.
   4. LMAC BIMG offset change.
   5. RPU Version update from 1.2.14.6 to 1.2.14.7.
   6. Display scan fix for WPA3 HNP and H2E.

Signed-off-by: Karun Kumar Eagalapati <karun.kumar@nordicsemi.no>
2026-01-12 12:31:08 -06:00
Qingsong Gou
0ee36a6f50 drivers: rtc: sf32lb: fix compile warnings
Fix compile warnings for sf32lb

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-12 12:30:23 -06:00
Qingsong Gou
0a0ab9888c boards: sifli: sf32lb52_devkit_lcd: enable rtc build
Enable rtc build on sf32lb52_devkit_lcd board

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-12 12:30:23 -06:00
Qingsong Gou
cd528e3b25 drivers: rtc: sf32lb: fix y2k bug
Fix 1999 to 2000 year bug

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-12 12:30:23 -06:00
Etienne Carriere
b42b10f89e west.yml: update hal_stm32 module on H7RS/L4/L5/N6 stm32cube releases
stm32h7rsxx bumps to STM32CubeH7RS version 1.3.0.
stm32l4xx bumps to STM32CubeL4 version 1.18.2.
stm32l5xx bumps to STM32CubeL5 version 1.6.0.
stm32n6xx bumps to STM32CubeN6 version 1.3.0.

Update dma_stm32.h to sync with HAL new function prototype for
LL_DMA_IsActiveFlag_HT*() functions that now expect a const pointer
on STM32L4X series. While at it, also update the STM32MP13X series
that expects the same prototypes.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-01-12 12:29:37 -06:00
Fin Maaß
540df685f4 drivers: ethernet: w5500: implement get_link
implement get_link from the ethernet phy
api.

Signed-off-by: Fin Maaß <info@finmaass.de>
2026-01-12 12:29:07 -06:00
Fin Maaß
b85c12049b drivers: ethernet: w5500: use timeout directly
use Kconfig timeout directly.

Signed-off-by: Fin Maaß <info@finmaass.de>
2026-01-12 12:29:07 -06:00
Dev Joshi
80474fae1c boards: rpi_pico2: fix I2C misconfiguration bug
I2C controller on rpi_pico2 boards were getting misconfigured due to
`CONFIG_I2C_DW_CLOCK_SPEED` not getting set properly. This change fixes
the value for this Kconfig symbol to the correct clock speed (clk_peri)
that is used by I2C controller.

Signed-off-by: Dev Joshi <devbhave@qti.qualcomm.com>
2026-01-12 12:28:39 -06:00
Marco Casaroli
2988310fe6 doc: releases: add note about CONFIG_MBEDTLS_VERSION in Mbed TLS
Updates release notes about the addition of the new configuration.

Signed-off-by: Marco Casaroli <marco.casaroli@gmail.com>
2026-01-12 12:27:59 -06:00
Marco Casaroli
e1c68019cc modules: mbedtls: include option to enable version information
Some libraries like libcoap make use of mbedtls_version_get_number
which is enabled by MBEDTLS_VERSION_C.

We add a config option to be able to selectively enable it.

Signed-off-by: Marco Casaroli <marco.casaroli@gmail.com>
2026-01-12 12:27:59 -06:00
Stephan Linz
adaac81ae8 MAINTAINERS: include CAN FD 6 Click shield in CAN drivers
This commit adds the MikroE CAN FD 6 Click shield under the same
assignees as other of the CAN driver based shields.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-12 12:27:21 -06:00
Stephan Linz
0049bbe202 tests: drivers: build_all: can: add MikroE compile tests for tcan4x5x
Add the MikroE compile test for the TI TCAN4x5x series CAN controller
driver.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-12 12:27:21 -06:00
Stephan Linz
baf18d9e88 boards: shields: add support for MikroE CAN FD 6 Click
Add shield definition for the MikroElektronika CAN FD 6 Click shield,
an mikroBUS compatible evaluation module for the TI TCAN4x5x CAN
controller series.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-12 12:27:21 -06:00
Armando Visconti
56b85ea61a drivers/sensor: lsm6dsvxxx: add ism6hg256x support
Add support to ism6hg256x sensor variant of LSM6DSVXXX driver.

More information:
https://www.st.com/resource/en/datasheet/ism6hg256x.pdf

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2026-01-12 12:26:41 -06:00
Armando Visconti
310457448a drivers/sensor: lsm6dsvxxx: add High-g data support in FIFO
Add support for High-g data in FIFO. The HG data wiil be marked in
FIFO with LSM6DSV80X_XL_HG_TAG.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2026-01-12 12:26:41 -06:00
Armando Visconti
b66fc31c95 drivers/sensor: lsm6dsvxxx: add lsm6dsv80x support
Add support to lsm6dsv80x sensor variant of LSM6DSVXXX driver.

More information:
https://www.st.com/resource/en/datasheet/lsm6dsv80x.pdf

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2026-01-12 12:26:41 -06:00
Armando Visconti
3c16d599b1 drivers/sensor: lsm6dsvxxx: add streaming capabality
Add read_and_decode streaming APIs support.

Triggers supported:
    - SENSOR_TRIG_FIFO_WATERMARK
    - SENSOR_TRIG_FIFO_FULL
    - SENSOR_TRIG_DATA_READY

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2026-01-12 12:26:41 -06:00
Armando Visconti
d6eaae4d53 drivers/sensor/st: add support to LSM6DSVXXX IMU family
This driver is currently only supporting the polling-mode read_and_decode
APIs (both blocking and non-blocking).

The driver implements a chip_api structure which has to be used to
provide device specific callbacks. The only lsm6dsvxxx family device
currently supported is lsm6dsv320x.

More information about LSM6DSV16X:
https://www.st.com/resource/en/datasheet/lsm6dsv320x.pdf

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2026-01-12 12:26:41 -06:00
Armando Visconti
5372b41979 sensor/lsm6dsvxxx: change DT common prop names
The Device Tree property names that are common to lsm6dsv16x and
lsm6dsv32x drivers are now prefixed with LSM6DSVXXX_ (and not
LSM6DSV16X_) just for the sake of clarity.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2026-01-12 12:26:41 -06:00
Henrik Brix Andersen
0949f8a52a drivers: sensor: adi: max30210: Fix build with Clang/LLVM
drivers/sensor/adi/max30210/max30210_trigger.c:144:3: error: label followed
by a declaration is a C23 extension [-Werror,-Wc23-extensions]
  144 |                 uint8_t temp_hi_setup[2];
      |                 ^

drivers/sensor/adi/max30210/max30210_trigger.c:175:3: error: label followed
by a declaration is a C23 extension [-Werror,-Wc23-extensions]
  175 |                 uint8_t temp_inc_fast_thresh;
      |                 ^

drivers/sensor/adi/max30210/max30210_trigger.c:196:3: error: label followed
by a declaration is a C23 extension [-Werror,-Wc23-extensions]
  196 |                 uint8_t temp_dec_fast_thresh;
      |                 ^

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2026-01-12 12:26:27 -06:00
Camille BAUD
76dd50833f boards: bflb: Add pre_dt_board.cmake to all
Add -Wno-unique_unit_address_if_enabled for all boards,
as bflb SoCs contains a lot of overlapping peripheral nodes.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-12 11:55:54 +01:00
Mathieu Choplain
8f5a5bb7cd doc: services: mem_mgmt: cleanup zephyr,memory-attr examples
Remove whitespace between parentheses and value. This seems to be the only
place in tree where such a pattern is found, and it violates the rules of
the Devicetree linter executed by CI.

Replace ARM-specific MPU attributes with their plain variant, also removing
the unnecessary parentheses in the process.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-12 11:55:36 +01:00
Mathieu Choplain
37f8685ab2 doc: arch: arm_cortex_m: cleanup zephyr,memory-attr example
Remove unnecessary parentheses and switch to the plain variant of the
RAM_NOCACHE "attribute".

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-12 11:55:36 +01:00
Mathieu Choplain
0b5477cd38 doc: arch: arm_cortex_m: CM0/CM1 can't program custom fault priorities
The documentation currently indicates that Cortex-M0 and Cortex-M1 have
programmable fault priorities which is not true. Fix this error.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-12 11:55:36 +01:00
Ian Morris
a4da896211 boards: renesas: ek_ra2l1: add LEDs and alias
Added additional LEDs and an alias so that examples such
basic/threads will build/run on this board.

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2026-01-12 11:55:25 +01:00
Ian Morris
d6cb39852d boards: renesas: ek_ra6m4: add PWM LED alias
Added pwm-led0 alias so that basic/blinky_pwm and basic/fade_led
samples can be built/run on the ek_ra6m4.

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2026-01-12 11:55:10 +01:00
Pisit Sawangvonganan
aba81d54e7 drivers: spi: avoid duplicating tx/rx length selection logic
For clarity and compactness, use
`spi_context_max_continuous_chunk()` instead of open-coding
the same tx/rx length selection logic.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2026-01-12 11:54:58 +01:00
Lyle Zhu
bd7da95049 Bluetooth: Classic: L2CAP: Fix sending buffer reference counting
There is a corner case that the ACL_Data_Packet_Length is less than
the MPS of the L2CAP BR channel connection. Then the partial data
will be sent and the remaining data will be sent in sequence in the
function `l2cap_br_data_pull()`. The issue occurs when sending the
continuing fragment HCI ACL packet, due to the reference counting of
sending buffer is 0. Therefore, the application will be asserted in
the function `send_buf()`.

Fix the issue by managing the reference count of the sending buffer.

Use the function `net_buf_ref()` to increment the reference count of
the sending buffer.

If the sending buffer is the last fragment, use `net_buf_unref()` to
decrement the reference count of the sending buffer to ensure that
the send buffer can be properly released when the data is sent out.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-12 11:54:43 +01:00
Devika Raju
5f0483a8aa drivers: wifi: siwx91x: Fix multicast filtering on IGMP leave
Device continued receiving multicast data after leaving IGMP group
because the driver did not configure the SiWx917 firmware to stop
filtering for the multicast MAC address.

Register a Zephyr multicast monitor callback (net_if_mcast_mon_register)
that calls sl_wifi_configure_multicast_filter() to add or remove
multicast MAC filters in the firmware when groups are joined or left.

Signed-off-by: Devika Raju <Devika.Raju@silabs.com>
2026-01-12 11:54:32 +01:00
Jukka Rissanen
290384b8cb net: dns: Add missing documentation for struct dns_addrinfo
The documentation of various fields in "struct dns_addrinfo" were
missing.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2026-01-12 11:54:20 +01:00
Muhammed Asif
e92fe156f9 samples: watchdog: sam_e54_xpro: Adds the overlay for the board
- Adds the overlay for sam_e54_xpro board in the sample for watchdog.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-12 11:54:08 +01:00
farsin NASAR V A
4fb07b6be0 tests: drivers: watchdog: Adds sam_e54 test support files
- Adds sam_e54_xpro.overlay files for wdt test projects.
- Adds sam_e54_xpro platform allow in testcase.yaml.
- Adds wdt board specific configuration in main.c

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2026-01-12 11:54:08 +01:00
Muhammed Asif
f223439235 boards: microchip: sam_e54_xpro: Updates watchdog to board yaml
- Updates the board yaml file with watchdog entry for enabling CI
  to include watchdog for testing

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-12 11:54:08 +01:00
Muhammed Asif
e452c05026 drivers: watchdog: microchip: watchdog g1 driver
- Adds watchdog g1 driver for microchip devices

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-12 11:54:08 +01:00
Muhammed Asif
76e862cd13 dts: arm: microchip: same5xd5x: Add watchdog node in devicetree
- Adds devicetree node of watchdog in same5xd5x family
- Adds the binding yaml for g1 driver of watchdog

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-12 11:54:08 +01:00
Alexandre Bailon
3d11f60b58 ieee802154: cc13xx_cc26xx: Make filter more reliable
The radio driver updates the filters but never submit
the new ones to the radio core.
The filters was only applied later thanks, probably during
a channel selection that was happening often.
Update the driver stop RX operation and restart it using
the new filters.

Signed-off-by: Alexandre Bailon <abailon@baylibre.com>
2026-01-12 11:53:47 +01:00
Alexandre Bailon
06503ceb02 ieee802154: cc13xx_cc26xx: Improve channel selection
When using OpenThread, set_channel operation may be called often
with the same channel number.
Everytime, even if the channel has not changed, the driver stop all
the radio operations, restart the synthesizer and then restart RX
operations.
This behavior prevents OpenThread joiner to work correcly.
This updates the driver to only stop radio operations if this is really
required.

Signed-off-by: Alexandre Bailon <abailon@baylibre.com>
2026-01-12 11:53:47 +01:00
Phuc Pham
8a50020b7a samples: drivers: adc: Add ADC support for Renesas RZ/A2M
Add ADC samples support for board RZ/A2M-EVK

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-12 11:53:36 +01:00
Phuc Pham
d6d3a1df23 tests: drivers: adc: Add ADC support for Renesas RZ/A2M
Add ADC tests support for board RZ/A2M-EVK

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-12 11:53:36 +01:00
Phuc Pham
d641a2847c boards: renesas: Add ADC support for Renesas RZ/A2M
Add ADC support for board Renesas RZ/A2M-EVK

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-12 11:53:36 +01:00
Phuc Pham
2ef755cd81 dts: renesas: Add ADC support for Renesas RZ/A2M
Add ADC nodes for Renesas RZ/A2M

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-12 11:53:36 +01:00
Phuc Pham
1eec5dae9f drivers: adc: Add ADC support for Renesas RZ/A2M
Add ADC driver support for Renesas RZ/A2M

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-12 11:53:36 +01:00
Phuc Pham
1cb9ebaad2 drivers: timer: Fix incorrect data type use
- Fix incorrect data type that caused the timer to malfunction
after running for a period of time

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-01-12 11:53:36 +01:00
Francis Roi Manabat
0a5d3e44f2 tests: drivers: build_all: Add build test for MAX30210
Add max30210 sensor to build test.

Signed-off-by: Francis Roi Manabat <francisroi.manabat@analog.com>
2026-01-12 11:53:15 +01:00
Francis Roi Manabat
c6a0444f50 drivers: sensor: add MAX30210 Temperature Sensor Support
Add Support for MAX30210, a low-power,
high-accuracy digital temperature sensor
operating from a 1.7 V to 2.0 V supply.

Signed-off-by: Francis Roi Manabat <francisroi.manabat@analog.com>
2026-01-12 11:53:15 +01:00
Jamie McCrae
ef9f455db1 doc: releases: release-notes: 4.4: Add note on sysbuild merged hex
Adds details of the newly introduced merged hex output support for
sysbuild

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-12 11:52:58 +01:00
Jamie McCrae
c6bc55e698 doc: build: sysbuild: Add merged hex file information
Adds details about the newly introduced merged hex file support

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-12 11:52:58 +01:00
Jamie McCrae
a69bf8d419 tests: cmake: Add sysbuild_merged_hex test
Adds a test to ensure proper functioning of the sysbuild merged hex
feature

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-12 11:52:58 +01:00
Jamie McCrae
feadf2e8ef sysbuild: Add optional output merged hex file support
Adds support for generated merged hex file output, one hex file
per unique board target. This feature can be enabled with
SB_CONFIG_MERGED_HEX_FILES

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-12 11:52:58 +01:00
Andy Lin
588d22464d soc: raspberrypi: rp235x/hazard3: Add support for ramfunc
Add support to run code from SRAM and future PSRAM for RP235x:hazard3.

Signed-off-by: Andy Lin <andylinpersonal@gmail.com>
2026-01-11 13:06:14 +01:00
Anton Puppe
3e7b47f7c4 samples: video: capture: Add STM32N6570_DK to sample documentation
Add docs (wiring, build etc.) for the stm32n6570_dk board with the
st_b_cams_imx_mb1854 camera shield (based on an IMX335).

Signed-off-by: Anton Puppe <anton-noel-flynn.puppe@zeiss.com>
2026-01-11 13:05:34 +01:00
Anton Puppe
4cd4b75159 samples: video: capture: Add option to allow shell and capture together
Add Kconfig option VIDEO_SHELL_AND_CAPTURE to allow the capture to run
even if the video shell is enabled. Also, add delta time between frames
to log output. This enables testing of on-the-fly framerate changes.

Signed-off-by: Anton Puppe <anton-noel-flynn.puppe@zeiss.com>
2026-01-11 13:05:34 +01:00
Anton Puppe
264a01f832 drivers: video: imx335: Add configurable refresh rate
Adds support for video_set_frmival for the IMX335 sensor driver.
The available framerates depend on whether the binning mode is enabled.
Currently, 25Hz and 30Hz are always available and 50Hz/60Hz only with
binning.

Signed-off-by: Anton Puppe <anton-noel-flynn.puppe@zeiss.com>
2026-01-11 13:05:34 +01:00
Anton Puppe
d74087f58d drivers: video: imx335: Add 2x2 binning support
Adds support for switching the sensor resolution between all-pixel scan
(2592x1944) and 2x2 binning (1296x972). This reduces the bandwidth
and processing power requirements for applications that do not need the
full resolution. It also paves the way for higher frame rates.

Note that while the imx335 driver now supports dynamic resolution
changes, some downstream components may not. The binning mode is enabled
automatically if the correct format is selected.

Signed-off-by: Anton Puppe <anton-noel-flynn.puppe@zeiss.com>
2026-01-11 13:05:34 +01:00
Tim Pambor
d40c003513 net: http_server: Add transaction complete status
When the response has been sent completely to the client, the server
reports the new `HTTP_SERVER_TRANSACTION_COMPLETE` status. Together with
the existing `HTTP_SERVER_TRANSACTION_ABORTED` status, the application
can now also for successful completions of requests clean up any
resources allocated for handling the request.

This especially allows to dynamically allocate the response buffer
passed to the server in the request callback and free it when the
request is done.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-01-11 13:04:52 +01:00
Tim Pambor
43d3387634 net: http_server: clarify naming of HTTP server callback status enum
Rename enum http_data_status to enum http_transaction_status
to better reflect its purpose, which is to indicate the status of the
overall HTTP transaction, not just data transfer.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-01-11 13:04:52 +01:00
Aleksandr Senin
b788fbd964 tests: uart: add GD32 build-only scenario
Add a build-only scenario that enables UART runtime configure and
builds on selected GD32 boards to ensure the driver compiles.

Signed-off-by: Aleksandr Senin <al@meshium.net>
2026-01-11 13:04:25 +01:00
Aleksandr Senin
5dc2385914 drivers: serial: gd32: add UART runtime configure support
Add uart_configure()/uart_config_get() support to usart_gd32.
Store runtime config in driver data and init it from DT defaults.

Signed-off-by: Aleksandr Senin <al@meshium.net>
2026-01-11 13:04:25 +01:00
Jonas Berg
2e6955100e samples: servo-motor: Add overlay for Cytron Maker Pi RP2040
Enable servo port GP12. Add commented-out entries for the other ports,
as is done for the other overlay files.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-11 13:04:03 +01:00
Jonas Berg
29c95ff3fd boards: Add support for Cytron Maker Pi RP2040
Tested with the commands mentioned in index.rst

Product photo from
https://www.cytron.io/p-maker-pi-rp2040-simplifying-robotics-with-raspberry-pi-rp2040

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-11 13:04:03 +01:00
Gang He
19a592fa10 samples: drivers: audio: Add codec loopback sample.
Add audio loop back sample

Signed-off-by: Gang He <ganghe@sifli.com>
2026-01-11 13:03:33 +01:00
Gang He
a623bf1078 board: sifli: sf32lb62_devkit_lcd: Add audio codec
Add audio codec in board device tree, including PA control pin.

Signed-off-by: Gang He <ganghe@sifli.com>
2026-01-11 13:03:33 +01:00
Gang He
817d1b7118 drivers: audio: sf32lb52x: Add audio codec driver
audio playback and capure, extend API in codec.h

Signed-off-by: Gang He <ganghe@sifli.com>
2026-01-11 13:03:33 +01:00
Gang He
cbe9396b50 include: zephyr: audio: Update audio codec interface
Support audio device that has both input and output function.

Signed-off-by: Gang He <ganghe@sifli.com>
2026-01-11 13:03:33 +01:00
Gang He
a9fed9aa66 dts: Add audio codec device tree info for sf32lb52x
Add audio codec device tree information for sf32lb52x.dtsi

Signed-off-by: Gang He <ganghe@sifli.com>
2026-01-11 13:03:33 +01:00
Gang He
e724188a6f drivers: dma: Add half complete callback for SF32LB chipset
Add callback of half complete in DMA processing, Fix DMA size bug.

Signed-off-by: Gang He <ganghe@sifli.com>
2026-01-11 13:03:33 +01:00
Gang He
4d2af2647e west.yml: hal_sifli: Update to latest revision
- Add support to compile with no LCPU patch as CI do not fetch blobs.

Signed-off-by: Gang He <ganghe@sifli.com>
2026-01-11 13:03:33 +01:00
Benjamin Cabé
a989118dba MAINTAINERS: update Zephyr 4.4 release engineers
Make Zephyr 4.4 release engineers maintainers of release notes and
migration guide for the time being.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-09 17:13:11 -06:00
McAtee Maxwell
88a3b35fcc tests: update pwm test overlay for kit_pse84_eval device
- Change the pwm periods for kit_pse84_eval in the pwm_gpio_loopback

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2026-01-09 17:12:57 -06:00
Sam Friedman
6383a7222b tests: net: coap_client: allow native_sim/native/64
Fix build failures when compiling for 64-bit native_sim,
and add native_sim/native/64 to the platform allow list for
the coap client tests.

Signed-off-by: Sam Friedman <sam@golioth.io>
2026-01-09 17:12:31 -06:00
Pete Johanson
9dc8161870 drivers: sensor: Add missing get_size_info to ADXL362 decoder
Properly report size info for the ADXL362 decoder for streaming data
properly from that sensor.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2026-01-09 17:12:08 -06:00
Ben Levinsky
353bd994c2 doc: release-notes/4.4: Add release note for IPM
Add release notes for IPM driver noting ipm_mbox driver issue

Signed-off-by: Ben Levinsky <ben.levinsky@amd.com>
2026-01-09 17:11:44 -06:00
Ben Levinsky
a206401647 drivers: ipm: ipm_mbox: handle mailbox notifications without payload
Some mailbox backends may deliver notifications without an associated
data payload. This can occur when the mailbox is used as a signal-only
mechanism, where struct mbox_msg is NULL, data is NULL, or size is zero.

The IPM mailbox callback currently assumes a valid data payload and
unconditionally dereferences data->data, which can lead to a NULL
pointer dereference for such mailbox implementations.

Update the IPM mailbox callback to tolerate empty mailbox messages and
invoke the IPM callback with a NULL payload pointer when no data is
present. This preserves notification semantics while preventing
runtime faults.

Signed-off-by: Ben Levinsky <ben.levinsky@amd.com>
2026-01-09 17:11:44 -06:00
Elmo Lan
cb82c96dbb drivers: i2c_dw: recovery i2c bus after when user abort
When the transfer timeout and driver set user abort,
we need go recovery flow to make sure bus recovery and reg recovery.

Signed-off-by: Elmo Lan <elmo_lan@realtek.com>
2026-01-09 17:10:38 -06:00
Afonso Oliveira
d7ccfc929d arch: riscv: guard CSR access macros and helpers from asm
The csr_*() macros and Smcsrind indirect CSR access helpers in csr.h
are C-only constructs using GNU C statement expressions, but csr.h is
also included from assembly sources when building with -D_ASMLANGUAGE.

Guard all C-only macros and functions so they are not seen by the
assembler, leaving only the numeric CSR definitions in the common
(ASM+C) section.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2026-01-09 17:10:08 -06:00
Ederson de Souza
e76a584fc9 samples: tfm_integration: tfm_secure_partition: Add test for SFN backend
With SFN support in the sample back, let's test it.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2026-01-09 17:08:56 -06:00
Ederson de Souza
e53da36164 samples: tfm_integration: tfm_secure_partition: Support SFN backend
When support for old "Library model" was removed, support for the new
Secure Function (SFN) model - the FF-M 1.1 spec that succeded the "Library
model" - wasn't implemented. This patch adds it.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2026-01-09 17:08:56 -06:00
Lauren Murphy
ce558ecdc3 boards: intel_adsp: add ram tags
Adds RAM tags to select Intel ADSP platforms with the
primary goal of getting LLEXT subsys tests to run.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2026-01-09 17:08:24 -06:00
Lauren Murphy
e593b9f03a tests: subsys: llext: intel_adsp runtime fixes
Add a Kconfig option for the test to put extensions in .text.
This is useful for platforms for which the linker places .data
in memory unsuitable for instruction execution, such as
Intel ADSP's uncached memory.

The theoretical alternative to support Intel ADSP is to add a
platform-specific INSTR_FETCHABLE macro and platform-specific
heap definition (placing the heap into .rodata) into llext so
that the llext loader can copy text into an executable heap, but
per a comment at llext_link's llext_link_plt, Xtensa llext's PLT
linking is not valid when not performed inline in the ELF buffer.
This is because it uses offsets from the text in the ELF buffer
and assumes the text section's position relative to the other
sections has not changed during loading. If one or more sections,
particularly text, are loaded onto the heap, the relocation
addresses calculated by the linker will not land in the correct
memory region.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2026-01-09 17:08:24 -06:00
Lauren Murphy
d01a2bc5a5 tests: subsys: llext: intel_adsp build fixes
Adds board overlays for Intel ADSP platforms to use
CONFIG_LLEXT_TYPE_ELF_RELOCATABLE instead of SHAREDLIB
as xt-clang cannot link shared libs for Xtensa, exports
symbols used by Intel ADSP with Xtensa toolchain, and
adds XTENSA MPU / MMU to "no memory protection" config file.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2026-01-09 17:08:24 -06:00
Pisit Sawangvonganan
b6f28127bd drivers: can: mcan: consolidate filter_id bounds checking
Consolidate lower and upper bounds checking of `filter_id`
at `can_mcan_remove_rx_filter` function entry to avoid checking
upper bounds while holding the mutex.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2026-01-09 14:29:10 -06:00
Pisit Sawangvonganan
4f71ba0918 drivers: dma: stm32u5: consolidate callback in dma_stm32_irq_handler
Refactor IRQ handler to set status variable in each branch and invoke
the callback once at the end, reducing code duplication.

Add null check for `dma_callback` in dma_stm32u5.c to match with
dma_stm32.c pattern.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2026-01-09 14:28:41 -06:00
Pisit Sawangvonganan
fad7535db9 drivers: dma: stm32: consolidate callback in dma_stm32_irq_handler
Refactor IRQ handler to set status variable in each branch and invoke
the callback once at the end, reducing code duplication.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2026-01-09 14:28:41 -06:00
Håkon Amundsen
84120f91f0 soc: nordic: disable cache for event report
The data is updated by both local domains (cpuapp/cpuapp) and
IronSide SE (cpusec), so disable caching to avoid coherency issues.

Signed-off-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
2026-01-09 14:28:10 -06:00
Mathieu Choplain
ce582dbf9e boards: st: stm32n6-based: enable TRNG
The TRNG needs to be enabled at boards level by default for tests. It will
not actually be used unless the ENTROPY_GENERATOR subsystem is enabled.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-09 14:27:38 -06:00
Mathieu Choplain
a78fc02c51 tests: drivers: entropy_api: remove STM32WB0 overlays that aren't needed
"/chosen/zephyr,entropy" is already set at root DTSI level, and the RNG is
already enabled at board DTS level.

Remove the now unneeded overlays for these boards.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-09 14:27:38 -06:00
Mathieu Choplain
68fd8b930e boards: st: nucleo_wb0*: don't set /chosen/zephyr,entropy
This chosen is now set inside the series' root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-09 14:27:38 -06:00
Mathieu Choplain
59ca598bf8 dts: arm: st: set zephyr,entropy in root DTSI for all series
All series set the "zephyr,entropy" chosen to the internal TRNG by default
inside their root DTSI except STM32N6 and STM32WB0.

Align these two series with others by declaring "/chosen/zephyr,entropy" in
their root DTSI as well.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-09 14:27:38 -06:00
Vincent Tardy
8bb85a6cbd drivers: bluetooth: hci: support driver close feature
Update stm32wbax ble hci driver to support driver close

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2026-01-09 14:27:00 -06:00
Vincent Tardy
e2e780aae0 soc: stm32: add link layer disable isr function
Add new function link_layer_disable_isr() to disable
radio ISR

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2026-01-09 14:27:00 -06:00
Gaétan Froissard
9dbc6450b4 soc: st: stm32: h7rsxx: Add MPU region on OTP area
This configure MPU region over OTP area like ID region.
OTP can be directly read and need to use flash HAL API for writing.

Signed-off-by: Gaétan Froissard <gaetan.froissard@marshmallow.kids>
2026-01-09 14:26:07 -06:00
Vijay Sharma
83f1b8ba49 kernel: timer: Add timer observer hooks for extensibility
Introduce lifecycle observer callbacks (init, start, stop, expiry)
for k_timer using Zephyr's iterable sections pattern. This enables
external modules to extend timer functionality without modifying
kernel internals.

Signed-off-by: Vijay Sharma <vijshar@qti.qualcomm.com>
2026-01-09 14:25:31 -06:00
Jamie McCrae
d94ed7b316 lib: os: Fix ZVFS leaking without being enabled
Fixes this define leaking into all application source files when
the feature is not even enabled

Co-authored-by: Chris Friedt <cfriedt@tenstorrent.com>
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-09 14:23:25 -06:00
Lauren Murphy
69ce125083 twister, west: test extra_conf_files arg to EXTRA_CONF_FILE
The extra_conf_files arg in testcase.yaml was being improperly
assigned to the CONF_FILE CMake arg, which caused
configuration_files.cmake to ignore soc and board Kconfig overlays.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2026-01-09 14:22:41 -06:00
Tomasz Leman
32df237145 tests: intel_adsp: update smoke IPC tests for new backend
This patch updates the intel_adsp smoke tests to use the new host IPC
backend data model and APIs.

The host IPC smoke test now treats messages as a fixed two-word uint32_t
payload instead of using struct intel_adsp_ipc_msg and the
INTEL_ADSP_IPC_CB_* message types. The receive callback validates the
payload length and pointer, checks the header/payload values against the
expected RETURN_MSG_* constants, and sets msg_flag on receipt. The
test-specific intel_adsp_ipc_send_message() and
intel_adsp_ipc_send_message_sync() helpers are rewritten to send a
two-word payload via ipc_service_send(), and the synchronous helper
waits on the backend semaphore only when the send succeeds. A dedicated
done callback is registered via intel_adsp_ipc_set_done_handler() to
drive done_flag, and intel_adsp_ipc_complete() now completes RX by
calling ipc_service_release_rx_buffer() and asserting on failure.
Completion polling is aligned with the backend by using
ipc_service_get_tx_buffer_size().

The clock calibration smoke test is adapted in the same way. It now
includes the ipc_service and intel_adsp host IPC backend headers when
using the new interface, interprets incoming data as a two-word uint32_t
payload, validates the length and pointer, and stores the returned
timestamp from the extended payload word into the endpoint private data.
The rest of the test flow, including endpoint registration, timestamp
requests and clock rate checks, remains unchanged but runs on top of the
new IPC backend representation.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2026-01-09 14:21:41 -06:00
Tomasz Leman
5fae86c69c intel_adsp: document host IPC backend data model and send hook
This patch refreshes the documentation in the Intel Audio DSP host IPC
service backend to match the current data model and backend API
contracts.

The updated comments clarify that ipc_ept_cfg::priv must point to
intel_adsp_ipc_ept_priv_data so that the backend can carry state between
the ISR and the application callbacks. They also describe that both the
send and receive paths operate on a fixed two-word uint32_t IPC payload
(header and extended payload) rather than a generic byte buffer, and
that len must always be sizeof(uint32_t) * 2.

The documentation for intel_adsp_ipc_send() is rewritten to explain the
expected payload format, the length and NULL checks performed by the
backend, and how the function programs the IPC registers while relying
on ipc_send_message() for BUSY and TX acknowledgment handling. The
parameter semantics and error returns are aligned with the generic
ipc_service send() hook contract to make the backend behaviour easier to
understand and reuse.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2026-01-09 14:21:41 -06:00
Tomasz Leman
15fa6a374e ipc: intel_adsp: simplify host IPC service backend
Rework the Intel Audio DSP host IPC service backend to use the generic
ipc_service data/len conventions and the new critical send and buffer
management APIs.

Replace the backend-specific intel_adsp_ipc_msg and related enums with a
simple two-word payload passed through the standard ipc_service_send()
and ipc_service_send_critical() interfaces, and adapt the ISR and
receive callback to operate on this representation.

Use ipc_service_get_tx_buffer_size() as a readiness check for the host
channel and provide hold_rx_buffer() / release_rx_buffer()
implementations so ipc_service_release_rx_buffer() can be used to signal
when the channel becomes available again.

Wire the emergency send path through send_critical() to route urgent
messages via the backend's emergency fast path while keeping the normal
IPC flow unchanged.

Move the synchronous IPC wait logic out of the Intel Audio DSP host IPC
backend and into the common intel_adsp_ipc helper used by tests.

Update intel_adsp_ipc_send_message_sync() to both send the IPC message
through ipc_service_send() and wait on the backend semaphore, and remove
the now redundant ipc_send_message_sync() helper from the host IPC
backend.

Document that intel_adsp_ipc_send_message_sync() is a test-only helper,
not used by SOF firmware, and that it is a candidate for future removal
or for replacement by an explicit synchronous send primitive in the
generic IPC service API or in application code.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2026-01-09 14:21:41 -06:00
Tomasz Leman
4cf753bfb2 ipc_service: Add ipc_service_send_critical function
Add ipc_service_send_critical() as a dedicated API for sending critical
high-priority messages over an IPC endpoint.

Introduce an optional send_critical() callback in struct
ipc_service_backend so backends can implement a special fast path that
bypasses normal state and busy checks for critical notifications such as
crash reports or fatal errors.

The ipc_service_send_critical() wrapper mirrors ipc_service_send() on
the service side and delegates the actual behavior to the
backend-specific send_critical() implementation.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2026-01-09 14:21:41 -06:00
Realer Mason
358258c799 dtsi: espressif: add esp32s3_wroom_n32r16.dtsi
Add esp32s3_wroom_n32r16.dtsi for some espressif board

Signed-off-by: Realer Mason <stone-mason@dr.com>
2026-01-09 14:17:59 -06:00
Thomas Decker
6efbec10fb drivers: serial: uart_stm32: make ptr to clock device const
The pointer to the clock device can be const, as it does never change at
runtime. This moves the const struct device *clock from data to config
struct and initializes it inside the init macro. The __uart_stm32_get_clock
function is no longer needed and removed.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2026-01-09 07:57:04 -06:00
Benjamin Cabé
901d21e454 scripts: schemas: make full_name a required property for boards
When initially introduced, the property was kept optional in an attempt
to not risk disrupting downstream users by introducing a required property
they wouldn't necessarily care about. In practice, this is causing
boards contributed upstream to sometimes miss this propery which is
important for boards to show up nicely in the boards catalog, and it is
therefore being made required.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-09 07:56:40 -06:00
Benjamin Cabé
9822ca54ec boards: unit_testing: add full_name to unit_testing board
add full_name to unit_testing in board.yml

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-09 07:56:40 -06:00
Benjamin Cabé
55883e4b59 boards: realtek: add missing full_name to realtek boards
add full_name for realtek boards in board.yml

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-09 07:56:40 -06:00
Benjamin Cabé
872e66be26 boards: openhwgroup: add missing full_name to openhwgroup boards
add full_name for openhwgroup boards in board.yml

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-09 07:56:40 -06:00
Benjamin Cabé
da229a08e0 boards: mediatek: add missing full_name to mediatek boards
add full_name for mediatek boards in board.yml

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-09 07:56:40 -06:00
Benjamin Cabé
1523c5913c boards: intel: add full_name to intel_wcl_crb
add full_name for this board in board.yml

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-09 07:56:40 -06:00
Jiafei Pan
db0a748a7a drivers: counter: gpt: remove unused variable
"clock_name_t clock_source" is not used by the driver, so remove it.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2026-01-09 07:55:58 -06:00
Sandro Scherer
7c97becb3e drivers: ethernet: lan865x: fix seed for random backoff
To activate changes in mac address registers
the top register has to be written

Signed-off-by: Sandro Scherer <sandro.scherer@siemens.com>
2026-01-09 07:55:37 -06:00
Fin Maaß
6915d2f591 soc: litex: deprecate 8 bit CSR data width
5 years ago LiteX switched to 32 bit csr data width,
while the option is still available in litex, it doesn't really
work there, even if it can be build, the bios f.e. won't boot.
already described in https://github.com/enjoy-digital/litex/issues/1062

So it is currently only here for designs, that are older than
5 years and for fpgas, where also the fpga bitstream can be updated
it is time to remove the support and require the users, when they wan't
to update zephyr, that they also have to update their fpga bitstream.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-09 07:55:12 -06:00
Fabrice DJIATSA
a289e607d4 tests: drivers: disk: disk_access: relax out-of-bounds erase assertion
The sector erase tests previously asserted for a specific -EINVAL return
code when attempting to erase past the end of the disk. This is too strict
for drivers that report a generic I/O error (-EIO) in such situations,
e.g. the STM32 SDMMC driver, which maps HAL failures to -EIO without
inspecting the precise root cause.

We can also note that the same logic was used in test_sector_write() and
test_sector_read().

This change avoids spurious test failures with targets that legitimately
return non-zero errors other than -EINVAL.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-09 13:09:47 +01:00
Krzysztof Chruściński
48978f876e samples: boards: nordic: coresight_stm: Add RTT configuration
Add sample configuration that uses RTT backend for STM logging.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2026-01-09 13:09:04 +01:00
Krzysztof Chruściński
3adbf25dff drivers: debug: nrf_etr: Add support for RTT backend
Add option to output STM logging on RTT.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2026-01-09 13:09:04 +01:00
Krzysztof Chruściński
98749eb58a soc: nordic: nrf54h: Enable use of RTT on cpuapp
RTT need to use RAM which is not cacheable as RTT does not support
data cache. Using cpuapp TCM RAM memory section for RTT.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2026-01-09 13:09:04 +01:00
Yunjie Ye
cfb6e15040 drivers: video: ov2640: Fixing the issue of the reset pin for OV2640.
The dt binding file requires the reset pin to be configured
as `GPIO_ACTIVE_LOW`, but the driver uses the
logic of `GPIO_ACTIVE_HIGH`.
Therefore, modify the logic in the driver and add a
migration guide.

Signed-off-by: Yunjie Ye <yun_small@163.com>
2026-01-09 13:08:48 +01:00
Yunjie Ye
7b93c32bd1 drivers: video: ov2640: Running clang-format on ov2640.c file
Using clangd to format ov2640.c file, which is not compatible with
existing .clang-format file.

Signed-off-by: Yunjie Ye <yun_small@163.com>
2026-01-09 13:08:48 +01:00
Yunjie Ye
9a5d96e4e0 drivers: video: ov2640: Add pwdn pin support on ov2640.
Add handling for the power-down (pwdn) pin of the OV2640 sensor.

Signed-off-by: Yunjie Ye <yun_small@163.com>
2026-01-09 13:08:48 +01:00
Fabin V Martin
1c2af3a0d6 tests: drivers: uart: Add conf files
Added config files for selecting DMA for the tests.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2026-01-09 10:41:23 +01:00
Fabin V Martin
67ddf8db30 drivers: uart: microchip: sercom g1: DMA selection for async mode
Allow user to select DMA in the application.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2026-01-09 10:41:23 +01:00
Muhammad Waleed Badar
4e52bad129 boards: rpi_4b: remove empty file from raspberry pi 4 board
Remove empty files from the Raspberry Pi 4 Model B board
directory. These files does not contain any configuration
or build logic.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-01-09 10:40:36 +01:00
Muhammad Waleed Badar
0574f75fc4 boards: rpi_4b: update compatible in root node to use bcm2711
The BCM2711 is the SoC used on the Raspberry Pi 4 boards.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-01-09 10:40:36 +01:00
Gaetan Perrot
f80975d025 drivers: audio: dmic_nrfx_pdm: fix error propagation
The error code returned when nrfx_pdm_start() fails is supposed to
be propagated to the caller.

This was broken by commit 16b9f60, which overwrote the original
error with the result of release_clock(), potentially returning
success even though the PDM start failed.

Restore the correct error propagation.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-09 10:39:57 +01:00
Jisheng Zhang
23dfe86f4a arch: arm64: remove ARM64_EXCEPTION_STACK_TRACE
After commit 02770ad963 ("debug: EXCEPTION_STACK_TRACE should depend
on arch Kconfigs"), the ARM64_EXCEPTION_STACK_TRACE isn't used any more,
remove it.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
2026-01-09 10:39:41 +01:00
Derek Snell
1d4be6f702 boards: shields: lcd_par_s035: fix touchscreen orientation
Fixes orientation after d4ec3fef5e update

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2026-01-09 10:39:28 +01:00
Zafer SEN
a959429ff2 doc: hl78xx: add auto-baudrate detection and switching docs
Add detailed documentation for the HL78xx auto-baudrate feature,
including:

- auto_baudrate_detailed_readme.md: full description, use cases,
  configuration options, and troubleshooting
- auto_baudrate_quick_reference.md: concise reference for presets, Kconfig
  options, and supported baud rates

Covers:
- Feature overview and implementation details
- Supported baud rates and Kconfig options
- State machine integration
- Troubleshooting guidance
- Performance and optimization tips
- Integration examples

This improves usability and provides a quick reference for developers
working with the HL78xx modem in Zephyr projects.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2026-01-09 10:38:39 +01:00
Zafer SEN
22d4c66676 samples: modem: hello_hl78xx: add auto-baud support and log current baud
Enable HL78XX modem auto-baudrate detection and switching in the sample
application. Set 921600 bps as the target baudrate with fallback options
(9600, 115200, 57600, 38400, 19200). Also read and log the current baudrate
from the modem during startup.

This helps verify and debug communication speed mismatches between the
modem and the device UART.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2026-01-09 10:38:39 +01:00
Zafer SEN
c64ae3b936 samples: modem: hello_hl78xx: select RSSI or RSRP based on RAT mode
The sample previously always queried RSRP, which is not valid when the
HL78xx operates in GSM mode. Use RSSI when GSM RAT is active and RSRP
for other RATs. Update the log output and rename the variable for
clarity.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2026-01-09 10:38:39 +01:00
Zafer SEN
5ed6ed5215 samples: modem: hello_hl78xx: demonstrate AirVantage FOTA API
Add support for handling AirVantage WDSI indications in the sample
application. FOTA update progress, download requests, and completion
events are processed and coordinated using a new semaphore. The sample
can restart its connection workflow after a successful firmware update.

Additional updates include:
- add serial number retrieval and logging
- add fota_complete_rerun semaphore and status tracking
- simplify debug logging in event listener and OK handler
- reorganize main loop to support FOTA-triggered reruns

This aligns the sample with the modem driver's expanded AirVantage and
WDSI support.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2026-01-09 10:38:39 +01:00
Zafer SEN
f26880b213 samples: modem: hello_hl78xx: remove POSIX API dependency
The sample no longer requires the POSIX API layer, so the
CONFIG_POSIX_API option is removed from prj.conf. The code is updated to
use the native zsock_* APIs instead of the POSIX getaddrinfo(),
inet_ntop(), and freeaddrinfo() variants.

This aligns the sample with Zephyr’s preferred socket API and avoids
pulling in unnecessary POSIX compatibility layers.

No functional behavior is changed.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2026-01-09 10:38:39 +01:00
Zafer SEN
0ffe90c233 samples: modem: hello_hl78xx: restructure prj.conf and verbose overlay
Reorganize the sample configuration files for clarity and easier
maintenance. This introduces grouped sections with descriptive comments
and improves consistency between prj.conf and the verbose-logging
overlay.

Main updates:
* Add structured headers for system, UART, networking, modem, RAT,
  AirVantage, shell, and logging settings
* Expand verbose overlay with clearer purpose, build notes, and grouped
  modem logging options
* Improve readability by aligning comments and collecting related
  options
* No functional behavior is changed; this is a documentation and
  structure improvement

These changes make the sample configuration easier to understand and
simplify future maintenance.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2026-01-09 10:38:39 +01:00
Zafer SEN
9e2bdfb09c drivers: modem: hl78xx: add optional auto-baudrate detection and switching
This adds an optional auto-baudrate mechanism that improves robustness
when the modem boots with an unknown or changed UART speed.

Key additions:
* New Kconfig option MODEM_HL78XX_AUTO_BAUDRATE and related settings:
  - selectable target baud rate
  - detection baudrate list
  - detection timeout and retry count
  - option to persist AT+IPR updates
  - option to start diagnostics or boot directly with auto-baud logic
* UART status tracking added to hl78xx_data, including current and target
  baud rates
* New HL78XX_MODEM_INFO_CURRENT_BAUD_RATE info field
* New MODEM_HL78XX_STATE_SET_BAUDRATE state with detection and switching
  logic
* Chat, init, and diagnostic handlers updated to route failures into the
  auto-baudrate logic when enabled
* New helpers: hl78xx_get_uart_config(), hl78xx_try_baudrate(),
  hl78xx_detect_current_baudrate(), hl78xx_switch_baudrate()
* Startup delay increased when auto-baudrate-at-boot is enabled

These changes allow the driver to recover from unexpected modem UART rate
changes and keep the UART configuration synchronized with the modem.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2026-01-09 10:38:39 +01:00
Zafer SEN
6a402b8659 drivers: modem: hl78xx: add AT command timeout event and handlers
Add MODEM_HL78XX_EVENT_AT_CMD_TIMEOUT event to distinguish chat scripts
timeouts from other script failures. The chat callback now maps
MODEM_CHAT_SCRIPT_RESULT_TIMEOUT to this new event.

Update state handlers so AT command timeouts trigger the init fail
diagnostic script during startup, and fall back to the power-on pulse in
the init-fail state, similar to existing timeout handling.

This improves error classification and enables more accurate recovery
logic for long-running or stalled AT command exchanges.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2026-01-09 10:38:39 +01:00
Zafer SEN
53f3e0c5a0 drivers: modem: hl78xx: support per-command timeout in send API
Extend modem_dynamic_cmd_send() with a response_timeout parameter to allow
callers to specify the overall script timeout per command. The previously
hardcoded 1000 ms timeout is removed (set to 0 in params) and the script
timeout is now driven by the passed-in value.

Update all internal call sites to provide MDM_CMD_TIMEOUT (in seconds) and
increase the default command timeout from 10 s to 40 s. Several chat
scripts and configuration paths are updated accordingly.

This improves reliability for long-running HL78xx operations and ensures
consistent timeout handling across sockets, RAT/band configuration, APN
setup, PDP activation, AirVantage DM session control, and TLS/TCP/UDP
socket management.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2026-01-09 10:38:39 +01:00
Zafer SEN
1179ed63d5 drivers: modem: hl78xx: add ERROR handling and unify OK match usage
Extend socket-related chat match tables to handle generic "ERROR" responses
for both CONNECT and +KUDP_IND URCs, improving detection of failed socket
creation and connection attempts.

While updating match handling, unify all modem commands to use the standard
OK match set by adding hl78xx_get_ok_match_size(). All remaining users of
the former sockets-specific OK match are switched to the unified helpers.

Additionally, all dynamic command send paths now provide an explicit match
count and use MDM_CMD_TIMEOUT instead of the previous hard-coded `1` for
script timeout, improving consistency and reliability across:
* RAT configuration
* band configuration
* APN setup
* GSM PDP activation
* AirVantage DM session control
* socket send and TLS configuration paths

This brings all command execution onto the same match/timeout model and
ensures ERROR responses are handled correctly during socket operations.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2026-01-09 10:38:39 +01:00
Woobin Song
028abf54ba drivers: gpio: tca6424a: fix race condition in port_get_raw()
Avoid overwriting cached input state while ISR-deferred work is pending.
Previously, port_get_raw() updated pins_state.input via
update_input_regs(), which could corrupt previous_state used for
transition detection.
Fix by reading input registers directly without updating the global cache.

Signed-off-by: Woobin Song <woobin.song@assaabloy.com>
2026-01-09 10:37:29 +01:00
Benjamin Klaric
c9e934cfdd boards: st: stm32h7s78_dk: add Ethernet support
Add Ethernet configuration for mac and mdio nodes in
stm32h78_dk-common.dtsi.

Disable mac node in .overlay files for tests/drivers/memc/ram
since ethernet drivers that get enabled by it consume sram1
node and thus fail the test.

Update the .yaml files to include Ethernet tag and
update documentation to explain Ethernet usage.

Signed-off-by: Benjamin Klaric <benjamin.klaric01@gmail.com>
2026-01-09 10:37:13 +01:00
Benedek Kupper
cdb7debfb7 drivers: dma: stm32: fix data sizes in memory to peripheral direction
This problem didn't surface earlier, as different sizes weren't permitted.

Signed-off-by: Benedek Kupper <kupper.benedek@gmail.com>
2026-01-08 17:35:24 -06:00
Tim Pambor
0c3027718b drivers: mdio: gpio: add clause 45 support
Add support for clause 45 MDIO transactions to the GPIO MDIO driver.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-01-08 17:34:45 -06:00
Peter Mitsis
669a8d0704 kernel: O(1) search for threads among CPUs
Instead of performing a linear search to determine if a given
thread is running on another CPU, or if it is marked as being
preempted by a metaIRQ on any CPU do this in O(1) time.

On SMP systems, Zephyr already tracks the CPU on which a thread
executes (or lasted executed). This information is leveraged to
do the search in O(1) time.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2026-01-08 17:34:14 -06:00
Emanuele Di Santo
a23cfc3f68 kernel: nothread: use k_timer to sleep instead of busy waiting
The current implementation of k_sleep(), when multi-threading
is disabled, busy waits using k_busy_wait() until the sleep timeout
has expired.

This patch aims to improve power efficiency of k_sleep() for
single-threaded applications by starting a timer (k_timer) and idling
the CPU until the timer interrupt wakes it up, thus avoiding
busy-looping.

Signed-off-by: Emanuele Di Santo <emdi@nordicsemi.no>
2026-01-08 17:33:28 -06:00
Bjarki Arge Andreasen
6e4ef44847 kernel: poll: patch recursive lock in z_vrfy_k_poll
In z_vrfy_k_poll, there is a memory access check
K_SYSCALL_MEMORY_WRITE which is wrapped in a spinlock, the same
spinlock used in z_handle_obj_poll_events which is called from
k_sem_give() for example.

The K_SYSCALL_MEMORY_WRITE() macro conditionally calls LOG_ERR()
which may call the UART console, which may call an API like
k_sem_give(). This will cause a deadlock since the locked spinlock
will be relocked, and a recursive lock if SPINLOCK_VALIDATE and
ASSERTS are enabled as the validation will fail, causing a LOG_ERR,
causing a k_sem_give() causing a relock... until stack overflows.

To solve the issue, only protect the copy of events to events_copy
with the spinlock, the content of events is not actually checked, and
bound is not shared, so there is no need to do this validation in a
critical section. The contents of events is shared so that must be
copied in atomically.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-08 17:32:35 -06:00
Ian Morris
ce526f2e16 boards: shields: Renamed Renesas us159 da14531evz board photograph
Reneamed photograph of Renesas US159 DA14531EVZ board to match
convention documented in the Board Porting Guide (resolving issue
with old image not appearing in list of supported boards on Zephyr
website).

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2026-01-08 17:31:48 -06:00
Henrik Brix Andersen
b6f601a2b4 boards: nxp: frdm_mcxn947: list usbd as supported feature
List USB device controller as a supported feature in order to increase test
coverage.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-01-08 21:18:53 +01:00
Amneesh Singh
70ca335986 drivers: intc: vim: disable all interrupts at init
Disable all interrupts when the VIM interrupt controller is initialized so
that it doesn't encounter any stray interrupts that were not enabled on
Zephyr.

Signed-off-by: Amneesh Singh <amneesh@ti.com>
2026-01-08 21:18:38 +01:00
Amneesh Singh
8b310cf824 drivers: intc: vim: fix header macros
BIT_MASK(32) cannot do (1 << 32) - 1 without causing integer overflow.
Hence, for these macros BIT64_MASK(32) is required.

Additionally, remove the unnecessary (and presently unused) macros for the
register space. All of these can be reliably derived from the present
register masks.

Signed-off-by: Amneesh Singh <amneesh@ti.com>
2026-01-08 21:18:38 +01:00
Khai Cao
2d5b720b62 drivers: can: Fix macro typo in CAN_RENESAS_RA_INIT
Fix macro parameter typo (##inst → ##index) in CAN_RENESAS_RA_INIT
to ensure unique IRQ configure function names per instance.

Signed-off-by: Khai Cao <khai.cao.xk@renesas.com>
2026-01-08 19:17:55 +01:00
Wilfried Chauveau
27fdf98638 cmake: package_helper: Remove an empty elseif
Cmake complains about this.

Signed-off-by: Wilfried Chauveau <wilfried.chauveau@arm.com>
2026-01-08 19:16:40 +01:00
Zhaoxiang Jin
732adf7865 soc: nxp: mcxn: Add OSTIMER support and refine system timer selection
Add MCUX_OS_TIMER configuration with CPU_FREQ-based default selection.
Update CORTEX_M_SYSTICK to be disabled when either LPTMR or OSTIMER
is selected as the system timer, ensuring only one timer is active.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-08 19:16:25 +01:00
Zhaoxiang Jin
790598e642 soc: nxp: mcxn: Remove redundant code
MCUX_LPTMR_TIMER is default to n, no need to set it again.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-08 19:16:25 +01:00
Zhaoxiang Jin
552004f3d1 boards: nxp: frdm_mcxn236: enable ostimer in dts
The MCXN236 can use ostimer as the kernel timer.
We enable it in the dts, and which specific timer
to use as the system timer can be controlled through
Kconfig option based on application requirements.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-08 19:16:25 +01:00
Muhammad Waleed Badar
fc2b697a77 boards: xunlong: add orangepi zero initial support
Add initial board support for the Xunlong Orange Pi Zero,
single-board computer based on the Allwinner H2+/H3 SoC.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-01-08 19:16:01 +01:00
Muhammad Waleed Badar
15a90b7783 soc: allwinner: add sun8i h3 soc support
Add initial support for the Allwinner H3 SoC, commonly
found in development boards like the Orange Pi series.

This commit introduces the intial SoC support files:
 - Basic Kconfig configuration and SoC definition
 - MMU region setup for memory management
 - SoC-specific headers and device tree source include

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-01-08 19:16:01 +01:00
Henrik Brix Andersen
0983eb3862 drivers: can: nxp: mcan: enable external timestamp counter support
Enable support for configuring and enabling the external timestamp counter
of the NXP LPC MCAN.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-01-08 19:15:29 +01:00
Henrik Brix Andersen
392e816ef0 drivers: can: mcan: add support for configuring internal timestamp counter
Add support for configuring and enabling the internal timestamp counter of
the Bosch M_CAN IP core.

Frontend drivers can overwrite this configuration for using a SoC-specific,
external timestamp counter.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-01-08 19:15:29 +01:00
Simon Maurer
50cfa1a5dd drivers: i2c: cdns: Clear hold flag on last data interrupt
Clear the hold flag during the final data interrupt; otherwise the
Transfer Complete interrupt is never asserted.

Signed-off-by: Simon Maurer <mail@maurer.systems>
2026-01-08 19:15:12 +01:00
Simon Maurer
39bfa1126a drivers: i2c: cdns: switch over to DEVICE_MMIO API
Switch the Cadence I2C device driver over to the use of the
DEVICE_MMIO_... macros instead of just using the physical base
address from the device tree.

Signed-off-by: Simon Maurer <mail@maurer.systems>
2026-01-08 19:15:12 +01:00
Simon Maurer
ed1520016b drivers: i2c: cdns: run clang-format
Run clang-format on drivers/i2c/i2c_cdns.c.

Signed-off-by: Simon Maurer <mail@maurer.systems>
2026-01-08 19:15:12 +01:00
Jonas Berg
9334cedb3d boards: Add support for Cytron Maker Nano RP2040
Tested with the commands in index.rst

Product photo from
https://github.com/CytronTechnologies/MAKER-NANO-RP2040/
blob/main/MAKER-NANO-RP2040-Image.PNG

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-08 08:33:32 -05:00
Marek Slowinski
1db1e69250 mpfs_icicle: Add renode overlay to cmsis_rtos_v1.philosopher tests
Tune quantum parameter for selected kernel tests
targeting mpfs_icicle platform.

Those tests require higher fidelity of the virtual
time flow which is achievable on multi-core platforms
in Renode by reducing the quantum.

Increase time resolution to 10us (default is 100us).
It is a maximum drift of the virtual time between
simulated processors in SMP configuration.

Signed-off-by: Marek Slowinski <mslowinski@antmicro.com>
2026-01-08 08:33:23 -05:00
Marek Slowinski
710ad5c4d8 boards: mpfs_icicle: add renode simulation support
Add Renode simulation support for `mpfs_icicle`.

Signed-off-by: Marek Slowinski <mslowinski@antmicro.com>
2026-01-08 08:33:23 -05:00
Juliusz Sosinowicz
3f04069069 drivers: entropy: virtio: use bounce buffer for virtio entropy driver
The device is not able to place the entropy into stack or heap allocated
buffers. This uses a bounce buffer to be able to use any buffer with
virtio entropy.

Signed-off-by: Juliusz Sosinowicz <juliusz@wolfssl.com>
2026-01-08 08:33:05 -05:00
Daniel Leung
d334130d5d soc: intel_adsp/ace: skip building arch reset vector
This disables the kconfigs to build the reset vector and crt1
startup code from the architecture layer as ACE has its own
rom_entry() as entry point.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-01-08 08:32:24 -05:00
Marco Casaroli
efc344bef0 test: eventfd: add test for close while read
When an eventfd is closed, while we are blocked in a read() call, the
close() call should succeed and read should return error.

Signed-off-by: Marco Casaroli <marco.casaroli@gmail.com>
2026-01-08 08:31:56 -05:00
Marco Casaroli
a78db0f8a9 posix: eventfd: ignore k_condvar_broadcast result
k_condvar_broadcast does not error. It returns the number of
woken threads on success. We should not assert any value.

Signed-off-by: Marco Casaroli <marco.casaroli@gmail.com>
2026-01-08 08:31:56 -05:00
Marco Casaroli
aa607f9b0a posix: eventfd: fix deadlock with POSIX API
When eventfd is used through read(2) and write(2), the mutex is
already locked from the fdtable implementation. So we remove the
usage of the mutex from the zvfs_eventfd_*_op functions, as it is
already managed by fdtable.

However, when zvfs_eventfd_{read,write} are used, no fdtable layer
is used and we shuld call the _op function with the mutex locked
(the same behavior as with fdtable), so these functions should
manage the mutex. We add it there.

Fixes #99234

Signed-off-by: Marco Casaroli <marco.casaroli@gmail.com>
2026-01-08 08:31:56 -05:00
Marco Casaroli
48ab80061b tests: eventfd: posix read interface
The eventfd API should work with the standard POSIX read/write
functions with the same behavior as the non-standard
eventfd_read/write API.

We add the tests for these interfaces.

Signed-off-by: Marco Casaroli <marco.casaroli@gmail.com>
2026-01-08 08:31:56 -05:00
Luca Burelli
060dd3b486 boards: arduino: fix long startup time with WIFI enabled
The default SDHC 'power-delay-ms' is 500 ms, which is unnecessarily long
and causes the boot time to increase by over 5 seconds on H7 boards with
the Murata Wi-Fi card (GIGA R1, Nicla Vision, Portenta H7).

Shortening this delay to 50 ms greatly improves boot time while keeping
compatibility with the controller spec.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2026-01-08 12:01:08 +00:00
Hau Ho
c4c919e6cd tests: drivers: adc: Add overlay file for FPB-RX261 board
Add overlay file for FPB-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-08 12:00:49 +00:00
Hau Ho
41079453fc tests: drivers: adc: Add overlay file for EK-RX261 board
Add overlay file for EK-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-08 12:00:49 +00:00
Hau Ho
9f0aa01333 boards: renesas: Add ADC support for FPB-RX261 board
Add ADC support for FPB-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-08 12:00:49 +00:00
Hau Ho
de115f5242 boards: renesas: Add ADC support for EK-RX261 board
Add ADC support for EK-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-08 12:00:49 +00:00
Hau Ho
d2f0799246 dts: renesas: rx: Add dts property node for ADC support on RX261
Add dts property node for ADC support on RX261

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-08 12:00:49 +00:00
Thinh Le Cong
36c5d6646d testsuite: include: zephyr: Add missing mappings for pragmas and recursion
Add missing TOOLCHAIN_WARNING_* definitions for the IAR toolchain:
- subsys/testsuite/include/zephyr/test_toolchain.h
- subsys/testsuite/include/zephyr/test_toolchain/iar.h

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-01-08 12:00:29 +00:00
Thinh Le Cong
15cdf90bee include: zephyr: toolchain: suppress Go004 warning for inline functions
IAR compiler may emit Error[Go004]: Could not inline function
when handling functions marked as always_inline or inline=forced,
especially in complex kernel code

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-01-08 12:00:29 +00:00
Thinh Le Cong
b170738d9f testsuite: include: zephyr: add stub for timestamp inline on IAR builds
Add a minimal implementation of test_asm_inline_other.h to support
non-GNUC toolchains (e.g. IAR) during kernel benchmark tests

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-01-08 12:00:29 +00:00
Thinh Le Cong
b90df06299 cmake: compiler: iar: skip GCC-specific lib detection
Avoid calling flag print-liggcc-file-name when using IAR

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-01-08 12:00:29 +00:00
Thinh Le Cong
ffc8575e8a debug: fix IAR build due to alias type mismatch in thread_info.c
Fix IAR compiler error Pe1153 caused by mismatched alias type between
_kernel_openocd_offsets and _kernel_thread_info_offsets.

The alias now uses [] to match the array type. No functional change.

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-01-08 12:00:29 +00:00
Fabrice DJIATSA
955f376078 drivers: flash: stm32 ospi: use OPI erase opcode in correct mode
The commit c42c8a4da4 (do not invalidate bet at end of loop")
correctly restored the best erase type (bet) selection logic
based on SFDP/JESD216 erase types.
However, this caused a regression
in Octal OPI mode: when bet != NULL, the driver started using bet->cmd
(a standard SPI 1-byte opcode) directly, which is not valid in OPI mode
where the controller expects OPI opcodes (2-byte OCMD).

When bet != NULL:
- In OPI mode, ignore bet->cmd and use the OPI sector erase
opcode SPI_NOR_OCMD_SE.
- In SPI/QPI modes, keep using bet->cmd as intended.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-08 11:59:49 +00:00
Nikhil Namjoshi
9151a32713 net: http: server: Enable HTTP1.0 request compatibility
Per RFC9112 (REF #1), HTTP/1.1 server is expected to be backward
compatible with HTTP1.0 request. Mainly HTTP/1.0 does
not support
1) Transfer Encoding : chunked
2) KeepAlives

So, this change will identify the HTTP protocol
version in the request and respond accordingly.

REF#
1) https://httpwg.org/specs/rfc9112.html

Tested:
1) Verified that HTTP/1.1 requests are served as usual
i.e. with chunked transfer encoding and the connection
is a Keep Alive connection

Query exits after 10s, indicating that the client connection to
the HTTP server is a Keep Alive.

```
time printf "GET /telem HTTP/1.1\r\nHost: 192.0.3.11\r\n\r\n" |
    nc 192.0.3.11 80

real    0m10.185s  <- Indicates connection was kept active for 10s
user    0m0.023s
sys     0m0.023s
```

`Transfer Encoding :  chunked` header and chunked encoding
metadata (chunk size hex bytes, crlf, termination byte 0)
are present in the response.

```
HTTP/1.1 200 OK
Transfer-Encoding: chunked <- Chunked encoding header
Content-Type: text/html

3e8 <- Chunk size hex bytes

:
/health/secondsdevice_ae:9a:22:48:0f:70"seconds0
+
/health/locatedevice_ae:9a:22:48:0f:70"0
/
/network/mac-addressdevice_ae:9a:22:48:0f:70"
.
.
.

3e8 <- Chunk size hex byte
_PLUS_rawdevice_ae:9a:22:48:0f:70"0
6
/dev/ISHARE_CBU_MINUS_rawdevice_ae:9a:22:48:0f:70"0
.
.
.
/dev/part_iddevice_ae:9a:22:48:0f:70"0���������
,
/dev/part_typedevice_ae:9a:22:48:0f:70"0
7
/dev/part_telemetry_disabledevice_ae:9a:22:48:0f:70"0
0 <- Termination Byte 0
```

2) Verfied that HTTP/1.0 requests are served with
response without chunked transfer encoding and the
connection is closed immediately.

Query exits immediately indicating the connection is closed immediately

```
time printf "GET /telem HTTP/1.0\r\nHost: 192.0.3.11\r\n\r\n" |
    nc 192.0.3.11 80

real    0m0.186s <- Indicates connection was terminated immediately.
user    0m0.018s
sys     0m0.030s

```

`Transfer Encoding : chunked` header and chunked encoding
metadata (chunk size hex bytes, crlf) not present in the
response

```
HTTP/1.1 200 OK
Content-Type: text/html

:
/health/uptimedevice_ae:9a:22:48:0f:70"seconds0
+
/health/locatedevice_ae:9a:22:48:0f:70"0
/
/network/mac-addressdevice_ae:9a:22:48:0f:70"
.
.
.
3

/dev/part_iddevice_ae:9a:22:48:0f:70"0���������
,
/dev/part_typedevice_ae:9a:22:48:0f:70"0
7
/dev/can_telemetry_disabledevice_ae:9a:22:48:0f:70"0
```

Signed-off-by: Nikhil Namjoshi <nikhilnamjoshi@google.com>
2026-01-08 11:59:43 +00:00
Jonas Berg
26b56d71ba boards: Add support for Adafruit Feather RP2040 Scorpio
Tested with the commands mentioned in index.rst

Product photo from https://learn.adafruit.com/assets/117239
with the license CC BY-SA 3.0

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-08 11:59:33 +00:00
Aleksandr Khromykh
fccf76a857 bluetooth: mesh: add mesh api prefix to app key structure
Commit adds `bt_mesh_` prefix to `struct app_key`
to make it compatible with other internal API.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2026-01-08 11:58:09 +00:00
Aleksandr Khromykh
58667568ed bluetooth: mesh: move key primitives from mesh to keys header
Commit moves enumeration and definition related to keys
from mesh.h to keys.h

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2026-01-08 11:58:09 +00:00
Aleksandr Khromykh
ceec1fd047 doc: release-notes-4.4: add option for mesh key sync
Commit adds option description to keep keys in sync
between mesh core and cdb implementations.
Option changes default behavior so it should be added to
the release notes.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2026-01-08 11:58:09 +00:00
Aleksandr Khromykh
e6bb053efe samples: bluetooth: mesh: disable key sync for mesh provisioner
Commit disables key synchronization for mesh provisioner sample
to not refactor it according to key synchronization implementation.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2026-01-08 11:58:09 +00:00
Aleksandr Khromykh
9e7d75a59d tests: bluetooth: mesh: bsim tests to check key sync between core and cdb
Commit adds bsim tests those check key synchronization
between core implementation and cdb. Tests check both
network and application key synchronization.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2026-01-08 11:58:09 +00:00
Aleksandr Khromykh
0e2f88f31c tests: bluetooth: mesh: optimize persistent tests
bsim persistent test does not require cdb subnetwork update
for not primary network keys anymore.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2026-01-08 11:58:09 +00:00
Aleksandr Khromykh
afdf571b3b bluetooth: mesh: improve cdb debug logging
Commit improves cdb debug logging adding settings path
for subnetwork and removing unnecessary words.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2026-01-08 11:58:09 +00:00
Aleksandr Khromykh
1d50cd111d bluetooth: mesh: add key sync between core and cdb
Commit adds functionality that synchronizes network and
application keys between mesh core and cdb.
Additionally, subnetwork bridge bsim tests were fixed since
cdb cannot allocate subnetwork if it exists.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2026-01-08 11:58:09 +00:00
Aleksandr Khromykh
19bc2214f3 bluetooth: mesh: refactore app key event
Event about application key changes has been refactored.
Event provides access to the corresponding applicarion key
structure instead just key indexes.
The related code has been moved from mesh.h to app_keys.h.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2026-01-08 11:58:09 +00:00
Gaetan Perrot
3c7d6ece5a drivers: wifi: eswifi: eswifi_offload: fix DHCP enable error handling
eswifi_off_enable_dhcp() ignored the return value of eswifi_at_cmd()
and always reported success, making the error check at the call site
always false.

Return the command result to properly propagate failures.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-08 11:56:32 +00:00
Jamie McCrae
a12fa17303 boards: deprecated: Remove old deprecated boards
Removes boards that were deprecated in Zephyr 4.0

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-08 11:56:06 +00:00
Guillaume Gautier
a207354ddc doc: releases: migration-guide-4.4: new st,adc-resolutions property
Add migration guide documentation about the impact of the new
st,adc-resolutions property.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-08 11:55:35 +00:00
Guillaume Gautier
c81e2f70fe drivers: adc: stm32: clean up concat macros
Some internal _CONCAT* macros were used throughout the file. Replace them
with the simple CONCAT macro.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-08 11:55:35 +00:00
Guillaume Gautier
d81dee74c9 include: dt-bindings: adc: remove all stm32*_adc.h
Now that the STM32 ADC resolution property do not use special macros
anymore, these include files can be removed.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-08 11:55:35 +00:00
Guillaume Gautier
e141cdfa41 dts: arm: st: remove old resolutions property from adc nodes
Remove old resolutions property from the st,stm32-adc binding and from all
ADC nodes of all STM32 dtsi since it is no longer used.
Also remove some now unnecessary includes from the dtsi.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-08 11:55:35 +00:00
Guillaume Gautier
717d7e8ee0 drivers: adc: stm32: resolution rework
Rework the way to set the STM32 ADC resolution.
Instead of using special macros in device tree, supported resolutions are
now simply listed as an array.

From this array, the driver defines two tables. The first contains the same
values as the array, the second contains the LL macros for each resolution.
When setting the resolution, the driver checks the value with the first
table, then sets it with the second table.

The two tables are defined for each enabled ADC instance so there are no
conflicts if different ADC have different resolutions.

For STM32H7, this changes the internal values used for 14 and 12-bit
resolutions, from 0b101/110 to 0b001/010 respectively, i.e. it uses the
so-called "legacy" resolutions instead of the "power-optimized" ones.
Note that AN5354 indicates: "The optimized modes have better power
consumption figures. The standard modes have better parameters, but
power consumption is not optimized and is comparable to 16-bit mode."

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-08 11:55:35 +00:00
Guillaume Gautier
e7fab2739c dts: arm: st: add new st,adc-resolutions property to dtsi
Add the new st,adc-resolutions property for all ADC of all STM32 series.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-08 11:55:35 +00:00
Guillaume Gautier
056878676e dts: bindings: adc: stm32: add new st,adc-resolutions property
Add a new st,adc-resolutions property for STM32 ADC. This property takes
a simple array of the supported resolutions. Goal is to replace to previous
resolutions property.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-08 11:55:35 +00:00
Gaetan Perrot
5768f30f0d drivers: wifi: esp_at: esp_offload: drop unused dev variable in esp_bind
The esp_data pointer is no longer used after removing the premature
_sock_connect() call. Drop the unused variable.

_sock_connect() call was removed by c368c33.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-08 11:55:25 +00:00
Gaetan Perrot
795836c5cb dts: bindings: nrfs-swext: fix typos in bindings
Fix typos in property descriptions in the NRFS SWEXT power domain
binding.

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-08 11:55:09 +00:00
Douglas Holtsinger
6c410584dd modules: hal_st: Fix Kconfig USE_STDC_LSM6DS3TR
Align Kconfig USE_STDC_LSM6DS3TR with hal_st
Fixes zephyrproject-rtos/zephyr#53546
See also hal_st PR #22

Signed-off-by: Douglas Holtsinger <doug.holtsinger@gmail.com>
2026-01-08 09:51:45 +01:00
Lane Westlund
97f4a67187 doc: fix additional instances of build/built typos
In some cases, "is build" was written instead of "is built"

Signed-off-by: Lane Westlund <lane@westlund.net>
2026-01-08 09:51:08 +01:00
Jamie McCrae
1bbbb286b3 cmake: Remove old deprecated code
Removes code that was deprecated in Zephyr 4.0

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-08 09:50:19 +01:00
Jamie McCrae
c02c6add10 cmake: modules: boards: Remove deprecated HWMv1 extension handling
This code was deprecated and removed from the documentation many
releases ago, remove the feature from the code

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-08 09:49:56 +01:00
Ruibin Chang
0671dc7925 drivers/wdt/it8xxx2: support setting time interval of warning msg
Add the config to support that warning message time
interval can be set.

We also find that printing all the warning messages
takes about 50ms on Chromebook. Therefore, we increase
the default time to 100ms to leave some time for EC to run
non-print instructions.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2026-01-08 09:49:28 +01:00
Qingsong Gou
44b8f1c025 tests: drivers: uart: uart_async_api: add sf32lb52_devkit_lcd support
Add sf32lb52_devkit_lcd support

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-08 09:47:49 +01:00
Gaetan Perrot
560ecb2949 drivers: wifi: eswifi: eswifi_socket: fix listen backlog error handling
__eswifi_listen() ignored errors from eswifi_at_cmd() and always
reported success, leaving the local error variable unused.

Return an error when setting the listen backlog fails and avoid
marking the socket as a server in that case.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-08 09:47:17 +01:00
Henrik Brix Andersen
9186d6864a boards: native: add support for static linking
Add support for static linking of the final native simulator runner.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2026-01-08 09:45:55 +01:00
Tom Burdick
c11ae6b6b2 mctp: I3C bindings and samples
Adds bindings for communicating with the MCTP protocol over I3C with IBI
for signaling.

Notably I3C currently requires devices on the bus be struct device's the
way the Nuvoton driver is written and the API is written. So we create a
little glue driver (mctp_i3c_endpoint) to allow us to later bind a aptly
named mctp_i3c_controller MCTP binding.

On the target side the only usable driver for target mode is Nuvoton's.
Nuvoton's driver only implements the optional buffer read/write
callbacks rather than the read/write byte at a time callbacks. This is
actually probably for the better but it does mean this binding requires
those optional target mode functions.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2026-01-08 09:35:25 +01:00
Terry Geng
1840356341 drivers: led_strip: ws2812_rpi_pico_pio: Add DMA support
so that time-consuming I/O takes place in the background. This is
especially important when writing to multiple long LED strips.

This commit mostly mirrors what was done in the pl022 driver and the
rpi_pico_pio_spi driver, including the needed DT configuration. DMA will be
used if `CONFIG_DMA` is enabled and proper `tx` channel is defined in the
DT.

The DT overlay I used when testing:
```
&pio0 {
	status = "okay";

	pio-ws2812 {
		compatible = "worldsemi,ws2812-rpi_pico-pio";
		status = "okay";
		pinctrl-0 = <&ws2812_pio0_default>;
		pinctrl-names = "default";
		bit-waveform = <3>, <3>, <4>;

                /* This device has no tx channel configured so DMA will NOT
                 * be used. */
		ws2812_1: ws2812_1 {
			status = "okay";
			gpios = <&gpio0 23 GPIO_ACTIVE_HIGH>;
			chain-length = <1>;
			color-mapping = <LED_COLOR_ID_GREEN
                                         LED_COLOR_ID_RED
                                         LED_COLOR_ID_BLUE>;
			reset-delay = <280>;
			frequency = <800000>;
		};

                /* This device has proper tx channel configured so DMA will
                 * be used. */
		ws2812_2: ws2812_2 {
			status = "okay";
			gpios = <&gpio0 19 GPIO_ACTIVE_HIGH>;
			chain-length = <64>;
			color-mapping = <LED_COLOR_ID_RED
                                         LED_COLOR_ID_GREEN
                                         LED_COLOR_ID_BLUE>;
			reset-delay = <280>;
			frequency = <800000>;

			dmas = <&dma 1 0 0>;
                        /* DMA slot will be
                         * determined by the driver so what's in here
                         * doesn't matter. */
			dma-names = "tx";
		};
	};
};

&dma {
	status = "okay";
};
```

Signed-off-by: Terry Geng <terry@terriex.com>
2026-01-08 09:33:51 +01:00
Terry Geng
7081a5ff4b drivers: led_strip: ws2812_rpi_pico_pio: Use reset timer instead of sleep
to guarantee two updates to ws2812 happen not faster than the required
reset time of ws2812. Using `k_usleep` forces a context switching, which
might be unnecessary if two time between update calls are not as frequent
as the reset time (which should be the most of the case anyways).

Signed-off-by: Terry Geng <terry@terriex.com>
2026-01-08 09:33:51 +01:00
Tu Nguyen Van
1428bc537a boards: nxp: s32k5xxcvb: add support i2c
Add support I2C (LPI2C) for S32K5XXCVB

Signed-off-by: Tu Nguyen Van <tu.nguyenvan@nxp.com>
Co-authored-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-08 09:32:05 +01:00
Dat Nguyen Duy
b1da557ae8 tests: drivers: i2c_target_api: enable test for s32k5xxcvb
Enable i2c_target_api for s32k5xxcvb

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-08 09:32:05 +01:00
Dat Nguyen Duy
e090988bcc Dts: nxp: add lpi2c devicetree nodes for s32k566
Add LPI2C devicetree nodes for S32K566

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-08 09:32:05 +01:00
Tim Pambor
84d5c3bd2d tests: drivers: build_all: ethernet: test dwmac driver for MMU platforms
Add a board overlay for the qemu_cortex_a9 board to build the
Synopsys DesignWare MAC driver for MMU platforms.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-01-08 09:29:34 +01:00
Tim Pambor
e70fd60d9d tests: drivers: build_all: ethernet: test dwmac driver for STM32H7
Add a test case to build the Synopsys DesignWare MAC driver for STM32H7
series SoCs. This drivers is an alternative to the existing ETH_STM32_HAL
driver. As such both drivers cannot be enabled at the same time.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-01-08 09:29:34 +01:00
Tim Pambor
2e9ba24515 drivers: ethernet: dwmac: Fix Kconfig for stm32h7
DWMAC driver was no longer selectable for stm32h7
series because of CONFIG_ETH_DWMAC dependency on
DT_HAS_SNPS_DESIGNWARE_ETHERNET_MMU_ENABLED, which
is only used for MMU based platforms.

Restructure Kconfig to have user-selectable options
for the platform-specific DWMAC drivers and select
the common DWMAC driver accordingly. This way
platform-specific dependencies can be tracked on
these options, simplifying the logic.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-01-08 09:29:34 +01:00
Nicholas Braaten
d426f153ae doc: clarified description of k_uptime_delta
Description added in docs.
Header updated to clarify that the function modifies the argument.

Signed-off-by: Nicholas Braaten <git@nicbra.no>
2026-01-08 09:28:20 +01:00
Manojkumar Konisetty
547f1bbb11 drivers: gpio: Add Infineon PSoC4 GPIO driver
Introduces a GPIO driver that provides generic interfaces
for both interrupt-driven inputs and controllable outputs.

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-08 09:27:24 +01:00
Manojkumar Konisetty
e589deb665 boards: cy8cproto_041tp: Add dts for button and led
- Add LED0 and SW0 support to CY8CPROTO-041TP board
- This enables applications to use led0 and sw0 through
  standard Zephyr subsystems without additional board-specific
  configuration.

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-08 09:27:24 +01:00
Dharun krithik k
1f5bd18bb0 boards: cy8cproto_041tp: refactor dts and enable UART
Refactor the CY8CPROTO-041TP board definition by extracting common
configurations into \`cy8cproto_041tp_common.dtsi\`. This improves
reusability and structure.

Additionally, refactored the nodes accordingly and configure necessary
system clocks:
- Configure 16-bit peripheral dividers.
- Enable clock paths.

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-08 09:27:24 +01:00
Dharun krithik k
e5e92f6c8f drivers: clock_control: update infineon clock drivers
Update the Infineon clock control drivers to support PSoC4 and
enhance error handling.

- Add support for ILO, WCO, and EXT clocks in fixed clock driver.
- Update fixed factor clock driver to handle PSoC4 specific HF
  clock source setting and add error checking.
- Update peripheral clock driver to support fractional dividers
- Improve error handling across all updated drivers.

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-08 09:27:24 +01:00
Dharun krithik k
a3ed433659 dts: infineon: update PSoC4100TP system clock nodes
Update the system clock device tree definitions for the Infineon
PSoC4100TP series.

Refactor the peripheral divider nodes in `system_clocks.dtsi` to
align with the hardware specifications. This includes renaming nodes
and updating group associations for correct clock configuration.
Update `infineon,peri-div.yaml` binding to support the changes.

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-08 09:27:24 +01:00
Dharun krithik k
85d3a7b708 dts: infineon: update PSoC4100TP SoC nodes
Update all Infineon PSoC4100TP device tree nodes to use current
binding naming convention by removing the 'cat1-' prefix

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-08 09:27:24 +01:00
Dharun krithik k
7f644b104f dt-bindings: clock: add Infineon PSoC4 clock source bindings
Add clock source definitions for the Infineon PSoC4 series.
This introduces the \`ifx_clock_source_psoc4xx.h\` header with
HFCLK divider macros and integrates it into the board clock
source selection.

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-01-08 09:27:24 +01:00
Haoran Jiang
e7cfa7ae02 MAINTAINERS: add HalfSweet as SF32LB collaborator
Add myself as SF32LB collaborator

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2026-01-08 09:25:08 +01:00
Henrik Brix Andersen
f931c5a44f drivers: can: mcan: reintroduce assert in can_mcan_send()
Reintroduce the assert on put_idx being within the limit in can_mcan_send()
but move it to just after the value was determined and add a comment on its
purpose.

With the current code, this will never get triggered due to the tx_sem
being acquired before (meaning a free TX slot was acquired).

Avoid assigning a signed initial literal to an unassigned type.

Fixes: 8dc4dea112

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2026-01-07 14:53:30 -06:00
Rob Barnes
24ab32c1dd soc: ite: Add idle exit tracing
The idle enter was being traced but idle exit was not.
This change adds the missing call to sys_trace_idle_exit()
to the idle exit path for the it51xxx and it8xxx2 SoCs.

Signed-off-by: Rob Barnes <robbarnes@google.com>
2026-01-07 14:52:59 -06:00
Julien Vermillard
ff6d163ff7 boards: holyiot: support holyiot 25008
Add support fot the holyiot 25008 board.
Bluetooth 6.0 module based on NRF54L15.

Signed-off-by: Julien Vermillard <julien@clunkymachines.com>
2026-01-07 14:52:38 -06:00
Muhammad Waleed Badar
f31516d461 drivers: uart: pl011: fix poll_in function
RSR handling is already implemented in pl011_err_check(), which is the
appropriate place to detect, and report receive error conditions.

This also aligns poll_in() behavior with pl011_fifo_read(), which reads
and delivers characters without returning RSR status to the caller.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-01-07 14:52:10 -06:00
Yves Wang
88e7b3b451 scripts: build: Accept python object in Domain's constructor
Make Domain's class constructor accept python object to avoid redundant
YAML serialize and unserialize which may introduce potential yaml type
errors.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2026-01-07 14:51:44 -06:00
Jayvik Desai
8c207308a4 drivers: gpio: emul: validate pins in single-pin APIs and mask in port APIs
Add input validation to single-pin GPIO APIs (e.g., gpio_pin_configure)
and emulator-specific helpers to return -EINVAL for invalid pins. This
ensures tests correctly fail when targeting non-existent pins.

For standard port-wide APIs (e.g., gpio_port_set_bits_raw), align behavior
with hardware drivers by masking out invalid pins instead of returning an
error. This mimics hardware behavior where writing to unimplemented bits
is ignored, and ensures compatibility with generic tests that use full
32-bit masks (e.g., 0xFFFFFFFF).

Signed-off-by: Jayvik Desai <jayvik@google.com>
2026-01-07 14:50:43 -06:00
Pieter De Gendt
b85fa7b256 doc: contribute: guidelines: Document KeepSorted and options
Add a documentation section about the KeepSorted compliance check and
which options it provides.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-07 14:50:10 -06:00
Pieter De Gendt
28953da368 doc: contribute: guidelines: Use zephyr_file for compliance script
Use the directive to create an actual link to the check_compliance.py file.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-07 14:50:10 -06:00
Abderrahmane JARMOUNI
9f1eec508e dts: bindings: replace '.yml' file extension with '.yaml'
Replace the '.yml' extension of the few binding files that has it,
with '.yaml'.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2026-01-07 19:41:03 +01:00
Robert Perkel
fb353a41c0 samples: sensor: mtch9010 Fixed generation arg
Fixed error in west command
Updated console output to match

Signed-off-by: Robert Perkel <robert.perkel@microchip.com>
2026-01-07 19:40:41 +01:00
Tahsin Mutlugun
87ce02b011 drivers: i3c: Move i3c_bus_mode() to common layer
i3c_bus_mode() is duplicated across several drivers. Move it into
i3c_common.c to eliminate that.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2026-01-07 19:40:18 +01:00
Mathieu Choplain
36170c4530 arch: *: remove check for CONFIG_SOC_PER_CORE_INIT_HOOK
soc_per_core_init_hook() is usually called from arch_kernel_init() and
arch_secondary_cpu_init() which are C functions. As such, there is no need
to check for CONFIG_SOC_PER_CORE_INIT_HOOK since platform/hooks.h provides
a no-op function-like macro implementation if the Kconfig option is not
enabled.

Remove the Kconfig option check from all files.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-01-07 19:39:53 +01:00
Muhammad Waleed Badar
5286ce2565 samples: wifi: apsta_mode: use WIFI_USAGE_MODE_STA_AP as common Kconfig
- Replace CONFIG_ESP32_WIFI_AP_STA_MODE with CONFIG_WIFI_USAGE_MODE_STA_AP
- Move AP-STA mode enable/disable control to prj.conf
- Update documentation to reflect new configuration option
- Remove redundant Wi-Fi NM and SoftAP options from RW612 board configs

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-01-07 19:39:28 +01:00
Chaitanya Tata
b873286d54 net: l2: wifi: Fix channel and band validation
The validation is appliable independent of the implementation.

Partial fix for #101728.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-07 19:38:55 +01:00
Etienne Carriere
72e96e35dd drivers: clock_control: stm32h7: fix PLL rate with fractional PLL
Take PLL fractional part into account when computing PLL output rate
for stm32h7xx and stm32h7rs based targets.

Co-authored-by: Tim Pambor <tim.pambor@codewrights.de>
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-01-07 19:38:37 +01:00
Benjamin Klaric
25aed0abbe dts: arm: st: h7rs: add memory-regions property to mac node
Add the memory-regions property to mac in stm32h7rs.dtsi,
same as in stm32h7.dtsi, and set sram2 as default. Also add
the #memory-region-cells to sram2 and sram1 nodes.

Override the sram2 as default with sram1 in stm32h7s3.dtsi and
stm32h7s3.dtsi since sram2 is disabled per default.

Add the same checks as for h7 series to mpu_regions.c and sections.c.

Signed-off-by: Benjamin Klaric <benjamin.klaric01@gmail.com>
2026-01-07 19:38:11 +01:00
Benjamin Klaric
b0b306ca24 dts: arm: st: h7: add memory-regions property to mac node
Use the memory-regions property in stm32h7.dtsi to explicitly locate
ethernet buffer and descriptor to an sram region. Set sram2 as default
and override with sram3 when available, in soc level .dtsi files.

Add #memory-region-cells to sram2 and sram3 nodes in specific .dtsi
files in dts/arm/st/h7, since it is needed by the memory-regions
property.

Add a check for memory-regions before the check and definition of the
sram_eth_node in mpu_regions.c and sections.ld.

Signed-off-by: Benjamin Klaric <benjamin.klaric01@gmail.com>
2026-01-07 19:38:11 +01:00
Benjamin Klaric
7244af5bef dts: bindings: ethernet: add st,stm32h5-ethernet compatible
Add the compatible for h5 series for ethernet. The h5 series needs
it own because the memory-regions property isn't currently supported
by the implementation.

Add the h5 compatible to stm32h563.dtsi, in mac node.

Adjust the description in h7 compatible to remove the mention of h5
series, as now h5 series has it's own.

Signed-off-by: Benjamin Klaric <benjamin.klaric01@gmail.com>
2026-01-07 19:38:11 +01:00
Lukasz Fundakowski
2e36f57e8d scripts: Improve handling exceptions in compliance check script
When output from ruff check subprocess is not in JSON format
compliance script raises an exception without any useful information
about the error. This commit improves that by printing output from
subprocess in case of error.

Signed-off-by: Lukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2026-01-07 19:37:26 +01:00
Lucien Zhao
b6f6586dea test: drivers: can: support can cases on frdm-mcxe31b
- Support can test case: api/shell/timing
- Tese passed for three cases on my local

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-07 17:31:24 +01:00
Lucien Zhao
1f28dddf68 boards: nxp: frdm_mcxe31b: add flexcan0 support
- config flexcan0 pinmux
- enable flexcan0 instance

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-07 17:31:24 +01:00
Lucien Zhao
d5872f227d drivers: clock_control_nxp_mc_cgm.c: initialize flexcan clock source
-  initialize corresponding flexcan clock source when corresponding
   flexcan instance enabled

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-07 17:31:24 +01:00
Fabio Baltieri
5ddde71d2c regulator: shell: fix device completion for adget/adset
Add the dsub_device_name reference to adset/adget so it completes the
device name.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-07 17:30:51 +01:00
Fin Maaß
27068ed58e drivers: sensor: i2c: replace use of i2c_burst_write
i2c_burst_write is not portable,
as it is not supported by some drivers,
replace its use with i2c_write.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-07 17:30:32 +01:00
Fin Maaß
97a7b8f1cf drivers: rtc: i2c: replace use of i2c_burst_write
i2c_burst_write is not portable,
as it is not supported by some drivers,
replace its use with i2c_write.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-07 17:30:32 +01:00
Fin Maaß
d49a55265e drivers: led: i2c: replace use of i2c_burst_write
i2c_burst_write is not portable,
as it is not supported by some drivers,
replace its use with i2c_write.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-07 17:30:32 +01:00
Fin Maaß
3d6000e070 drivers: gpio: i2c: replace use of i2c_burst_write
i2c_burst_write is not portable,
as it is not supported by some drivers,
replace its use with i2c_write.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-07 17:30:32 +01:00
Fin Maaß
0957115fc9 drivers: fuel_gauge: i2c: replace use of i2c_burst_write
i2c_burst_write is not portable,
as it is not supported by some drivers,
replace its use with i2c_write.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-07 17:30:32 +01:00
Fin Maaß
1a88ea527f drivers: display: i2c: replace use of i2c_burst_write
i2c_burst_write is not portable,
as it is not supported by some drivers,
replace its use with i2c_write.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-07 17:30:32 +01:00
Fin Maaß
e182730f7a drivers: charger: i2c: replace use of i2c_burst_write
i2c_burst_write is not portable,
as it is not supported by some drivers,
replace its use with i2c_write.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-07 17:30:32 +01:00
Fin Maaß
f6558d5cdf drivers: audio: i2c: replace use of i2c_burst_write
i2c_burst_write is not portable,
as it is not supported by some drivers,
replace its use with i2c_write.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-07 17:30:32 +01:00
TOKITA Hiroshi
e0c706a7f5 soc: raspberrypi: rpi_pico: Defaultly turn off BINARY_INFO feature
The binary-info feature that introduced in #54290 causing trouble
with some rp2xxx variant boards.
Turning off this feature defaultly to solve these problems.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-07 14:56:56 +00:00
Arnaud Pouliquen
f7ce7d28e0 west.yml: Update libmetal and open-amp for v2025.10.0 release
Update to the last release of open-amp and libmetal libraries

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2026-01-07 14:56:34 +00:00
Cristian Bulacu
f262a33a94 net: l2: openthread: Make use of Zephyr OTBR NAT64 translator flag
This commit aims to declare and call NAT64 functions used by Border
Router application only if corresponding flag is also set.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2026-01-07 14:56:06 +00:00
Cristian Bulacu
d07e655638 openthread: platform: Fix compile warnings related to NAT64 or IPV4
Make use of CONFIG_OPENTHREAD_ZEPHYR_BORDER_ROUTER_NAT64_TRANSLATOR flag in
platform code.
Fixed some compile warnings in `mdns_socket.c` when IPV4 is not enabled,
by moving some variables under `CONFIG_NET_IPV4` define

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2026-01-07 14:56:06 +00:00
Cristian Bulacu
ade5b4d637 openthread: Kconfig: Add config flag for NAT64 translator
This config flag sets all the requirements and dependencies for NAT64
translator enablement. By default, NAT64 translator is enabled in an
OpenThread Border Router application.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2026-01-07 14:56:06 +00:00
Valerio Setti
827ce8a74c modules: uoscore-uedhoc: remove Kconfigs for legacy Mbed TLS crypto
Those were needed when uoscore-uedhoc was using "mbedtls_pk_ec()" function
to uncompress EC points. The library has been updated since then and
this legacy function is no more required. As a consequence also legacy
Kconfigs can be removed as well.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2026-01-07 14:56:00 +00:00
Valerio Setti
d4fbd079de manifest: uoscore-uedhoc: include improvement for compressed EC key parsing
Remove dependency on legacy Mbed TLS legacy crypto functions which have
been removed in the latest Mbed TLS/TF-PSA-Crypto release.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2026-01-07 14:56:00 +00:00
Bjarki Arge Andreasen
356f455f3d tests: drivers: pwm: gpio_loopback: implement pm device runtime
Implement pm device runtime to resume PWM devices before they are
used, and put them after, for platforms which use and enable pm
device runtime.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-07 14:55:50 +00:00
Fabio Baltieri
2cf6167357 tests: net: socket: run igmp on the mcast tests
The ipv4 code now filters for multicast packets for non joined groups,
make sure the test join the group before trying to create traffic on
that address.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-07 14:55:36 +00:00
Fabio Baltieri
a09dbee852 net: ipv4: Drop ipv4 mcast packets for non joined groups
Add a check to drop ipv4 multicast packets that are not matching any
currently registered multicast group for the interface that received
them.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-07 14:55:36 +00:00
Ben Marsh
9476c62c80 cmake: Fix extensions module's implicit dependency on yaml module
The CMake extensions module depends on the yaml module, but extensions did
not explicitly include yaml.

When using find_package(Zephyr ...) with no components specified this
issue is not seen as zephyr_default is included which includes many other
modules, including yaml and extensions.
However, when find_package(Zephyr ... COMPONENTS ...) is used only the
components specified are included, which can result in a build error. For
example, using find_package(Zephyr ... COMPONENTS FindHostTools ...)
includes FindHostTools, which includes extensions, which depends on yaml
but doesn't include it.

This issue is fixed by including yaml in extensions.

Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
2026-01-07 14:08:00 +01:00
Hubert Guan
0b57af0c94 lib: multi-heap: Add shared_multi_heap_realloc
Add the function shared_multi_heap_realloc to reallocate memory blocks
in shared multi-heaps.

Signed-off-by: Hubert Guan <hubertyguan@gmail.com>
2026-01-07 14:07:52 +01:00
Appana Durga Kedareswara rao
b0f1e47b05 boards: amd: versalnet_rpu: add TCM memory node
Add Tightly Coupled Memory (TCM) device tree node:
- Base address: 0x0
- Size: 64KB (0x10000)
- Compatible: mmio-sram

TCM provides low-latency memory access for R52 cores
and is essential for real-time applications.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-01-07 14:07:43 +01:00
Appana Durga Kedareswara rao
afd48302d1 boards: amd: Correct sram node to fix DMA failures
The existing sram node wiring is incorrect as it starts from 0x0, where the
TCM is mapped. The TCM size is 128 KB (with TCM A having 64 KB, TCM B 32
KB, and TCM C 32 KB). While TCM and DDR are mapped contiguously, to avoid
having TCM addresses in sram region to prevent potential DMA failures. The
address view of TCM for the RPU differs from that of other DMA masters,
which can cause DMA failures if DMA buffers are allocated in the TCM
region. Therefore, start sram region from 0x30000 (192 KB) to prevent DMA
buffer allocation within the TCM region.

Note: Although the TCM size is 128 KB, the SRAM region base address set to
192 KB to align with the QEMU models, where additional 64 KB memories are
mapped beyond the TCM.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-01-07 14:07:43 +01:00
Emanuele Di Santo
bc97315e0b kernel: timer: let k_timer_status_sync() idle the CPU when MT is off
This patch modifies k_timer_status_sync() to idle the CPU when MT
is disabled, instead of busy-looping. For this purpose, the spinlock
in the MULTITHREADING=n case has been reduced to a irq_lock(),
which works in pair with k_cpu_atomic_idle() to ensure the atomicity
of enabling the IRQs and idling the CPU.

Signed-off-by: Emanuele Di Santo <emdi@nordicsemi.no>
2026-01-07 14:07:33 +01:00
Daniel Schaefer
ed5bfabf2e framework_laptop16_keyboard: Add full_name
Add a full, pretty name for the docs page.

Signed-off-by: Daniel Schaefer <dhs@frame.work>
2026-01-07 12:32:05 +01:00
Emil Gydesen
f90d497147 tests: Bluetooth: Tester: Various format fixes for the Readme
Since this file is not built with the documentation system,
some of the references didn't work. References to tools, boards,
etc. have been encapsulated by the appropriate ticks.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-07 12:31:52 +01:00
Qingsong Gou
47a525423a drivers: spi: sf32lb: fix parentheses error
Fix parentheses error

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-07 12:31:36 +01:00
Qingsong Gou
f0099a0d49 drivers: adc: sf32lb: fix adc sequence
Fix adc sequence for for sf32lb

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-07 12:31:36 +01:00
Qingsong Gou
639c5f01c7 tests: drivers: build_all: adc: add test for sf32lb
Add test for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-07 12:31:36 +01:00
Qingsong Gou
5acd482724 drivers: adc: sf32lb: fix adc_async build warnings
Fix adc_async build warnings

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-07 12:31:36 +01:00
Qingsong Gou
dac3f66622 drivers: adc: sf32lb: fix coding style
Fix coding style for sf32lb

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-07 12:31:36 +01:00
Qingsong Gou
2da9089ae4 drivers: adc: sf32lb: fix adc value not correct
Fix adc value not correct

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2026-01-07 12:31:36 +01:00
Henrik Brix Andersen
cc25a8ada4 drivers: can: mcan: fix race condition when adding CAN RX filters
Move the assignment of the callback function and user data within the mutex
lock when adding CAN RX filters to prevent race conditions.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-01-07 12:31:20 +01:00
Henrik Brix Andersen
0665c70d70 drivers: can: mcan: add missing mutex unlocks in error paths
Add missing calls to k_mutex_unlock() in error paths when failing to add
CAN RX filters.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-01-07 12:31:20 +01:00
Henrik Brix Andersen
8dc4dea112 drivers: can: mcan: remove useless asserts
Remove useless asserts. These indexes are determined via a for loop which
already uses the asserted value as its maximum.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-01-07 12:31:20 +01:00
Zhaoxiang Jin
f4d4d8210c drivers: timer: cortex_m_systick: add devicetree clock-source property
Add support for configuring the SysTick clock source via devicetree
using a new `clock-source` property. This allows selecting between
the external reference clock (0) and the processor clock (1).

Previously, the driver always set the CLKSOURCE bit, forcing the use
of the processor clock. This change introduces a helper function
`systick_ctrl_clksource_flag_from_dt()` that reads the devicetree
property and returns the appropriate CTRL register flag.

The CTRL register is now programmed deterministically using direct
assignment instead of `|=` to ensure the CLKSOURCE bit is properly
cleared when switching to external clock, preventing potential
interrupt storms when CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC reflects
the external clock rate.

If the property is absent, the driver defaults to legacy behavior
(processor clock).

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-07 10:23:47 +01:00
Ha Duong Quang
b0d44e10fc boards: nxp: s32k5xxcvb: add support for counter
Add support for Counter (PIT, STM)

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
Co-authored-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-07 10:22:49 +01:00
Dat Nguyen Duy
2cb723730b tests: counter_basic_api: enable counter for s32k5xxcvb
Enable counter tests for s32k5xxcvb

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-07 10:22:49 +01:00
Dat Nguyen Duy
028562cd74 samples: counter: alarm: enable the sample for s32k5xxcvb
Enable counter alarm sample for s32k5xxcvb

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-07 10:22:49 +01:00
Dat Nguyen Duy
5bb9498b3e dts: nxp: add stm, pit devicetree nodes for s32k566
Add STM, PIT devicetree nodes for s32k566

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-07 10:22:49 +01:00
Dat Nguyen Duy
212f8671b9 drivers: counter_nxp_pit: fix problem when multiple instances enabled
The current pit driver fails to build if multiple instances
enabled with per channel interrupt

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2026-01-07 10:22:49 +01:00
Chris Friedt
de62eb23eb net: compat: remove conflicting declaration of ARPHRD_ETHER
Without removing this line, I would get a warning (promoted to error) that
the symbol was being redefined in either `net_ip.h` or
`posix/net/if_arp.h`. Actually, `posix/net/if_arp.h` probably should not
exist, but that is part of a separate PR.

Signed-off-by: Chris Friedt <chris@fr4.co>
2026-01-07 10:22:34 +01:00
Chris Friedt
31e54732f5 tests: net: use zsock APIs instead of POSIX APIs
Use zsock APIs rather than POSIX APIs in net subsys tests.

The primary last remaining API call was `fcntl()` and related
constants, strings, etc.

It's convention to use native zephyr APIs in the testsuites and
POSIX APIs in samples.

Signed-off-by: Chris Friedt <chris@fr4.co>
2026-01-07 10:22:34 +01:00
Yangbo Lu
58116ac9b5 samples: net: mdns_responder: support mimxrt1180_evk_mimxrt1189_cm33 board
Added mimxrt1180_evk_mimxrt1189_cm33 board support for mdns_responder.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2026-01-07 10:22:02 +01:00
Yangbo Lu
0773074474 net: dsa_port: disable IPv4/IPv6 for CPU port
DSA CPU port is only used for DSA management. Let's
disable IPv4/IPv6 for it.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2026-01-07 10:22:02 +01:00
Yangbo Lu
e7c8ab3324 net: mdns_responder: avoid running for IP not enabled iface
For iface which doesn't support IPv4/IPv6, mdns_responder should not be
run.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2026-01-07 10:22:02 +01:00
Yangbo Lu
11dbf5ae7a net: mdns_responder: do not add IPv4 multicast address to iface repeatly
After iface was link up, the IPv4 multicast address was added to iface
repeatly. This patch is to fix this.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2026-01-07 10:22:02 +01:00
Fabio Baltieri
dadcad5495 regulator: tps55287: implement current limit support
Implement current limit get/set support, this requires setting the shunt
resitor value.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-07 10:21:41 +01:00
Fabio Baltieri
40efe8af92 regulator: tps55287: add cdc setting support
Add a property for setting the CDC register.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-07 10:21:41 +01:00
Fabio Baltieri
5d72677eb6 regulator: tps55287: add output-discharge support
Implement the output discharge control regulator API.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-07 10:21:41 +01:00
Fabio Baltieri
070ff7b9ac regulator: tps55287: add enable pin handling
Add support for handling a gpio connectd to the device enable pin, this
has to be driven high to enable the device, and can be pulsed low to
reset the registers to the default configuration.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-07 10:21:41 +01:00
Fabio Baltieri
99b5ac1c58 regulator: tps55287: drop redundant initializers
Drop a couple of redundant initializers, these arrays are fully set/get
in the code.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-07 10:21:41 +01:00
Josuah Demangeon
bdc71fc0f7 tests: drivers: build_all: add tests for bflb,irx
Add build test for Bouffalo Lab IR receiver input driver.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2026-01-07 10:21:20 +01:00
Camille BAUD
1936dc6cc4 drivers: input: Introduce bflb IR RX driver
Introduces a driver for the IR receiver on BFLB socs

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-07 10:21:20 +01:00
Camille BAUD
53c7c4b959 drivers: clock_control: Add IRX clock elements
Enable the gates for IRX

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-07 10:21:20 +01:00
Camille BAUD
52f87abea8 west.yml: Update hal_bouffalab version
Update HAL version to latests for IRX regs

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-07 10:21:20 +01:00
Camille BAUD
bfd180e484 dts: bflb: Add IR RX nodes
Add binding and nodes for bflb,irx

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-07 10:21:20 +01:00
Chen Xingyu
3bf53bde02 doc: migration-guide-4.4: Update ESP32-S3 LCD_CAM restructuring notes
Add migration guidance for the ESP32-S3 LCD_CAM changes.

Signed-off-by: Chen Xingyu <hi@xingrz.me>

# Conflicts:
#	doc/releases/migration-guide-4.4.rst
2026-01-07 10:20:54 +01:00
Chen Xingyu
5a2cd978a1 boards: alientek: dnesp32s3b: Enable LCD support
This enables LCD support on the DNESP32S3B board using the ESP32 MIPI-DBI
driver in I8080 mode.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2026-01-07 10:20:54 +01:00
Chen Xingyu
cc3f7f2f45 drivers: mipi_dbi: Add ESP32 LCD_CAM backend
The LCD_CAM peripheral is a parallel I/O controller integrated in the ESP32
series. It consists of an LCD output module and a DVP camera input module.
The camera side is already supported in Zephyr as a video driver.

This commit adds support for the LCD module by implementing it as a
MIPI-DBI backend. The LCD_CAM supports multiple output formats, and the
initial implementation provides I8080 mode.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2026-01-07 10:20:54 +01:00
Chen Xingyu
e30dc74588 boards: seeed: xiao_esp32s3: Update for LCD_CAM restructuring
The former `&lcd_cam` node has been split into an `&lcd_cam` controller
and an `&lcd_cam_dvp` subdevice. Update the board DTS accordingly.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2026-01-07 10:20:54 +01:00
Chen Xingyu
b0ac2a376b boards: espressif: esp32s3_eye: Update for LCD_CAM restructuring
The former `&lcd_cam` node has been split into an `&lcd_cam` controller
and an `&lcd_cam_dvp` subdevice. Update the board DTS accordingly.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2026-01-07 10:20:54 +01:00
Chen Xingyu
bd9d8ba000 soc: espressif: Introduce common LCD_CAM support
Move the shared pinctrl and clock initialization for the LCD_CAM peripheral
from the ESP32 DVP driver into a new SoC-level implementation.

Update the ESP32-S3 DTS to reflect the new structure by introducing an
`lcd_cam_dvp` child node under the common `lcd_cam` parent node.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2026-01-07 10:20:54 +01:00
Chen Xingyu
21eac8f32b drivers: video: esp32: Rename to lcd-cam-dvp
Rename the ESP32 LCD_CAM DVP driver and its DT binding from
`espressif,esp32-lcd-cam` to `espressif,esp32-lcd-cam-dvp` to clearly
identify it as the DVP (camera) input block of the LCD_CAM peripheral.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2026-01-07 10:20:54 +01:00
Hau Ho
99710e418b tests: drivers: i2c: Add overlay and config file for FPB-RX261 board
Add overlay and config file for FPB-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-07 10:20:41 +01:00
Hau Ho
42dd3bae3a tests: drivers: i2c: Add overlay and config file for EK-RX261 board
Add overlay and config file for EK-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-07 10:20:41 +01:00
Hau Ho
0d4f1db3d4 boards: renesas: Add I2C support for FPB-RX261 board
Add I2C support for FPB-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-07 10:20:41 +01:00
Hau Ho
5e0c5e80a9 boards: renesas: Add I2C support for EK-RX261 board
Add I2C support for EK-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-07 10:20:41 +01:00
Hau Ho
73520eab9b dts: renesas: rx: Add dts property node for I2C support on RX261
Add dts property node for I2C support on RX261

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-07 10:20:41 +01:00
Quy Tran
f98465eaed manifest: hal_renesas: Update commit revision to support i2c on RX261
Update commit revision of hal_renesas for I2C supporting on RX261

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2026-01-07 10:20:41 +01:00
Samuel Coleman
3332a97295 lib: cbprintf: perform length calculation dry-run.
C99 § 7.19.6.5 defines `snprintf`. According to ¶ 2:

> If `n` is zero, nothing is written, and `s` may be a null pointer.

And according to § 7.19.6.12 ¶ 2:

> The `vsnprintf` function is equivalent to `snprintf` (...)

However, prior to this change, `vsnprintfcb` (and indirectly, `snprintfcb`)
unconditionally null-terminates the output buffer.

This fixes #48394, which was auto-closed without actually being fixed.

Co-authored-by: Adrien Lessard <adrien.lessard@rbr-global.com>
Signed-off-by: Samuel Coleman <samuel.coleman@rbr-global.com>
2026-01-07 10:20:22 +01:00
Scott Worley
c86c748ff0 soc: microchip: mec: Remove MECH172x the HAL based version of MEC172x
The goal is to slowly convert all Microchip MEC to in-tree drivers
and support code (no HAL). We had partial HAL support for MEC172x
as the mech172x folder. We are removing HAL based mech172x since HAL
will be deprecated in the future and it has no board support.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2026-01-07 07:51:22 +01:00
Scott Worley
ea3d277e4e tests: drivers: pinctrl: microchip: Add MEC parts to test
In-progress add Microchip MEC to PINCTRL test.
Note: This test only checks the pinmux value created by
device tree.  It does not check the pin configuration.
We enhanced the tests by checking GPIO control register field(s)
match the device tree properities.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2026-01-07 07:50:18 +01:00
Scott Worley
dc8b4d911b boards: microchip: mec_assy6941: Use new, in-tree PINCTRL files
We modified board level DTS to include new PINCTRL files from the
SoC DTS layer.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2026-01-07 07:50:18 +01:00
Scott Worley
4e017a7929 dts: arm: microchip: mec: Add PINCTRL DTSI files for MEC5 parts
As part of the long term HAL deprecation goal, we add PINCTRL
files for MEC174x, MEC175x, and MEC1653B.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2026-01-07 07:50:18 +01:00
Scott Worley
99ce899c22 drivers: pinctrl: microchip: mec: One PINCTRL driver for all MEC parts
GPIO hardware in Microchip MEC parts is the same except for the MUX
field (number of alternate functions). We modify the old XEC PINCTRL
driver to work on all MEC parts and also be independent of HAL and
CMSIS register structures. During development we found a DT issue
with DT_ENUM_IDX_OR always inserting the default value. Worked around
by converting slew rate and drive strength to YAML integer type and
created defines for the values in the dt-bindings header.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2026-01-07 07:50:18 +01:00
Zhaoxiang Jin
7ed9c743c0 tests: adc_api: enable adc_api test for frdm_mcxe31b
enable adc_api test for frdm_mcxe31b

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-07 07:49:49 +01:00
Zhaoxiang Jin
8e92b5b851 drivers: adc: nxp_sar_adc: implement async read function
Enabled async read function for NXP SAR ADC driver by implementing
nxp_sar_adc_read_async() and modifying nxp_sar_adc_read() to call it
with a NULL signal for synchronous operation.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-07 07:49:49 +01:00
Zhaoxiang Jin
2013e049f2 tests: drivers: enable adc dma test scenario for frdm_mcxa156
improve test coverage for nxp lpadc driver by adding dma test
scenario.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-07 07:49:16 +01:00
Zhaoxiang Jin
8de2b82e85 samples: adc: enable adc_sequence test for frdm_mcxa156
1. enable adc_sequence test for frdm_mcxa156
2. use DMA to transfer ADC conversion data in this sample

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-07 07:49:16 +01:00
Zhaoxiang Jin
52b8243fab dts: nxp: Add dma properties for nxp mcxa156 lpadc node
Add dmas properties for lpadc node in nxp_mcxa156.dtsi

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-07 07:49:16 +01:00
Zhaoxiang Jin
096dbbf8d2 drivers: adc: Adding DMA transfer capability to LPADC
Adding DMA transfer capability to LPADC

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-07 07:49:16 +01:00
Holt Sun
639f9bbab2 drivers: counter: mcux_lptmr: fire alarm immediately when ticks=0
Allow alarm_cfg->ticks to be 0 for immediate callback execution.
When ticks equals 0, set the interrupt pending instead of returning
-EINVAL, causing the ISR to fire immediately.

Implementation:
- Add irq_set_pending()/irq_is_pending() helpers for NVIC and GIC
- Store IRQ number in device config for pending operations
- Refactor timer state handling to eliminate duplication
- Update get_pending_int() to check both HW flags and NVIC/GIC state

This supports idle timer use cases where sleep duration may be zero
and eliminates the need for special-case handling in application code.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-07 07:47:56 +01:00
Holt Sun
385f343e5d drivers: counter: mcux_lptmr: add device tree support for freerunning mode
Add device tree property to configure LPTMR free-running mode instead
of hardcoding it to disabled.

The freerunning property controls counter reset behavior:
- If false (default): Counter resets after compare match
- If true: Counter resets only on overflow, continues after compare

This allows per-instance configuration of the LPTMR timer mode based
on application requirements without code changes.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-07 07:47:56 +01:00
Ian Morris
36e8ffb75c boards: renesas: ek_ra4l1: added mikrobus node labels
Added mikrobus_serial and mikrobus_header node labels to EK-RA4L1
device tree board definition, allowing compatible shield boards to
be used.

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2026-01-07 07:46:27 +01:00
Fabian Blatz
66f1f75880 boards: teensy41: Add sdhc0 alias
Add a sdhc0 alias to the board so tests/subsys/sd/sdmmc can be build.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2026-01-07 07:46:09 +01:00
Jonas Berg
199aa44fc0 boards: shields: Add support for Adafruit INA3221 shield
Product photo from https://learn.adafruit.com/assets/133208
with the license CC BY-SA 3.0

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-07 07:45:51 +01:00
Jordan Yates
06cfd76dd2 net: lib: dhcpv4: disable IF_UP handling for HostAP
Disable the automatic handling of the `NET_EVENT_IF_UP` event when the
WPA supplicant is enabled, as the supplicant already explicitly calls
`net_dhcpv4_restart` when the interface is ready for use. This fixes
the DHCP binding process being restarted before the interface is ready
(after `NET_EVENT_IF_UP`, before authorization), which always fails.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2026-01-07 07:45:32 +01:00
Gaetan Perrot
4bec0387c8 drivers: adc: adc_stm32: make set_sequencer void
set_sequencer() never reports errors and always returns 0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-07 07:45:01 +01:00
Guðni Már Gilbert
465150d796 twister: avoid scanning subcases for unselected test suites
Optimize testsuite discovery by skipping subcase scans for filtered suites

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
2026-01-07 07:44:44 +01:00
Afonso Oliveira
81e28ca12f arch: riscv: avoid GNU statement-expr CSR write macros
csr_write(), csr_set(), and csr_clear() use GNU C statement expressions,
which triggers SonarQube/clang warnings like:

  use of GNU statement expression extension from macro expansion

Rewrite these write-only macros as do { ... } while (0) statement macros.
No functional change expected.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2026-01-07 07:44:13 +01:00
Holt Sun
d90169ab0a MAINTAINERS: Add Holt Sun as Counter driver collaborator
Add Holt Sun as a collaborator for "Drivers: Counter".

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-07 07:43:54 +01:00
Benjamin Cabé
1c7ce910a8 doc: kernel: threads: fix mistake in "What Cannot be Expected to Work"
Correct the description in the "What Cannot be Expected to Work" section
to state that the listed functionality fails when CONFIG_MULTITHREADING
is **disabled**, as the previous wording implied the opposite.

Fixes zephyrproject-rtos/zephyr#101718

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-06 16:10:04 -06:00
Lane Westlund
abd7a17424 doc: ztest fix verb tense
Fixes a small typo with verb tense and sentence structure in the ztest doc

Signed-off-by: Lane Westlund <lane@westlund.net>
2026-01-06 16:09:16 -06:00
Gaetan Perrot
4da063bad0 drivers: cache: fix typos in comments
Fix typos in comments in cache_andes and cache_aspeed.

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-06 16:08:40 -06:00
Jamie McCrae
024d49d55f doc: hardware: porting: board_porting: Fix typo
Fixes a small typo in the example which, if copied, would result
in a error in the python file

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-06 16:08:18 -06:00
Gaetan Perrot
d7ff9afbfd drivers: display: co5300: fix missing GPIO error check
gpio_pin_set_dt() return value was not assigned when pulling the
reset GPIO high, making the subsequent error check always false.

Store the return value to properly detect and report failures.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-06 16:07:56 -06:00
Sebastian Panceac
9af59a6e23 doc: Fix reference to generated event when calling uart_tx_abort()
This commit replaces in the documentation of uart_tx_abort()
function, the generated event type `UART_TX_DONE` with the
correct one: `UART_TX_ABORTED`.

Signed-off-by: Sebastian Panceac <spanceac@gmail.com>
2026-01-06 16:07:26 -06:00
Zhaoxiang Jin
04e9d4a5e6 tests: power_mgmt_soc: enable test for frdm_mcxaxx6 boards
frdm_mcxaxx6: frdm_mcxa266, frdm_mcxa346, frdm_mcxa366

1. enable power_mgmt_soc test for NXP frdm_mcxaxx6 board.
2. enable systick and disable ostimer, this enabled systick
as system timer.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 16:06:53 -06:00
Zhaoxiang Jin
fae1642248 soc: nxp/mcxa: Add power management support for MCXAxx6
MCXAxx6: MCXA266, MCXA346, MCXA366

Add power management support for MCXA/MCXAxx6.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 16:06:53 -06:00
Zhaoxiang Jin
7a3df0ed4e dts: arm: nxp: mcxa: Add power state nodes for mcxaxx6
mcxaxx6: mcxa266, mcxa346, mcxa366.

1. Add power state nodes for mcxaxx6, including
sleep, deepsleep and powerdown.

2. Add power management related peripheral nodes
for mcxaxx6, including spc, cmc, vbat and wuu.

3. Add 'zephyr,cortex-m-idle-timer' node in frdm_mcxaxx6.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 16:06:53 -06:00
Zhaoxiang Jin
a1184d66fb dts: arm: nxp: mcxa344: Add power-states for mcxa344
1. Add power-states for mcxa344
2. Add PM related-nodes for mcxa344.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 16:06:53 -06:00
Zhaoxiang Jin
0d763f928c tests: power_mgmt_soc: enable test for frdm_mcxa153
1. enable power_mgmt_soc test for NXP frdm_mcxa153 board.
2. enable systick and disable ostimer, this enabled systick
as system timer.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 16:06:53 -06:00
Zhaoxiang Jin
af13581dcc soc: nxp/mcxa: Add power management support for MCXA153
Add power management support for MCXA/MCXA153.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 16:06:53 -06:00
Zhaoxiang Jin
f8a94fbc6a dts: arm: nxp: mcxa: Add power state nodes for mcxa153
1. Add power state nodes for mcxa153, including
sleep, deepsleep and powerdown.

2. Add power management related peripheral nodes
for mcxa153, including spc, cmc, vbat and wuu.

3. Add 'zephyr,cortex-m-idle-timer' node in frdm_mcxa153.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 16:06:53 -06:00
Zhaoxiang Jin
a364dd66c4 tests: power_mgmt_soc: enable test for frdm_mcxa156
1. enable power_mgmt_soc test for NXP frdm_mcxa156 board.
2. enable systick and disable ostimer, this enabled systick
as system timer.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 16:06:53 -06:00
Zhaoxiang Jin
0bfc30a2cf soc: nxp/mcxa: Add power management support for MCXA156
Add power management support for MCXA/MCXA156.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 16:06:53 -06:00
Zhaoxiang Jin
5056de4af6 dts: arm: nxp: mcxa: Add power state nodes for mcxa156
1. Add power state nodes for mcxa156, including
sleep, deepsleep and powerdown.

2. Add power management related peripheral nodes
for mcxa156, including spc, cmc, vbat and wuu.

3. Add 'zephyr,cortex-m-idle-timer' node in frdm_mcxa156.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 16:06:53 -06:00
Yasushi SHOJI
3866fb8ce7 boards: scobc_v1: Use DT_FREQ_M() macro from freq.h
Use the convenient DT_FREQ_M() macro from freq.h to improve readability.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2026-01-06 16:06:05 -06:00
Yasushi SHOJI
02ac74d97c boards: scobc_v1: Remove uart0
UART0 is not currently used by Zephyr running on RPU. Remove it.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2026-01-06 16:06:05 -06:00
Andrej Butok
26eaab1019 dts: nxp: move nxp,imx-gpt.yaml to the counter folder
- Moves nxp,imx-gpt.yaml from the timer to the counter folder,
  as this is the binding for the counter driver
  drivers/counter/counter_mcux_gpt.c
- Fixes: #100947

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2026-01-06 16:05:40 -06:00
Sara Touqan
5321cf1c81 samples: mspi_flash: add support for some boards
this commit enables building and running the sample on
stm32h573i_dk board,stm32h735g_disco board, arduino_giga_r1
board, and  b_u585i_iot02a board by providing the required overlay
and configuration updates.

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
Signed-off-by: Sarah Younis <zephyr@exalt.ps>
Signed-off-by: Mohammad Odeh <zephyr@exalt.ps>
2026-01-06 16:05:03 -06:00
Sara Touqan
304625e040 drivers: mspi: Support MSPI driver for STM32
This commit introduces support for the mspi and ospi drivers on STM32,
enabling functionality APIs for MSPI/OSPI/QSPI host controllers..

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
Signed-off-by: Sarah Younis <zephyr@exalt.ps>
Signed-off-by: Mohammad Odeh <zephyr@exalt.ps>
2026-01-06 16:05:03 -06:00
Sara Touqan
48165b661c dts: bindings: mspi: Add MSPI configuration for STM32
This commit adds the main DTS configurations required
to enable MSPI/OSPI/QSPI support on STM32.

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
Signed-off-by: Sarah Younis <zephyr@exalt.ps>
Signed-off-by: Mohammad Odeh <zephyr@exalt.ps>
2026-01-06 16:05:03 -06:00
Fabio Baltieri
b3c1e115ec boards: motion_2350_pro: split the pwm_default pin list
Raspberry pi based boards are now using binary info by default
(96b9b0f2df), and that limits pinctrl groups to 4 or 6 nodes. Split
this node in multiple groups.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-06 19:31:42 +00:00
Martin Hoff
ba48c587cf samples: drivers: i2s: add overlay for rb4342 board
This patch enables the output sample for the board siwx917_rb4342a
by adding an overlay.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2026-01-06 19:16:36 +00:00
Gaetan Perrot
61dcab72a5 drivers: sensor: bosh: bmp581: fix redundant NULL check
set_iir_config() dereferences the device pointer before checking it
against NULL, making the defensive check ineffective.

Remove the redundant check.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-06 19:16:27 +00:00
Jonas Berg
c9fc4f65be samples: servo-motor: Add support for Adafruit Prop-Maker RP2040 Feather
Add corresponding overlay file

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-06 19:15:31 +00:00
Jonas Berg
fdfb4a339a boards: Add support for Adafruit Prop-Maker RP2040 Feather
Product photo from https://learn.adafruit.com/assets/121788,
with the license CC BY-SA 3.0

Tested with the commands mentioned in index.rst

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-06 19:15:31 +00:00
Fabian Blatz
324b75928a tests: drivers: adc: adc_api: Enable adc node for Adafruit trinket m0
Enable the adc node to prevent undefined node reference error in adc_api
test.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2026-01-06 19:15:20 +00:00
Martin Hoff
5c064caf32 samples: drivers: memc: add support for siwx917 soc
This patch adds support for the QSPI memory controller (for the
SiWG917 SoC) in order to enable PSRAM testing. It also adds board
overlays for this family that include PSRAM.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2026-01-06 19:14:56 +00:00
Chris Friedt
3c855aeddd zvfs: eventfd: count eventfd file descriptors for fdtable size
Previously, eventfd file descriptors were not being counted against the
required size for the global file descriptor table, which would result
in the function `eventfd()` (and `zvfs_eventfd()`) failing due to
insufficient resources.

Signed-off-by: Chris Friedt <chris@fr4.co>
2026-01-06 19:14:47 +00:00
Tanguy Raufflet
23596814d0 drivers: i3c: stm32: include math.h to fix build warnings
This driver uses math functions that require the math.h header. If not
included a lot of implicit declaration warnings are generated during
build.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2026-01-06 19:14:41 +00:00
Tanguy Raufflet
2c1d36ae09 boards: st: stm32mp257fxx_*: add I3C node to the device tree
This commit adds the i3c4 node to the device tree for the
STM32MP257F-EV1 and the STM32MP257F-DK boards. This node corresponds to
the i3c exposed by the GPIO expansion connector [1], [2] and not used by
the cortex A35.

According to the STM32MP257F-EV1 and STM32MP257F-DK schematics, the I3C4
are connected to the same pins as the I2C8. Therefore, both nodes cannot
be enabled together.

[1]: https://wiki.st.com/stm32mpu/wiki/STM32MP257x-EV1_-_hardware_description

[1]: https://www.st.com/resource/en/user_manual/um3385-discovery-kit-with-stm32mp257f-mpu-stmicroelectronics.pdf
    Table 24. GPIO connector pinout

Co-authored-by: Charles Wenger <charles.wenger@savoirfairelinux.com>
Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2026-01-06 19:14:41 +00:00
Tanguy Raufflet
6ce3fd4ffa boards: st: stm32mp257f_dk_stm32mp257fxx_m33.dts: add I2C node
This commit adds the i2c8 node to the device tree for the
STM32MP257F-DK board. This node corresponds to the i2c exposed by the
GPIO expansion connector [1] and not used by the cortex A35.

[1]: https://www.st.com/resource/en/user_manual/um3385-discovery-kit-with-stm32mp257f-mpu-stmicroelectronics.pdf
    Table 24. GPIO connector pinout

Co-authored-by: Charles Wenger <charles.wenger@savoirfairelinux.com>
Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2026-01-06 19:14:41 +00:00
Tanguy Raufflet
ee7314b568 boards: st: stm32mp257fxx_m33.yaml: add missing supported features
The I2C and SPI features have been added to the supported features for
the stm32mp257f_ev1 but were missing from the stm32mp257f_dk board file.

Co-authored-by: Charles Wenger <charles.wenger@savoirfairelinux.com>
Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2026-01-06 19:14:41 +00:00
Tanguy Raufflet
dffa529bf1 boards: st: stm32mp257f_*: add I3C to the supported features
The I3C is now supported on the STM32MP257F-DK and STM32MP257F-EV1
boards.

Co-authored-by: Charles Wenger <charles.wenger@savoirfairelinux.com>
Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2026-01-06 19:14:41 +00:00
Tanguy Raufflet
2c5b8dc5cf dts: arm: st: stm32mp2_m33.dtsi: add I3C node
Add the node I3C4 in non-secure context to dtsi. Others I3C nodes cannot
be added as they rely on EXTI1 interrupt lines that is not supported yet
for the STM32MP2.

Co-authored-by: Charles Wenger <charles.wenger@savoirfairelinux.com>
Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2026-01-06 19:14:41 +00:00
Tanguy Raufflet
96a6b8ca72 drivers: clock_control: stm32: add MP2xx clocks for I3C peripherals
Add I3C clocks rate reading to the STM32MP2 clock driver.

Co-authored-by: Charles Wenger <charles.wenger@savoirfairelinux.com>
Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2026-01-06 19:14:41 +00:00
Tanguy Raufflet
b1a35c1df9 dt-bindings: reset: stm32mp2: add reset for I3C peripherals
Add reset bindings for I3C peripherals for the STM32MP2 series.

Co-authored-by: Charles Wenger <charles.wenger@savoirfairelinux.com>
Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2026-01-06 19:14:41 +00:00
Tanguy Raufflet
f88f3637ff dt-bindings: clock: stm32mp2: add clocks for I3C peripherals
Add clock bindings for I3C peripherals for the STM32MP2 series.

Co-authored-by: Charles Wenger <charles.wenger@savoirfairelinux.com>
Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2026-01-06 19:14:41 +00:00
Tanguy Raufflet
b54cef898a drivers: i3c: stm32: add support for combined interrupt
Since the STM32MP2 I3C controller uses a combined interrupt line for I3C
events and errors, add the support for handling this type of interrupt
in the I3C driver.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2026-01-06 19:14:41 +00:00
Ludvig Jordet
8b7eccb1c5 Bluetooth: Mesh: Test that vendor models can receive SIG opcodes
This adds a test case to the access BSIM tests to check that vendor
models can specify a handler for and receive messages using a
SIG-defined 1-byte opcode.

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2026-01-06 19:14:31 +00:00
Ludvig Jordet
9eb3a6ee81 Bluetooth: Mesh: Let vendor models receive messages with SIG opcodes
This fixes a limitation where the stack assumed that vendor models could
not specify handlers for SIG-defined (1- or 2-byte) opcodes. This
assumption does not exist in the specification. In fact, the
specification expects this very use-case to be possible, in MeshPRT 1.1,
section 3.8.3:

> To exchange messages with a Bluetooth SIG adopted model, a Vendor Model
> shall use the Access message defined for the Bluetooth SIG model.

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2026-01-06 19:14:31 +00:00
Ludvig Jordet
80b92850e3 Bluetooth: Mesh: Deprecate VND_MSG_CID_FORCE option
This deprecates CONFIG_BT_MESH_MODEL_VND_MSG_CID_FORCE. This option was
added to allow an optimization that a) only can apply in edge case
networks that use multiple vendor models with different CIDs, b) doesn't
really have much potential gains even in this case unless there is a
large number of opcodes in these vendor models, and c) makes it
impractical to implement support for vendor models handling SIG opcodes.

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2026-01-06 19:14:31 +00:00
Ludvig Jordet
23d8ec360b Bluetooth: Mesh: Fix compile warning when CID check is disabled
Since the entire cid checking function is conditionally included based
on KConfig, the usage site also needs to use #if instead of IS_ENABLED,
otherwise you get the following warning during compilation when the
option is disabled:

`error: implicit declaration of function
‘bt_mesh_vnd_mod_msg_cid_check’`

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2026-01-06 19:14:31 +00:00
Emil Gydesen
6345dab3de Bluetooth: Audio: Use BT_CONN_ROLE over BT_HCI_ROLE
Use the host defined roles, rather than the HCI defined ones.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-06 19:14:19 +00:00
Peter Korsgaard
845c3bb9be samples: drivers: target_eeprom: add a changed callback
And show the usages of the new _get_size() / _read_data() functions.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2026-01-06 19:14:03 +00:00
Peter Korsgaard
54e586b75b samples: drivers: target_eeprom: drop unregistration
It is not very handy that the EEPROM stops responding after 1 second, so
drop that.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2026-01-06 19:14:03 +00:00
Peter Korsgaard
54eda2761a i2c: target: target_eeprom: make legacy functions wrappers
Implement eeprom_target_program() using eeprom_target_write_data() and
eeprom_target_read() using eeprom_target_read_data() to limit redundant
code.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2026-01-06 19:14:03 +00:00
Peter Korsgaard
5aaa013351 i2c: target: target_eeprom: mark eeprom_target_program as deprecated
It does not provide an offset argument, so suggest
eeprom_target_write_data() instead.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2026-01-06 19:14:03 +00:00
Peter Korsgaard
4f45225a59 tests: drivers: i2c: i2c_target_api: switch to eeprom_target_write_data()
eeprom_target_program() is about to become deprecated as it does not take
an offset argument, so switch to eeprom_target_write_data() instead.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2026-01-06 19:14:03 +00:00
Peter Korsgaard
7362cd6f45 i2c: target: eeprom_target: add {read,write}_data()
The current functions to access the EEPROM data are not ideal, E.G.:

- eeprom_target_program() is hard coded to write to the beginning of the
  EEPROM data

- eeprom_target_read() reads a single byte, so large overhead to read all
  data

So as an alternative, add an interface similar to what is provided by
zephyr/drivers/eeprom.h, E.G.  functions taking an offset and and length.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2026-01-06 19:14:03 +00:00
Peter Korsgaard
71f25d88a9 i2c: target: eeprom_target: add _get_size()
For some use cases it can be interesting to know how big the EEPROM is, so
add a getter for it.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2026-01-06 19:14:03 +00:00
Peter Korsgaard
0e24da356a i2c: target: eeprom_target: add changed callback
For some use cases it can be interesting to know when the eeprom has been
written to by the I2C host (E.G.  once a stop has been received after a
write transaction), so add a "changed" callback.

Multiple EEPROM instances are supported, so pass the device and user data
as arguments to the callback.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2026-01-06 19:14:03 +00:00
Niu Zhihong
64e22a62e9 soc: rockchip: replace MT_NS with MT_DEFAULT_SECURE_STATE for rk3588
Updated the MMU region entries for the GIC device to use
MT_DEFAULT_SECURE_STATE instead of MT_NS,
aligning the security attribute with the default secure sate macro.

Signed-off-by: Niu Zhihong <zhihong@nzhnb.com>
2026-01-06 19:13:42 +00:00
Niu Zhihong
51f1161329 soc: rockchip: update rk3588 NUM_IRQS
Update NUM_IRQS value according to datasheet

Signed-off-by: Niu Zhihong <zhihong@nzhnb.com>
2026-01-06 19:13:42 +00:00
Mike Szczys
06d5728d07 twister: fix --keep-artifacts
use the allow-list generated by --keep-artifacts whenever
cleanup_artifacts() is called. This resolves an issue where this allow-list
was not being honored when using the --prep-artifacts-for-testing flag.

Signed-off-by: Mike Szczys <mike@golioth.io>
2026-01-06 11:18:11 -05:00
Guðni Már Gilbert
28fe8d5c87 scripts: tests: twister: mock listed serial port
Reduce the test time by ~300 seconds by mocking the listed serial port

Result from running:
pytest --durations=0 ./scripts/tests/twister/test_handlers.py

Before:
60.12s test_devicehandler_handle[valid pty]
60.12s test_devicehandler_handle[communicate timeout]
60.06s test_devicehandler_handle[popen called process error]
60.05s test_devicehandler_handle[valid dev]
60.03s test_devicehandler_handle[nonzero returncode]
0.01s  test_devicehandler_handle[create serial failure]

After:
0.01s test_devicehandler_handle[valid dev]
0.01s test_devicehandler_handle[valid pty]
0.01s test_devicehandler_handle[nonzero returncode]
0.01s test_devicehandler_handle[create serial failure]
0.01s test_devicehandler_handle[communicate timeout]
0.01s test_devicehandler_handle[popen called process error]

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
2026-01-06 16:07:24 +00:00
TOKITA Hiroshi
96b9b0f2df soc: raspberrypi: rpi_pico: Add support RpiPico binary info feature
Binary Info embeds program meta information in flash,
which can be viewed with RaspberryPi Pico's `picotool`.

Metadata is automatically collected from pinctrl.

It can be override by the Kconfig configurations, such as

```
CONFIG_RPI_PICO_BINARY_INFO_OVERRIDE_PROGRAM_NAME="my program name"
```

When this feature is enabled, pinctrl groups are restricted to
consisting of pins with a single rpi_pico function.
In other words, SPI's MISO and MOSI can be in the same group,
but I2C's SDA cannot be included in this group.
This is rarely an issue in normal use,
and can be resolved by dividing them into separate groups.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-06 16:07:16 +00:00
TOKITA Hiroshi
e8a35bc567 modules: hal_rpi_pico: Make PICO_NO_BINARY_INFO configurable
Use the definition of PICO_NO_BINARY_INFO if it already exists,
set it as 1 if not so.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-06 16:07:16 +00:00
TOKITA Hiroshi
1e6fe9ffda modules: hal_rpi_pico: add includes that referenced by binary info
The binary info feature references `boot_stage2` and `pico_binary_info`.
Add these to include dirs.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-06 16:07:16 +00:00
Robyn Milas
ebfd777b2c drivers: spi: stm32 fix bug on empty tx
When transceive is called on a chip without CONFIG_SPI_STM32_INTERRUPT,
spi_stm32_shift_frames was called even if there was no transfer ongoing.
This lead to an unwanted SPI transfer shifting the whole connection,
causing drivers to malfunction.
Fix it by replacing the do-while loop with a while loop.

Signed-off-by: Robyn Milas <robyn.milas@valotec.com>
2026-01-06 16:06:41 +00:00
Jamie McCrae
914ac2dc05 west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  9ac72969f281491d677e669d053281fc2d538ed4

Brings following Zephyr relevant fixes:

  - 9ac72969 boot: bootutil: loader: Fix bootstrap copying in
    swap move mode
  - 3f69203f bootutil: ed25519 psa: Merge bootutil_verify_sig and
    bootutil_verify
  - 7f354916 bootutil: Remove bootutil_verify_img
  - 7cec4af1 bootutil: Replace bootutil_verify_img with
    bootutil_verify_sig
  - 4a57d03d boot: zephyr: socs: stm32h7s3xx: Add support for
    ext_flash_app variant
  - a21fd276 bootutil: Small logging improvements
  - 0acc9806 bootutil: boot_read_enc_key now returns boolean
  - 553be8b0 readme: Update for next dev release
  - eecc3f7d Release v2.3.0

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-06 16:06:22 +00:00
Daniel Schaefer
efcb2f081d boards: framework: Add framework_laptop16_keyboard
The following examples build and work as expected.

Blink backlight using PWM on white backlight keyboard or numpad:
> west build -p -b framework_laptop16_keyboard samples/basic/blinky_pwm

Blink capslock on keyboard (not numpad or macropad):
> west build -p -b framework_laptop16_keyboard samples/basic/blinky_pwm

> west build -p -b framework_laptop16_keyboard samples/subsys/usb/console
> west build -p -b framework_laptop16_keyboard samples/subsys/usb/cdc_acm
> west build -p -b framework_laptop16_keyboard samples/drivers/adc/adc_dt

Signed-off-by: Daniel Schaefer <dhs@frame.work>
2026-01-06 16:06:14 +00:00
Daniel Schaefer
33d671b205 dts: bindings: vendor-prefixes: Add Framework Computer, Inc.
Add Framework Computer Inc

Signed-off-by: Daniel Schaefer <dhs@frame.work>
2026-01-06 16:06:14 +00:00
Jonas Berg
82b25849e4 samples: servo-motor: Add overlay for Cytron Motion 2350 Pro
Enabled servo port GP0. Added commented-out entries for the other ports,
as is done for the other overlay files.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-06 16:05:55 +00:00
Jonas Berg
eeff32644d boards: Add support for Cytron Motion 2350 Pro
Tested with the commands mentioned in index.rst

Product photo from https://www.cytron.io/p-motion-2350-pro

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2026-01-06 16:05:55 +00:00
Thamaraimanalan M
450096dc77 scripts: check_compliance: fix broken URL in ruff compliance error
Add a trailing space to the Ruff error message string in the compliance
checking script. Previously, the error message concatenated the URL and
the description with a colon (e.g., ".../unsorted-imports:Import").
This caused the terminal to interpret the description as part of the URL,
resulting in a 404 error when clicked.

Signed-off-by: Thamaraimanalan M <devthamaraimanalan.m@gmail.com>
2026-01-06 16:04:24 +00:00
Michele Sardo
1ce6a26f70 debug: stack: include kernel.h for k_thread API usage
The debug/stack.h header uses k_thread types and APIs such as
struct k_thread, k_thread_stack_space_get(), and k_thread_name_get(),
but does not include <zephyr/kernel.h>.

This makes the header rely on transitive includes, which can lead to
build failures depending on include order.

Add an explicit include of <zephyr/kernel.h> to make the header
self-contained.

Signed-off-by: Michele Sardo <msmttchr@gmail.com>
2026-01-06 16:04:15 +00:00
Alberto Escolar Piedras
60285318c9 soc: native: Remove old note from kconfig option
Since e150ffb92c, Zephyr only really
supports native_simulator based targets when building native/posix
arch based targets.
So this comment is not relevant anymore. Let's remove it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-01-06 16:04:03 +00:00
Daniel Fladerer
a4f75ba4bd drivers: serial: uart_mcux_iuart: Adjust FIFO fill behavior for TX
Until now transmission FIFO was not used.
With this chamge the FIFO will be filled up, until it is full.

Signed-off-by: Daniel Fladerer <d.fladerer@gmx.de>
2026-01-06 13:37:54 +00:00
Peter Mitsis
6b00cf20d9 doc: Note that SMP and UP thread ordering differs
Adds a short section explaining how thread ordering between UP and
SMP systems differ.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2026-01-06 13:37:46 +00:00
Peter Mitsis
56821d75a6 doc: Update time slicing image
Updates the time slicing image in the associated documentation to ...

1. Show the resetting of a time slice after scheduling a new thread
2. Indicate that it is specific for UP scheduler

It also adds a note to the documentation describing how the ordering
of the threads would change with the SMP scheduler.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2026-01-06 13:37:46 +00:00
Benedek Kupper
4305403fd2 drivers: dma: stm32: the source and destination sizes must only match in v1
Commit e7f222a fixed the bug where a data size mismatch produces unexpected
behavior with the DMA on V1 devices. However, this limitation is only valid
for the STM32 series with V1 DMA, V2 doesn't have this. The STM32CubeMX
configuration tool correctly implements this limitation in the UI,
it is a good way to cross-check.

Signed-off-by: Benedek Kupper <kupper.benedek@gmail.com>
2026-01-06 13:37:31 +00:00
Ha Duong Quang
e170033a63 tests: drivers: pwm: enable pwm test for s32k5
Enable api and looback test for S32K5 PWM(eMIOS)

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-01-06 13:37:15 +00:00
Ha Duong Quang
81de86f9e7 dts: arm: nxp: add emios devicetree nodes for s32k5
Add devicetree node of emios instances for s32k566.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-01-06 13:37:15 +00:00
Ha Duong Quang
3db533ae91 drivers: pwm: add support pwm(emios) for s32k5
Add support PWM(eMIOS) for S32K5

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-01-06 13:37:15 +00:00
Ha Duong Quang
31a0ffda03 drivers: misc: add global timebase reference property
Add property to enable eMIOS instances to reference a global timebase
provider, either from itself or another eMIOS instance, enabling
synchronized timing operations across multiple instances.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-01-06 13:37:15 +00:00
Stefan Gloor
872f20ab21 doc: develop: add 'which' to Arch Linux dependencies
The setup.sh script of the Zephyr SDK runs "which cmake"
to find out whether CMake and wget are installed:
71df6c27da/scripts/template_setup_posix (L43)

"which" is not installed by default on Arch Linux,
so the check will fail and the script will yield:

Zephyr SDK setup requires 'cmake' to be installed
and available in the PATH.
Please install 'cmake and run this script again.

Although CMake is already installed.
Fix this by adding "which" to the list of dependencies.

Signed-off-by: Stefan Gloor <code@stefan-gloor.ch>
2026-01-06 13:36:56 +00:00
Mathieu Choplain
219cdf756a boards: arm: use zephyr:board-supported-hw
Replace legacy hand-mantained tables with the new directive that generates
a table automatically based on platform device tree.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2026-01-06 13:36:30 +00:00
TOKITA Hiroshi
a0184867c4 boards: raspberrypi: rpi_5: Use normalized name
Rename the file to rpi_5_bcm2712... based on the normalized name.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-06 13:36:03 +00:00
Pavel Vasilyev
2b4bbb9a2f doc: releases: migration-guide: 4.4: remove extra backtick
This fixes compliance check by removing extra backtick.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2026-01-06 13:35:51 +00:00
Florian Depraz
7963b69fa4 dts: stm32u073: Add LPUART3 configuration
See rm0503-stm32u0 manual:
- Bit 12 LPUART3RST: LPUART3 reset
- Bit 12 LPUART3EN: LPUART3 clock enable
- Bit 1 LPUART3 (SYSCFG_ITLINE30)

Signed-off-by: Florian Depraz <florian.depraz@alumni.epfl.ch>
2026-01-06 10:43:04 +01:00
Xudong Zheng
9d9a8efab2 entropy: rpi_pico: implement entropy driver for RP2350
Use get_rand_64() from Pico SDK for entropy.

Signed-off-by: Xudong Zheng <7pkvm5aw@slicealias.com>
2026-01-06 10:39:38 +01:00
Lyle Zhu
0c3239f0c9 bluetooth: Classic: hfp_hf: make at_get_string() return const char *
Change at_get_string() return type to 'const char *'. Correspondingly,
change string parameters in HFP HF callbacks and related functions
from 'char *' to 'const char *' to reflect that these strings are
read-only data returned from AT command parsing.

- Update bt_hfp_hf_cb callback signatures for clip, operator,
  call_waiting, and textual_representation
- Update at_get_string() return type to 'const char *'
- Update local variables in hfp_hf.c handlers to use 'const char *'
- Update shell callback implementations to match new signatures
- Change NULL check style from '!text' to 'text == NULL' for consistency
- Remove unnecessary initialization of 'number' variable in clcc_handle

This improves const-correctness and prevents accidental modification
of AT command response strings.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-06 10:35:28 +01:00
Zhaoxiang Jin
edd9242050 tests: power_mgmt_soc: enable test for mcx_n5xx_evk_mcxn547_cpu0
enable power_mgmt_soc test for NXP mcx_n5xx_evk_mcxn547_cpu0 board.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 10:34:18 +01:00
Zhaoxiang Jin
048b3d8fd0 soc: nxp/mcxn: Add power management support for MCXN547
Add power management support for MCXN/MCXN547.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 10:34:18 +01:00
Zhaoxiang Jin
0403154324 dts: arm: nxp: mcxn: Add power state nodes for mcxnx4x
1. Add power state nodes for mcxnx4x soc dtsi, including
sleep, deepsleep and powerdown.

2. Add power management related peripheral nodes
for mcxnx4x soc dtsi, including spc, cmc, vbat and wuu.

3. Add 'zephyr,cortex-m-idle-timer' node in mcx_nx4x_evk_cpu0.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 10:34:18 +01:00
Zhaoxiang Jin
abc6b61914 boards/nxp: mcxn: Enable LPUART pin internal pullup resistor
This commit enables mcx_nx4x_evk LPUART pin internal pullup resistor.
For MCXN547, during LPUAR initialization, the RX pin is pulled down
internally and STAT[RAF] is set to one. In this state, attempting to
enter low power mode will trigger LPACK reset and therefore cannot
truly enter low power mode. The correct setting should be to enable
LPUART pin internal pullup resistor.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-06 10:34:18 +01:00
Kyle Bonnici
9f7e4bfafa Tests: Rename DTC_OVERLAY_FILE files to .overlay
This PR renames DTC_OVERLAY_FILE from .dts to .overlay

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2026-01-06 10:34:08 +01:00
Kyle Bonnici
5cc1179bcd Boards: Rename non .dts file to .dtsi
Include files should be named .dtsi and not .dts

This PR renames the .dts files that are:
- Not board files
- Included by other dts/dtsi files
- Aligns the #include to use the .dtsi

This PR also deletes `boards/mediatek/mt8186/afe-mt8186.dts` as this is
not included by any file and is clearly not a board file.

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2026-01-06 10:34:08 +01:00
Michał Stasiak
9640c41936 Revert "drivers: i2s: nrf_tdm: fix application of buffer size workaround"
This reverts commit e37b89f0b4.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2026-01-06 10:32:52 +01:00
Merin George
515948a9a2 Kconfig: fix the define to disable SysTick when LP timer is enabled
Fix the Kconfig dependency for CYW20829 so that enabling the
low-power system timer automatically disables the Cortext-M SysTick

Signed-off-by: Merin George <merin.george@infineon.com>
2026-01-06 10:32:40 +01:00
Merin George
88a40ab6df drivers: flash: cyw920829 configuration moved from driver to boards
- Flash configuration was previously done in the driver selected by
   Kconfig. Instead move flash configuration to the board removing
   the need for ifdefs in the driver. This will allow boards to
   configure specifics related to the on board (not part of the SoC)
   flash.

Signed-off-by: Merin George <merin.george@infineon.com>
2026-01-06 10:32:40 +01:00
Victor Brzeski
20d130f2c2 drivers: i2s: nrf_tdm: resolve race between drop/start commands
The current "drop" command stops i2s asynchronously as the peripheral
produces/consumes up to MAXCNT. When complete, the IRQ STOPPED event
will free memory and disable the peripheral. However, when triggering
a "start" command before this completes, the internal state variables
are cleared and we leak application memory.

Signed-off-by: Victor Brzeski <vbrzeski@gmail.com>
2026-01-06 10:30:46 +01:00
Victor Brzeski
bdf9ec48d2 drivers: i2s: delete dead code in IRQ handler
The nRF TDM Driver has a bitfield containing the TDM events it has
already processed. This variable is unused, delete it.

Signed-off-by: Victor Brzeski <vbrzeski@gmail.com>
2026-01-06 10:30:46 +01:00
Pieter De Gendt
e81bacd361 scripts: west_commands: Extend ruff config in pyproject.toml
Now that the west_commands directory has a pyproject.toml configuration
file, it should consider local packages for first party imports.

Make sure the top-level ruff config is extended, and fix some import
sorting.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-06 10:30:32 +01:00
Victor Brzeski
5a5f0a6e8b drivers: clock_control: nrf2: improve audiopll clock calculations
Improve the Audio PLL clock frequency calculations to provide a more
accurate clock frequency.

Signed-off-by: Victor Brzeski <vbrzeski@gmail.com>
2026-01-06 10:30:15 +01:00
Emil Gydesen
1de27b1f2c tests: Bluetooth: BAP: Test bt_bap_ep_get_conn in BSIM
Add steps in the BAP tests to verify the correctness of
bt_bap_ep_get_conn.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-06 10:29:40 +01:00
Emil Gydesen
bf37ec10cb doc: releases: Add entry for bt_bap_ep_get_conn
Add entry for the new function bt_bap_ep_get_conn.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-06 10:29:40 +01:00
Emil Gydesen
59a1c6e0de Bluetooth: BAP: Add bt_bap_ep_get_conn
Add a new function, bt_bap_ep_get_conn, which returns
the ACL connection for the endpoint. This works because
endpoints are specific to an ACL in BAP. The function
returns a pointer with a new reference similar to the
lookup functions from conn.h

The conn pointer was not added to the bt_bap_ep_info
struct, as doing so would be more likely to cause
reference leaks if the caller did not care about the
conn pointer when using bt_bap_ep_get_info. It can be
added later if that is requested.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-06 10:29:40 +01:00
Emil Gydesen
e9f8d73049 tests: Bluetooth: BAP: BA: Update conn params for PAST
When using PAST, it is best not to use an ACL that is a multiple
of the PA or ISO interval to avoid overlaps.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-06 10:29:22 +01:00
Emil Gydesen
be9ea4625e tests: Bluetooth: BAP: BSIM: SD/BA: Fix/add some print statements
Modify and add some printk statements for the tests, as some were
missing the newline.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-06 10:29:22 +01:00
Emil Gydesen
85b8852980 samples: Bluetooth: BA: Read receive states on connection
Once the BASS has been discovered, the sample will now attempt
to read all the receive states on the remote device.

The receive states will only be logged, and the sample will
not (yet) perform any logic on them (to e.g. determiner whether
it needs to perform a remove source operation before the add
source, or perform a modify source). That behavior is postponed
to a future commit, as the purpose of this is to showcase
reading the receive states.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-06 10:29:22 +01:00
Emil Gydesen
f4e14dfb24 Bluetooth: BAP: BA: Refactor discover to not do read
Refactor the bt_bap_broadcast_assistant_discover function
to not read receives at the end of discovery.
This makes the function more true to what it is supposed to
do, and significantly reduces the complexity of the
procedure and the read callback.

Users will be required to, if wanted, to read the
receive state themselves with the existing
bt_bap_broadcast_assistant_read_recv_state.

The start_offset had to be modified to avoid issues with
PA sync.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-06 10:29:22 +01:00
Emil Gydesen
f3b63a1bd6 Bluetooth: CCP: Server: Add support for get UCI
Add support for getting the UCI.
For now the UCI will be duplicated by the TBS
implementation, but will be optimizied in the future
so only one copy of the UCI exists.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-06 10:28:23 +01:00
Nick Brook
24dc151e5d doc: Correct grammar in board revision documentation
Correct grammar in board revision documentation

Signed-off-by: Nick Brook <nrbrook@gmail.com>
2026-01-05 23:39:46 +01:00
Nick Brook
b95b778530 doc: Add concrete board revision usage with qualifiers
The existing documentation was not explicit on how qualifiers should be
combined with board revisions. This commit makes it explicit and adds a
concrete example.

Signed-off-by: Nick Brook <nrbrook@gmail.com>
2026-01-05 23:39:46 +01:00
Khoa Nguyen
f8d40c2545 boards: renesas: Migrate to use ext-ram instead of sdram.ld
- Update dts to ext-ram since section allocation is updated
in the display driver
- Move the Display, LVGL config definitions from board layer
to shield layer
- Update the LVGL config value to match the new SDRAM allocation
- Remove sdram.ld in the board layer for all Renesas boards
- Update .conf overlay for Renesas devices in display_read_write

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2026-01-05 23:39:13 +01:00
Khoa Nguyen
b3136da487 boards: shields: rtkmipilcdb00000be: Update default LVGL config
Update default value for LVGL config

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2026-01-05 23:39:13 +01:00
Khoa Nguyen
1a047270da drivers: display: Migrate to use generic linker sections for Renesas
Migrate to use generic linker sections for Renesas display driver

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2026-01-05 23:39:13 +01:00
Liam Ogletree
7b9e270831 tests: build_all: Add CS40L5x haptics driver to haptics build test
Adds CS40L5x haptics driver to haptics build test. Adds dummy GPIO,
which is required for CS40L5x's reset-gpio property.

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
2026-01-05 23:38:24 +01:00
Liam Ogletree
1b61011e44 samples: cs40l5x: Add sample application for CS40L5x haptics driver
Adds a sample application for the CS40L5x haptics driver. This PR
provides a custom shell interface to expose most of the CS40L5x-specific
API functions; basic demonstrations of other functions are provided.

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
2026-01-05 23:38:24 +01:00
Liam Ogletree
bb8381d2bf drivers: haptics: Add support for CS40L5x haptic driver
CS40L5x is a family (CS40L50/51/52/53) of haptics drivers designed
for trackpads, tablets, and automotive applications.

This PR provides basic functionality for ROM features and serves
as a starting point for the upstream driver. Notably, RAM firmware,
SPI,  and certain CS40L51/52 features (e.g., diagnostics,
closed-loop algorithms) are excluded from this PR.

Tested with internal/external boost configurations. Tested I2C.
Tested all ROM features with each device variant (50/51/52/53),
including ROM playback, "buzz" playback and configuration, custom
haptics playback and configuration, trigger playback and configuration,
runtime haptics logging, and gain configuration.

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
2026-01-05 23:38:24 +01:00
Bill Waters
5b6ec7a6ee soc: infineon: add pse84 power management
Add power management support for the Infineon PSE84 device

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2026-01-05 23:37:50 +01:00
Thamaraimanalan M
17b583f83c boards: rpi_5: update doc to include 1GB, 2GB, and 16GB variants
The Raspberry Pi 5 product line has expanded since launch. The current
documentation only lists the original 4GB and 8GB models. This commit
updates the board documentation to include the missing variants.

Signed-off-by: Thamaraimanalan M <devthamaraimanalan.m@gmail.com>
2026-01-05 21:42:57 +01:00
Cezar Burlacu
8af187eeff dts: arm: st: fix stm32h523/33Xe sram2/3 addresses
stm32h523/33Xe devices have different addresses than stm32h562/72/73xx
(RM0481 fig. 21).

Tested on a custom board with stm32h523cet6 where the board crashed when
accessing sram3.

Signed-off-by: Cezar Burlacu <cezar@embeddedp.ro>
2026-01-05 21:42:26 +01:00
Tom Burdick
e9fc413688 boards: kit_pse84_eval: Documentation fixes
A few fixes to the PSOC Edge 84 Eval kit documentation by re-using
Zephyr sphinx commands.

Adds a very critical note that a switch hidden under and LCD needs to
be flipped before you can successfully program the board.

Signed-off-by: Tom Burdick <thomas.burdick@infineon.com>
2026-01-05 21:41:58 +01:00
Henrik Brix Andersen
141e6f1a27 doc: update copyright notice in the documentation
Update copyright notice to reflect current year.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2026-01-05 17:17:34 +00:00
Fabio Baltieri
99d5823956 samples: net: bridge: check for eth_bridge_iface_add errors
Check for errors on eth_bridge_iface_add, these can add if, for example,
an interface does not support promisc mode.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-05 17:17:12 +00:00
Fabrice DJIATSA
4588f22892 tests: drivers: pwm: pwm_api: add support for nucleo_wb09ke
Assign the pwm2 node to the require pwm-test alias.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-05 17:17:01 +00:00
Fabrice DJIATSA
e29521087a tests: drivers: counter_basic_api: add support for nucleo_wb09ke
Enable all timer and counter nodes.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-05 17:17:01 +00:00
Fabrice DJIATSA
4727415b25 dts: arm: st: wb0: add support for timer kernel clock
PR #93198 introduced the support for the timer kernel
clock for most STM32 series.

it was missing for STM32WB0 serie.

These changes are required for the related timer tests/samples
to pass.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-05 17:17:01 +00:00
Fabrice DJIATSA
4d6eaa6f63 drivers: flash: wb0x: update function to get flash size
For STM32WB0x series, LL_GetFlashSize returns the flash size in words,
not bytes. The previous implementation incorrectly interpreted this
value, leading to a large discrepancy between the expected size (512 KB)
and the computed size (64 MB) in the test_get_size ztest.

This change updates the logic to correctly compute the flash size in
bytes, ensuring accurate results in size-related operations.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-05 17:17:01 +00:00
Fabrice DJIATSA
d4d3c0f998 tests: drivers: rtc: rtc_api: add support for nucleo_wb09ke
add node alias for RTC and enable RTC alarm and calibration.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-05 17:17:01 +00:00
Fabrice DJIATSA
dfff4162ae tests: boot: add support for nucleo_wb09ke
- update board dts flash0 node to match the layout required
  for the SWAP USING OFFSET algorithm.
- Update related test/sample yaml files to enable CI testing

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-05 17:17:01 +00:00
Fabrice DJIATSA
f7262a5656 tests: drivers: spi: spi_loopback: add support for nucleo_wb09ke
Enable DMA in the overlay file and set the appropriate transfer
duration in the conf file

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-05 17:17:01 +00:00
Camille BAUD
78f6b8dcb7 drivers: display: clean up ssd1306
clean up and improve ssd1306 driver code

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-05 17:16:45 +00:00
Camille BAUD
b350791855 drivers: display: Improve SSD1306 error handling and reporting
returning -1 doesn't constitute proper error reporting.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-05 17:16:45 +00:00
Ibrahim Abdalkader
ca6aed203c drivers: sdhc: stm32: skip semaphore wait on HAL error
When HAL_SDIO_WriteExtended_DMA or HAL_SDIO_ReadExtended_DMA returns
an error, interrupts are not enabled so the semaphore would never be
given, and it will always timeout.

Some drivers expect certain functions to fail during normal operation.
For example, WHD calls whd_kso_enable during sleep/wakeup cycles which
can fail. This would waste 200ms (CONFIG_SD_CMD_TIMEOUT default) on
every such failure.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2026-01-05 17:16:36 +00:00
CHEN Xing
35f03c3415 boards: microchip: sam: sama7g54_ek: enable hwinfo support
Enable hwinfo support for sama7g54_ek board

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2026-01-05 17:16:25 +00:00
CHEN Xing
b2581a29bb dts: arm: microchip: sam: add otpc device to sama7g5
Add otpc device, used by hwinfo driver

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2026-01-05 17:16:25 +00:00
CHEN Xing
4fa82d086e soc: microchip: sam: sama7g5: update mmu for otpc
Update mmu region for otpc

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2026-01-05 17:16:25 +00:00
Martin Meyer
95b0c72bf2 drivers: sensor: ti: opt300x: extend support to otp3004 sensors
The ti,opt3004 ambient light sensor is having same I2C interface
as ti,opt3001.

Signed-off-by: Martin Meyer <meyer.m90@gmail.com>
2026-01-05 17:16:13 +00:00
Christoffer Gjedsted Brask
f8dba1baee doc: zbus: clarify observer priority, fixed spelling and grammar
Changed the parameter description for _observers in ZBUS_CHAN_DEFINE and
ZBUS_CHAN_DEFINE_WITH_ID. The original description was hard to interpret
and appeared to be split by "@see struct zbus_channel".

Fixed several spelling and grammar issues.

Signed-off-by: Christoffer Gjedsted Brask <cgb@develco.dk>
2026-01-05 16:07:31 +01:00
Gaetan Perrot
92607b3bf8 drivers: modem: hl78xx: hl78xx_cfg: fix APN NULL check
hl78xx_set_apn_internal() was calling strlen(apn) before checking
the APN pointer against NULL, making the defensive check
ineffective.

Reorder the code so the NULL check is performed before dereferencing
the APN pointer.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-05 16:07:15 +01:00
Zhaoxiang Jin
4ddcd4bf3c doc: releases: update LPCMP deprecation notes for 4.4
Simplified the LPCMP driver migration notes by removing outdated
information about the devicetree compatible renaming. The compatible
nxp,lpcmp is now shared between both the sensor API-based and
comparator API-based LPCMP drivers, so the previous note about
renaming to nxp,sensor-lpcmp is no longer accurate.

Moved the comparator API-based LPCMP driver information to the
'New Drivers' directory.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-05 16:06:37 +01:00
Zhaoxiang Jin
510253d12a drivers: sensor: mcux_lpcmp: Removed redundant help information
Removed redundant help information

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-05 16:06:37 +01:00
Zhaoxiang Jin
af536abe7d dts: drivers: remove nxp,sensor-lpcmp.yaml
1. Removed nxp,sensor-lpcmp.yaml and merged its
properties into nxp,lpcmp.yaml. Now a single
dt-binding (compatible: nxp,lpcmp) is shared
by two drivers: the sensor API-based LPCMP
driver and the comparator API-based LPCMP driver.

2. Updated the driver and samples accordingly.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-05 16:06:37 +01:00
Andy Lin
8558b935b1 coredump: arm: Callee registers for armv6-m and v8-m baseline
Ensure callee registers included in coredump.
Push callee registers onto stack for
CONFIG_ARMV6_M_ARMV8_M_BASELINE as well
when CONFIG_EXTRA_EXCEPTION_INFO enabled.

Effectively a complement to df6b8c3 by mholden.

Signed-off-by: Andy Lin <andylinpersonal@gmail.com>
2026-01-05 16:06:19 +01:00
Florian Mahon
8893c3f964 boards: rpi_pico2: doc: Add Wi-Fi firmware blob setup instructions
Add missing documentation for the required Wi-Fi firmware blob download
step when building for the Pico 2W variant (rpi_pico2/rp2350a/m33/w).

The Infineon CYW43439 Wi-Fi chip requires proprietary firmware files
that must be fetched before building. Without this step, users
encounter CMake errors about missing firmware files.

Added a new section explaining:
 - The requirement to run 'west blobs fetch hal_infineon'
 - What files are downloaded (43439A0.bin and 43439A0.clm_blob)
 - That this only needs to be done once per workspace

 This resolves a common issue where new users following the
 documentation cannot build Wi-Fi applications successfully.

Signed-off-by: Florian Mahon <florian.mahon@gmail.com>
2026-01-05 13:55:32 +01:00
Fabrice DJIATSA
a5bbbeea9a tests: boot: update testcase.yaml files
Add the stm32l562e_dk board as an allowed platform to
execute tests in CI.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-05 11:39:55 +01:00
Fabrice DJIATSA
58b6187510 boards: st: stm32l562e_dk: update flash0 node
Swap using offset requires that slot1 has one extra sector
size compared to slot0.

These changes are necessary to execute MCUboot tests and fix
issues detected in common flash test drivers.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-05 11:39:55 +01:00
Benjamin Cabé
f9fdd9fc50 include: dac: add doxygen docs for dac161s997 extended API
Adds doxygen documentation for the extended API of the TI DAC161S997
driver.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-05 11:38:41 +01:00
Benjamin Cabé
213c0cd98c include: dac: add doxygen group for device-specific DAC API extensions
Similar to how it's done for other driver classes, create a new doxygen
group to put all device-specific DAC API extensions under.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-05 11:38:41 +01:00
Jan Behrens
01fc126473 drivers: counter: stepper: test: Added RPI Pico PIT to existing tests
Added the RPI Pico PIT driver to the counter_basic_api test suite.

Signed-off-by: Jan Behrens <jan.behrens@navimatix.de>
2026-01-05 11:38:13 +01:00
Jan Behrens
47b988c8dc drivers: counter: test: Added RPI Pico PIT tests
Added a test suite for the RPI Pico PIT driver that tests both
functionality and erroneus inputs.

Signed-off-by: Jan Behrens <jan.behrens@navimatix.de>
2026-01-05 11:38:13 +01:00
Jan Behrens
2f654b6e14 drivers: counter: Added RPI Pico PIT counter driver
Added a counter driver for the RPI Pico/RP2040 that implements
programmable interval timer (PIT) functionality using the PWM HAL.

Signed-off-by: Jan Behrens <jan.behrens@navimatix.de>
2026-01-05 11:38:13 +01:00
Thomas Stranger
7eb623c035 github: dependabot: configure cooldown time for updates
This will delay non security dependabot updates to packages,
giving automated tools and researchers more time to catch updates
with malicious intent, thus reducing the supply chain security risks.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2026-01-05 09:21:03 +01:00
Holt Sun
f18be66783 boards: lpcxpresso55s28: add CRC peripheral support
Add CRC hardware peripheral support to NXP LPC55S2X SoC family and
enable it on the lpcxpresso55s28 board

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-05 09:20:40 +01:00
Holt Sun
ed2fc81d4b drivers: crc: add NXP LPC CRC driver
Add CRC driver implementation for NXP LPC microcontrollers.

The driver supports:
- CRC-CCITT, CRC-16, and CRC-32 IEEE polynomials
- Configurable input/output bit reversal
- Seed value configuration
- Thread-safe operation with semaphore locking
- Streaming CRC calculation via begin/update/finish API

Hardware limitations:
- Processes data in 8-bit chunks internally
- 32-bit writes require 4 cycles (8-bit × 4)
- Supports back-to-back writes of 8/16/32-bit width

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-05 09:20:40 +01:00
Holt Sun
0b897874bb dts: bindings: crc: add NXP LPC CRC binding
Add devicetree binding for the NXP LPC CRC controller
(compatible "nxp,lpc-crc") with required reg property.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-05 09:20:40 +01:00
Holt Sun
bce0b1a72c modules: hal_nxp: mcux: enable LPC CRC driver component
Enable lpc crc driver for zephyr crc driver.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-01-05 09:20:40 +01:00
Johnny Chuang
0e051f7c2b board: add '32f967_dv' development board (minimal build support)
Minimal board definition for the Elan em32f967 SOC:
- Includes DTS, YAML, and Kconfig files
- Provides board.cmake with misc-flasher for CI/build
- Actual flashing is not included in this PR

Signed-off-by: Johnny Chuang <johnny.chuang@emc.com.tw>
2026-01-05 09:18:40 +01:00
Johnny Chuang
7e45f351c5 soc: add Elan em32f967 minimal SoC support
Add initial support for the Elan em32f967 SoC based on ARM Cortex-M4.
Minimal SoC definition for upstream:
- soc.h, Kconfig, and CMakeLists.txt provided for completeness
- This PR does not implement drivers or UART functionality

Signed-off-by: Johnny Chuang <johnny.chuang@emc.com.tw>
2026-01-05 09:18:40 +01:00
Johnny Chuang
6f0e2acf1e dt-bindings: elan em32f967 – clock, gpio, pinctrl, pwm
Add minimal DT binding headers and matching YAML files for the
Elan em32f967 SoC. The new definitions are required to build the
sample board and follow the upstream style.

Signed-off-by: Johnny Chuang <johnny.chuang@emc.com.tw>
2026-01-05 09:18:40 +01:00
Thinh Le Cong
23892b038f drivers: serial: fix IAR warning Pe1072 about declaration after a label
Fix Pe1072 warning (declaration after case label) by wrapping with braces

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2026-01-04 14:11:51 +01:00
Ayush Singh
9d9529f0db doc: develop: manifest: external: Add greybus
Add documentation for Greybus Zephyr implementation. The RFC [0] goes into
more detail regarding Greybus and it's current status.

[0]: https://github.com/zephyrproject-rtos/zephyr/issues/98259

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2026-01-03 13:09:36 +01:00
Alberto Escolar Piedras
e90135eb0c arch: posix: cmake: Minor clarifications
Minor improvements in this cmake:
Add a comment to clarify why we set one option, and move an if
into an else with a comment of what is doing.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-01-03 10:20:34 +01:00
Alberto Escolar Piedras
6f427044dd arch: posix: cmake: Remove unnecessary line
This variable is not set to anything.
This line has always been just bogus.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-01-03 10:20:34 +01:00
Gaetan Perrot
dab667f51c drivers: clock_control: renesas_ra_cgc: fix API name typo
Fix a typo in the Renesas RA clock control API symbol name.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-03 10:20:24 +01:00
Gaetan Perrot
15eb2ee314 drivers: clock_control: renesas_ra_cgc: fix NULL subsys handling
Fix unsafe handling of the clock control subsystem pointer.

The subsystem argument was cast before being validated, which could
lead to invalid memory access when NULL is passed.

Rework the on/off callbacks to validate the subsystem pointer before
casting it, drop unnecessary device checks, and mark the device
argument as unused.

Also simplify get_rate() validation by checking only the rate
pointer.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-03 10:20:24 +01:00
Gaetan Perrot
0f59ae35d4 drivers: ethernet: eth_virtio_net: remove invalid NULL check
Remove a NULL check on the device pointer that occurs after the
pointer has already been dereferenced.

This check can never be true and is therefore misleading.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-03 10:19:52 +01:00
Alberto Escolar Piedras
a2f45762f1 arch posix: cleanup NATIVE_APPLICATION support remnants
NO_POSIX_CHEATS was a macro used to avoid including the content of a
header (`posix_cheats.h`) which allowed building applications in the
POSIX architecture without the native simulator, avoiding collisions
between some embedded symbols and those from the host C library.

Support for this way of building, and this header and macro were
removed in e150ffb92c, but these users
were forgotten. This was harmless, but let's just clean it up now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-01-03 10:19:34 +01:00
Daniel Leung
b82e352f58 boards: intel_adsp: ignore newlib tests in twister
Add newlib to ignore_tags so twister will no longer run newlib
tests. These platforms have memory mappings that are not quite
what newlib is expecting so malloc may sometimes fail or even
returns invalid addresses. Fixing it is not worth the effort
because:

() Zephyr SDK provides picolibc now and not newlib, and malloc
   works fine with picolibc.

() Downstream projects uses xcc/xt-clang as toolchains where
   their provided newlib are not multi-thread safe, and cannot
   be safely used under SMP environment.

So simply ignore any newlib tests as they are not really
providing any values on these platforms.

Fixes #100895

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2026-01-03 10:19:13 +01:00
Peter Mitsis
3affd0385e kernel: Fix race condition in z_time_slice()
Instead of directly calling the current thread-specific time slice
handler in z_time_slice(), we must call a saved copy of the handler
that was made when _sched_spinlock was still held. Otherwise there
is a small window of time where another CPU could change the handler
to NULL just before we call it.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2026-01-03 10:18:53 +01:00
Peter Mitsis
c4e2db088f kernel: Add check to k_sched_time_slice_set()
When k_sched_time_slice_set() is called, the current time slice
should not be reset if the current thread is using thread-grained
time slicing. This is to maintain consistency with the already
established idea that thread-grained time slicing takes precedence
over the system-wide time slice size `slice_ticks`.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2026-01-03 10:18:53 +01:00
Peter Mitsis
3a0784fe22 kernel: Update thread_is_sliceable()
This fixes several minor items related to the priority or importance
of checks in determining whether the thread can be time sliced.

A thread that is prevented from running can not be time sliced
regardless of whether it was configured for thread-grained
time slicing or not. Nor can the idle thread be time sliced.

If the thread is configured for thread-grained time slicing, then
do not bother with the preemptible or priority threshhold checks.
This maintains the same behavior, and just optimizes the checks.

If the thread is sliceable, we may as well return the size of the
tick slice since we are checking that information anyway. Thus, a
return value of zero (0) means that the thread is not sliceable,
and a value greater than zero (0) means that it is sliceable.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2026-01-03 10:18:53 +01:00
Peter Mitsis
d05d9454bf kernel: Remove superfluous thread_is_sliceable() call
Within z_sched_ipi() there is no need for the thread_is_sliceable()
test as z_time_slice() performs that check. Since as a result of this
thread_is_sliceable() is now only used within timeslicing.c, the
'static' keyword is applied to it.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2026-01-03 10:18:53 +01:00
Abderrahmane JARMOUNI
fe039cb07b drivers: flash: silabs: replace 'depends on DMA' with 'select'
When a driver requires the usage of a low level driver subsystem
(like SPI, I2C, DMA...), it shall enable it instead of depending on it.
Also, make DMA usage depend on its DT properties being defined.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2026-01-02 16:01:31 +00:00
Abderrahmane JARMOUNI
6d9ded6651 drivers: adc: silabs IADC: replace 'depends on DMA' with 'select'
When a driver requires the usage of a low level driver subsystem
(like SPI, I2C, DMA...), it shall enable it instead of depending on it.
Also, make DMA usage depend on its DT properties being defined.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2026-01-02 16:01:31 +00:00
Vinayak Kariappa Chettimada
321ffb786b tests: bsim: Bluetooth: Do not use the BT_ prefix
Do not use the BT_ prefix for definitions not provided by
the Bluetooth subsystem.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-02 16:01:26 +00:00
Vinayak Kariappa Chettimada
e78fe1dcdc samples: Bluetooth: Move harness and tags to common section
Move harness and tags to common section for observer and
broadcaster_multiple samples.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-02 16:01:26 +00:00
Vinayak Kariappa Chettimada
50b6842ee3 samples: Bluetooth: observer: Move Zephyr Controller Kconfigs
Move Zephyr Controller Kconfigs to overlay file.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-02 16:01:26 +00:00
Vinayak Kariappa Chettimada
a9b6024585 samples: Bluetooth: Broadcast multiple legacy and extended advertising
Update broadcaster_multiple sample to start multiple
advertising sets of type legacy and extended advertising.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-02 16:01:26 +00:00
Vinayak Kariappa Chettimada
eb109a274d Bluetooth: Controller: Fix missing chain pdu time reservation
Fix missing auxiliary chain pdu time reservation.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-02 16:01:26 +00:00
Vinayak Kariappa Chettimada
3baf507b97 Bluetooth: Controller: Tune aux offset calculation overhead assertion
Tune the aux offset calculation overhead assertion to use
EVENT_OVERHEAD_START_US; this is the correct maximum
overhead causing ISR latency for start of a radio event that
occurs thereafter.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-02 16:01:26 +00:00
Vinayak Kariappa Chettimada
bb5f3ff87d tests: bsim: Bluetooth: Enable similar Controller Kconfig features
Enable similar Controller Kconfig features between nRF52 and
nRF5340 BabbleSIM LE Audio testing.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-01-02 16:01:26 +00:00
Fabian Blatz
ad391c3447 boards: infineon: Correct uart compatible name
Correct the non-existing infineon,cat1-uart compatible string and pinctrl
for it.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2026-01-02 13:15:17 +00:00
Jamie McCrae
14fb2c0691 samples: mgmt: mcumgr: smp_svr: Fix shell-mgmt Kconfig conflict
Disables the shell serial backend in this Kconfig fragment to
prevent conflicting with the serial one

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-01-02 09:58:06 +00:00
Gaetan Perrot
aaa321569f drivers: gpio: infineon: remove redundant NULL check in ISR
Remove a redundant NULL check on the device pointer in the GPIO
interrupt handler.

The device pointer is dereferenced unconditionally before the check
and cannot be NULL in this context.

No functional change intended.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-02 09:57:43 +00:00
TOKITA Hiroshi
aa6ef16ec1 dts: bindings: serial: pl011: interrupts are not always required.
There are cases where the device can operate by polling
without using interrupts, so `interrupts` are not mark as required.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-02 09:57:31 +00:00
Farsin NASAR V A
6186673e15 tests: drivers: counter: Add sam_e54 test support files
- Adds sam_e54_xpro.overlay files for tcc.
- Adds sam_e54_xpro platform allow in testcase.yaml.

Signed-off-by: Farsin NASAR V A <Farsin.NASARVA@microchip.com>
2026-01-02 09:57:06 +00:00
Muhammed Asif
f3fe67e153 boards: microchip: sam_e54_xpro: Add conuter tag in sam_e54_xpro.yaml
- Add counter tag in the board yaml file seciton to allow CI run TCC
  G1 counter tests on this board

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-02 09:57:06 +00:00
Muhammed Asif
f58e1a3098 drivers: counter: microchip: Add TCC G1 driver
- Adds support for g1 counter driver with tcc peripheral

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-02 09:57:06 +00:00
Muhammed Asif
326ad5033d dts: bindings: counter: microchip: Add TCC G1 compatible
Adds the binding yaml for tcc peripheral for g1 counter driver

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-01-02 09:57:06 +00:00
Hau Ho
ed58ceefe6 tests: drivers: flash: Add config file for flash common test
Add config TEST_DRIVER_FLASH_SIZE for EK-RX261 and
FPB-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-02 09:56:54 +00:00
Hau Ho
ae1c5a9a06 drivers: flash: Add flash driver support for RX261
Add config RX_FLASH_TYPE1 support for RX261

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-02 09:56:54 +00:00
Hau Ho
48cf8c46dd boards: renesas: Add support for flash driver on FPB-RX261 board
Add flash driver support on FPB-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-02 09:56:54 +00:00
Hau Ho
0963b33be7 boards: renesas: Add support for flash driver on EK-RX261 board
Add flash driver support on EK-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-02 09:56:54 +00:00
Hau Ho
6b50eb5569 dts: rx: Add dts property for flash on RX261 MCU
Add dts for flash controller includes code and data flash region
for RX261 MCU

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2026-01-02 09:56:54 +00:00
Keith Short
4d81bdb667 posix: c_lib_ext: fnmatch: fix llvm warning
The tolower() function takes an int parameter. LLVM compilers generate a
warning if a char is passed instead.

Signed-off-by: Keith Short <keithshort@google.com>
2026-01-02 09:56:45 +00:00
Lyle Zhu
587e8b8df0 bluetooth: at: add explicit cast to char pointer in return statements
Add explicit casts from 'uint8_t *' to 'char *' in at_get_string()
and at_get_raw_string() return statements to resolve implicit cast
warnings. The data.start field is uint8_t *, but the functions
return char *.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-01 21:30:01 +01:00
Abderrahmane JARMOUNI
32f15464fc dts: bindings: fix compatible strings missing quotes
Add quotes to compatible strings missing them.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2026-01-01 21:29:34 +01:00
Muhammad Waleed Badar
c36b201e8d dts: bindings: add cpu bindings for cortex-a7 and cortex-a9
Add devicetree binding definitions for ARM Cortex-A7 and
Cortex-A9 CPUs.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-01-01 21:29:09 +01:00
Ha Duong Quang
4a3e4dc321 tests: drivers: enable adc test for s32k5
Enable ADC api test for S32K5

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-01-01 21:28:46 +01:00
Ha Duong Quang
9194a1ac7d samples: drivers: enable adc samples for s32k5
Enable adc_dt and adc_sequence samples for S32K5 ADC

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-01-01 21:28:46 +01:00
Ha Duong Quang
84c76c2b0e boards: nxp: s32k5xxcvb: enable support for adc
Enable support ADC for S32K5

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-01-01 21:28:46 +01:00
Ha Duong Quang
a1230d9efa dts: arm: nxp: add adc devicetree nodes for s32k5
Add devicetree of adc instances for s32k566.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-01-01 21:28:46 +01:00
Ha Duong Quang
0056966479 soc: nxp: s32: k5: add adc base address mappings
Add macro definitions to map generic ADC instance names to hardware
specific SARADC base addresses, enabling driver portability.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-01-01 21:28:46 +01:00
Ha Duong Quang
63c052c4cf drivers: adc: add support for s32k5
Add two new definitions, ADC_SAR_IP_HW_REG_SIZE and
ADC_SAR_IP_CHAN_2_BIT, to eliminate the inclusion of
Adc_Sar_Ip_HwAccess.h, since this header file does not
exist for the S32K5 platform.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2026-01-01 21:28:46 +01:00
Nick Brook
c6ba1a067c modules: nanopb: fix race condition in zephyr_nanopb_sources
When one generated .pb.h file includes another generated .pb.h file,
the build can fail because compilation may start before all headers
are generated.

The nanopb_generated_headers target collects all proto generation
targets as dependencies, but the calling target was not depending on
it. This can cause a race condition where the compiler fails with
"No such file or directory" for included headers.

Make the calling target depend on nanopb_generated_headers to ensure
all protobuf headers are generated before source compilation begins.

Signed-off-by: Nick Brook <nrbrook@gmail.com>
2026-01-01 21:28:33 +01:00
Ivan Iushkov
0436b8abd8 drivers: sensor: fix possible unaligned access icm45686
icm45686_encoded_fifo_payload is defined as packed struct,
while the nested structures are not. It causes an issue of
potential unaligned access to accel and gyro members.
The issue was detected by clang compiling with
-Wunaligned-access flag:

```
icm45686.h:52:6: error: field accel within 'struct icm45686.h:46:3)'
is less aligned than 'struct icm45686.h:48:4)' and is usually due
to 'struct icm45686.h:46:3)' being packed,
which can lead to unaligned accesses [-Werror,-Wunaligned-access]

icm45686.h:57:6: error: field gyro within 'struct icm45686.h:46:3)'
is less aligned than 'struct icm45686.h:53:4)' and is usually due
to 'struct icm45686.h:46:3)' being packed,
which can lead to unaligned accesses [-Werror,-Wunaligned-access]
```

Small C code snippet to demonstrate the reported issue:
```
struct icm45686_encoded_fifo_payload icm45686;
// prints 1:
printf("%lu\n", __alignof__(icm45686));
// prints 1:
printf("%lu\n", __alignof__(icm45686.accel));
// prints 2:
printf("%lu\n", __alignof__(typeof(icm45686.accel)));
```

This commit resolves the following Zephyr issue:
https://github.com/zephyrproject-rtos/zephyr/issues/101142
by adding `packed` attribute to accel and gyro members.

Signed-off-by: Ivan Iushkov <ivan.iushkov@nordicsemi.no>
2026-01-01 21:28:12 +01:00
Ivan Iushkov
bd6a228911 drivers: sensor: fix possible unaligned access bmi08x
bmi08x_accel_frame is defined as packed struct,
while the nested structures are not. It causes an issue of
potential unaligned access to accel member.
The issue was detected by clang compiling with
-Wunaligned-access flag:

```
bmi08x.h:605:2: error: field  within 'struct bmi08x_accel_frame'
is less aligned than 'union bmi08x.h:605:2)' and is usually due
to 'struct bmi08x_accel_frame' being packed,
which can lead to unaligned accesses [-Werror,-Wunaligned-access]
```

This commit resolves the following Zephyr issue:
https://github.com/zephyrproject-rtos/zephyr/issues/101142
by adding `packed` attribute to accel member.

Signed-off-by: Ivan Iushkov <ivan.iushkov@nordicsemi.no>
2026-01-01 21:28:12 +01:00
Jaagup Averin
f430cdef60 subsys/mgmt: Declare PROCESSOR_NAME for native_sim
In case of native build, the CONFIG_architecture
cannot currently be resolved with Kconfig, so we
must fall back to resolving it during compilation
using compiler definitions.

Signed-off-by: Jaagup Averin <jaagup.averin@gmail.com>
2026-01-01 21:27:23 +01:00
Muhammad Waleed Badar
9d0a229461 drivers: sensor: add adxl345 range attribute setter
Add adxl345_attr_set_range() to allow runtime config.
of the accelerometer's measurement range via the
SENSOR_ATTR_FULL_SCALE attribute.

The function maps the requested range to the nearest supported
ADXL345 range (±2g, ±4g, ±8g, or ±16g) and updates the device
configuration accordingly.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-01-01 21:26:42 +01:00
Sreeram Tatapudi
64e789fd80 samples: infineon: add missing copyright headers to overlay files
Add SPDX-License-Identifier and copyright headers to Infineon
board overlay files in flash_shell, uart async_api, and
nvs samples for cy8cproto_062_4343w and cy8cproto_063_ble boards.

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2026-01-01 21:26:23 +01:00
TOKITA Hiroshi
545c2870e9 tests: crypto: crypto_hash: Add rpi_pico2 to test target
Add rpi_pico2 to the crypto_hash test target.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-12-31 11:00:21 +00:00
TOKITA Hiroshi
515793cf5b boards: raspberrypi: rpi_pico2: Add sha256 accelerator
Added sha256 accelerator to rpi_pico.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-12-31 11:00:21 +00:00
TOKITA Hiroshi
41a86eb1fe drivers: crypto: Add initial support for rpi_pico sha256 accelerator
Add basic support for RaspberryPi Pico's SHA256 hardware accelerator.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-12-31 11:00:21 +00:00
TOKITA Hiroshi
f0632f5155 modules: hal_rpi_pico: Add hardware_sha256 to include directories
Add `hardware_sha256/include` to `zephyr_include_directories`.
Use the header only.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-12-31 11:00:21 +00:00
Qingsong Gou
bd48944b7e samples: drivers: uart: async_api: enable sf32lb52_devkit_lcd
Enable test on sf32lb52_devkit_lcd

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-31 11:00:08 +00:00
Qingsong Gou
d2b64ae909 drivers: dma: sf32lb: fix get_status
Fix get status interface

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-31 11:00:08 +00:00
Qingsong Gou
98742f1b07 drivers: serial: sf32lb: add uart async API support
add uart async API support for sf32lb

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-31 11:00:08 +00:00
Zhida Zhang
548589c8e0 boards: seeed: xiao_nrf54l15: update DTS
Designate the flash controller as rram_controller.
Enable IEEE 802.15.4 wireless communication support.

Signed-off-by: Zhida Zhang <2759897880@qq.com>
2025-12-31 10:59:56 +00:00
Camille BAUD
bb54981614 samples: drivers: display: Fix nonsense alignment default
A alignment of 1 is also called 'unaligned'.
This default causes exceptions on CPUs that use different paths
for unaligned and aligned access.
Use a sane default that doesnt guarantee a store/access exception.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-31 10:59:44 +00:00
Hui Bai
3ea4ddc917 samples: net: wifi: Update hostap cleanup intervals for NXP wifi chips
Update hostap cleanup intervals to 120 seconds for NXP wifi chips.
CONFIG_WIFI_NM_WPA_SUPPLICANT_CLEANUP_INTERVAL for wpa_supplicant.
CONFIG_WIFI_NM_HOSTAPD_CLEANUP_INTERVAL for hostapd.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-12-31 10:58:59 +00:00
Hui Bai
826872d179 modules: hostap: Add new configs in Kconfig for hostap cleanup interval
Both wpa_supplicant and hostapd register cleanup interval to eloop and
the intervals are all 10 seconds by default and this can cause device to
be woken up twice from sleep every 10 seconds. In order to reduce power
consumption, add below new items in Kconfig so that users can update the
cleanup intervals based on their requirements.
CONFIG_WIFI_NM_WPA_SUPPLICANT_CLEANUP_INTERVAL
CONFIG_WIFI_NM_HOSTAPD_CLEANUP_INTERVAL

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-12-31 10:58:59 +00:00
Zhaoxiang Jin
178acc0007 samples: sensor: enable die_temp_polling for frdm_mcxe31b
enable die_temp_polling for frdm_mcxe31b board

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-31 10:58:50 +00:00
Zhaoxiang Jin
84010a1da4 dts: nxp_mcxe31x: add properties to the tempsense node
add properties to the tempsense node for nxp_mcxe31x

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-31 10:58:50 +00:00
Zhaoxiang Jin
f110ef9c0a drivers: clock_control: nxp_mc_cgm: enable tempsense clock
Enable clock for tempsense module in NXP MC CGM driver to
support temperature sensing functionality.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-31 10:58:50 +00:00
Zhaoxiang Jin
ab23a9f012 drivers: sensor: nxp: Add NXP tempsense driver
Add a new driver for the NXP TempSense temperature
sensor found in various NXP MCUs, such as the MCX
family. The driver reads temperature data from the
TempSense peripheral and provides it via the Zephyr
sensor API.

The TempSense peripheral details can be found in the
NXP MCXE31x reference manual chapter 78.
reference manual can be found at:
https://www.nxp.com/webapp/Download?colCode=MCXE31XRM

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-31 10:58:50 +00:00
Zhaoxiang Jin
e7d24c8088 drivers: adc: add clock frequency selection for SAR ADC
This commit enhances the SAR ADC driver by adding
support for clock frequency selection. The clock
frequency can now be configured via the devicetree,
allowing for better optimization of ADC performance
based on application requirements.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-31 10:58:50 +00:00
TOKITA Hiroshi
4d04eb0998 drivers: spi: spi_rpi_pico_pio: Fix pio_program variable constness
Since RPI_PICO_PIO_GET_PROGRAM returns const variable, so changed
`pio_program_t *` variables in data to `const pio_program_t *`.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-12-31 10:57:55 +00:00
Kyle Bonnici
45f6c6b4cb Boards: combine duplicate nodes
This PR combines node content in the same file spread over multiple
node definitions.

This PR has not funtional changes to the boards

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2025-12-31 10:57:37 +00:00
Zhaoxiang Jin
c2cec5108b samples: adc_dt: Fix adc_dt run issue on NXP MCXN boards
Fix adc_dt run issue on NXP MCXN boards, the default
mode of vref is standby mode, the BUF21 is not enabled,
so the LPADC can not work normally. Need to set the vref
mode to 'NXP_VREF_MODE_LOW_POWER' or 'NXP_VREF_MODE_HIGH_POWER'
to enable the BUF21.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-31 10:57:20 +00:00
Gaetan Perrot
0c8f4741b8 drivers: espi: espi_taf_npcx: reorder NULL checks
Move the NULL checks for the protection configuration parameters
before dereferencing them to avoid potential NULL pointer
dereferences.

The device pointer is assumed to be valid.

No functional change intended.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-12-31 10:56:02 +00:00
Alberto Escolar Piedras
30bfb73e27 test: benchmarks: Fix format specifier
uint64_t is not in general unsigned long long int, and therefore
its format specifier is not llu in general.
The macro PRIu64 resolves to whatever it is.

For 64bit targets, uint64_t is relatively normal to just be
unsigned long.
Providing the wrong format specifier results in the build warning
```
format %llu expects argument of type long long unsigned int, but
argument <x> has type long [unsigned] int
```

The issue can be reproduced by building this test with
native_sim/native/64.
Issue introduced in da6cd1a474

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-31 10:55:56 +00:00
Igor Knippenberg
4a3c5ed1f6 tracing: systemview: fix assertion fail on first thread switch
Segger Systemview calls k_current_get() in sys_trace_k_thread_switched_in.
During early boot, this hook is triggered while k_is_pre_kernel() is true.

This triggers an assertion failure when CONFIG_ASSERT is enabled.

Add a guard to ignore the thread switch event if it is called pre-kernel.

Signed-off-by: Igor Knippenberg <knippenberg@filics.eu>
2025-12-30 17:40:05 +01:00
Abderrahmane JARMOUNI
7eb4928b04 MAINTAINERS: fix devicetree bindings area label
Use "Devicetree Binding" label instead of "Devicetree Bindings"

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-12-30 09:10:32 -06:00
Abderrahmane JARMOUNI
9b8d85da55 MAINTAINERS: add JarmouniA as collaborator to DT Bindings area
Add JarmouniA as collaborator to the Devicetree Bindings area.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-12-30 09:10:32 -06:00
Bjarki Arge Andreasen
a493141dd4 drivers: clock_control: nrfs_audiopll: disable clock on init
The nrfs audiopll is automatically started if freq fraction or
prescaler is requested. The initial state of the clock should be
off, so send a disable request after setting initial freq fraction
and prescaler.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-30 09:10:18 -06:00
Bjarki Arge Andreasen
1124070207 drivers: clock_control: nrf_fll16m: ensure main power domain is on
Ensure the MAIN power domain is on before triggering
NRF_LRCCONF_TASK_CLKSTART_0 task.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-30 09:09:37 -06:00
Carlo Caione
6501bdfc99 boards: shields: Add support for Semtech SX1261MB2BAS LoRa shield
Add board shield definition for the Semtech SX1261MB2BAS LoRa module. This
is mostly copied over from semtech_sx1262mb2das.

Signed-off-by: Carlo Caione <carlo.caione@gmail.com>
2025-12-30 09:09:08 -06:00
Krzysztof Chruściński
79a44ed06b samples: boards: nordic: nrf_sys_event: Extend sample
Add part which is using event register and unregister functionality.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-30 09:07:32 -06:00
Krzysztof Chruściński
4cff3bd1d9 drivers: timer: nrf_grtc: Use nrf_sys_event registration
Use API for registering synchronous interrupts. It reduced interrupt
latency due to NVM memory wake up.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-30 09:07:32 -06:00
Krzysztof Chruściński
13b45e2d99 soc: nordic: common: nrf_sys_event: Add API for registering an event
Add API for indicating that a deterministic interrupt will occur at
certain point in time in the future. Implementation is ensuring that
there will be no latency due to NVM memory waking up. There are 2
ways of ensuring that:
- setting low latency power mode in RRAMC (higher power consumption
  in idle (not available in non-secure build)
- using PPI and GRTC to trigger the RRAMC wake up task right before
  an expected interrupt

Module has a pool of GRTC channels and dynamically allocates and
frees those channels when events are registered and unregistered.

If GRTC channel is not available then algorithm falls back to power
mode setting (in secure build).

API offers registering an event using relative and absolute timing.

API can be used from Zero Latency interrupts.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-30 09:07:32 -06:00
Krzysztof Chruściński
ced5d2f730 soc: nordic: common: Add HAS_HW_NRF_RRAMC
Add HAS_HW_NRF_RRAMC Kconfig to indicate presence of the RRAMC
controller.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-30 09:07:32 -06:00
Ajay Neeli
669b4cf46c samples: mbox: Add support for Versal Gen2 RPU
Add support for testing AMD-Xilinx Inter-Processor-Interrupt(IPI) on
Versal Gen2 RPU.

Add an overlay configuration to enable IPI-1 as the default
inter-processor interrupt for RPU0 in Versal Gen2. While IPI-1 is the
preset, it can be adjusted based on design requirements.

rpu0_rpu0_mailbox is set up in loopback mode for testing.

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-12-30 09:06:20 -06:00
Ajay Neeli
f76e532a0d samples: mbox: Add support for Versal-NET RPU
Add support for testing AMD-Xilinx Inter-Processor-Interrupt(IPI) on
Versal-NET RPU.

Add an overlay configuration to assign IPI-5 as the default
inter-processor interrupt for RPU0 in Versal-NET. While IPI-5 is preset,
it can be adjusted based on design requirements.

rpu0_rpu0_mailbox is set up in loopback mode for testing.

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-12-30 09:06:20 -06:00
Ajay Neeli
18a6b6c35c dts: amd: versal2: Add DT support for IPI
Add the inter-processor interrupt (IPI) nodes to the device tree for the
Versal Gen2 platform, as per Versal Gen2 Technical Ref Manual (AM026)

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-12-30 09:06:20 -06:00
Ajay Neeli
f3ce62b088 dts: amd: versalnet: Add DT support for IPI
Add the inter-processor interrupt (IPI) nodes to the device tree for the
Versal-NET platform, as per Versal-NET Technical Reference Manual (TRM).

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-12-30 09:06:20 -06:00
Ajay Neeli
8c202d2b93 drivers: mbox: Add AMD-Xilinx IPI Mailbox
Add a new MBOX driver for the AMD-Xilinx IPI Mailbox, providing support
for the Versal-NET and Versal Gen 2 platforms

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-12-30 09:06:20 -06:00
Ajay Neeli
14bb1820d6 dts: bindings: mbox: Add AMD-Xilinx IPI mailbox
Add device tree bindings for the AMD-Xilinx Inter Processor Interrupts
(IPI) mailbox.

The IPI architecture allows the passing of messages across the system
without the complications of autonomous read-write transactions and
polling inefficiency. The notification of the interrupt is also
possible without message buffers on some platforms. Some IPI channels
are hard-wired to particular core while others can be configured to
assign to any core on AMD-Xilinx heterogenous multiprocessor platform.

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-12-30 09:06:20 -06:00
Holt Sun
8e5c223b54 samples: drivers: crc: fix twister regex and run in CI
1. Update the CRC sample’s Twister console regex to match the current
log output.
2. Add an integration_platforms entry (ek_ra8m1) so the sample runs
in PR CI.
3. Make CRC verification unconditional so the expected
“verification succeeded” log is always emitted and mismatches fail
the test.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-30 08:47:07 +01:00
Dat Nguyen Duy
62ad1b5828 boards: s32k5xxcvb: add flexcan support
Add flexcan support for s32k5xxcvb~

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2025-12-30 08:40:40 +01:00
Dat Nguyen Duy
79d37f8fd5 dts: nxp: add flexcan devicetree nodes for s32k566
Add Flexcan devicetree nodes for s32k566

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2025-12-30 08:40:40 +01:00
zhenwei fang
66cbc55e6f Bluetooth: Classic: Fix net_buf leak
Release the buffer with net_buf_unref(rsp) once the reading default link
policy settings response has been parsed.

Signed-off-by: zhenwei fang <fangzhenwei@bytedance.com>
2025-12-30 08:39:00 +01:00
Jonas Berg
107124e4b3 samples: pressure polling: Add Cytron Maker Uno RP2040 overlay
Enable GP14 for this sample. Use commented-out entries for the
other servo outputs, as is done in the other overlay files.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-12-30 08:38:10 +01:00
Jonas Berg
0e3be83c71 boards: Add Cytron Maker Uno RP2040 board
Product photo from https://www.cytron.io/p-maker-uno-rp2040

Tested with the commands in index.rst

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-12-30 08:38:10 +01:00
Jonas Berg
bac97f310f dts: bindings: vendor-prefixes: Add cytron
Add vendor prefix for Cytron Technologies

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-12-30 08:38:10 +01:00
William Tang
0601335d85 boards: nxp: mcx: update FlexCAN clock configuration
Update FlexCAN clock configuration across NXP MCXN family boards to use
PLL0 as clock source with a divider of 3 instead of FRO_HF with divider
of 1.
The new configuration provides FlexCAN peripherals by using the PLL0
output (150MHz) divided by 3 to achieve 50MHz, replace previous 48MHz
FRO_HF.

Signed-off-by: William Tang <william.tang@nxp.com>
2025-12-29 16:04:17 +01:00
William Tang
0a4f52e52c dts: arm: nxp: add CAN FD support for MCXN SOC family
Add CAN FD support for MCXN SOC family, including mcxn23x, mcxn94x
and mcxn54x.

Tested with tests/drivers/can.

Fixes #91138

Signed-off-by: William Tang <william.tang@nxp.com>
2025-12-29 16:04:17 +01:00
Derek Snell
fb18d5ca94 doc: boards: nxp: update VS Code links in common footer
MCUXpresso for VS Code documentation was migrated to new site.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-12-29 16:03:43 +01:00
Mikołaj Rosowski
aa1d070f37 boards: dfrobot: Add DFRobot Beetle ESP32-C3 board
Add support for the DFRobot Beetle ESP32-C3 board. This is a small IoT
development board based on the Espressif ESP32-C3 RISC-V SoC.

Board features:
- ESP32-C3 (32-bit RISC-V at 160MHz)
- 400KB SRAM, 4MB Flash
- 2.4GHz WiFi and BLE
- 13x IO ports
- Integrated lithium battery charging management

The board has been tested with the following Zephyr samples:
- samples/basic/blinky
- samples/hello_world
- samples/net/wifi/shell

Signed-off-by: Mikołaj Rosowski <m.rosowski1@wp.pl>
2025-12-29 16:03:18 +01:00
Henrik Brix Andersen
b62b24248b doc: releases: migration-guide: 4.4: update FlexCAN migration guide entry
Update the NXP FlexCAN migration guide entry to take the latest Kconfig to
devicetree change into account.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-29 16:02:58 +01:00
Henrik Brix Andersen
964d09fda0 MAINTAINERS: rename the Aesc Silicon platform label
Rename the Aesc Silicon platform label used on GitHub to match the rest of
the platform labels.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-29 16:02:39 +01:00
Hake Huang
589a657a0c boards: nxp: add adc support to boards
add adc supports to boards

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-12-29 13:06:02 +01:00
Qingsong Gou
355c2f42e8 drivers: serial: sf32lb: add config_get and configure
Add config_get and configure APIs support

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-29 13:05:41 +01:00
Zhaoxiang Jin
4b57c88344 dts: nxp,sar-adc.yaml: remove 'type: array' from interrupts property
'type: array' is unnecessary for the interrupts property in
nxp,sar-adc.yaml.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-29 09:28:27 +01:00
Holt Sun
517cc13f1c doc: migration-guide-4.4: add NXP LPTMR counter updates
Document breaking changes in prescale-glitch-filter configuration
and the new prescale-glitch-filter-bypass property. Provide migration
example for out-of-tree device trees.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-29 09:27:54 +01:00
Holt Sun
bc9a0a726b counter: mcux_lptmr: fix prescaler/glitch filter configuration
Fix incorrect LPTMR prescaler/glitch filter mapping that led to wrong
frequency calculation and wrong hardware configuration.

- Calculate effective counter frequency correctly:
  * Time Counter mode: divide by 2^(value + 1)
  * Pulse Counter mode: divide by 2^value
- Map prescale-glitch-filter directly to the HAL enum (no offset math)
- Add prescale-glitch-filter-bypass DT boolean (default false)
- Restrict prescale-glitch-filter to 0..15 and update bindings/DTS users
- Add build-time validation for Pulse mode (value 0 requires bypass)

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-29 09:27:54 +01:00
Quang Le
22ba6d0007 soc: renesas: rzv: Fix pin function bitfield
Adjust the pin function bitfield to 4 bits to fit all RZ/V SoCs
(RZ/V2L, V2H, V2N). PFC bitfield of RZ/VH, V2N have 4 bits, so
the current 3-bit width does not fit them.

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-12-29 09:25:33 +01:00
Nhut Nguyen
6138ba7aef soc: renesas: rzv: Retrieve itcm, dtcm from dtsi for mpu settings
Retrieve itcm and dtcm size and base address from dtsi for mpu settings
instead of hardcode.

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-12-29 09:25:17 +01:00
Zhaoxiang Jin
1f977a9220 include: hwspinlock.h: Optimize hw_spin_trylock function
If api->trylock(dev, id) fails (typically because a cross-core
HW lock is held by another core and returns -EBUSY, or returns
-EINVAL, etc.), the function will immediately return the error
code, but the local ctx->lock is not released, and interrupts
also remain in the locked state from the trylock. This may cause
IRQ lock state leakage. If there's no opportunity in the call path
to reach k_spin_unlock(), the system may exhibit unpredictable
"freeze-like" behavior.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-28 18:13:37 +00:00
Benjamin Cabé
540edab373 include: tracing: fix FIFO slist tracing hook naming mismatch
The macro names sys_port_trace_k_fifo_put_slist_enter/exit in
tracing.h were incorrectly named and did not match the corresponding
definitions in backend implementations.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-28 18:13:26 +00:00
William Tang
cf42e1a779 boards: nxp: mr_canhubk3: update CAN configuration documentation
Remove the CONFIG_CAN_MCUX_FLEXCAN_MAX_MB configuration option from
the documentation notes, as the message buffer count information has
been moved to the devicetree and no longer needs to be described in
Kconfig.

Update the constraint for CONFIG_CAN_MCUX_FLEXCAN_MAX_FILTERS to
reflect that it must be less than the maximum number of message
buffers supported by the FlexCAN instance, as shown in the table
below the note. This keeps same behavior as driver.

Signed-off-by: William Tang <william.tang@nxp.com>
2025-12-28 10:11:51 +01:00
William Tang
18e5e29749 drivers: can: mcux: flexcan: move to per-instance MB configuration
This change refactors the FlexCAN driver to use per-instance message
buffer configuration instead of global Kconfig options. The driver now
calculates message buffer allocation at compile time based on device
tree properties for each FlexCAN instance.

Key changes:
- Remove global CAN_MAX_MB Kconfig option and associated range constraint
- Add number_of_mb, rx_mb, and tx_mb fields to mcux_flexcan_config
  structure
- Move callback arrays and atomic allocation bitmaps from static global
  arrays to per-instance static arrays generated by macros
- Update data structure to use pointers to per-instance arrays instead
  of fixed-size embedded arrays
- Add compile-time validation to ensure sufficient message buffers are
  available for required RX filters and RX filters greater than 0

This approach allows different FlexCAN instances to have different
message buffer configurations based on their hardware capabilities
and device tree settings, improving memory efficiency and flexibility.
The change maintains backward compatibility while enabling better
resource utilization across different SoC variants.

Fixes #92798

Signed-off-by: William Tang <william.tang@nxp.com>
2025-12-28 10:11:51 +01:00
William Tang
1e9bd76278 dts: can: mcux: flexcan: Add number-of-mb property to FlexCAN nodes
Add the `number-of-mb` and `number-of-mb-fd` device tree property to
all the NXP FlexCAN controller nodes across various SoC families to
specify the maximum number of 8-byte and 64-byte payload message
buffers supported by each FlexCAN instance.

This change updates device tree source files for multiple NXP SoC
families including Kinetis K6x, RT10xx, RT11xx, RT118x, MCX, S32K,
S32Z, and i.MX8MP/i.MX93 series. The property values are set based
on hardware specifications for each specific FlexCAN instance.

This property addition ensures proper resource allocation and
prevents buffer overflow issues in FlexCAN driver implementations.

Signed-off-by: William Tang <william.tang@nxp.com>
2025-12-28 10:11:51 +01:00
William Tang
8b8d5ca05a dts: arm: nxp: update copyright headers
Update copyright header in nxp_k6x.dtsi.

Signed-off-by: William Tang <william.tang@nxp.com>
2025-12-28 10:11:51 +01:00
Marek Matej
4cf8071494 boards: espressif: remove esp32s3_devkitm
Removing the esp32s3_devkitm as deprecated and redundant.
The esp32s3_devkitc has essentially the same functionality.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-12-27 21:02:28 +00:00
Marek Matej
ecdd8ee5b4 boards: Espressif deprecated board
Removing board esp32s3_devkitm as it is almost identical as
esp32s3_devkitc.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-12-27 21:02:28 +00:00
Fabin V Martin
3b67cbf654 tests: drivers: i2c: add test support
add overlay and update yaml files for i2c async test

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-27 21:01:25 +00:00
Fabin V Martin
2a94517e58 boards: microchip: pic32cx_sg61_cult: update sercom node for i2c
update board dts for sercom i2c node

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-27 21:01:25 +00:00
Fabin V Martin
b0919aec14 boards: microchip: pic32cx_sg41_cult: update sercom node for i2c
update board dts for sercom i2c node

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-27 21:01:25 +00:00
Fabin V Martin
f34df74147 west.yml: Update the portd for pic32cxsg
Update west.yml for adding the portd in the pincontrol
parsing file.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-27 21:01:25 +00:00
Tim Lin
f36e8b1d60 drivers/i2c: it8xxx2: Add I2C_CODE_IN_RAM for critical functions
Introduce the I2C_CODE_IN_RAM option to place selected critical
functions into the RAM code section.

This allows latency-sensitive I2C paths to execute from RAM when
required, while keeping the default behavior unchanged.

NOTE1: Enable I2C_CODE_IN_RAM on it81202bx: RAM size +2272B.
NOTE2: With kernel in RAM, enabling I2C_CODE_IN_RAM saves ~558ms
       over 1,000 transfers (W/R/W2R), tested on it81202bx.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-12-27 21:01:12 +00:00
Holt Sun
521a1af002 boards: mimxrt700_evk: configure ITRC for WWDT reset handling.
Fix WWDT warning interrupt by configuring ITRC to not intercept WWDT
timeout events.

ROM may configure ITRC OUT3_SEL0/OUT4_SEL0 to route WWDT0-2 to ITRC,
causing ITRC to reset the system faster than WWDT, preventing the
warning interrupt from functioning. Reconfigure these registers to
0xAAAAAA0A to allow RSTCTL to properly handle WWDT reset events.

Also enable WWDT warning interrupt in the board configuration to ensure
proper watchdog interrupt handling during tests.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-27 21:00:57 +00:00
Holt Sun
8cb5b7dd58 drivers: watchdog: wdt_mcux_wwdt: reject callback without warning IRQ
The WWDT callback is only invoked from the warning interrupt path.
If CONFIG_WDT_MCUX_WWDT_WARNING_INTERRUPT_CFG is 0, the warning
interrupt is effectively disabled, so a configured callback would
never fire.
Return -ENOTSUP and log an error when a callback is provided
without enabling the warning interrupt, to avoid a silent no-op.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-27 21:00:57 +00:00
Holt Sun
8b365a3e2c drivers: watchdog: wdt_mcux_wwdt: fix window calculation.
Correct the WWDT window value calculation and add proper
range validation.

The window value was incorrectly set to the minimum timeout value.
Per hardware specification, it should be calculated as:
  windowValue = timeoutValue - min_window_ticks

Also add:
- MAX_TIMEOUT boundary checks
- Validation before value assignment

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-27 21:00:57 +00:00
Holt Sun
2021106536 tests: watchdog: use write-through for mimxrt700 board.
Add CONFIG_ARM_MPU_SRAM_WRITE_THROUGH=y to
make sure data will be flushed into SRAM timely.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-27 21:00:57 +00:00
Andreas Ålgård
98746a172c net: lib: dhcpv4_server: Add client hardware ID to client_id
This is useful if you specifically need the hardware address
 and not the client_id option.

Signed-off-by: Andreas Ålgård <aal@ixys.no>
2025-12-27 21:00:32 +00:00
Sylvio Alves
e855856a5d drivers: spi: esp32: move pinctrl to init
Move pinctrl_apply_state() from configure to init to ensure pinctrl
is applied once at boot rather than on every transaction.

When cs-gpios is defined, spi_context_cs_configure_all() runs after
pinctrl and reconfigures the CS pin as GPIO, properly overriding
any CS routing set by pinctrl.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-26 10:18:16 -06:00
Riadh Ghaddab
7b7521ee5d MAINTAINERS: add ZMS Settings backend collaborators
Add a file-group for ZMS backend for Settings and add myself as a
collaborator.

Signed-off-by: Riadh Ghaddab <riadh.ghaddab@nordicsemi.no>
2025-12-26 10:17:56 -06:00
Manuel Argüelles
ddef63bffd maintainers: remove congnguyenhuu from NXP areas
The collaborator is no longer active in NXP-maintained areas.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-12-26 10:17:46 -06:00
Tim Pambor
f35189eeef drivers: eth: phy: adin2111: support C45 register access
Implement read_c45 and write_c45 functions to support clause 45
register access. This enhancement allows to access C45 registers
even when the MDIO controller does not natively support clause 45.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-26 10:17:32 -06:00
Tim Pambor
c9f8e8c856 drivers: eth: phy: adin2111: Use C45 access by default
Use clause 45 MDIO access by default and only fallback to the phy
internal clause 45 bridge if the MDIO controller does not support
clause 45 transactions.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-26 10:17:32 -06:00
Maochen Wang
70a9a54658 boards: shields: nxp_m2_wifi_bt: set default IMX_USDHC_DAT3_DETECT_RETRY
DAT3-based card detection may fail for the first attempt on RT1060evkc
+ NXP_IW610x_v1 card, caused by transient signal states during
initialization. Set IMX_USDHC_DAT3_DETECT_RETRY as 10 can fix this issue.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-12-26 10:17:10 -06:00
Maochen Wang
a8137baf65 drivers: sdhc: imx_usdhc: add retry for DAT3 card detection
DAT3-based card detection can return a false negative on the first read
due to transient signal states after enabling detection. Add a bounded
retry loop (limited by IMX_USDHC_DAT3_DETECT_RETRY) with a short delay
between attempts to improve robustness.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-12-26 10:17:10 -06:00
Riadh Ghaddab
b41f510fe2 tests: boards: nrf: rename flash.throttling test
Change the generic name to boards.nrf.rram_throtttling as this test is
bound to nrf boards.

Signed-off-by: Riadh Ghaddab <riadh.ghaddab@nordicsemi.no>
2025-12-26 10:16:37 -06:00
Yassine El Aissaoui
29673afd01 soc: nxp: mcxw23: Integrate low power with ble
Adding support for deep sleep/ power down on BLE apps.

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-12-26 10:16:07 -06:00
Dong Wang
49f1f6fce0 dts: intel_ish: Remove unnecessary #interrupt-cells from /soc node
The /soc node is a simple-bus node and not an interrupt provider. Leaving
the #interrupt-cells property produces misleading Device Tree build
warnings:
  Warning (interrupt_provider): /soc: '#interrupt-cells' found, but node is
  not an interrupt provider <stdout>:  Warning (interrupt_map): Failed
  prerequisite 'interrupt_provider'.

Signed-off-by: Dong Wang <dong.d.wang@intel.com>
2025-12-26 10:15:36 -06:00
Tim Lin
a214a05b8c soc/ite: it8xxx2: Add SOC_IT8XXX2_RAM_CODE_NOINLINE option
Add the SOC_IT8XXX2_RAM_CODE_NOINLINE Kconfig option to prevent
functions marked with __soc_ram_code from being inlined when LTO
is enabled.

This ensures RAM code functions remain in the RAM section instead of
being merged into callers by the compiler.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-12-26 10:15:07 -06:00
Benjamin Cabé
62edae7d75 include: led_strip: tlc5971:: add doxygen docs for tlc5971 extended API
Adds doxygen documentation for the extended API of the Texas Instruments
TLC5971 LED strip controller driver.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-26 10:14:42 -06:00
Benjamin Cabé
d686aa732f include: led_strip: add doxygen group for LED strip API extensions
Similar to how it's done for other driver classes, create a new doxygen
group to put all device-specific LED strip API extensions under.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-26 10:14:42 -06:00
Fabin V Martin
580732d5f9 tests: drivers: uart: Add test support
Add overlay and yaml files for uart async tests.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-26 10:14:22 -06:00
Fabin V Martin
61be40f98f boards: microchip: sam_e54_xpro: Update uart nodes for DMA support
Add DMA properties in sercom uart node.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-26 10:14:22 -06:00
Fabin V Martin
cf8d97ab39 drivers: uart: microchip: sercom g1: Add DMA support
The current driver implementation only support pooling and
synchronous operations. By adding DMA support the driver will
be able to operate in asynchronous mode which helps to improve
CPU usage and save power.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-26 10:14:22 -06:00
Fabin V Martin
08ba580618 dts: bindings: serial: Introduce DMA properties
Introduce DMA properties for sercom uart g1 driver.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-26 10:14:22 -06:00
Farsin Nasar V A
a620ee12a6 boards: microchip: pic32cx_sg61_cult: add RESET to supported list
Update pic32cx_sg61_cult.yaml to include RESET in the supported
modules list.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-12-26 10:13:53 -06:00
Farsin Nasar V A
39edc96945 dts: arm: microchip: add RSTC node
Add the device tree node for microchip RSTC G1 IP.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-12-26 10:13:53 -06:00
Arunprasath P
75d41570cf tests: adc: microchip: Add sam_e54_xpro overlay for tests
Add board overlay file for sam_e54_xpro to enable adc
test cases to run on this board

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-12-26 10:13:30 -06:00
Arunprasath P
a4d266616a samples: adc: Add sam_e54_xpro overlay for adc_sequence
Add a devicetree overlay to run the adc_sequence sample on
SAM E54 Xplained Pro.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-12-26 10:13:30 -06:00
Arunprasath P
247c045ba2 boards: microchip: sam_e54_xpro: Add ADC pinctrl and feature support
Add ADC0 and ADC1 pinctrl definitions and update the board metadata
to list ADC as a supported feature on the SAM E54 Xplained Pro board.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-12-26 10:13:30 -06:00
Arunprasath P
e767aa498a drivers: adc: microchip: Introduce G1 ADC Driver
Add a Zephyr ADC driver for the Microchip G1 ADC peripheral
with support for differential mode, multi-channel sequencing,
oversampling, and NVM-based factory calibration.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-12-26 10:13:30 -06:00
Arunprasath P
1cdde74b35 dts: arm: microchip: Introduce ADC G1 dts binding
Add the device tree node and the binding file for
microchip adc G1 Peripheral.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-12-26 10:13:30 -06:00
Biwen Li
23354f3cad tests: drivers: uart_async_api: enable it for m33 of imx943_evk
This commit enables tests/driver/uart/async_api demo
for m33 in NETCMIX of imx943_evk.
- build command as follows,
  west build -p always -b imx943_evk/mimx94398/m33
  tests/drivers/uart/uart_async_api

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-24 12:51:21 -05:00
Biwen Li
9bfda71a9a dts: arm: nxp: imx95: m7: add disp_irqsteer node
Add disp_irqsteer node(this is another irqsteer instance).

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-24 12:51:21 -05:00
Biwen Li
df9180305d dts: arm: nxp: imx95: m7: add more masters
Add more irqsteer masters.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-24 12:51:21 -05:00
Biwen Li
7b8d94c2be boards: nxp: imx943_evk: m33: enable edma2
Enable edma2 defaultly.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-24 12:51:21 -05:00
Biwen Li
23b764ffc2 dts: arm: nxp: imx94x: add edma2 node
Add edma2 node for lpuart3.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-24 12:51:21 -05:00
Biwen Li
b93bffd271 dts: arm: nxp: imx943: m7_1: add irqsteer node
Add irqsteer node for m7_1.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-24 12:51:21 -05:00
Biwen Li
d7142bd597 dts: arm: nxp: imx943: m7_0: add irqsteer node
Add irqsteer node for m7_0.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-24 12:51:21 -05:00
Biwen Li
9dcf76c670 tests: arch: arm_custom_interrupt: exclude imx943
Exclude imx943,
  - multi level interrupts feature is enabled defaultly,
    so irqsteer1 driver is enabled, then the test case
    report the build issue:
    multiple definition of z_soc_irq_enable,
    tests/arch/arm/arm_custom_interrupt/src/arm_custom_interrupt.c:47
    first defined here.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-24 12:51:21 -05:00
Biwen Li
66bfea6aef samples: drivers: uart_aysnc_api: imx943_evk: m33: add config
Add config for imx943_evk_mimx94398_m33
- Use the sample to test the irqsteer driver

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-24 12:51:21 -05:00
Biwen Li
4a3df69c09 boards: nxp: imx943_evk: m33: enable edma4
Enable edma4 by default for lpuart8 of m33(in NETCMIX)
of imx943_evk

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-24 12:51:21 -05:00
Biwen Li
cc183934a4 soc: nxp: imx943: m33: enable multi level interrupts
This commit enables multi level interrupts:
- Enable multi level interrupts
  imx943 is a two level interrupts system and
  some interrupts(eg. edma interrupts) depend on irqsteer.
- Increase irq number from 405 to 790
  Actually there are 407(IRQ 0 ~ IRQ 406) interrupts
  from nvic(first level interrupts),
  The second level interrupts are extended by irqsteer,
  it extends 32 x 12 = 384 interrupts,
  So first level interrupts + second level interrupts
  = 407 + 384 = 791(IRQ 0 ~ IRQ 790) interrupts

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-24 12:51:21 -05:00
Biwen Li
ce50e46a90 drivers: intc: irqsteer: Drop calling into NXP HAL
Supporting irqsteer using NXP HAL becomes increasingly harder with new
SoCs.

For example now there are two incompatible HAL drivers for IRQ steer
(mcux-sdk-ng/drivers/irqsteer and mcux-sdk-ng/drivers/irqsteer_1).

In order to avoid overcomplicating code and better scaling code for
newer SoCs just drop using the NXP HAL and implement an IRQ Steer native
Zephyr driver

Use irqsteer node of imx943 as example.

New features:
- Support multiple irqsteer instances.
- Indroduce new properties(nxp,irq-offset, nxp,num-irqs).

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-24 12:51:21 -05:00
Biwen Li
8822d8f8a9 irqsteer-master: Introduce priority attribute
This adds priority attribute to irqsteer in order to
support multi level interrupts.

We need to make this change atomic so that we don't break
the build.

So, we introduce a new property named 'priority' to
`interrupt-cells` and we increase the number of cells.
Then we update all instances of interrupts
using irqsteer (for imx95, imx8m, imx8qm, imx8qxp and also
update the overlay(imx8mp_evk_mimx8ml8_adsp) for tests.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-24 12:51:21 -05:00
Chris Friedt
de2d0c9563 posix: c_lib_ext: fnmatch: fix character class support
A couple of tests were inconsistent with glibc and picolibc.

Significant rework done to the `fnmatch()` implementation which included
refreshing that and the `rangematch()` implementations from commit

0a3b2e376d150258c8294c12a85bec99546ab84b

in https://github.com/lattera/freebsd

Removed `match_posix_class()` and implemented that functionality as
`rangematch_cc()`, which uses 64-bit integer comparison for matching
`[:alnum:]` et al instead of string comparison. That likely only works
for the "C" locale.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
Signed-off-by: Harun Spago <harun.spago.code@gmail.com>
2025-12-24 12:50:31 -05:00
Chris Friedt
637080e7ec posix: c_lib_ext: fnmatch: fix escape-oriented regression
A regression in 936d0278bd introduced a
subtle bug in the way that escaped expressions were handled.

The regression originated with the assumption that test data (originally
adapted from a 3rd-party testsuite) was correct when it was in fact
flawed.

Specifically, `fnmatch("[[?*\\]", "\\", 0)` should fail (`FNM_NOMATCH`),
since the "\\" sequence (a single backslash after compilation) escapes
the following ']' character, thus leaving the bracket expression
incomplete.

As @keith-packard  has pointed out,
https://pubs.opengroup.org/onlinepubs/9699919799/utilities/\
V3_chap02.html#tag_18_13_01 says that a bracket expression is only
interpreted as a bracket expression, when a proper bracket expression
is formed.

Therefore, the pattern is interpreted as the sequence
`'['`, `'['`, `'?'`, `*` (wildcard), `']'` and the call should return
`FNM_NOMATCH` to indicate failure rather than 0 to indicate success.

Added new test cases from #98827 and some commentary for subsequent
reviewers.

This change does not completely fix #55186 but is related to it.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-12-24 12:50:31 -05:00
Pieter De Gendt
526fa714a4 samples: drivers: jesd216: Print dw19 octal enable requirement
If supported, parse dw19 and print out the octal enable requirement.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-24 12:49:47 -05:00
Pieter De Gendt
7d6a9ab552 drivers: flash: mcux-flexspi-nor: Support octal mode
Add support for JEDEC octal mode.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-24 12:49:47 -05:00
Pieter De Gendt
206cad3b21 drivers: flash: jesd216: Add BFP DW19 decode helpers
Add struct and decode function for dw19 with octal enable requirement.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-24 12:49:47 -05:00
Qingsong Gou
89bc874404 tests: drivers: spi: add spi test support for sf32lb52_devkit_lcd
Add spi test support for sf32lb52_devkit_lcd

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-24 12:48:55 -05:00
Qingsong Gou
ff20bccfd9 drivers: spi: sf32lb: fix transceive_async
Fix transceive_async coding style and compile warnings

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-24 12:48:55 -05:00
Qingsong Gou
0bfba8b6f4 drivers: spi: sf32lb: refactor transceive
Refactor transceive to pass spi test

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-24 12:48:55 -05:00
Qingsong Gou
65ca5b588b drivers: spi: sf32lb: some minor fixs
Fix some options not supported
code optimization

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-24 12:48:55 -05:00
Zhaoxiang Jin
ce55d6f36c doc: migration-guide-4.4: Add SAR ADC driver migration notes
Add migration guide documentation for NXP SAR ADC driver.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-24 12:48:46 -05:00
Zhaoxiang Jin
8050fbe242 samples: adc: Enable ADC samples for frdm_mcxe31b board
Enable adc_sequence and adc_dt samples on frdm_mcxe31b board

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-24 12:48:46 -05:00
Zhaoxiang Jin
727293473b boards: nxp: frdm_mcxe31b: Enable SAR ADC support
1. Enable SAR ADC support for nxp mcxe31x platform.
2. Enable SAR ADC support for nxp frdm_mcxe31b board.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-24 12:48:46 -05:00
Zhaoxiang Jin
7558361c1a drivers: clock_control: enable ADC clock control
Enable MCXE31X platform ADC clock control through
the mc_cgm clock control driver.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-24 12:48:46 -05:00
Zhaoxiang Jin
ea8e8b7d53 drivers: adc: refactor mcux_sar_adc to nxp_sar_adc
Zephyr's current ADC API only supports 32 logical channels,
which is inadequate for SAR ADCs on certain SoCs. For instance,
the ADC on the MCXE31B has 64 hardware channels. The previous
implementation used a one-to-one mapping between logical and
hardware channels. In the new SAR ADC driver version, we bind
hardware channels to logical channels via the zephyr,input-positive
property, enabling us to access any channel.

Currently, only imx93 uses this ADC. To maintain the bisectability
of Zephyr commits, in this commit we will also modify the imx93-related
files, inlcuding:
1. Update the clock_control_mcux_ccm_rev2.c to use the new Kconfig
option 'CONFIG_ADC_NXP_SAR_ADC'.
2. Add properties to the imx93_evk_mimx9352_m33.overlay of the adc_api
testcase.

Now the sar adc is native driver, so, remove
CONFIG_MCUX_COMPONENT_driver.sar_adc from the glue cmake.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-24 12:48:46 -05:00
Zhaoxiang Jin
af72661b1a doc: releases: document NXP board compile definition scope changes
Add migration guide entry for compile definitions 'XIP_EXTERNAL_FLASH',
'USE_HYPERRAM' and 'XIP_BOOT_HEADER_XMCD_ENABLE' that were changed from
global to local scope in NXP board CMakeLists.txt files.

Applications that depended on these definitions being globally available
may need to be updated.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-24 12:48:35 -05:00
Zhaoxiang Jin
e8e4889895 boards: nxp: change definitions to local scope
1.'XIP_EXTERNAL_FLASH' and 'USE_HYPERRAM' are only used in
zephyr/boards/nxp/mimxrt1180_evk/xip/evkmimxrt1180_flexspi_nor_config.c,
so just change them to local scope.

2.'XIP_BOOT_HEADER_XMCD_ENABLE' is only used in
zephyr/boards/nxp/mimxrt1170_evk/xmcd/xmcd.c,
so just change it to local scope.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-24 12:48:35 -05:00
Benjamin Cabé
aa0e3f79d1 driver: auxdisplay: Update validation to use K_SYSCALL_DRIVER_AUXDISPLAY
Replace K_SYSCALL_OBJ() with K_SYSCALL_DRIVER_AUXDISPLAY() in syscall
handlers to validate that the requested driver operation is actually
implemented before invoking it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-24 12:48:22 -05:00
Benjamin Cabé
3a9d5b4991 drivers: auxdisplay: add missing syscall memory checks
Add missing K_SYSCALL_MEMORY_WRITE and K_SYSCALL_MEMORY_READ
verifications in syscall handlers for pointer parameters.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-24 12:48:22 -05:00
Derek Snell
5b014704da doc: boards: nxp: add shields used to test features
Lists supported shields for driver/feature tests.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-12-24 12:47:47 -05:00
Merin George
a8838f7cfd driver: rtc: compilation error fixed
Infineon RTC driver compilation error fixed

Signed-off-by: Merin George <merin.george@infineon.com>
2025-12-24 12:47:18 -05:00
Merin George
1ed26473bb driver: timer: cyw20829 clock announce outside of spinlock context
Fixed the sys_clock_announce to be outside of spinlock context to
resolve the issues related to invalid spinlock when CONFIG_PM is
enabled

Signed-off-by: Merin George <merin.george@infineon.com>
2025-12-24 12:47:18 -05:00
Camille BAUD
30fa6fb3d6 tests: build_all: display: Update test cases to behave as intended
move depends on to only apply to default case, remove 'example' case,
remove unnecessary display tag on ai_m62_12f_kit

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-24 12:47:08 -05:00
Martin Hoff
8e2326e43f boards: silabs: siwx91x: add ADC configuration for siwx917 boards
Add the adc exemple configuration in boards dtsi an pinctrl.
Additionally, the SiWx917_rb4338a overlay file has been removed as
its contents have been integrated into the main device tree files.
Also, only siwg917_rb4342a is now tested in CI for adc_dt and
adc_sequence (even thought other boards can run the sample).

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-24 12:46:48 -05:00
Martin Hoff
f2741038aa boards: silabs: siwx91x: pinctrl.dtsi files for rb4338a and rb4342a
This patch moves the definition of the pinctrl for both siwg917_rb4338a
and siwg917_rb4342a boards from the board dtsi to a dedicated file.
It allows better maintenance and consistency with other boards.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-24 12:46:48 -05:00
Martin Hoff
e357c96d4a dt-bindings: adc: add new header file for Silabs SIWX91X ADC bindings
This patch introduces a new header file regarding ADC binding with
SiWx91x SoC. It allows a more friendly definition of ADC channel input.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-24 12:46:48 -05:00
Chun-Chieh Li
55e38dd937 drivers: can: numaker: refine format
Refine the format using clang-format and make no logic changes

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-24 12:46:35 -05:00
Hong Nguyen
e93279e773 drivers: stepper: include enable and microstep pins in common config
- Include the enable, m0, and m1 microstep to the common init config.
- Refactor drivers that manually init these pins to use the pins
from the common config.

Signed-off-by: Hong Nguyen <hong.nguyen.k54@gmail.com>
2025-12-23 19:50:25 +00:00
Robert Lubos
346e4d041e tests: net: lib: lwm2m: interop: Add missing PSA configs
Some PSA configs were missing for DTLS to work in LwM2M interop tests.

CONFIG_MBEDTLS_SSL_DTLS_CONNECTION_ID was defined twice, so remove
redundant entry.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-12-23 19:50:17 +00:00
Alberto Escolar Piedras
4ad6857e66 tests/subsys/modem/backends/tty: Ensure it is built with proper C lib
This test itself (not the code under test) needs to be build with the
host C library as it calls into its open/close/read/write APIs.
So let's ensure we build it with it, independently of what the
default C library may be.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-23 19:49:50 +00:00
Alberto Escolar Piedras
6ef08d1221 modem: backend: tty: Support building with any C library
Ensure we call into the host C library open/close/read/write
independently of which embedded C library the code is built with.

We do this by:
a) Using the native simulator nsi_host* trampolines when we just want
   to call straight into the host libC.
b) Building in the native_simulator runner context (and therefore with
   the host C library) two functions which we call from the embedded
   side.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-23 19:49:50 +00:00
Robert Perkel
98233a966f samples: sensor: mtch9010 Added MTCH9010 Sample Code
Added sample code for the MTCH9010 device

Signed-off-by: Robert Perkel <robert.perkel@microchip.com>
2025-12-23 19:49:27 +00:00
Neil Chen
59d02942fa board: frdmmcxc444: Enable on-die temperature sensor
Enable and verify samples/sensor/die_temp_polling for frdmmcxc444

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-12-23 19:49:10 +00:00
Alain Volmat
cc7a12b3ff video: remove CONFIG_VIDEO_BUFFER_POOL_NUM_MAX=2 from conf files
VIDEO_BUFFER_POOL_NUM_MAX default value is 2 so remove it from
samples conf files setting it to that default value.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-23 19:49:00 +00:00
Alain Volmat
c4b7b7978b video: removal of VIDEO_BUFFER_POOL_SZ_MAX from Kconfig
Now that VIDEO_BUFFER_POOL_HEAP_SIZE is available is used
in all projects, VIDEO_BUFFER_POOL_SZ_MAX can be removed.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-23 19:49:00 +00:00
Alain Volmat
0b230c50d7 video: remove CONFIG_VIDEO_BUFFER_POOL_SZ_MAX in conf files
Remove all CONFIG_VIDEO_BUFFER_POOL_SZ_MAX settings in
config files.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-23 19:49:00 +00:00
Alain Volmat
3ff323b0ee video: replace CONFIG_VIDEO_BUFFER_POOL_SZ_MAX with POOL_HEAP_SIZE
Update video common code and applications to rely on the
CONFIG_VIDEO_BUFFER_POOL_HEAP_SIZE instead of
CONFIG_VIDEO_BUFFER_POOL_SZ_MAX.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-23 19:49:00 +00:00
Alain Volmat
59a223d028 video: add CONFIG_VIDEO_BUFFER_POOL_HEAP_SIZE in configs
In preparation to the renaming of CONFIG_VIDEO_BUFFER_POOL_SZ_MAX
into CONFIG_VIDEO_BUFFER_POOL_HEAP_SIZE, add the new CONFIG
in all conf files equal to POOL_SZ_MAX multiply by POOL_NUM_MAX.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-23 19:49:00 +00:00
Alain Volmat
7319cd00d5 video: add CONFIG_VIDEO_BUFFER_POOL_HEAP_SIZE description
Clarify the size of the video buffer pool by having a
dedicated CONFIG for it.  Until now the size of the
video buffer pool was equal to VIDEO_BUFFER_POOL_SZ_MAX
multiply by VIDEO_BUFFER_POOL_NUM_MAX.

This commit only add the description, the config doesn't
have yet any effect. Change will be added after all configs
are updated to define it in order to avoid breaking
platforms between 2 commits.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-23 19:49:00 +00:00
Alain Volmat
bd9202e70c boards: stm32h7s78_dk: use ext-sdram instead of SMH for display
Switch to usage of ext-sdram property (ZEPHYR_REGION) for display
buffers instead of usage via the Shared-Multi-Heap API.
The ZEPHYR_REGION mechanism offer more flexibility than the
shared-multi-heap which is allocated on the whole PSRAM.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-23 19:49:00 +00:00
Alain Volmat
184a656e68 boards: stm32n6570_dk: use ZEPHYR_REGION instead of SMH
Switch to usage of ZEPHYR_REGION for display and video
buffers instead of usage via the Shared-Multi-Heap API.
The ZEPHYR_REGION mechanism offer more flexibility than
the shared-multi-heap which is allocated on the whole
PSRAM.
If enabled, add allocation of the VENC internal buffers
from the PSRAM via the HEAP allocator.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-23 19:49:00 +00:00
Alain Volmat
c795dc5ed7 samples: video: tcpserversink: fix stm32 venc max buffer size
The CONFIG_VIDEO_BUFFER_POOL_SZ_MAX represent the size of the
biggest buffer in the pool size and not the whole pool size.
For the stm32-venc this should be 1-000-000 and not 10-000-000.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-23 19:49:00 +00:00
Alain Volmat
a299826287 video: stm32-venc: allow selection of venc internal memory pool
Allow usage of either Shared-Multi-Heap based internal memory pool
allocation or allocation from a HEAP located optional in a
Zephyr region.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-23 19:49:00 +00:00
Alain Volmat
47e031ec85 video: fix VIDEO_BUFFER_USE_SHARED_MULTI_HEAP definition
Avoid default n since this is the default for a bool config

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-23 19:49:00 +00:00
Alain Volmat
9788cedcfb video: allow placement of video buffer pool in a Zephyr region
Addition of two options in order to select the Zephyr region
into which the video buffer pool should be placed.
CONFIG_VIDEO_BUFFER_POOL_ZEPHYR_REGION allows to indicate that the
video video pool should be placed in a specific ZEPHYR region which
name is CONFIG_VIDEO_BUFFER_POOL_ZEPHYR_REGION_NAME

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-23 19:49:00 +00:00
Simone Orru
f00d633d03 MAINTAINERS: Add UUID maintainers
Add UUID library maintainers

Signed-off-by: Simone Orru <simone.orru@secomind.com>
2025-12-23 19:47:38 +00:00
Dat Nguyen Duy
fde41e8792 boards: shields: introduce a shield for s32k5xx mother board
There is no USB port or headers for lpuart on the cvb board,
thus introducing a shield for the mother board in order to
visualize serial output and expand I/O connectivity:

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2025-12-23 15:18:17 +01:00
Ha Duong Quang
b617b92028 boards: nxp: add support for NXP S32K5XXCVB board
Add support for NXP S32K5XXCVB boards which features
S32K566 SoC.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
Co-authored-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2025-12-23 15:18:17 +01:00
Dat Nguyen Duy
377922dfcf drivers: add initial support for NXP S32K566
Initial support for NXP S32K566 M7 & R52: Clock,
Pin control, GPIO and Uart

Signed-off-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2025-12-23 15:18:17 +01:00
Ha Duong Quang
72fb81eb9f soc: arm: introduce support for NXP S32K566 SoC
S32K566 is a member of the S32K5 family which expands
s32k3 series to higher performance and larger memory.

Zephyr port for S32K5 will support cortex-M7 and cortex-R52

After reset, swt_startup is enabled and starts running,
disable it using the watchdog hook.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
Co-authored-by: Dat Nguyen Duy <dat.nguyenduy@nxp.com>
2025-12-23 15:18:17 +01:00
Chun-Chieh Li
50409c7385 drivers: clock_control: numaker: support get_rate/set_rate
This adds support for clock_control_get_rate/clock_control_set_rate
API, so that module clock rate can fetch or modify via them in Hz.
Note only CANFD support is added as an reference example and other
module support will be added as-needed.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-23 15:15:13 +01:00
Thinh Le Cong
76e8d2b8fc linker: ld: correct GNU linker generator output for block linking
Fix the issue that occurs when building with GNU and
CONFIG_LINKER_GENERATOR=y.

Currently, the GROUP {region} directive does not function properly
with GNU. The input section cannot link to the memory group
defined by "zephyr,memory-region" in the final output linker
script.

This commit updates the GNU section name parser script, allowing
it to look up both group and region for output block generation
in the final output linker script.

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-12-23 15:14:16 +01:00
Haoran Jiang
e5ce6869ff dt-bindings: pinctrl: sf32lb52: Generate pinctrl header file for sf32lb
Previously, the pinctrl macro definitions on the sf32lb platform relied on
manual maintenance, which led to some errors.
We will now use scripts to
generate the metadata, ensuring accuracy

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-12-23 15:13:56 +01:00
Evgenii Kosenko
5006ca5610 tests: Bluetooth: Tester: Enable Encrypted Advertising Data
Btp got support of EAD in f04d0196de, enabling config flag will enable
GAP/SCN/BV-01-C and GAP/ADV/BV-20-C to be executed

Signed-off-by: Evgenii Kosenko <Evgenii.Kosenko@silabs.com>
2025-12-23 15:12:50 +01:00
Benjamin Cabé
4f2ee86cd4 include: adc: add doxygen docs for lmp90xxx extended API
Adds doxygen documentation for the extended API of the LMP90xxx ADC
driver.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-23 09:33:06 +01:00
Benjamin Cabé
cecfb5b9a3 include: adc: add doxygen docs for current_sense_amplifier extended API
Adds doxygen documentation for the extended API of the current sense
amplifier driver.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-23 09:33:06 +01:00
Benjamin Cabé
3aec059e0a include: adc: add doxygen docs for current_sense_shunt extended API
Adds doxygen documentation for the extended API of the current sense
shunt driver.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-23 09:33:06 +01:00
Benjamin Cabé
327969d5ae include: adc: add doxygen docs for voltage_divider extended API
Adds doxygen documentation for the extended API of the voltage divider ADC
driver.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-23 09:33:06 +01:00
Benjamin Cabé
fb62a29b58 include: adc: add doxygen docs for ads131m02 extended API
Adds doxygen documentation for the extended API of the ADS131M02 ADC
driver.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-23 09:33:06 +01:00
Benjamin Cabé
3aa2651680 include: adc: add doxygen docs for ads1x4s0x extended API
Adds doxygen documentation for the extended API of the ADS1x4s0x ADC
driver.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-23 09:33:06 +01:00
Benjamin Cabé
781d35c4f1 include: adc: add doxygen group for device-specific ADC API extensions
Similar to how it's done for other driver classes, create a new doxygen
group to put all device-specific ADC API extensions under.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-23 09:33:06 +01:00
Zhaoxiang Jin
2f56bbc6e4 doc: release-notes-4.4: Record mcux_lpcmp driver change
Update the release-notes-4.4 to document:

1. The mcux_lpcmp driver will be deprecated.
2. The compatible 'nxp,lpcmp' for mcux_lpcmp
has now been changed to 'nxp,sensor-lpcmp'.
3. A new lpcmp driver based on the comparator
driver API has been created, and the 'nxp,lpcmp'
compatible is used for it.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-23 09:32:53 +01:00
Zhaoxiang Jin
62be60aa0f tests: comparator: enable gpio_loopback for nxp boards
enable gpio_loopback for nxp boards, including:
- frdm_mcxa153
- frdm_mcxa156
- frdm_mcxa266
- frdm_mcxa346
- frdm_mcxa366
- frdm_mcxe31b
- frdm_mcxn236
- frdm_mcxn947/mcxn947/cpu0/qspi
- frdm_mcxn947/mcxn947/cpu0
- mcx_n9xx_evk/mcxn947/cpu0/qspi
- mcx_n9xx_evk/mcxn947/cpu0

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-23 09:32:53 +01:00
Zhaoxiang Jin
0f9dcd8a3c samples: sensor: mcux_lpcmp: Update board overlays for lpcmp
Update the board overlay files for mcux_lpcmp sample to use
the sensor-lpcmp driver:

1. Delete the 'compatible' and 'clocks' properties from
   the SoC-level lpcmp nodes.
2. Set the compatible to "nxp,sensor-lpcmp" to use the
   sensor-based lpcmp driver.
3. Add '#io-channel-cells = <2>' property for sensor API.
4. Add pinctrl configuration for lpcmp0.
5. Ensure status is set to "okay".

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-23 09:32:53 +01:00
Zhaoxiang Jin
fdfed339bc boards: nxp: remove the lpcmp nodes from the board level dts
We shall enable lpcmp in application level. Enabling lpcmp
at the board level doesn't make any sense, since the lpcmp
input is determined by the application.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-23 09:32:53 +01:00
Zhaoxiang Jin
f70d57a607 dts: nxp: Update lpcmp nodes for some SoCs
1. We shall set the proper clock source for lpcmp.
2. The property '#io-channel-cells' is currently
not needed for LPCMP.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-23 09:32:53 +01:00
Zhaoxiang Jin
3cf811e302 drivers: clock_control: Enable clock control for lpcmp
1. Enable MCXA/MCXN platforms' LPCMP clock control through
the clock driver (syscon).
2. Enable MCXE platform's LPCMP clock control through the
clock driver (mc_cgm).

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-23 09:32:53 +01:00
Zhaoxiang Jin
f6f8c42b67 drivers: comparator: enable nxp lpcmp driver
enable nxp lpcmp driver based on the comparator driver API

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-23 09:32:53 +01:00
Zhaoxiang Jin
f85158fea5 drivers: sensor: mark mcux_lpcmp as deprecated
We are planning to implement a new lpcmp driver based on the
comparator API and deprecate the current sensor-based driver.
We now mark the mcux_lpcmp as deprecated.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-23 09:32:53 +01:00
Zhaoxiang Jin
7371e94ec7 dts: bindings: rename nxp,lpcmp.yaml to nxp,sensor-lpcmp.yaml
We are planning to implement a new LPCMP driver based on the
comparator API and deprecate the current sensor-based driver.
We would like to use the nxp,lpcmp binding for the new
comparator-based driver implementation. To avoid naming conflicts,
we are renaming the current sensor binding to nxp,sensor-lpcmp.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-23 09:32:53 +01:00
Carlo Caione
54d4cdc897 drivers: lora: lbm: Defer radio initialization until first config
Split device initialization into two phases across all LBM drivers:

1. Boot-time init: Minimal device initialization
2. First config: Radio hardware initialization

This deferred initialization approach provides full control over the
radio hardware, allowing applications to perform any necessary setup
before the radio is initialized. The radio init is automatically
triggered on the first call to lora_config().

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2025-12-23 09:32:34 +01:00
Carlo Caione
c6b369e1a3 drivers: lora: lbm: Add DIO1 GPIO callback API
Add functions to register and unregister user GPIO callbacks for DIO1
interrupts on LBM lora radio devices. This allows external code (e.g., the
LoRa Basics Modem HAL) to receive notifications when DIO1 fires.

The driver configures the pin mask automatically based on the DIO1 pin
from devicetree.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2025-12-23 09:32:34 +01:00
Zhaoxiang Jin
965e921aea scripts: check_compliance: read text files as UTF-8 on Windows
KeepSorted can fail on Windows when the active code page is
not UTF-8 (e.g. GBK), because text files in the Zephyr tree
are UTF-8. Detect file type via libmagic and only process
text/* files, avoiding attempts to decode binary content.
Open text files via GIT_TOP / <path> with encoding="utf-8"
(and errors="surrogateescape") to prevent UnicodeDecodeError
during local compliance runs without changing the KeepSorted
sorting rules.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-23 07:54:10 +01:00
Farsin Nasar V A
c99b9ab3cb drivers: hwinfo: microchip: Update g1 hwinfo driver
replace reset cause masks with RSTC G1 bit names.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-12-23 07:53:42 +01:00
Hake Huang
1001d9aad7 boards: frdm_mcxn947: add net:ether support
add support for ethernet for integration and testing

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-12-23 07:53:25 +01:00
Braeden Lane
1bc9b2d05a drivers: counter: infineon_tcpwm: refactor to use TCPWM block base
Refactor the Infineon TCPWM counter driver to use the TCPWM block base
address instead of the counter instance base address. This change aligns
with the standard Infineon PDL API which requires the TCPWM block base
and counter index as separate parameters.

This modification maintains functional compatibility while providing
better alignment with the underlying hardware abstraction layer.
This also aligns with PR feedback to move the ifx_tcpwm.h header file
from the include folder (public APIs) to the drivers folder. Instead,
this refactoring prepares to remove that header file entirely.

Signed-off-by: Braeden Lane <Braeden.Lane@infineon.com>
2025-12-23 07:53:09 +01:00
Kyle Bonnici
4468fbfae0 Boards: align ranges to DTS spec
Spec - Section 2.3.8

> If the property is defined with an <empty> value, it specifies that
the parent and child address space is identical, and no address
translation is required.

Spec - Table 2.3

> <empty>: Value is empty. Used for conveying true-false information,
when the presence or absence of the property itself is sufficiently
descriptive.

`ranges = <>;` should be interpreted as `<prop-encoded-array>` with
empty array, when processing the child the ranges should be used and
given it is and empty array we will fail to map and behaviour
is undefined by the dts spec!

Hence IMO `ranges;` is the correct syntax here. This leaves no space
for uncertainty and undefined behaviour by tools and
user interpretation.

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2025-12-23 07:52:54 +01:00
Benjamin Cabé
0a3bc8fa70 include: disk: add doxygen docs for stm32_sdmmc extended API
Adds doxygen documentation for the extended API of the STM32 SDMMC
driver.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-23 07:52:45 +01:00
Benjamin Cabé
7778a15d1e include: disk: add doxygen group for device-specific Disk Access extensions
Similar to how it's done for other driver classes, create a new doxygen
group to put all device-specific Disk Access extensions under.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-23 07:52:45 +01:00
Andrzej Głąbek
c728da88d8 drivers: mspi_dw: Fix conditionally defined masks
This is a follow-up to commit 59d8fbc0a9.

Add missing brackets in mask definitions that use `COND_CODE_1()`.
Without those, the call to `__DEBRACKET()` that is done inside
`COND_CODE_1()` removes the outer brackets provided by `GENMASK()`,
what causes problems when the mask is directly used with another
operator like `~`.
Remove also no longer needed brackets added in `start_next_packet()`
by the commit mentioned above as a workaround for this problem,
the root cause of which was not identified at that time.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-12-23 07:52:32 +01:00
Fengming Ye
a957c6311d wifi: nxp: support nxp wifi with custom host platform
Add CONFIG_NXP_WIFI_CUSTOM_HOST to build with custom
host platform.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-12-23 05:08:39 +01:00
Fengming Ye
17c2a3f8fc manifest: update hal_nxp revision to support custom host platform for WiFi
Add CONFIG_NXP_WIFI_CUSTOM_HOST to customize host platform for
NXP Wi-Fi card.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-12-23 05:08:39 +01:00
Peter Wang
7199c4081f boards: frdm_mcxaxx6,frdm_mcxa577: enable reset driver
1. enable reset driver for frdm mcxa boards below:
    - frdm_mcxa266
    - frdm_mcxa346
    - frdm_mcxa366
    - frdm_mcxa577

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-12-23 05:08:14 +01:00
Kate Wang
68988108ee drivers: mipi_dbi: add support for DBI color coding
Add new configuration item color_coding in the structure
mipi_dbi_config and in mipi-dbi-device binding property.
The color coding is defined by MIPI Alliance Standard for
Display Bus Interface v2.0, which is required by some display
controllers and device.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-23 05:07:28 +01:00
Kate Wang
5671a4357b drivers: mipi_dbi: Fix typo for color coding
Fix typo for color coding

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-23 05:07:28 +01:00
Nicolas Moreno
9b6c862121 dt-bindings: mipi_dbi: fixing pulse diagrams
Some diagrams on the file dt-bindings/mipi_dbi/mpi_dbi.h
doesn't deploy the correponsing pulse signal, many of them
the rising flag looks moved some spaces before or after
the rising/falling time. This is fixed by replacing
tasb with spaces

Signed-off-by: Nicolas Moreno <niko722795@gmail.com>
2025-12-23 05:05:52 +01:00
Chen Xingyu
595a8e8c11 doc: migration-guide-4.4: Document M5Stack Fire pinctrl changes
Add a migration entry describing the pinctrl changes on the M5Stack Fire
board.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-12-23 05:04:48 +01:00
Chen Xingyu
d7f6275d1c boards: m5stack: fire: Add node label for PORT.A
Add a `zephyr_i2c` node label pointing to `i2c0`, which is the bus used by
Units connected through Grove PORT.A. This follows the convention already
used on the Core2 and CoreS3 boards.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-12-23 05:04:48 +01:00
Chen Xingyu
3c295aa883 boards: m5stack: fire: Fix Grove PORT.C UART pinctrl
According to the M5Stack Fire v2.7 documentation, the HY2.0-4P Grove PORT.C
is wired to GPIO16 and GPIO17.

Update the DTS pinctrl configuration to route the PORT.C UART to these pins
so that the Grove connector matches the official hardware documentation.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-12-23 05:04:48 +01:00
Yangbo Lu
c3a3c2bd99 drivers: sdhc: imx_usdhc: support scatter gather DMA transfer
Supported scatter gather DMA transfer.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-23 05:04:25 +01:00
Yangbo Lu
e212f3e8f4 sd: sd_ops: initialize sdhc_data variables
Initialize sdhc_data variables.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-23 05:04:25 +01:00
Yangbo Lu
f45e1d528b drivers: sdhc: introduce scatter gather transfer support
Introduced scatter gather transfer support.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-23 05:04:25 +01:00
Greter Raffael
fdd6cb4469 drivers: display: ssd1306: Allow rotation at run-time
Implement set_orientation api

Inverting segment_remap and com_invdir at the same time, rotates the
screen by 180 degrees.

Signed-off-by: Greter Raffael <rgreter@baumer.com>
2025-12-23 05:03:01 +01:00
Jordan Yates
d2cd86800c tests: disk: disk_access: test disk_access_erase
Test the disk erase functionality.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-23 05:02:05 +01:00
Jordan Yates
8d51481128 tests: disk: disk_access: align sector and erase sizes
Ensure that `sector-size` and `erase-size` match for the test.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-23 05:02:05 +01:00
Jordan Yates
b11c0f1b60 disk: sdmmc_stm32: implement disk_access_erase
Add support for erasing blocks to the STM32 SDMMC driver.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-23 05:02:05 +01:00
Jordan Yates
f52fa40b04 disk: loopback: implement disk_access_erase
Implement `disk_access_erase`, which requires a sector sized buffer
of 0's to provide to `fs_write`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-23 05:02:05 +01:00
Jordan Yates
16d0daec8a disk: flashdisk: implement disk_access_erase
Implement `disk_access_erase` for flash disks.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-23 05:02:05 +01:00
Jordan Yates
e02b85a378 disk: ramdisk: implement disk_access_erase
Implement `disk_access_erase` by setting all bytes to 0x00, with the
same bounds checking as `disk_access_write`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-23 05:02:05 +01:00
Jordan Yates
36a926f932 disk: sdmmc: implement disk_access_erase
Implement the `disk_access_erase` function by calling out to the lower
layer SD card drivers.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-23 05:02:05 +01:00
Jordan Yates
3050daaecc storage: disk_access: add disk_access_erase
Add the `disk_access_erase` command to complement the read and write
commands.

As a backwards compatible new feature, this increments the API version
from `1.0.0` to `1.1.0`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-23 05:02:05 +01:00
Jordan Yates
2f47985a9e sd: sd_ops: add block_erase implementation
Add a function for erasing a chunk of blocks.

The SD Card Association Pt1 Simplified Physical Layer Specification
recommends to erase many blocks simultaneously in order to enhance data
throughput (4.3.5.1).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-23 05:02:05 +01:00
Derek Snell
348ae31ccc doc: nxp: add link to Board Support Status
Adds to common footer for all board doc pages.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-12-22 22:40:21 +01:00
Camille BAUD
ae9f04b556 drivers: i2c: bflb: Fix I2C again
Take nuclear option to handling compiler failing at compiling

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-22 22:33:56 +01:00
Benjamin Cabé
81ac3f9a7f include: Bluetooth: Host: add doxygen docs for GAP timer macros
This adds proper doxygen documentation for the GAP timers macros.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-22 22:33:39 +01:00
Peter Mitsis
3a8c9797ca kernel: Re-instate metaIRQ z_is_thread_ready() check
Re-instate a z_is_thread_ready() check on the preempted metaIRQ
thread before selecting it as the preferred next thread to
schedule. This code exists because of a corner case where it is
possible for the thread that was recorded as being pre-empted
by a meta-IRQ thread can be marked as not 'ready to run' when
the meta-IRQ thread(s) complete.

Such a scenario may occur if an interrupt ...
  1. suspends the interrupted thread, then
  2. readies a meta-IRQ thread, then
  3. exits
The resulting reschedule can result in the suspended interrupted
thread being recorded as being interrupted by a meta-IRQ thread.
There may be other scenarios too.

Fixes #101296

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-12-22 22:33:18 +01:00
Grzegorz Swiderski
83d3092d30 samples: fs: zms: Update to showcase 64 bit ID support
ZMS IDs are not necessarily 32 bit anymore, so the sample ought to
reflect that.

When the sample is built with CONFIG_ZMS_ID_64BIT=y, the KEY_VALUE_ID
will use a 64 bit value, chosen so that it would conflict with CNT_ID
only if 64 bit IDs were not handled properly.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-12-22 22:32:53 +01:00
Grzegorz Swiderski
298798a4b8 tests: fs: zms: Refine test_zms_id_64bit
By request, add another loop to fill an extra sector with small data
entries only (4 bytes per entry in the 64 bit ID case).

This should cover ZMS' special case handling of different data sizes.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-12-22 22:32:53 +01:00
Grzegorz Swiderski
0ebf13c3b7 tests: fs: zms: Add tests for free space calculation functions
Previously, there was no proper test coverage of `zms_calc_free_space()`
or `zms_active_sector_free_space()`, so they had some undiscovered bugs.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-12-22 22:32:53 +01:00
Grzegorz Swiderski
a39b2779ee fs: zms: Reformulate zms_calc_free_space
The initial implementation had a couple of flaws, including:

  * Generally overcounting the free space by ATE_SIZE bytes per sector.

  * Counting multiple ATEs of the same ID if placed in the same sector.
    The correct behavior is to only count the most recent entry.

  * When a sector was mostly or completely filled with small data sizes,
    there was a correction term applied in the wrong location.

  * The same correction term would be mistakenly applied when a sector
    was filled with only delete ATEs, which resulted in undercounting
    the free space in that sector.

This is addressed by rewriting the API according to a simple principle:
the total free space in a filesystem should equal the sum of free space
in every GC'd sector (minus 1 sector reserved for GC itself).

This should work because during garbage collection, ATEs are not moved
between sectors arbitrarily. Only one sector gets GC'd at a time and
every entry in sector N gets either removed or copied to sector N-1.
This means that any two valid entries that occupy a single sector would
still occupy a (different) single sector before and after the operation.

This property lets us simplify the total free space calculation by
considering one sector at a time and reapplying the calculation which
was just introduced for `zms_active_sector_free_space()`.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-12-22 22:32:53 +01:00
Grzegorz Swiderski
491a86ca53 fs: zms: Reformulate zms_active_sector_free_space
The initial implementation had a flaw in it: when an active sector was
almost full, the naïve calculation could easily underflow and return a
negative value, which would be misinterpreted as an errno.

Rewrite this API to satisfy the following, reasonable expectations:

  * Always return a non-negative value, provided ZMS is initialized.

  * Always return 0 if no more data can be written into the sector
    without triggering garbage collection.

  * Never return a value less than the actual number of bytes that can
    still be written into the sector.

This requires awareness of a few special cases in ZMS. These are now
captured in a helper function, which will be reused later.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-12-22 22:32:53 +01:00
Ayush Singh
63ff14e3d8 net: dns: resolve: Combine AR and AN handling
Use the same function to parse all records. The main difference is that
answer record handling matches the answer with the initial query, i.e.
AAAA query will have AAAA answer record. Additional records do not have
any matching with the original query.

Also just warns if an additional record parsing fails. But answer record
parsing is an error.

Tested on BeagleConnect Freedom

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-12-22 20:42:08 +01:00
Ayush Singh
31bc3b016b net: dns: resolve: Add additional record support for PTR query
As described in Section 12 of RFC 6763 [0], DNS-SD responses can contain
SRV, TXT and A/AAAA under additional records. This is done even in the
zephyr DNS service advertisement. So these additional records should be
passed to the user for handling.

Most of the code for additional records is taken from normal dns answer
unpacking. However, I have split the handling into a separate function
since I have only added additional records handling for DNS-SD. The same
code should be usable for answer record as well if required. The main
thing missing from additional record code is that we do not need to
match the query type to the response type.

Tested on BeagleConnect Freedom.

[0]: https://datatracker.ietf.org/doc/html/rfc6763.html#section-12

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-12-22 20:42:08 +01:00
Mathieu Choplain
2c004260b8 drivers: entropy: stm32: fix build breakage on STM32WB06/07
These SoCs don't have LL_PKA_IsEnabled() due to the PKA IP being different.
Since PKA can operate without RNG clock on entire STM32WB0 series, skip
the check on the entire series which avoids the call to non-existent
function on STM32WB06/07 and fixes build.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-22 20:41:35 +01:00
Lukasz Majewski
5fdffd8e1e boards: doc: Update information regarding memory sizes for stm32g474re MCU
According to STM's website:
https://www.st.com/en/microcontrollers-microprocessors/stm32g474re.html

the stm32g474re has larger FLASH and SRAM sizes than stated in the
Zephyr's documentation.

Signed-off-by: Lukasz Majewski <lukma@nabladev.com>
2025-12-22 20:41:22 +01:00
Benjamin Cabé
2954eff7f1 include: display: ssd16xx:: add doxygen docs for ssd16xx extended API
Adds doxygen documentation for the extended API of the Solomon SSD16XX
EPD display controller driver.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-22 20:40:57 +01:00
Benjamin Cabé
29c7d7a3f0 include: display: add doxygen group for Display API extensions
Similar to how it's done for other driver classes, create a new doxygen
group to put all device-specific Display API extensions under.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-22 20:40:57 +01:00
Benjamin Cabé
348ec106d3 include: display: mipi_display: add missing doxygen comments
Ensure that all enumerators have proper doxygen comments.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-22 20:40:36 +01:00
Mathieu Choplain
1aebea1490 soc: st: stm32: handle debug power mode in common code for WBA series
Perform call to LL_DBGMCU_{Dis,En}ableDBGStandbyMode() for STM32WBA series
in the common code, as done with other series. While at it, also add
missing call to LL_DBGMCU_{Dis,En}ableDBGStopMode().

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-22 20:39:53 +01:00
Seppo Takalo
c57042e3ca net: lib: shell: dns: Don't hard code the timeout to 2s
The hard coded 2s timeout might be too small for LTE and Nb-IoT
networks.

Instead use already existing CONFIG_NET_SOCKETS_DNS_TIMEOUT

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-12-22 20:39:21 +01:00
Seppo Takalo
07eec81f93 modem: cmux: Change default timeouts to match 3GPP TS 27.010
3GPP TS 27.010 defines default timeouts as follows:
* Acknowledgment Timer (T1), min 10ms, max 2.5s default 100ms
* Response Timer for multiplexer control channel (T2),
  min 20ms, max 2.5s, default 300ms
* Add Kconfig for both T1 and T2 timers

The Response Timer for wake-up procedure(T3) is already a Kconfig
and its default match the specification.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-12-22 20:39:01 +01:00
Qingsong Gou
7774970ccc drivers: i2c: sf32lb: add i2c interrupt-driven support for sf32lb
Add i2c interrupt-driven support for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-22 20:38:27 +01:00
Seppo Takalo
f833ff533d modem: cmux: Add retry counter for SABM, CLD and DISC control messages
Add retry counter for opening and closing CMUX as well as
opening and closing the DLCI channel.

Use same retry counter for both DLCI control messages as well as CMUX
control messages as there is very minimal room for race condition.
DLCI messages are only send when CMUX control channel is open.

Where relevant, use disconnect(cmux) for all closing calls.
So we have one entry point for cleaning.

Similarly refactor modem_cmux_on_dlci_frame_dm() to dlci_close() as
this is the single function to close and clean up a channel.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-12-22 20:38:15 +01:00
Seppo Takalo
64459fbb50 modem: cmux: Drop invalid response frames
Drop invalid response frames when in connected state.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-12-22 20:38:15 +01:00
Jamie McCrae
014ccd3c40 boards: nordic: Add default Kconfig for (Q)SPI NOR page size
Changes the default page size to 4096 (4KiB) for SPI/QSPI NOR flash
devices if MCUboot is enabled to allow for swap updates to work by
default

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-12-22 20:37:38 +01:00
Tahsin Mutlugun
58cf208b8f drivers: timer: cortex_m_systick: Restore SysTick config after reset
Restore the clock source and exception bits in the CTRL register after
waking from low-power modes that reset SysTick. Also reconfigure the
interrupt priority.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-12-22 20:37:27 +01:00
Grzegorz Chwierut
29e8a95004 tests: Aligned with changes in pytest-twister-harness plugin
Aligned with changes in pytest plugin, where added support
of multiple connections from one device.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-12-22 20:36:34 +01:00
Grzegorz Chwierut
fca50869b8 samples: icmsg: Updated to verify output from both cores
Changed 'harness: console' to 'harness: pytest' to verify output
from both application and network cores using the new multiple
UART connection support. The pytest test reads from connection_index=0
(application core) and connection_index=1 (network/remote core) to
validate IPC communication on both sides.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-12-22 20:36:34 +01:00
Grzegorz Chwierut
2d80ffafb4 samples: sysbuild: hello_world: Simplify dual UART test with new API
Replace manual serial port handling with the new multiple UART
connection support from pytest-twister-harness. The test now uses
connection_index=1 to read from the second core UART instead of
managing a separate serial connection fixture.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-12-22 20:36:34 +01:00
Grzegorz Chwierut
10533cedbe doc: twister: Add multi-core testing support documentation
Document the new multiple UART connection support in pytest-twister-harness
plugin. Hardware devices can now access multiple connections using the
connection_index parameter (0=main UART, 1=second core UART).
Also update readlines_until() examples to use explicit regex= parameter
for improved API clarity.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-12-22 20:36:34 +01:00
Grzegorz Chwierut
4b6ad9db3c tests: twister: Update unit tests to support miltiple ports
Updated unit tests from pytest-twister-harness
with wupport of multiple connextions.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-12-22 20:36:34 +01:00
Grzegorz Chwierut
1b7810f0cb scripts: twister: Support multiple ports in pytest-twister-harness
Add support for multiple connections (e.g. UART) from one device,
enabling communication with second core UARTs. Feature implemented
by extracting connection logic from DeviceAdapter to new
DeviceConnection class with specialized implementations:
- SerialConnection for hardware UART ports
- ProcessConnection for native simulation
- FifoConnection for QEMU communication
Each connection maintains separate log files (handler.log,
handler_1.log, etc.) and can be accessed via connection_index
parameter in device methods like readline() and write().
This enables testing multi-core applications where different
cores communicate through separate UART interfaces.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-12-22 20:36:34 +01:00
UMA PRASEEDA
0d448cc2c1 doc: Add info about supported boards for nRF52840 debug
Add info about supported boards for nRF52840 debug
in the nRF52840 DK page

Signed-off-by: UMA PRASEEDA <uma.praseeda@nordicsemi.no>
2025-12-22 17:34:05 +01:00
Benjamin Cabé
af171d4d3b drivers: uart: fix incorrect handler check in uart_configure syscall
The z_vrfy_uart_configure function was incorrectly checking for the
existence of the 'config_get' handler instead of 'configure'.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-22 14:50:23 +01:00
Camille BAUD
020d0fe5d8 soc: bflb: Increase default main stack size
Set it to something more appropriate

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-22 14:49:15 +01:00
Kai Vehmanen
6efe5cb687 soc: intel_adsp: tools: add Intel WCL support to cavstool.py
Add PCI DID for Intel Wildcat Lake to cavstool.py.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2025-12-22 14:49:08 +01:00
Kai Vehmanen
afbdea8995 soc: intel_adsp: tools: add Intel NVL support to cavstool.py
Add support for intel_adsp/ace40/nvl platforms into cavstool.py.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2025-12-22 14:49:08 +01:00
Robert Lubos
cf04a04680 net: mqtt: Allow to force native TLS on MQTT socket
Add a parameter to MQTT TLS configuration that allows to force native
TLS on a socket if offload dispatcher is used. This allows for MQTT to
use native TLS implementation with an offloaded TCP socket.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-12-22 14:48:56 +01:00
Håvard Reierstad
ae21970a79 Bluetooth: Host: Add L2CAP chan send warning
Adds a warning to `bt_l2cap_chan_send` that the user must not pass
buffers to this function whose pool has implemented a destroy callback
(net_buf_pool::destroy) that uses synchronization primitives. This is
due to the HCI driver interface not having defined rules for where a
buffer may be freed, leading to the possibility of the callback
being called from the ISR. This warning can be removed at a later point
if the HCI driver interface is redesigned to not pass the net_bufs
directly.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-12-22 14:48:48 +01:00
Vincent Liao
8fbdc4bc69 drivers: misc: pio_rpi_pico: fix linker error with -O0
The pio_rpi_pico_get_pio function was defined as 'inline' in the
header file. This caused 'undefined reference' linker errors when
building with CONFIG_NO_OPTIMIZATIONS=y (-O0), as the compiler
doesn't inline the function and no external symbol is provided.

This patch changes the definition to 'static inline' to ensure a
local copy is generated in each translation unit when not inlined,
consistent with other helper functions in Zephyr and the Linux kernel.

Fixes #101155

Signed-off-by: Vincent Liao <vincent932693@gmail.com>
2025-12-22 14:48:30 +01:00
Mark Wang
37b22586f6 samples: bluetooth: a2dp: implement a2dp sink sample
implement the a2dp sink sample, only mimxrt1170_evk@B board's codec is
supported now.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-12-22 14:45:48 +01:00
Mark Wang
a72acbc807 samples: bluetooth: a2dp: implement a2dp source sample
implement the a2dp source sample.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-12-22 14:45:48 +01:00
Mark Wang
9b4501977b bluetooth: a2dp: implement remaining a2dp SBC codec API functions
Add implementations for the following SBC codec parameter getter functions:
bt_a2dp_sbc_get_channel_mode(): returns the channel mode (mono, dual,
stereo, joint stereo); bt_a2dp_sbc_get_subband_num(): returns the number of
subbands (4 or 8); bt_a2dp_sbc_get_block_length(): returns the block length
(4, 8, 12, or 16); bt_a2dp_sbc_get_allocation_method(): returns the
allocation method (SNR or loudness).

These functions parse the SBC codec configuration parameters and return
the corresponding values, completing the API defined in a2dp_codec_sbc.h.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-12-22 14:45:48 +01:00
zjian zhang
d70318f825 boards: add rtl872xd_evb board
add initial version of rtl872xd_evb board

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-22 14:45:39 +01:00
zjian zhang
97d266e777 drivers: gpio: fixed compile warning
fixed gpio driver compile warning

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-22 14:45:39 +01:00
zjian zhang
14e396a3b1 drivers: serial: add amebad loguart support
loguart driver support for amebad

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-22 14:45:39 +01:00
zjian zhang
6ad245a554 soc: add realtek amebad SOC integration
Add initial version of Amebad Soc integration

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-22 14:45:39 +01:00
zjian zhang
acb831f5c0 dts: arm: introduce amebad SOC Devicetree
add initial version of devicetree for amebad SOC.
amebad devicetree file is main platform dtsi file, which should
be included from board dts (e.g rtl872xd_evb.dts)

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-22 14:45:39 +01:00
zjian zhang
6a2bb8b0e2 west.yml: add support for amebad
add low level support for amebad

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-22 14:45:39 +01:00
Martí Bolívar
c960d0ed0f devicetree: clean up some code inconsistencies
The documentation is generally using 'inst' consistently to refer to
instance numbers, but a few helper macros have gone their own way.
Clean this up to restore consistency.

This addresses changes introduced somewhere around the following
commits:

- 4c8ed7dd9a ("devicetree.h: Rework
  DT_ANY_INST_HAS_PROP_STATUS_OKAY")

- ca6645d508 ("devicetree: shorten DT_ANY_INST_HAS_*_STATUS_OKAY")

- 75ab4d5507 ("devicetree: add DT_ALL_INST_HAS_PROP_STATUS_OKAY()
  macro")

- 35a8e37ac2 ("devicetree: add DT_ALL_INST_HAS_BOOL_STATUS_OKAY()
  macro")

Signed-off-by: Martí Bolívar <mbolivar@amperecomputing.com>
2025-12-21 11:06:52 +01:00
Duy Nguyen
419a094499 dts: renesas: ra: Fix adc compatible for ra6-cm4
The `renesas,ra-adc` compatible was replaced by `renesas,ra-adc12`,
at #95710 but one ADC devicetree node was not updated accordingly.

This commit updates the missing node to use the correct
`renesas,ra-adc12` compatible.

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-12-21 11:06:41 +01:00
Alberto Escolar Piedras
5a58989dad samples/subsys/shell/shell_module: Remove unnecessary header
To use the shell one does not need anymore to pull unistd.h,
if one uses sys_getopt, we need to include sys/sys_getopt.h

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-20 15:04:49 +01:00
Alberto Escolar Piedras
71457bd491 samples/shields/npm6001_ek: Remove unnecessary header
To use the shell one does not need anymore to pull unistd.h,
if one uses sys_getopt, we need to include sys/sys_getopt.h

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-20 15:04:49 +01:00
Alberto Escolar Piedras
f02e15acc2 samples/drivers/ipm/ipm_esp32: Remove unnecessary headers
None of these headers are needed by this file for anything.
Let's just remove them.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-20 15:04:49 +01:00
Daniel Leung
51adafd3f3 kernel: mem_domain: remove extra newline character for logging
There is no need for the newline characters when using logging
macros. So remove them.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-20 15:04:39 +01:00
Alberto Escolar Piedras
242b69e1ac tests: net: dns_resolver: Increase heap size
The test fails on 64bit targets running out of heap.
Let's just increase it.

Circumstantially it started failing after
d5982f0f89

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-20 15:04:29 +01:00
Lucien Zhao
72360f821a dts: arm: nxp: rt118x: correct ocram1_available address
correct ocram1_available reg address to fix warning log

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-20 09:20:20 +01:00
Adrien Lessard
9929ac33f4 drivers: rtc: stm32: fix rtc subsecond register read
According to the reference manual, 'When the BYPSHAD control bit is set
in the RTC_CR register [...] the value of one of the registers may be
incorrect if an RTCCLK edge occurs during the read operation'. We need
to read te subseconds register until two successive reads are equal.

Signed-off-by: Adrien Lessard <adrien.lessard.42@gmail.com>
2025-12-20 09:20:11 +01:00
Adrien Lessard
2cc9d794dc drivers: counter: stm32: fix rtc subsecond register read
According to the reference manual, 'When the BYPSHAD control bit is set
in the RTC_CR register [...] the value of one of the registers may be
incorrect if an RTCCLK edge occurs during the read operation'. We need
to read te subseconds register until two successive reads are equal.

Signed-off-by: Adrien Lessard <adrien.lessard.42@gmail.com>
2025-12-20 09:20:11 +01:00
Holt Sun
0756973f92 MAINTAINERS: Add Holt Sun as RTC driver collaborator
Add Holt Sun as a collaborator for "Drivers: RTC".

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-20 09:19:46 +01:00
Aiden Hu
5116dcc3cd boards: nxp: rw612_bga: enable USB host support
Add USB host support for rw612_bga board:
- Update board YAML to include usb_host
- Add zephyr_uhc0 node in device tree with status "okay"

Signed-off-by: Aiden Hu <weiwei.hu@nxp.com>
2025-12-20 09:19:41 +01:00
Hou Zhiqiang
03699e24fc drivers: serial: mcux_lpuart: add clock enablement
Add the clock emablement in the LPUART driver to avoid
depending on the default enablement settings.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-12-20 09:19:19 +01:00
Mohamed Moawad
454c2fae98 tests: crypto: mbedtls_psa: enable malloc arena for Mbed TLS
The PSA Crypto implementation in Mbed TLS requires some heap
to operate.
Provide a small malloc arena to ensure this test remains
compatible with MINIMAL_LIBC configurations
where the arena is disabled by default.

Signed-off-by: Mohamed Moawad <moawad@synopsys.com>
2025-12-20 09:19:06 +01:00
Neil Chen
58f59c13a5 soc: nxp: mcxa156: add new parts for MCXA156
Add new parts MCXA156VFT and MCXA156VLH support

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-12-20 09:17:02 +01:00
Kevin Chan
c17e057dfd soc: infinoen: edge: pse84: system clock
Update system clock related variables
otherwise Cy_SysLib_Delay or Cy_SysLib_DelayUs are incorrect

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2025-12-20 09:16:51 +01:00
Nikhil Namjoshi
c8f8fab1ed drivers: memc: Fix copyright and add example DTS config
Example DTS config comment is meant to help users of the
driver, with the PSRAM device tree configuration.

Signed-off-by: Nikhil Namjoshi <nikhilnamjoshi@google.com>
2025-12-20 09:16:38 +01:00
Nikhil Namjoshi
1a31990457 drivers: memc: Add imx-flexspi-is66wvs8m8 driver
Tested:
Verified that reading and writing data to the PSRAM
with MCU's FlexSPI controller in Quad Mode, works as
expected.

Signed-off-by: Nikhil Namjoshi <nikhilnamjoshi@google.com>
2025-12-20 09:16:38 +01:00
Pieter De Gendt
98ef5b1c44 REUSE.toml: Default annotate json files
It's not possible to add comments to a json file, so there's no option to
add license or copyright text.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-20 09:16:24 +01:00
Jason Yu
5194dfa380 boards: nxp: mcxw23: Add power management MCXW23 board
Add mcxw23_evk and frdm_mcxw23 platforms to the power management
test suite to validate power management functionality on MCXW23
hardware.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-20 09:15:40 +01:00
Jason Yu
dad7f6ae95 soc: nxp: mcxw2xx: Add poweroff support
Add poweroff MCXW2xx SoCs, support btn_wk pin wakeup.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-20 09:15:40 +01:00
Jason Yu
da1df411a5 soc: nxp: mcxw2xx: Enable the power management
Enabled modes:
  idle: SLEEP
  suspend: DEEP-SLEEP
  standby: POWER-DOWN with CPU retention

OS Time Base: OSTIMER with 32K clock source

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-20 09:15:40 +01:00
McAtee Maxwell
ce51e58819 drivers: enable lp_timer default for kit_psc3m5_evk
- Enable lp_timer for kit_psc3m5_evk
- Modify configuration, enabling lp_timer as default before systick

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-12-20 09:15:22 +01:00
Bill Waters
66cf8c502b drivers: timer: infineon pdl lp_timer
Add PDL-based low-power timer for the E84 board

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-12-20 09:15:22 +01:00
Appana Durga Kedareswara rao
d98f7ffa38 boards: amd: versalnet_rpu: Document PDI requirements for targets
Clarify the different requirements for QEMU emulation versus real
hardware deployment in the versalnet_rpu board documentation.

For QEMU target:
- XSDB (Xilinx System Debugger) is not used
- PDI (Programmable Device Image) is not required
- QEMU provides direct emulation without hardware initialization files

For real hardware target:
- XSDB and PDI file are required
- PDI contains the hardware initialization and boot configuration
  needed for the physical device

This documentation update helps users understand why PDI is optional
for QEMU testing but mandatory for physical board deployment.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-12-19 13:55:41 -05:00
Vit Stanicek
d98fb0b2e5 Revert "samples: i2s_codec: Modify DMIC channel mapping"
This reverts commit d11474ce64.

Follows the reversal of 1f69b91e90, as
this commit reflects changes made in there.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-12-19 13:55:21 -05:00
Vit Stanicek
5df75500d5 Revert "drivers: audio: dmic_mcux: remove arbitrary mapping of pdm to dmic channel"
This reverts commit 1f69b91e90.

Chose to revert it because its changes constitute a deviation from
the dmic API, resulting in failing tests on affected platforms
(mimxrt685s and mimxrt595s mainly).

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-12-19 13:55:21 -05:00
Pieter De Gendt
7f97d3dd0a 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>
2025-12-19 13:55:11 -05:00
Vincent Tardy
6497aa45b8 west.yml: update hal_stm32 revision for lib selection thanks to KConfig
Update hal_stm32 revision to support ble and link layer
libraries selection thanks to KConfig
BT_STM32WBA_LIB_CONFIG

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-12-19 13:54:59 -05:00
Vincent Tardy
05e5bbeb9b bluetooth: stm32wbax: add BT_STM32WBA_LIB_CONFIG KConfig
Add new KConfig BT_STM32WBA_LIB_CONFIG specifying the configuration
of the stm32wba ble library (full or basic) depending to bluetooth
features.

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-12-19 13:54:59 -05:00
Sylvio Alves
84ac9af572 drivers: bluetooth: hci: esp32: enable coded PHY support
Select BT_CTLR_PHY_CODED_SUPPORT for ESP32 variants that support
Bluetooth 5.0 coded PHY (long range). The original ESP32 series
is excluded as it only supports Bluetooth 4.2.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-19 13:54:51 -05:00
Jukka Rissanen
3824b87c19 doc: net: Update the overview.rst document
The document was missing recent updates, also some entries
were missing RFC links.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-19 13:54:42 -05:00
Lucien Zhao
aecb78a358 boards: nxp: frdm_mcxe247: add lpspi feature
support lpspi feature by enabling spi_loopback case

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-19 13:54:27 -05:00
Lucien Zhao
3756fa3c1a boards: nxp: frdm_mcxe247: add i2c feature
- support accel feature using lpi2c0 and enable accel cases:
  accel_trig/accel_polling
- enable i2c_target_api case using lpi2c0 and lpi2c1

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-19 13:54:27 -05:00
Zhaoxiang Jin
6ef3de03fa MAINTAINERS: add ZhaoxiangJin collaborator for Drivers: ADC
Add ZhaoxiangJin as a collaborator for "Drivers: ADC".

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-19 13:54:13 -05:00
Fabrice DJIATSA
31437d571d tests: boot: with_mcumgr: exclude wba6 platforms
These platforms were mistakenly not excluded during PR #100385

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-19 13:54:04 -05:00
Tom Burdick
7b7966c440 modules: hal_infineon: Fix whd includes
Updates hal_infineon to remove stray includes of cyhal  that broke the
build for folks using our wireless parts with non-Infineon
microcontrollers when building with Zephyr.

Wrap #include's of cyhal such that they are not included when building.

Signed-off-by: Tom Burdick <thomas.burdick@infineon.com>
2025-12-19 13:53:52 -05:00
Alberto Escolar Piedras
074cda5a93 net: websocket: Remove unnecessary includes
Since d45cd6716b this code does not use
types defined in the POSIX_API and therefore we do not need to work
around header include issues.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-19 13:53:14 -05:00
Mathieu Choplain
458e6f8ae3 doc: migration-guide: 4.4: ignore case for order in drivers section
The drivers section of migration guides has always been kept ordered using
a zephyr-keep-sorted block. However, due to the default sorting order, the
list elements are not always in alphabetical order: for example, 'STM32'
comes before 'Shell' because of the uppercase 'T'.

Turn on case-insensitive sorting to ensure the list is sorted in
alphabetical order and adjust the existing contents accordingly.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-19 07:54:03 -06:00
Tomi Fontanilles
9fd0737c7f manifest: add missing group to tf-m-tests
Add tf-m-tests to the tee group for consistency.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-12-19 07:53:19 -06:00
Guennadi Liakhovetski
8c200c0f2f xtensa: mmu: (cosmetic) clean up pointer types
Use void * cleanly: avoid needless type-casts and use void * for
generic pointers instead of uint8_t *.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-12-19 07:53:07 -06:00
Alberto Escolar Piedras
d74ccc1bdb cmake: Do not warn on deprecated symbols w CONFIG_WARN_DEPRECATED=n
CONFIG_WARN_DEPRECATED is 'y' by default.
When a user actively disables CONFIG_WARN_DEPRECATED, one would expect
that they would stop getting all deprecation warnings, not just the
ones from kconfig.
Otherwise users continue getting tons of these warnings when building
deprecated functionality.

So let's indeed disable them also for symbols and macros.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-19 07:52:31 -06:00
Grzegorz Chwierut
96985a32e8 twister: pytest: fix duplicate log lines from pytest
The combination of pytest's `-s` (--capture=no) option and
`--log-cli-level=DEBUG` was causing duplicate log output.
Fixed by replacing `--log-cli-level=DEBUG` with `--log-level=DEBUG`.
`--log-cli-format` removed as is not used.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-12-19 07:51:49 -06:00
Grzegorz Chwierut
8827ea2643 twister: prevent infinite loop in required app resolution
When using --only-failed with required applications, twister could enter
an infinite loop during application dependency resolution.

Fixes #100808

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-12-19 07:51:23 -06:00
Jérôme Pouiller
564c6c1101 manifest: silabs: Include last fixes
hal_silabs has been updated with a few fixes related to WiFi.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-12-19 07:50:54 -06:00
Radosław Koppel
9c69cf1710 tests/flash_simulator: Test callbacks for erase and write operations
This test checks the functionality of the callbacks for erase and write
operations. The callbacks allows the modification of the simulated flash
behaviour during this operations.

Signed-off-by: Radosław Koppel <r.koppel@k-el.com>
2025-12-19 07:50:31 -06:00
Radosław Koppel
63c3c34f74 drivers/flash/flash_simulator: Add write and erase callbacks
Add the functionality that allows to register write and erase callbacks.
The callbacks can modify the behaviour of this operations.
It are meant to be used during testing of the situation when the memory
starts to generate errors or the data cannot be trusted anymore.
It expands the testing possibility, for a situation when the module
is tested that checks the data integrity and and we cannot just jump in
between its internal write and read operations to inject an error.

Signed-off-by: Radosław Koppel <r.koppel@k-el.com>
2025-12-19 07:50:31 -06:00
Michał Bainczyk
e68ae84e5b manifest: update hal_nordic to have fixes for examples
Update hal_nordic to have examples with SPIM+SPIS and
TWIM+TWIS examples fixed.

Signed-off-by: Michał Bainczyk <michal.bainczyk@nordicsemi.no>
2025-12-19 07:49:54 -06:00
Nikodem Kastelik
64be8d84b1 drivers: pwm: nrf: fix nrfx instance being zeroed on suspend
PWM driver clears its runtime state on each suspend event.
However, since nrfx 4.0 integration nrfx driver instance is part
of the runtime state structure, so clear action must be limited.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-12-19 07:49:28 -06:00
Ivan Iushkov
c3190d34aa Bluetooth: mesh: suppress clang warning in net.c
struct net_val is a packed struct containing
`struct bt_mesh_key dev_key` member which contains uint32_t
variable inside.
Compiling this code with llvm clang produces the following
warning:

`
error: field dev_key within 'struct net_val' is less aligned
than 'struct bt_mesh_key' and is usually due to 'struct net_val'
being packed, which can lead to unaligned accesses
[-Werror,-Wunaligned-access]
`

However, the `struct bt_mesh_key dev_key` is handled in accordance
to its actual alignment. I.e., it is copied using memcpy() which
prevents any alignment issues.

This commit resolves the following Zephyr issue:
https://github.com/zephyrproject-rtos/zephyr/issues/101144
by suppressing -Wunaligned-access warning
on the `struct net_val` declaration.

Signed-off-by: Ivan Iushkov <ivan.iushkov@nordicsemi.no>
2025-12-19 10:39:11 +01:00
Ivan Iushkov
80b4cdb744 toolchain: llvm: add -Wunaligned-access suppression
TOOLCHAIN_WARNING_UNALIGNED_ACCESS can be used to
suppress false-positive warnings generated
by llvm clang compiler caused by -Wunaligned-access option

Signed-off-by: Ivan Iushkov <ivan.iushkov@nordicsemi.no>
2025-12-19 10:39:11 +01:00
Lucien Zhao
70f6966920 boards: nxp: frdm_mcxe247: support edma feature
Enable dma case for frdm_mcxe247:
- chan_blen_transfer
- chan_link_transfer
- loop_transfer
- scatter_gather

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-19 10:38:13 +01:00
Lucien Zhao
995d289452 drivers: Kconfig.mcux_edma: add slot value for mcxe24x
set DMA_MCUX_TEST_SLOT_START value as 62 for mcxe24x

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-19 10:38:13 +01:00
Thomas Decker
1cb59d8e08 drivers: power_domain: Fix Kconfig endif comments
Fix the endif comments so they match to the corresponding if

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-12-19 10:37:29 +01:00
Lyle Zhu
fa8681f57f Samples: Bluetooth: HFP_HF: Enable codec negotiation and codec mSBC
Add callback `codec_negotiate` if the `CONFIG_BT_HFP_HF_CODEC_NEG` is
set.

Calling the function `bt_hfp_hf_select_codec()` if the codec ID is
valid in the callback `codec_negotiate`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-19 10:23:35 +02:00
Lyle Zhu
fae78f60c4 sample: Bluetooth: HFP: Support voice transmission and playback
Capture the voice from PCM and play voice through Codec if the SCO
connection has been established.

Capture the voice from Codec and send out through PCM if the SCO
connection has been established.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-19 10:23:35 +02:00
Lyle Zhu
5ead2dde41 modules: hal_nxp: mcux: Send VS commands to configure controller
Send VS commands to configure the PCM pins before establishing SCO
connection.

Send VS commands to start the voice transferring when SCO connection
has been established.

Send VS commands to stop the voice transferring when SCO connection
has been broken.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-19 10:23:35 +02:00
Lyle Zhu
c848b05126 Bluetooth: Classic: Monitor setup_sco and accept_sco_req HCI commands
For some controllers, such as NXP IW612 Chipset, the PCM pins of
controller needs to be configured before the SCO connection is
established. And it requires to get the `air_coding_format` to
configure the PCM pins of controller.

So, it requires to known when the SCO connection will be established
and what the `air_coding_format` of the SCO connection.

Add the function `bt_sco_hci_cb_register()` to monitor the HCI
commands `setup_sco` and `accept_sco_req`.

Add the function `bt_sco_hci_cb_unregister()` to remove the monitor.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-19 10:23:35 +02:00
Zhaoxiang Jin
3ee9ac3898 doc: releases: Fix heading underline in migration guide 4.4
Fix the Video section heading underline to use the correct number
of equal signs to match the heading length.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-19 10:22:48 +02:00
Wouter Horré
799d189a28 rtio: executor: release mempool buffer before resetting it
`rtio_executor_handle_multishot` releases the RX buffer in case of
cancellation or error. However, in case of an sqe that uses a mempool,
it reset the buffer before that, making the release a NOOP.  Fix that by
moving the reset of the buffer to right before pushing the sqe back onto
the queue.

Signed-off-by: Wouter Horré <wouter@versasense.com>
2025-12-19 10:22:38 +02:00
Ayush Singh
b0229771d5 net: dns: resolve: Enable discovery of all service instances
The DNS-based Service Discovery has the following abstract:

   This document specifies how DNS resource records are named and
   structured to facilitate service discovery.  Given a type of service
   that a client is looking for, and a domain in which the client is
   looking for that service, this mechanism allows clients to discover
   a list of named instances of that desired service, using standard
   DNS queries.  This mechanism is referred to as DNS-based Service
   Discovery, or DNS-SD.

As is stated here, DNS-based service discovery is designed to find all
instances implementing a service, not just the first one.

Currently, zephyr `dns_resolve_service` will call the callback for only
the first client instance found. It still does receive the responses
from other instances, but those are dropped since the query is already
marked as finished. The seems incorrect behavior.

With that said, the changes in this commit are API breaking, since even
the docs already state that only the first response is currently used.
So I am fine with creating a new function for discovering all instances
if that is more acceptable.

Since DNS-SD queries expect multiple responses, timeout or manual
cancellation are the only methods to stop an in-flight request. When a
timeout happens, the callback is called with one of the following
responses:
- `DNS_EAI_ALLDONE`: If at least one successful response was received.
- `DNS_EAI_CANCELED`: If no successful response was received.

Tested with 3 BeagleConnect Freedoms (2 running mdns_responder and 1
running dns_resolve sample).

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-12-19 10:22:24 +02:00
Jeremy Truttmann
26a08c86f6 net: ethernet: Allow to disable the auto-start of ethernet interfaces
Adds CONFIG_ETH_NET_IF_NO_AUTO_START to allow
pre-configuration of Ethernet interfaces (e.g., filters, mac)
before they become operational. When enabled, net_if_up() must be
explicitly called by the application.

Signed-off-by: Jeremy Truttmann <jetstreeam.code@outlook.com>
2025-12-19 10:22:14 +02:00
Michał Stasiak
e37b89f0b4 drivers: i2s: nrf_tdm: fix application of buffer size workaround
The workaround should be applied only when needed, based
on errata symbols.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-19 10:22:03 +02:00
Biwen Li
c2d201d24e firmware: scmi: fix build issue
arch reboot is not included in PM flow, so drop
the option CONFIG_PM_LOG_LEVEL to
fix build issue:
- error: CONFIG_PM_LOG_LEVEL undeclared here (not in a function)

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-19 10:21:25 +02:00
Jason Yu
010991d049 soc: nxp: imxrt118x: Change to use __rom_region_start symbol
The boot container was using a non-standard symbol name
`__rom_start_address` for the ROM start address. This symbol
is not defined when build with `-DCONFIG_CMAKE_LINKER_GENERATOR=y`.

This commit use the symbol `__rom_region_start` which is
available for both cases.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-19 10:21:16 +02:00
The Nguyen
a713f52fe4 manifest: update hal_renesas rev to latest
Update the hal_renesas rev to fix the USB device not sending ZLP
at the end of the DCP data stage

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-12-19 10:21:07 +02:00
Thinh Le Cong
c66c4fceaa soc: renesas: ra: add rom_padding workaround for IAR ROM placement
The arbitrary ordering of ILINK may cause the .last_section
to be placed between the gaps of consecutive sections in the ROMABLE
region.

This commit adds a workaround for Renesas RA devices, which have OFS
registers placed in FLASH. Adding a small .rom_padding section at
the beginning of the ROM_REGION stabilizes the placement order and
ensures that all ROM sections remain within the expected region.

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-12-19 10:20:35 +02:00
Thinh Le Cong
2a9df8d23b soc: renesas: ra: Resolve issue when using GNU and cmake linker
Switch OFS-related linker sections from GROUP FLASH to GROUP ROM_REGION
to avoid overlapiping placement with .text when build with GNU and
CONFIG_CMAKE_LINKER_GENERATOR=y of RA boards that have OFS in FLASH

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2025-12-19 10:20:35 +02:00
Thinh Le Cong
661536331f soc: renesas: ra: Add condition check for special cases
Add condition check for dts node and multi-image build

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2025-12-19 10:20:35 +02:00
Thinh Le Cong
2baeae776d soc: renesas: ra: Initial support for IAR build tool on Renesas RA
Support IAR build tool on Renesas RA devices

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2025-12-19 10:20:35 +02:00
Yasushi SHOJI
53af11f763 drivers: timer: Remove unused CONFIG_XLNX_PSTTC_TIMER_INDEX
CONFIG_XLNX_PSTTC_TIMER_INDEX has been unused since commit 57784fb9d5
(v2.3 era), which switched to using the `DT_INST_` macro and defaulted to
the first instance via `DT_INST_REG_ADDR(0)`.

Remove the obsolete and broken CONFIG_XLNX_PSTTC_TIMER_INDEX.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2025-12-19 10:20:25 +02:00
Dima Kushchevskyi
e157c16fab tests: bluetooth: ascs: make callback expectation checks more generic
The existing ASCS test callback verification functions scale poorly and are
not easily reusable across different cases.

This change introduces a more generic approach to expectation checks by
adding `expect_bt_bap_unicast_server_cb_release_called(_expected_count,
_streams)` and similar functions, improving readability and maintainability
of ASCS unit tests.

Fixes #58034

Signed-off-by: Dima Kushchevskyi <d.kushchevskyi@sirinsoftware.com>
2025-12-19 10:20:14 +02:00
Jamie McCrae
ecd8a4bc7c cmake: modules: hwm_v2: Skip writing output on no change
Skips updating files if the output already matches the file
contents, this prevents a random occurance whereby sysbuild
reconfigures itself after a reconfiguration for no known
discernable reason

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-12-18 23:38:25 +01:00
Bill Waters
acbad46c1b modules: hal_infineon: CMakeLists.txt
- Only compile the mtb-hal-cat1 module's source when
CONFIG_USE_INFINEON_LEGACY_HAL is set.
- The serial-flash sub-module relies on the legacy hal.
It was getting added to all builds, including ones that
don't use the legacy hal.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-12-18 23:38:09 +01:00
Benjamin Cabé
fa352c3030 doc: twister: keep definition lists uninterrupted
Move reference labels within definitions so that they do not break the
flow of definition lists.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-18 23:37:50 +01:00
Benjamin Cabé
18c1a63891 doc: fix bad indentation causing elements to render as definition lists
Fixes documents where blocks where indented to the right of their parent
causing them to render as definition lists.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-18 23:37:50 +01:00
Benjamin Cabé
5224283ea9 doc: css: re-style definition lists
Definition lists are key for explaining terminology, and making them
visually cohesive can help the reader better scan information.

This change introduces a distinct visual hierarchy by:

- Adding a vertical border to group the list items.
- Highlighting terms (dt) with a background color and rounded corners.
- Adding decorative indicators (bullets) to separate entries clearly.

The new style is also intentionally more visually distinct so that
_incorrect_ usage of definition lists (usually due to bad
indentation) can be more easily detected as it won't look good
when not used for things meant to be "definition lists" :)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-18 23:37:50 +01:00
Benjamin Cabé
a0096984dc doc: index.html: fix aria-hiddentypo
fix typo in attribute; add a missing one.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-18 23:37:50 +01:00
Benjamin Cabé
aa9f3f069a doc: update dark-mode-toggle to 0.18.0
Updates the minified JS resources corresponding to latest
dark-mode-toggle (0.18.0) release as it fixes an issue
with accessibility
See GoogleChromeLabs/dark-mode-toggle#99

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-18 23:37:50 +01:00
Benjamin Cabé
e872f2eff1 doc: index.rst: improve wording for version selector usage
Minor wording change to clarify what is meant by "use the version
selector".

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-18 23:37:50 +01:00
Benjamin Cabé
cef4fa9fb5 doc: index.html: css: improve contrast
Some tweaks to the CSS to have better contrast of the cards on the
homepage, and a few other places.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-18 23:37:50 +01:00
Benjamin Cabé
bdd8a67a6f doc: index.html: drop red border on hover for contribute card
This isn't really needed / is incosistent with how other cards react
on hover.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-18 23:37:50 +01:00
Benjamin Cabé
cb2a3aafe4 doc: css: add padding to search form gear icon
"Touch targets with sufficient size and spacing help users who may have
difficulty targeting small controls to activate the targets", so move
the gear icon a bit to give it more air.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-18 23:37:50 +01:00
Jason Yu
24f8ed75cb drivers: dma: dma_mcux_lpc: Add register backup and restore
Add for the case that the registers are not kept in some
low power modes.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-18 23:37:39 +01:00
Jason Yu
ed2af53f59 drivers: dma: dma_mcux_lpc: Support power device constraint
Call pm_policy_device_power_lock_put/pm_policy_device_power_lock_get
to coordinate with system level power modes.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-18 23:37:39 +01:00
Alex Hogen
a73e3df510 drivers: regulator/fixed: Add voltage getter to fix device never ready
When regulator-min-microvolt and regulator-max-microvolt properties are
provided in the devicetree node, a fixed regulator is never ready due to
failed initialization in regulator_common_init().

At at commit 9463d9a51d regulator_common.c
lines 68-71, if min or max voltages are set, then regulator_common_init()
attempts to get the regulator's current voltage setting so that it might
"Snap to closest interval value if out of range." However
regulator-fixed has not implemented the regulator_get_voltage() api, so
regulator_common_init() fails.

Adding an implementation for regulator_get_voltage() which returns
min voltage, just like regulator_fixed_list_voltage() does, resolves
this issue.

Fixes zephyrproject-rtos/zephyr#99339

Signed-off-by: Alex Hogen <alex@edt.com>
2025-12-18 23:37:30 +01:00
Alberto Escolar Piedras
9a0e8a4148 modules: nrf_wifi: Fix net API use
In d45cd6716b the mayority of the
Zephyr codebased was changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:53:10 +00:00
Alberto Escolar Piedras
0a8d5881d4 drivers: wifi: winc1500: Fix net API use
In 55c49cdb8f wifi
drivers were changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:53:10 +00:00
Alberto Escolar Piedras
1fcb102983 drivers: wifi: simplelink: Fix net API use
In 55c49cdb8f wifi
drivers were changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:53:10 +00:00
Alberto Escolar Piedras
9010e20e9f drivers: wifi: nxp: Fix net API use
In 55c49cdb8f wifi
drivers were changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:53:10 +00:00
Alberto Escolar Piedras
b7261fad59 drivers: wifi: eswifi: Fix net API use
In 55c49cdb8f wifi
drivers were changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:53:10 +00:00
Alberto Escolar Piedras
ecb5d3c898 drivers: wifi: esp_at: Fix net API use
In 55c49cdb8f wifi
drivers were changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:53:10 +00:00
Benjamin Cabé
e861b2681d drivers: dts: ti: fix typo in "Texas Instruments" company name
s/Texas Instrument/Texas Instruments/g

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-18 18:52:58 +00:00
Robert Lubos
46cf6e707e tests: net: socket: offload_dispatcher: Add extra test case for TLS
Socket dispatcher should create a native TLS socket with a native
underlying socket even if the socket is only bound to a native interface,
it shouldn't be needed to call ZSOCK_TLS_NATIVE specifically. This works
just fine, so add a test case for this scenario to make sure it remains
that way.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-12-18 18:52:44 +00:00
Fabio Baltieri
4cc278ffc9 drivers: spi: esp32: set dma tx/rx separately
Split the code for DMA setting to consider the tx and rx buffers
separately, this makes the driver work for use cases where tx only or rx
only is needed, such as when using this with the ws2812 driver.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-12-18 18:52:33 +00:00
Alberto Escolar Piedras
edcc44fb80 drivers: modem: hl78xx: Fix net API use
In b5588ed684, and after in
e19d78e607 the mayority of the
Zephyr modem drivers were changed to use the Zephyr native
net_ prefixed types, but a few were missing.

Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:52:23 +00:00
Alberto Escolar Piedras
d9b34059d9 drivers: modem: quectel-bg9x: Fix net API use
In b5588ed684, and after in
e19d78e607 the mayority of the
Zephyr modem drivers were changed to use the Zephyr native
net_ prefixed types, but a few were missing.

Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:52:23 +00:00
Alberto Escolar Piedras
fe41b6daf2 drivers: modem: sim7080: Fix net API use
In b5588ed684, and after in
e19d78e607 the mayority of the
Zephyr modem drivers were changed to use the Zephyr native
net_ prefixed types, but a few were missing.

Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:52:23 +00:00
Alberto Escolar Piedras
3e908843de drivers: modem: wncm14a2a: Fix net API use
In b5588ed684, and after in
e19d78e607 the mayority of the
Zephyr modem drivers were changed to use the Zephyr native
net_ prefixed types, but a few were missing.

Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:52:23 +00:00
Alberto Escolar Piedras
f64dc213fb drivers: ethernet: dsa_nxp_imx_netc: Fix net API use
In e6daacf3c9 the mayority of the
ethernet drivers code was changed to use the Zephyr native net_
prefixed symbols, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:52:13 +00:00
Alberto Escolar Piedras
fe1607844c mgmt: mcumgr: Fix remaining net API use
In d45cd6716b the mayority of the
Zephyr codebased was changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:52:06 +00:00
Alberto Escolar Piedras
bb00357557 net: lib: http: Fix net API use
In d45cd6716b the mayority of the
Zephyr codebased was changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:51:59 +00:00
Alberto Escolar Piedras
3b4cde8132 shell: backends: websocket: Fix net API use
In d45cd6716b the mayority of the
Zephyr codebased was changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:51:59 +00:00
Alberto Escolar Piedras
0be25778f7 net: sockets: objcore: Fix net API use
In d45cd6716b the mayority of the
Zephyr codebased was changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:51:59 +00:00
Alberto Escolar Piedras
88f1faec32 tests: net: all: Also build net shell disabled commands
It seems no other test (or sample) was building this.
So let's enable them in this test, so we at least build test them
somewhere.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:51:59 +00:00
Alberto Escolar Piedras
555887ec11 net: Fix net API use
In d45cd6716b the mayority of the
Zephyr codebased was changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:51:59 +00:00
Alberto Escolar Piedras
1912d88fc9 samples: net: promiscuous_mode: Fix remaining net API use
In d45cd6716b the mayority of the
Zephyr codebased was changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 18:51:59 +00:00
Fabrice DJIATSA
6687372293 tests: drivers: i2c: i2c_target_api: add support for stm32l562e_dk
- add an overlay file and enable i2c1 and i2c2 nodes.
- add stm32l562e_dk to testcase.yaml for CI testing.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-18 18:51:53 +00:00
Fabrice DJIATSA
e4d5f3ba0b tests: drivers: spi: spi_loopback: update stm32l562e_dk spi node
Move from SPI1 to SPI3 node (arduino header).

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-18 18:51:53 +00:00
Fabrice DJIATSA
95f6318b68 boards: st: stm32l562e_dk: enable sdmmc1 iDMA to fix sector write failures
The disk_access test failed during 8‑sector writes with:
- sd write error 16
- Failed to write to sector zero (assert in
tests/drivers/disk/disk_access)

Enabling idma on &sdmmc1 allows proper multi‑block transfers
and eliminates the write failure.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-18 18:51:53 +00:00
Fabrice DJIATSA
47e8e1fd68 boards: st: stm32l562e_dk: add arduino_gpio as supported periph
This is required to perform the
/tests/drivers/gpio/gpio_basic_api test.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-18 18:51:53 +00:00
Bill Waters
4926960746 samples: counter: add Infineon kit_pse84_eval
Add overlay files for the alarm sample

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-12-18 18:51:41 +00:00
Bill Waters
36abed5377 drivers: counter: add support for Infineon PSE84 device
- Update the driver to support the PSE84 device
 - Update to new peripheral clock allocation scheme

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-12-18 18:51:41 +00:00
Pieter De Gendt
56a84e8111 scripts: ci: Add ignorecase option to zephyr-keep-sorted
Allow making the zephyr-keep-sorted check ignore cases, for example:

// zephyr-keep-sorted-start ignorecase
....
// zephyr-keep-sorted-stop

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-18 18:50:54 +00:00
Alberto Escolar Piedras
64efa7dcb3 modem: ppp: Fix remaining net API use
In d45cd6716b the mayority of the
Zephyr codebased was changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 14:52:30 +00:00
Alberto Escolar Piedras
1a347f6f6c tests: net: all: Do not disable sys_getopt users
Since the shell (and its use of sys_getopt) does not have any dependency
on the POSIX_API anymore, we do not need to disable it when we disable
the POSIX_API compatibility layer.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 14:52:17 +00:00
Alberto Escolar Piedras
ddfdd8b389 tests: net: all: Also build zperf
Also build the zperf common and server code.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 14:52:17 +00:00
Alberto Escolar Piedras
f5959a898a samples: net: zperf: Do not enable the POSIX_API
This sample does not need it, and having it enabled masks uses of the
non native API by this code.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 14:52:17 +00:00
Alberto Escolar Piedras
455a0436e5 net: zperf: Fix net API use
In d45cd6716b the mayority of the
Zephyr codebased was changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 14:52:17 +00:00
Jaagup Averin
89c3443a4d dts: arm: st: f2: add adc2 and adc3
Add missing ADC2 and ADC3 nodes to stm32f2.dtsi.

Signed-off-by: Jaagup Averin <jaagup.averin@gmail.com>
2025-12-18 14:52:04 +00:00
Alberto Escolar Piedras
18bf241ec4 usb: host: usbip: Fix net API use
In c52c206e26 &
32059d7414 the USB code was changed to
use the Zephyr native net_ prefixed API, but some were forgotten
(nto[hn][ls]()). Let's change it now.

Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 14:51:52 +00:00
Alberto Escolar Piedras
b5709a3cf4 usb: next: Fix net API use
In 32059d7414 this code was changed to
use the Zephyr native net_ prefixed API, but some were forgotten
(ntohs()). Let's change it now.

Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 14:51:52 +00:00
Alberto Escolar Piedras
ba84bfea3c usb: legacy: Fix net API use
In c52c206e26 this code was changed to use
the Zephyr native net_ prefixed API, but some were forgotten
(ntohs()). Let's change it now.

Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-18 14:51:52 +00:00
Fabrice DJIATSA
6d17ab8058 test: app_development: vector_table_relocation: exclude stm32f4 serie
The vector_table_relocation.dtcm test assumes that the vector
table can be relocated to a DTCM region and executed from there.
However, on STM32F4 (Cortex-M4),this is not possible due to
architectural constraints.
The CCM RAM on STM32F4 series is connected via the D-bus,
not the ICode bus, and therefore cannot serve as an executable boot
space for the vector table.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-18 14:51:40 +00:00
Fabrice DJIATSA
e6226da734 boards: st: stm32_f3_disco: add zephyr dtcm chosen property
In the STM32F3 series, the CCM RAM can interface with
the Arm Cortex-M4 core via the I-BUS, which makes it
possible to run the vector table relocation test.

See Refman 0316 Page 50.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-18 14:51:40 +00:00
Benjamin Cabé
2bfd150128 cmake: hwmv2: optimize hardware list parsing with CMake lists
Replace inefficient string parsing loop with CMake list iteration for
processing list_hardware.py output. The previous implementation used
repeated string operations on the entire output string for each line,
which is increasingly slow as hardware list grows.

Local tests show hwmv2.cmake module loading in ~350 ms instead of
540 ms on my machine.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-18 14:51:29 +00:00
farsin NASAR V A
f6fccc57e1 tests: drivers: dma: Added sam_e54 test support files
Added sam_e54.overlay for dma test projects.

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2025-12-18 14:51:14 +00:00
Vincent Tardy
7273479e43 soc: st: stm32wba: hci_if: allow forcing ISR registration
Add parameter to the link_layer_register_isr() to force
or not the link layer isr registration in case of multiple
function calls.
This change fixes the interrupt service when resuming
from a PM standby state.

Update Bluetooth hci_stm32wba.c driver and
IEEE 802.15.4 ieee802154_stm32wba.c driver accordingly.

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-12-18 14:50:58 +00:00
Robert Cheng
44dc69d323 boards: focaltech: ft9001_eval: add evaluation board
Add support for the FocalTech FT9001 evaluation board:
- Board dts/dtsi and pinmux
- defconfig and board.cmake
- Basic documentation

The board has been tested with the following Zephyr sample:
– samples/hello_world

Signed-off-by: Robert Cheng <robert.cheng@focaltech-electronics.com>
2025-12-18 12:13:19 +00:00
Robert Cheng
5e1d28b49c drivers: serial: focaltech: add ft9001 serial driver
Add the UART driver for the FocalTech FT9001 SoC.

Signed-off-by: Robert Cheng <robert.cheng@focaltech-electronics.com>
2025-12-18 12:13:19 +00:00
Robert Cheng
384be5329d drivers: reset: focaltech: add ft9001 reset controller driver
Add reset controller driver for the FocalTech FT9001 SoC.

Signed-off-by: Robert Cheng <robert.cheng@focaltech-electronics.com>
2025-12-18 12:13:19 +00:00
Robert Cheng
8dc2103074 drivers: clock_control: focaltech: add ft9001 clock control driver
Add clock control driver for the FocalTech FT9001 SoC.

Signed-off-by: Robert Cheng <robert.cheng@focaltech-electronics.com>
2025-12-18 12:13:19 +00:00
Robert Cheng
48760eea64 dts: arm: focaltech: add ft9001 SoC dtsi
Introduce the base devicetree description for the FT9001 SoC.

Signed-off-by: Robert Cheng <robert.cheng@focaltech-electronics.com>
2025-12-18 12:13:19 +00:00
Robert Cheng
c3d0a3703f soc: focaltech: ft9001: add SoC support
Add initial support for the FocalTech FT9001 ARM Cortex-M SoC including:
- SoC Kconfig and dtsi integration points
- Early init and core setup
- Pinctrl base definitions

This prepares the tree for the FT9001 board and drivers.

Signed-off-by: Robert Cheng <robert.cheng@focaltech-electronics.com>
2025-12-18 12:13:19 +00:00
Robert Cheng
79f972db89 dt-bindings: focaltech: ft9001: add clock, reset, uart
Add devicetree bindings for the FocalTech FT9001 SoC:
- Clock controller
- Reset controller
- UART

These bindings are required by the SoC and drivers added in subsequent
commits. Headers are placed under include/zephyr/dt-bindings/.

Signed-off-by: Robert Cheng <robert.cheng@focaltech-electronics.com>
2025-12-18 12:13:19 +00:00
Jun Lin
dfe251554b driver: eSPI: npcx: fix minor sonarqube issues
Fix the Quality Gate failed from sonaqube.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-12-18 12:10:06 +00:00
Jun Lin
8d525c4f20 driver: eSPI: npcx: fix the missing closing brace
This commit fixed the missing closing brace of the switch statement to
resolve the compiler error.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-12-18 12:10:06 +00:00
Chaitanya Tata
9ea5170f09 boards: nordic: nrf54h20dk: Fix CPURAD MPSL init failure
Allocate one GPIOTE channel for coex grant GPIO pin. This fixes a nrfx
assert during MPSL init in CPURAD.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-12-18 12:09:42 +00:00
Chaitanya Tata
d7a22685ec boards: shields: nrf7002eb: Add 54H coex shield
This shield is a standalone coex shield without relying on the base
Wi-Fi shield (edge_connector).

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-12-18 12:09:42 +00:00
Emil Hammarstrom
12986286de lib: hash: Ensure OA/LP hmap inserts don't return tombstones
According to the hashmap interface specification sys_hashmap_remove will
"Erase the entry associated with key `key`, if one exists"

If a rehash is performed OA/LP will return 1 and no old_value for
sys_hashmap_insert.

If a rehash is NOT performed OA/LP will return 0 and a stale old_value for
sys_hashmap_insert even though the user requested the entry for that key to
be removed.

This patch makes OA/LP not return the value of tombstoned entries.

Signed-off-by: Emil Hammarstrom <emil.hammarstrom1@assaabloy.com>
2025-12-18 12:09:36 +00:00
Emil Hammarstrom
48059d126b tests: lib: hash_map: Expect sys_hashmap_remove to erase entry
After removing an entry the user does not expect it back after
sys_hashmap_insert

Signed-off-by: Emil Hammarstrom <emil.hammarstrom1@assaabloy.com>
2025-12-18 12:09:36 +00:00
Qingsong Gou
aaf36d65b5 drivers: spi: sf32lb: add spi_sf32lb_transceive_async async API
Add spi async API support for sf32lb

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-18 12:07:46 +01:00
William Tang
510e4d1cee soc: nxp: rw: fix GAU clock configuration for ADC accuracy
Configure the GAU (General Analog Unit) clock from T3 PLL 256M with
a divider of 4 to achieve 64MHz, replacing the previous configuration
that used the main clock at 260MHz main clock with a divider of 1.

The GAU ADC has a maximum clock frequency limit of 64MHz. The previous
260MHz clock configuration caused incorrect conversion results when
operating at 12-bit and 14-bit resolutions. Using the T3 PLL 256M
source divided by 4 provides the correct 64MHz clock frequency.

This change also corrects a typo in the comment from "Attack clock"
to "Set 64M GAU clock from T3 PLL 256M and reset".

Signed-off-by: William Tang <william.tang@nxp.com>
2025-12-18 12:07:30 +01:00
Andrej Butok
da5755f893 MAINTAINERS: add butok collaborator for NXP drivers
Add butok (Andrej Butok) as a collaborator for "NXP Platform Drivers".

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-12-18 12:07:21 +01:00
Ederson de Souza
ace1b87e15 samples/subsys/pmci/mctp: Add npcx4m8f_evb overlays for I2C-GPIO
So that one can run the I2C-GPIO owner/endpoint samples on it.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-12-18 12:07:03 +01:00
Ederson de Souza
621a7aa686 samples/subsys/pmci/mctp: Keep board specific config on board file
So that users of other boards don't see meaningless warnings during
build.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-12-18 12:06:55 +01:00
Ederson de Souza
b9f10bec52 samples/subsys/pmci/mctp: More friendly I2C-GPIO samples messages
This is done by:
  - No more sending periodic messages from endpoint to owner - keep
    parity with UART sample: owner sends periodic ping to endpoint, that
    replies to those;
  - Waiting one second between each message sent by the owner, so people
    can actually see what's going on;
  - Wrapping the content of the messages (strings "ping" and "pong")
    in quotes, so it's clear what they are;
  - Toning down the logging to INF - no need for DBG.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-12-18 12:06:55 +01:00
Ederson de Souza
5f5e17e08c samples/subsys/pmci/mctp: Set allocation functions on I2C samples
Without those, allocation for MCTP packets can cause subtle - or not so
subtle - bugs.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-12-18 12:06:55 +01:00
Ederson de Souza
0cdf8694e0 subsys/pmci/mctp: I2C-GPIO controller interrupt fix
MCTP I2C-GPIO controller wasn't properly reenabling interrupt on the
GPIO line after disabling it during transfer.

This patch also uses `GPIO_INT_LEVEL_ACTIVE` instead of
`GPIO_INT_LEVEL_HIGH` to respect GPIO active state.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-12-18 12:06:55 +01:00
Ederson de Souza
8401bcfb7a subsys/pmci/mctp: Fix I2C-GPIO target reading
State machine handling RX data wasn't transitioning to "receive" mode.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-12-18 12:06:55 +01:00
Albort Xue
df3823b812 samples: drivers: spi_flash: Add supports of flexspi_nor
Added supports of nxp_imx_flexspi_nor flash.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2025-12-18 12:06:46 +01:00
Qingsong Gou
ccdc0c3007 drivers: adc: sf32lb: add adc read_async support
Add adc read_async support for sf32lb

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-18 12:06:33 +01:00
Fin Maaß
97a2d6bc47 drivers: ethernet: microchip_enc424j600: use timeout directly
use Kconfig timeout directly.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-18 12:06:25 +01:00
Fin Maaß
a7d48d94b4 drivers: ethernet: microchip_enc28j60: use timeout directly
use Kconfig timeout directly.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-18 12:06:25 +01:00
Fin Maaß
f017a99f07 drivers: ethernet: microchip_lan865x: use timeout directly
use Kconfig timeout directly.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-18 12:06:25 +01:00
Fin Maaß
2cf2f8c58a drivers: ethernet: microchip_lan9250: use timeout directly
use Kconfig timeout directly.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-18 12:06:25 +01:00
Biwen Li
b196917f6c tests: bluetooth: audio: ascs: fix build issues
Fix build issues,
- error: format %x expects argument of type
  unsigned int, but argument 7 has type ssize_t
  {aka long int} [-Werror=format=]
  zassert_false(ret < 0, "attr->read returned unexpected (err 0x%02x)"
  , BT_GATT_ERR(ret));

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-18 12:06:06 +01:00
Jordan Yates
235aa1aa7f flash: flash_simulator: static programmable unit buffer
Move the programmable unit buffer used to detect double writes out of
the function stack. This fixes stack overflows when simulating flash
devices with large programming units (SPI-NAND, 2-4 kB).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-18 09:24:40 +01:00
Jordan Yates
9d88c8cfb0 tests: unit: timeutil: test CONFIG_TIMEUTIL_APPLY_SKEW=n
Test the `timeutil` libraries compile and behave the same way
(excluding the skew application) when `CONFIG_TIMEUTIL_APPLY_SKEW=n`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-18 09:24:34 +01:00
Jordan Yates
1d92d0b5ff utils: timeutil: option to disable clock skew
Accurately applying clock skew correction in
`timeutil_sync_ref_from_local` and `timeutil_sync_local_from_ref`
requires double-precision floating point operations. If this is the only
usage of double precision logic in the build, but clocks skews are not
used, this can be a significant ROM overhead. Disabling this option can
save ~2.4 kB of ROM.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-18 09:24:34 +01:00
Bartosz Miller
a2661d380a tests: drivers: uart: Extend UART120 testing for nrf54h20 cpuflpr
Run UART tests on 54h20 cpuflpr with uart120

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-12-18 09:19:57 +01:00
Mathieu Choplain
c8e73024da doc: migration: 4.4: place Video drivers section in sorted block
The Video drivers section was mistakenly placed below the end marker of the
zephyr-keep-sorted block.

Move it back inside the block for proper ordering.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-18 09:19:42 +01:00
Petr Buchta
53dfed0455 boards: nxp: frdm_mcxe247: Enable flash controller
This commit enables use of FTFC flash controller.
Together with DT changes it adds support for FTFC into soc_flash_mcux.c
driver.

Signed-off-by: Petr Buchta <petr.buchta@nxp.com>
2025-12-18 09:19:24 +01:00
Jason Yu
2fb46db59b drivers: hwinfo: mcux_rcm: Fix wrong comment
Correct mismatched #endif comment to reference the correct macro
FSL_FEATURE_RCM_HAS_SSRS

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-18 09:18:40 +01:00
Jason Yu
420c0f94ea drivers: hwinfo: rcm: Enable HWINFO RCM for MCXE24x and KE1xZ
Enables the MCUX Reset Control Module (RCM) to support hwinfo

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-18 09:18:40 +01:00
Jason Yu
b185fdea97 drivers: hwinfo: mcux_rcm: Improve get_supported_reset_cause
Remove the conditional compilation guard FSL_FEATURE_RCM_HAS_PARAM.
`hwinfo_mcux_rcm_xlate_reset_sources` has handled the
supported cause using `FSL_FEATURE_xxx` macros, passing `UINT32_MAX`
can get all supported reset cause.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-18 09:18:40 +01:00
Thomas Decker
fef0958ca5 arch: arm: mpu: Add missing define REGION_FLASH_SIZE for 32k and 32M
Add missing REGION_FLASH_SIZE defines when CONFIG_FLASH_SIZE is 32k or 32M

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-12-18 09:18:07 +01:00
Ryan McClelland
f897a24e68 drivers: i3c: cdns: fix no ibi payload
There was a misunderstanding in the spec, where if the bcr says there
is no payload, there are NO data bytes that follow the ibi address.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-12-18 09:17:57 +01:00
Emil Gydesen
15eb9daa87 samples: Bluetooth: CAP: Initiator: Fix test count name
Renamed total_rx_iso_packet_count to
total_unicast_rx_iso_packet_count to make it consistent
with total_unicast_tx_iso_packet_count.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-18 09:17:48 +01:00
Emil Gydesen
f66f58833f samples: Bluetooth: CAP: Acceptor: Various fixes
The sample recently started supporting multiple sink ASEs,
but only support a single sink stream. Updated the number of
sink streams supported.

Modified how/when we reset the requested_bis_sync and
FLAG_BROADCAST_SYNC_REQUESTED in the broadcast implementation.

Removed a call to bt_bap_broadcast_sink_delete that would
always fail because it was already deleted.

Modified how/when the total_unicast_rx_iso_packet_count
and total_unicast_tx_iso_packet_count values were reset,
to support a future case of CAP handover.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-18 09:17:48 +01:00
Sylvio Alves
5d1e443bdf drivers: spi: esp32: fix CS handling when using GPIO chip select
The driver was unconditionally setting hal_dev->cs_pin_id to the target
number, which activates hardware CS lines even when GPIO-based chip
select (cs-gpios) is used. This caused issues when using hardware CS
via pinctrl with reg > 0.

Also update the binding documentation to clarify the interaction between
cs-gpios and hardware CS via pinctrl.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-18 05:36:14 +01:00
Lyle Zhu
9c710107da bluetooth: hfp_ag: Add Kconfig option for in-band ringtone
Add a new Kconfig option CONFIG_BT_HFP_AG_INBAND_RINGTONE to allow
enabling/disabling the in-band ringtone capability in HFP AG profile.

The in-band ringtone feature is now conditionally compiled based on
this configuration option. When disabled, the feature flags are set
to 0 and the bt_hfp_ag_inband_ringtone() API returns -ENOTSUP.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-18 05:35:53 +01:00
Sylvio Alves
007f4427f3 drivers: serial: esp32: add UHCI SLIP encoding control
Add devicetree properties to control UHCI SLIP encoding/decoding
when using UART with DMA (async API). Both properties default to
disabled to prevent unintended data corruption.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-18 05:35:40 +01:00
John Batch
5ca16a6696 boards: infineon: kit_psc3m5_evk: Adding dma to supported devices
Adds DMA to the supported devices list for the Infineon kit_psc3m5_evk
board.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-12-18 05:35:15 +01:00
John Batch
30307e9fd1 tests: drivers: dma: Adding DMA test overlays for Infineon PSC3 board
Adding test overlays for Infineon kit_psc3m5_evk board.  Added tests:
 * tests/drivers/dma/chan_blen_transfer
 * tests/drivers/dma/loop_transfer

Signed-off-by: John Batch <john.batch@infineon.com>
2025-12-18 05:35:15 +01:00
Ederson de Souza
b13c7a2fe0 MAINTAINERS: Add edersondisouza as MCTP collaborator
Add edersondisouza as a collaborator to MCTP.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-12-18 05:35:04 +01:00
Kai Vehmanen
12a5bb2911 soc: intel_adsp: tools: cavstool.py: add I2S offload support
Program I2S link for DSP offload, allowing to run DSP tests using
the I2S/SSP interface. On ACE1.5 and older, no additional programming
is required, I2S link is available by default.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2025-12-18 05:34:54 +01:00
Wu Yingxiang
6b46f60580 boards: others: add esp32c3_lckfb board support
Add board support for LCKFB ESP32-C3 Development Board.

This board is based on ESP32-C3 with 8MB SPI flash and includes:
- Wi-Fi and Bluetooth Low Energy support
- Complete pin configuration for UART, I2C, SPI2, I2S
- OpenOCD debugging support
- Board documentation with WebP image (optimized size)

Signed-off-by: Wu Yingxiang <wuyingxiang58@gmail.com>
2025-12-18 05:34:22 +01:00
Jason Yu
77225cb32e soc: nxp: mcxw2xx: Improve OS tick timer selection
When os_timer is enabled in dts, then os_timer will be used as
OS tick timer.

To make systick as the default OS tick timer, currently os_timer
is not enabled in dts. When users want to use os_timer as
OS tick timer, they need to override the dts.

Improve the method, enable the os_timer is dts, but not enable
in Kconfig by default. If need to use os_timer as OS tick, just pass
CONFIG_MCUX_OS_TIMER=y

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-18 05:34:07 +01:00
Lyle Zhu
ba2bd21156 tests: Bluetooth: Update at test suites
Remove the dedicated buffer from the test case.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-18 05:33:30 +01:00
Lyle Zhu
9016f96e01 Bluetooth: Classic: HFP_HF: Refactor at parser
In current implementation, the additional buffer is required by AT to
store the parsing AT response data temporarily. To store the parsed
AT response data completely, the buffer size is as high as the MTU of
the RFCOMM connection. And the buffer is dedicated for each HFP HF
connection. That means the RAM usage depends on the MAX HFP HF
connection count. Actually, the RFCOMM receiving buffer is valid when
processing the received AT response. The changes aim to remove the
additional buffer and leverage the receiving buffer to process the AT
response.

And there is an issue found that the type of the additional buffer
length is `uint8_t`, while the configured RFCOMM receiving data length
is 65535. When the additional buffer length exceeds 255, the AT cannot
process the received data normally.

Replace manual buffer management with net_buf_simple in the AT command
parser. This change eliminates the need for manual position tracking
and buffer length management by leveraging Zephyr's existing buffer
utilities. And leverage RFCOMM receiving buffer instead of allocating
dedicated buffer.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-18 05:33:30 +01:00
Muhammad Waleed Badar
854240d26e dts: arm: add dts bindings for ARMv7 timer
This ensures that correct timer node is selected for
ARMv7-based platforms.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2025-12-18 05:32:51 +01:00
Benjamin Cabé
29059ec3d6 scripts: ci: refresh requirements-actions.txt pinned versions and SHAs
Refresh pinned dependencies to pick filelock 3.20.1 version since 3.20.0
is subject to CVE-2025-68146.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-17 14:35:20 -08:00
Kate Wang
2b6283def7 samples: drivers: display: Enable new panel zc143ac72mipi for RT700
Add zc143ac72mipi panel configuration for RT700 platform in display
sample test configuration.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-17 13:59:06 -05:00
Kate Wang
acbd8e409a doc: boards: nxp: Add new supported panels for RT700
Add new supported panels RK055HDMIPI4MA0 and ZC143AC72MIPI
in board doc.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-17 13:59:06 -05:00
Kate Wang
0798beeb34 samples: drivers: display: Enable new panel rk055hdmipi4ma0 for RT700
Add heap size configuration and add new panel rk055hdmipi4ma0 for RT700.
It requires extra space for 720p panel.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-17 13:59:06 -05:00
Kate Wang
036220496b boards: shields: rk055hdmipi4ma0: Update RT700 configuration
Remove the external frame buffer configuration. It shall be set in
device tree instead now.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-17 13:59:06 -05:00
Kate Wang
1ffdbb4b5b boards: nxp: Add memory region definition in board dts for RT700
Add memory region definition for PSRAM space which is controlled
by XPSI2 in board dts for RT700. In this way user/developer
can place the data in the region in code more easily. This space
can be used by media domain masters like DCNano lcdif controller.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-17 13:59:06 -05:00
Kate Wang
cf7f3f672f boards: shields: rk055hdmipi4m: Update RT500 configuration
Remove the external frame buffer configuration. It shall be set in
device tree instead now.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-17 13:59:06 -05:00
Kate Wang
bf2a0f1911 boards: shields: rk055hdmipi4ma0: Update RT500 configuration
Remove the external frame buffer configuration. It shall be set in
device tree instead now.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-17 13:59:06 -05:00
Kate Wang
e55a5022f5 boards: nxp: move memory region definition to board dts for RT500
It is better to let the FLEXSPI2 memory region in the final
linker file be generated from dts, in this way user/developer
can place the data in the region in code more easily.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-17 13:59:06 -05:00
Kate Wang
1c5d236248 drivers: display: dcnano_lcdif: Update framebuffer placement and pitch
1. For the situation when the RAM space is limited and the driver's
frame buffer cannot be place in RAM, add a new property 'ext-ram' in the
binding, so if in device tree this property is assigned to a secondary
RAM space, place the frame buffer there. The old way is to define the
frame bufeer address in Kconfig, which may cause inconvenience if other
data also needs to be placed in the same RAM space.
2. Update the driver to support new requirement on RT700. The IP requires
a 64-byte alignment for the frame buffer stride.
3. Update the calculation of frame buffer size. If the pixel format is
updated, the frame buffer size shall be updated too.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-17 13:59:06 -05:00
Jason Yu
bba3582b8d drivers: interrupt: pint: Add API to get pin used IRQ slot
PINT connects GPIO pin to seperate IRQ slot. This info is
hidden in PINT driver, there is no way to know which IRQ
actually the GPIO pin is connected to.
Add new API to get which IRQ slot is connected to, based on
pin index.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-17 13:58:56 -05:00
Muzaffar Ahmed
d7900d6d5b drivers: wifi: siwx91x: Disable automatic rejoin in NWP
Disable rejoin by setting max_retry_attempts to 1. This is done to keep
the NWP state in sync with Zephyr Host, given that Zephyr does not have
a "rejoin ongoing" state.

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-12-17 13:58:40 -05:00
Sreeram Tatapudi
11243b1f8c doc: releases: migration: 4.4: Add infineon driver rename update
Adding details regarding the Infineon driver refactoring to drop
cat1 from the driver names and binding files.

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-12-17 13:58:09 -05:00
Sreeram Tatapudi
0a06f5b91a dts: bindings: Drop cat1 from the infineon binding files
Drop cat1 from the binding files to enable reuse by other
category devices as well.

Fixes #99174

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-12-17 13:58:09 -05:00
Charles Hardin
1a738a56c5 drivers: ethernet: w5500: update the driver to use mac config bindings
Since the w5500 is used in arduino shields it should use the current
code patterns since it will be examined as a reference for other
drivers. So, this is just trying to catch up to the changes that have
been made in the microchip, litex, and virtio drivers.

Use the net_eth_mac_load code pattern from those other drivers and
update a few things to the code guidelines as well.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-12-17 13:57:52 -05:00
Charles Hardin
4c983d00f6 drivers: ethernet: lan9250: cleanup some un-needed code
From the prior change b38a46bade adding
in the mac configuration in the device tree it is appropriate to
remove the local mac address bindings. This is done in this commit.

There is no intended functional change

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-12-17 13:57:52 -05:00
Benjamin Cabé
66d6edaf5c include: firmware: scmi: add proper doxygen groups for SCMI
This adds proper doxygen groups for all public SCMI headers

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-17 13:57:45 -05:00
Benjamin Cabé
0081169359 doc: hardware: scmi: add System power management as supported protocol
There is an implementation of the System power management protocol in
the SCMI driver, so mention it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-17 13:57:45 -05:00
Benjamin Cabé
b96c49d737 doc: hardware: scmi: fix formatting of SCMI docs
Fix incorrect indentation that caused some elements to render as
defintion lists.

Added proper nesting of the various headings as everything was top-level

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-17 13:57:45 -05:00
Sylvio Alves
f8d2e00a0e includes: remove duplicated entries in zephyr-tree
Remove duplicated #include directives within the same
preprocessor scope across the Zephyr tree.

Duplicates inside different #ifdef branches are preserved
as they may be intentional.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-17 13:57:38 -05:00
Sylvio Alves
6d5754978c drivers: flash: esp32: preserve volatile qualifier in IPM callback
Preserve the volatile qualifier when casting the shared memory pointer
in flash_cpu01_receive_cb() to avoid dropping volatile semantics during
inter-processor communication.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-17 13:57:38 -05:00
Thomas Hebb
58212cd70e drivers: wifi: airoc: Populate band in scan results
The driver gives us this information, so we just need to translate it to
Zephyr's type like we already do for security.

Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
2025-12-17 13:56:10 -05:00
Ayush Singh
c64de6f1de samples: net: dns_resolve: Add 802154-subg support
- Tested on BeagleConnect Freedom along with mdns_responder sample.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-12-17 13:56:03 -05:00
Ayush Singh
12b2174e66 samples: net: mdns_responder: Add 802154-subg overlay
- Tested on BeagleConnect Freedom

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-12-17 13:56:03 -05:00
Sebastian Głąb
a5ca188d84 tests: boards: nrf: i2s: Remove test that checks I2S clock divider
Remove test from tests/boards/nrf/i2s/i2s_divider.
The i2s_divider test was relying on debug log from I2S driver.
With the recent NRFX updates log was removed.

Better test, that counts rising edges on I2S_LRCLK line was added
in downstream (https://github.com/nrfconnect/sdk-nrf/pull/26230).

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-12-17 13:55:54 -05:00
Michał Stasiak
a9d1932b23 dts: nordic: nrf54lm20a: remove clockpin from TDM
Not needed as nRF54LM20A does not support clockpin
feature in GPIO.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-17 13:55:43 -05:00
Guennadi Liakhovetski
c88758fdfb llext: make 2 arguments of llext_get_section_header() const
ext and loader aren't modified inside llext_get_section_header(),
they are just passed to llext_section_shndx(), where they're already
const. Make them const in this function too.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-12-17 13:55:34 -05:00
Benjamin Cabé
16164b35dc MAINTAINERS: add doc/index.html to Documentation area
add this file to make sure edits to it get proper
maintainers/collaborators pulled in

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-17 13:55:07 -05:00
Benjamin Cabé
0e041f9c59 doc: index.html: fix overflow bug on welcome admonition.
Fix a rare bug where some browsers seem to consider the welcome
admonition is overflowing.
This fixes zephyrproject-rtos/zephyr#101167.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-17 13:55:07 -05:00
Anas Nashif
516bca6e05 ci: assigner: fix condition for running script
Wrong logic in condition results in running the script with the wrong
arguments.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-12-17 13:54:59 -05:00
Alberto Escolar Piedras
c3229f04b5 manifest: Update nRF hw models to latest
Update the HW models module to:
0f0c43748111c65800c6920f1c0690676423a351

Including the following:
0f0c437 nrfx: Replace nrfx_gppi_domain_id_get() (requires new nrfx)
1bead00 nrf_ppi: Add support for NRF_PPI_ENDPOINT_IS_EVENT in simulation
9f11c2f NHW_misc: Add API to convert from/to simulated addr to real HW
        ones

Note: This requires an nrfx 4.0.x which is newer than 2025/12/03,
i.e. modules/hal/nordic 0dbbf4794156ca09dc2d4bad8c42dcdb54acd662 or
newer which is has been used in Zephyr main since Zephyr's
242bf65d1d

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-17 14:36:19 +02:00
Martin Lampacher
0267faf22c boards: st: update board.cmake and docs for nucleo_u0x
Added stlink_gdbserver as a runner for the nucleo_u0x boards.
Updated the boards' documentation to mention that JLink runners
do not work with the onboard debug probe and removed mention
of the unsupported openocd runner.

Signed-off-by: Martin Lampacher <martin.lampacher@gmail.com>
2025-12-17 14:36:10 +02:00
Jukka Rissanen
d51356fd07 samples: net: pkt_filter: Add example of how to handle UDP/TCP packets
Add support for LOCAL_IN rules that can be tracked UDP or TCP packets.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-17 14:36:01 +02:00
Jukka Rissanen
720408036e net: pkt_filter: Add API for catching UDP/TCP packets
Allow user to setup a hook function that is called for each
received UDP or TCP packet.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-17 14:36:01 +02:00
Lucien Zhao
9a1dd6ebab tests: arch: arm: add ARM MPU write-through test
Add test suite for ARM MPU write-through cache functionality including:
- Cache coherency validation with dma ways
- Cache coherency validation

Support case on mimxrt1180_evk cm33/cm7 cores

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-17 14:35:50 +02:00
Lucien Zhao
9e42f9fc34 arch: arm: mpu: Add Kconfig options for SRAM Write-Through cache policy
- CONFIG_ARM_MPU_SRAM_WRITE_THROUGH: enables Write-Through cache policy
  for SRAM regions instead of default Write-Back

Includes corresponding MPU attribute macros for ARMv7-M and ARMv8-M
architectures. Maintains backward compatibility with existing
configurations.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-17 14:35:50 +02:00
Thinh Le Cong
5fdd2a67bc doc: releases: Update migration guilde for ADC driver
Update the migration guilde for ADC driver when support
16-bit resolution

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2025-12-17 14:35:27 +02:00
Thinh Le Cong
a218c92592 drivers: adc: Remove doxygen comment blocks
Remove all doxygen comment blocks on driver

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2025-12-17 14:35:27 +02:00
Thinh Le Cong
57361327d8 samples: drivers: adc: Add tests support for ADC driver on EK-RA2A1 board
Add Renesas EK-RA2A1 board support for sample:

- samples/drivers/adc/adc_dt

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2025-12-17 14:35:27 +02:00
Thinh Le Cong
231bf62f7f tests: drivers: adc: Add tests support for ADC driver on EK-RA2A1 board
Add Renesas EK-RA2A1 board support for these tests:

- tests/drivers/adc/adc_api
- tests/drivers/adc/adc_accuracy_test

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2025-12-17 14:35:27 +02:00
Thinh Le Cong
25fd4d2393 boards: renesas: Add ADC device node for EK-RA2A1 board
Add ADC device node on board layer to support ADC 16-bit on EK-RA2A1

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2025-12-17 14:35:27 +02:00
Thinh Le Cong
67284c5515 dts: arm: renesas: Add ADC device node for EK-RA2A1 and set unit prop
Add ADC device node to support ADC 16-bit on EK-RA2A1
Update other Renesas board nodes to include the "unit" property

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2025-12-17 14:35:27 +02:00
Thinh Le Cong
0ed8c6fa93 drivers: adc: Adding ADC 16-bit driver support for board EK-RA2A1
Adding ADC 16-bit driver compatible to support ADC16 on RA2A1

Signed-off-by: Thinh Le Cong <thinh.le.xr@bp.renesas.com>
2025-12-17 14:35:27 +02:00
Alberto Escolar Piedras
f0d78d572e boards renesas cpkcor_ra8d1b: Fix DTS typos
A few typos that prevent building for this target

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-17 14:35:17 +02:00
Lyle Zhu
bf802d0237 Bluetooth: Classic: HFP_AG: Auto-select support highest quality codec
In current implementation, if the codec is not selected, the codec
CVSD will be used to as default value to start audio connection
procedure.

Optimize the codec selection to select the supported highest quality
codec as the default value.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-17 11:29:21 +01:00
Lyle Zhu
466dec3b3e Bluetooth: HFP AG: Add feature support check for voice recognition
Add feature support validation in `bt_hfp_ag_voice_recognition()` to
verify that both HF and AG support voice recognition feature before
attempting to activate/deactivate it.

This prevents attempting voice recognition operations when the feature
is not supported by either the Hands-Free device or the Audio Gateway,
returning -ENOTSUP in such cases.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-17 11:28:55 +01:00
The Nguyen
e45df54ba1 dts: bindings: memc: correct spelling for renesas,ra-sdram
Fix typo for property name in renesas,ra-sdram.
Update property name used in code.

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-12-17 11:24:28 +01:00
The Nguyen
d1d99918e5 dt-binding: memc: renesas: fix macro name misspelling
Some macros defined for SDRAM timing configuration have typo.
This commit fixes the mistake and updates the macro used
in the code.

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-12-17 11:24:28 +01:00
The Nguyen
f3fed0bb8b manifest: update hal_renesas revision
Update hal_renesas revision to fix Renesas RA SDRAM macro typo

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-12-17 11:24:28 +01:00
James Smith
d38432761f drivers: i2c: silabs: Don't fail to init is clock is already enabled
Don't fail to initialize i2c if it was already initialized, for
example by mcuboot.

Signed-off-by: James Smith <james@loopj.com>
2025-12-17 11:23:46 +01:00
Peter Ujfalusi
7c67dea76a intel_adsp: common: gdbstub: Fix compilation DEBUG_SLOT_MANAGER=n
The GDB is not compiled by default and a recent change in the slot manager
series contained a typo in ifdef and missed by not compiling the GDB
support.

Fixes: ebb5625bee ("intel_adsp: Add debug slot manager")
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
2025-12-17 10:59:00 +02:00
Jordan Yates
b362eca3b0 modules: nrf_wifi: bus: SPI keep ACTIVE
Add an option to keep the SPI bus in `ACTIVE` while the WiFi module is
powered up. Previous testing has shown transitioning the bus on every
SPI transaction to reduce UDP uplink throughput from 8 Mbps to 6 Mbps.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-17 10:58:49 +02:00
Jordan Yates
c13420333c wifi: nrf_wifi: respect SHELL_STACK_SIZE dependencies
`SHELL_STACK_SIZE` should not be redefined as a symbol with no
dependencies, it should be applying a new default to the existing
symbol.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-17 10:58:39 +02:00
Jordan Yates
cbd5687fc2 wifi: nrf_wifi: return errors when bringups fail
The combination of two different return variables (`status` and `ret`)
resulted in most failure paths through the bringup code still returning
success.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-17 10:58:39 +02:00
Holt Sun
97f497155b drivers: flash: mcux_flexspi: fix cache unused variable warning
Preserve original write length for DCACHE_InvalidateByRange()
Guard declaration of `size` with CONFIG_HAS_MCUX_CACHE to avoid
unused-variable warnings when cache is disabled
Add pointer validity checks before cache invalidation

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-17 10:58:30 +02:00
Sylvio Alves
443862ddff drivers: uart: esp32: fix async RX byte count from DMA descriptor
In async UART mode with DMA, the RX completion callback was incorrectly
relying on rx_counter which is never updated in DMA mode since data
bypasses the UART FIFO via UHCI+GDMA.

Fix by reading the actual transferred byte count from the DMA
descriptor's length field using gdma_ll_rx_get_success_eof_desc_addr().
Direct LL calls are used because this runs in ISR context where
dma_get_status() is not IRAM-safe.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-17 10:57:52 +02:00
Tobias Kässer
858acad5ac doc: fix CONFIG_PM_DEVICE_RUNTIME_ASYNC typo
Fixed typo CONFIOG_PM_DEVICE_RUNTIME_ASYNC to
CONFIG_PM_DEVICE_RUNTIME_ASYNC in device runtime PM documentation.

Signed-off-by: Tobias Kässer <t.kaesser@gmail.com>
2025-12-17 10:57:32 +02:00
Yerrajennugari Raj Kumar
9fe6302151 drivers: espi: npcx: Add config to disable auto-ack and use callback
Added configuration option to disable auto acknowledgment for
virtual wire WARN signals and added a callback to handle them.

This change introduces:

1. Support to disable automatic acknowledgment for VW WARN signals.
2. A callback mechanism to notify application firmware for explicit
handling.

Behavior:

1. If auto-ack is disabled, the callback notifies the application to
handle VW WARN signals.
2. If auto-ack is enabled, the driver acknowledges VW WARN signals
without notifying the application.

Signed-off-by: Yerrajennugari Raj Kumar <yerrajennugari.raj.kumar@intel.com>
2025-12-17 10:57:11 +02:00
Waqar Tahir
3e1f0bb5b8 manifest: tf-m: support for mcxn947
Updated the TF-M repo for support of mcxn947

Signed-off-by: Waqar Tahir <waqar.tahir@nxp.com>
2025-12-17 10:56:59 +02:00
Waqar Tahir
48fa32c76f samples: tfm: Add mcxn947 in TF-M samples yaml
Add mcxn947 non secure target for the tfm_ipc
and tfm_regression samples.

Signed-off-by: Waqar Tahir <waqar.tahir@nxp.com>
2025-12-17 10:56:59 +02:00
Guido Roncarolo
3dec364bd8 boards: disable trng in ns-dts and get it working with zephyr 4.3
25a71f3972 changes the behavior so that :
if "zephyr,entropy" is set in the DT then CONFIG_CSPRNG_AVAILABLE get
       enabled;
This breaks our implementation, disable the trng in ns world for now

Signed-off-by: Guido Roncarolo <guido.roncarolo@nxp.com>
2025-12-17 10:56:59 +02:00
Guido Roncarolo
6cf47cae57 modules: tf-m: add MCNX947 in cmake and kconfig
Added MCNX947 support in trusted-firmware-m
module Cmake and Kconfig. Cmake is cleaned,
removed unused variables.

Signed-off-by: Guido Roncarolo <guido.roncarolo@nxp.com>
2025-12-17 10:56:59 +02:00
Guido Roncarolo
120768833c boards: nxp: mcxn947: add ns board support
Add initial TF-M support for mcxn947 target
- added ns_decofnig and yml files
- added non secure dts for the MCXN974 SOC
- added checks with CPU0 enabelement in SOC
- added ns memory slot and configs

Signed-off-by: Guido Roncarolo <guido.roncarolo@nxp.com>
Signed-off-by: Waqar Tahir <waqar.tahir@nxp.com>
2025-12-17 10:56:59 +02:00
Guido Roncarolo
3f3e833745 soc: mcxn947: disable SystemInit when TFM is ON
Avoid initialization as this is already been taken care from TF-M
secure part

Signed-off-by: Guido Roncarolo <guido.roncarolo@nxp.com>
2025-12-17 10:56:59 +02:00
Sebastian Głąb
798652841a boards: nordic: nrf54h20dk: Add workaround for RISC-V debugging
Add workaround that enables `west debug` and `west attach`
on nrf54h20dk/nrf54h20/cpuppr and cpuflpr.

Remove "-if SW" as this generates warning
WARNING: runners.jlink: "f SW" does not match any known pattern

And breaks JLinkGDBServer command by setting option `-select` to
`usb=f SW`.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-12-17 10:56:35 +02:00
Robert Perkel
7f3567cf74 drivers: sensor: mtch9010 Fixed heartbeat bugs
Fixed the following bugs with the heartbeat monitor
- State did not update on CHAN_ALL
- Adjusted semaphore behavior
- Fixed interrupt setup
- Fixed time calculation bug
- Split heartbeat update into seperate function call

Signed-off-by: Robert Perkel <robert.perkel@microchip.com>
2025-12-17 10:56:19 +02:00
Liang Jiaxiang
aca5f0c021 drivers: sensor: bmi08x: fix temperature reading and scaling
The previous implementation had three issues regarding temperature
reading:
1. The unit scaling was incorrect. The datasheet specifies 0.125 C/LSB,
   but the code multiplied by 125 instead of 125000 for micro-degrees,
   resulting in values off by a factor of 1000.
2. The MSB and LSB registers were read in two separate transactions,
   which is not atomic.
3. The bitwise reconstruction of the 11-bit value was inefficient.

This commit fixes the scaling factor to 125000, implements a burst read
for both temperature registers to ensure atomicity, and optimizes the
bit manipulation logic.

Signed-off-by: Liang Jiaxiang <moonbite233@gmail.com>
2025-12-17 10:54:24 +02:00
Camille BAUD
e24574bb16 MAINTAINERS: bflb: Add M0S Dock to bflb area
Adds the board to area

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-17 10:54:15 +02:00
Camille BAUD
a67eee4bb6 boards: sipeed: Introduce Maix M0S Dock
Introduces BL616-based M0S Dock

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-17 10:54:15 +02:00
Fabin V Martin
082a9b349a tests: drivers: i2c: add i2c dma transfer eeprom test
add test project for i2c transfer with callback using dma

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-17 10:54:05 +02:00
Fabin V Martin
f177edfe7c boards: microchip: sam_e54_xpro: update i2c nodes for dma support
add dma properties in i2c node.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-17 10:54:05 +02:00
Fabin V Martin
b16b2b2bcb drivers: i2c: microchip: add dma support
dma support added for i2c transfer

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-17 10:54:05 +02:00
Fabin V Martin
28bc19beab dts: bindings: i2c: add dma properties in i2c yaml
add properties for dma support in binding yaml for i2c

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-17 10:54:05 +02:00
Lyle Zhu
761fcc8d01 tests: Bluetooth: Classic: GAP_S: Fix case tc_gap_s_2 failure issue
In the case, when the connection is established on the local side, the
test script will require peer device to send ACL disconnection
request. But due to the timing issue, the connected event may be not
notified on the peer device side when the peer device received the ACL
disconnection requirement. The exception will happen. It causes the
case to fail.

Wait for the connected event of the peer device before sending the ACL
disconnection request.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-17 10:53:55 +02:00
Lyle Zhu
e660314ffe tests: Bluetooth: Classic: SDP_S: Reduce time consumption
The case `sdp_discover_with_range` will consume much time to
exhaustively enumerate all supported attribute id ranges. It will
consume much time.

Optimize the set of the supported attribute ID ranges to reduce
the time consumption.
Such as, the discovered attribute ID list is [1, 2, 3, 4, 7, 9, 256].
In the original implementation, the range count is 35511. While in
the optimized range count is 105.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-17 10:53:34 +02:00
Lyle Zhu
68ff83079e tests: Bluetooth: Classic: Fix sm_key_persist_004 failure issue
For the case sm_key_persist_004, the disconnected event may be
printed before the log `Pairings successfully cleared` since there
is no order between log `Pairings successfully cleared` and the
disconnected event. It causes the script discards the disconnected
event in this case and rise the assert issue.

For the case sm_key_persist_004, check the disconnected event in
the captured log. If it is not found, wait the disconnected event
until timeout.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-17 10:53:24 +02:00
Luis Ubieda
217f8e660b sensor: afbr_s50: Do not cut data-stream due to payload status
The payload status is evaluated when decoding, which may indicate sharp
distance transitions (from very long to close) and requiring a few more
cycles to stabilize. We don't want to stop the data-stream because of
these, otherwise the data-stream continuity is compromised.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-12-17 10:53:14 +02:00
Lyle Zhu
a9269f2012 Bluetooth: Classic: OBEX: Fix unchecked return value issue
Check the return value of the function `atomic_cas()`. If the new
value cannot be set for the OBEX server, return the error code
`BT_OBEX_RSP_CODE_INTER_ERROR`. If the new value cannot be set for
the OBEX client, return the error code `-EINVAL`.

Fix #100012
Fix #100018
Fix #100019
Fix #100021
Fix #100022
Fix #100023

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-17 10:53:04 +02:00
Lyle Zhu
6fdc675eae tests: Bluetooth: Classic: Fix sm_init_035 failure issue
For the case sm_init_035, the similar issue also be found. The
message `Enter 16 digits wide PIN code for` may be printed after
the shell prompt. The assert issue also be found in this case.

For the case sm_init_035, check the message `Enter 16 digits wide
PIN code for` in the captured log. If it is not found, wait the
message until timeout.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-17 10:52:53 +02:00
Bjarki Arge Andreasen
8292cc4eb8 drivers: clock_control nrf_lfclk: patch clock option order
The clock options used within the driver are supposed to be ordered
from lowest to highest power consumption, so the lowest/default
option is the most power efficient. The order was reversed to make
the init code of the lfclk a bit simpler, and this was accounted for
in the clock option lookup function. However, the common nrf clock
control request/release feature would request the lowest index, not
the lowest clock option, so the lfclk would default to its highest
power consumption mode.

The clock option init and lookup has been refactored to be sorted
from lowest to highest power consumption, and comments have been
adjusted accordingly.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-17 10:52:43 +02:00
Daniel Leung
9d181c561e serial: uart_bitbang: fix incorrect callback device
When doing the callback, it should pass it the UART device
pointer. So fix that.

Fixes #98229

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-17 10:52:33 +02:00
McAtee Maxwell
4d64e59f2c tests: pwm: update Infineon cyw920829m2evk_02 overlays
- Update overlay files for the pwm_api and pwm_gpio_loopback tests

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-12-17 10:52:22 +02:00
McAtee Maxwell
11472639f7 samples: pwm: update Infineon cyw920829m2evk_02 overlays
- Update overlay files for the blinky_pwm and fade_led samples

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-12-17 10:52:22 +02:00
McAtee Maxwell
a40956ffdf dts: Add peri-div clock definitions for cyw20829 soc series
- Add dts blocks for the peri-div clock instances on cyw20829

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-12-17 10:52:22 +02:00
McAtee Maxwell
3f916f3b96 tests: pwm: add Infineon kit_pse84_eval
- Add overlay files for the pwm_api and pwm_gpio_loopback tests
- Update platform_allow for pwm_gpio_loopback

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-12-17 10:52:22 +02:00
McAtee Maxwell
9f42dd0413 samples: pwm: add Infineon kit_pse84_eval
- Add overlay files for the blinky_pwm and fade_led samples

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-12-17 10:52:22 +02:00
McAtee Maxwell
6ad823ab8d drivers: pwm: add support for Infineon kit_pse84_eval
- Update the driver to support the kit_pse84_eval board
- Update to new peripheral clock allocation scheme

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-12-17 10:52:22 +02:00
Biwen Li
ba10774f91 soc: nxp: imx943: m33: fix build issue
Fix build issue from the below commit:
c520b3da1a
soc: nxp: imx943: m33: add and reuse api to initialize clocks

error: soc_clock_enable defined but not used.
Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-17 10:52:11 +02:00
Bartlomiej Buczek
e02a1b742a Revert "drivers: adc: nrfx: Temporary fix for SAADC power consumption"
New hal_nordic was merged some time ago, fix no longer needed.

This reverts commit fe0b6b3b55.

Signed-off-by: Bartlomiej Buczek <bartlomiej.buczek@nordicsemi.no>
2025-12-16 10:19:51 -06:00
Jaro Van Landschoot
853d33e8e3 soc: atmel: sam: common: add warm reboot to soc_power.c
If a warm reboot is issued (e.g., via mcumgr reset), the sam
controller just hangs because of loop in reboot.c. This can
be devastating if no watchdog is present to reboot the controller.

Signed-off-by: Jaro Van Landschoot <jaro.vanlandschoot@basalte.be>
2025-12-16 10:19:07 -06:00
Cristian Bulacu
c898f775d2 openthread: platform: mdns_socket: Avoid assert in high-traffic networks
This commit implements a rule that will silently discard incoming mDNS
messages if number of OT free message buffers after message conversion
will be under a user-predefined threshold.
mDNS is making use of OT message buffers, if an mDNS TX message can't be
allocated, it will trigger an assert.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-16 10:18:25 -06:00
Cristian Bulacu
f865e9d832 openthread: Kconfig: Add OTBR config for mDNS processing
This commit adds a new configuration flag which is used to compute a
threshold that determines if an incoming mDNS packet will be processed.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-16 10:18:25 -06:00
Martin Gysel
c42c8a4da4 drivers: flash: stm32 ospi: do not invalidate bet at end of loop
This modification prevents the bet pointer from being nulled at the end
of the loop, which would otherwise render the search for a suitable
erase type ineffective. It also optimize the loop as it omits
unnecessary operations.

Without this change, the erase size defaults to one sector. If the chip
defines fewer than JESD216_NUM_ERASE_TYPES (=4) erase types, this
behavior still works, as the resulting command will correspond to a
sector erase operation. However, if the chip defines all erase types,
the resulting command will be the one specified in the erase type. But
since bet is nulled, the erase size will incorrectly default to the
sector size.

Signed-off-by: Martin Gysel <me@bearsh.org>
2025-12-16 10:17:41 -06:00
Martin Gysel
157b0ddc15 drivers: stm32 spi: mark variable as maybe unused
depending on build configuration, spi_context_cs_configure_all() is a
no-opt, so mark the data variable as maybe unused.

Signed-off-by: Martin Gysel <me@bearsh.org>
2025-12-16 10:17:13 -06:00
Martin Gysel
c141b55635 drivers: stm32 spi: do not unlock context unconditionally in pm action
- call spi_stm32_pm_policy_state_lock_xxx functions wenn context is
locked
- do not call spi_stm32_pm_policy_state_lock_put() in internal helper
spi_stm32_complete() (which gets called from various places) but at the
end of a transfer where it belong

Signed-off-by: Martin Gysel <me@bearsh.org>
2025-12-16 10:17:13 -06:00
Hake Huang
64eba11ee7 scripts: west: runners: add option for debug batch mode
when in batch mode, we do not need manually 'go'.
with this, we can use `west debug` in twister run test
enable for jlink and linkserver which is tested

example:

west debug --runner jlink -- --batch

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-12-16 10:16:22 -06:00
Nicolas Moreno
e41faae09a samples: sensor: accel_polling: remove duplicated header
On main.c from sample sensor/accel_polling the header
<zephyr/drivers/sensor.h> is duplicated, as well in
sample sensor/stream_fifo. This is solved on this PR

Signed-off-by: Nicolas Moreno <niko722795@gmail.com>
2025-12-16 10:15:12 -06:00
Roberto Flores
80801d81bb dts: atmel: sam0: fix dac generic clock source
Changes generic clock source for DAC in SAMD5X MCU's.
Generic clock source 0 speed is above the maximum speed
permitted by the DAC.
The generic clock was changed to the same one the ADC uses (0x2).
Compared output of working microchip auto-generated code to the zephyr
implementation to find discrepencaies in register values.

Signed-off-by: Roberto Flores <Roberto.flores@daikincomfort.com>
2025-12-16 10:14:49 -06:00
Jonathan Nilsen
ef587e12f6 modules: hal_nordic: move IronSide SE supporting code to hal_nordic
Move most of the code that is used to interface with IronSide SE on the
nRF54H20/nRF9280 from the soc/nordic directory to the hal_nordic
repository. The interface code is now provided by the new IronSide
support package. Build system code and glue code that makes use of
Zephyr APIs is now located in the modules/hal_nordic directory.

Update the directory path for IronSide SE interface code in
MAINTAINERS.yml to match the move from soc/nordic/ironside to
modules/hal_nordic/ironside.

Also included are some refactoring changes and cleanup to match the new
supporting code.

C code and Kconfigs have been renamed to *ironside_se* / *IRONSIDE_SE*
to match the supporting code changes. Users of these APIs in zephyr
have been updated to match.

Individual configurations for different "IronSide services" have been
removed as the API serialization for all of these is now provided in
a single C file / header file (ironside/se/api.h).

The ironside_boot_report_get() API has been removed. The boot report
structure can be accessed through the IRONSIDE_SE_BOOT_REPORT macro.

Most configs relating to UICR / PERIPHCONF have been moved under the
"IronSide SE" menu to make it clear that these are part of the
IronSide SE interface.

The macros that in uicr.h that were used to add entries to the
PERIPHCONF section have been removed. The supporting code now provides
PERIPHCONF_XYZ() macros that can be used to initialize structures that
go into this section, and the zephyr part now only contains a macro
UICR_PERIPHCONF_ENTRY() that is used to place an arbitrary structure
into the section. The gen_periphconf_entries.py script used to generate
PERIPHCONF entries based on devicetree has been updated to use the new
macro system.

IronSide SE integration code/configs is now guarded by HAS_IRONSIDE_SE.

Note that the UICR build system integration that relies on Sysbuild
remains under the soc/nordic directory for now, but will be moved to
the modules/hal_nordic directory once it is clear how the integration
will look there.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-12-16 10:13:56 -06:00
Jonathan Nilsen
2c934f1dd8 manifest: update hal_nordic revision
Update hal_nordic revision to add IronSide support package.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-12-16 10:13:56 -06:00
Mark Wang
ac395b2d85 bluetooth: avdtp: Check buf tailroom and len before using it
check buf->len before pulling data from buf, check buf tailroom before
adding data to buf.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-12-16 10:12:12 -06:00
Mark Wang
402edcf81c bluetooth: avdtp: Fix coverity by adding assertion for MTU size validation
Add assertion to ensure MTU is at least the size of the start header
before calculating the remaining length for fragmentation. This prevents
potential underflow when subtracting the header size from MTU.
Fix coverity #551657

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-12-16 10:12:12 -06:00
Chen Xingyu
f809b159e6 boards: waveshare: Add ESP32-S3-GEEK
Add support for the Waveshare ESP32-S3-GEEK USB dongle. It features an
ESP32-S3R2 with 2 MB PSRAM, a 16 MB on-board Flash, a 1.14" LCD, and a
microSD slot.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-12-16 10:11:43 -06:00
Biwen Li
c520b3da1a soc: nxp: imx943: m33: add and reuse api to initialize clocks
Add and reuse apis to initialize clocks for netc and audio

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-16 10:09:55 -06:00
Erwan Gouriou
7de3e6acdd drivers: flash: flash_stm32_xspi: Allow flash driver init in ram load
Current driver protections prevent to initialize driver when run as from
an external application running from ext flash. Aim is to avoid performing
full driver initialization of the NOR flash controller the application
is read from.
But this problem is actually only valid when application is running in XIP
mode (read in memory mapped mode at run time).

In ram load mode, since there is no direct activity from the application
on the NOR device, nothing prevents the ext flash driver to be used fully.
Hence, we should allow the controller initialization to happen, with some
adjustments. Mostly, what we need is to:
- skip the hal init
- abort memory mapping afterwards to let the jedec reading happen.

Remove conditions around `stm32_xspi_is_memorymap()` and
`stm32_xspi_abort()` which can finally be useful in various cases.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-12-16 10:08:43 -06:00
Erwan Gouriou
1877410b2c boards: st: stm32n6570_dk: Instantiate ext flash controller
Instantiate a `soc-nv-flash` compatible node to allow using XSPI flash
driver as a real flash controller on NOR device.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-12-16 10:08:43 -06:00
Daniel Kampert
495bf16234 drivers: input: cst816s: Refactor errors and warnings
Add error code to error and warning log messages to
make debugging easier.

Signed-off-by: Daniel Kampert <DanielKampert@kampis-elektroecke.de>
2025-12-16 16:08:10 +00:00
Daniel Kampert
6a432cfb5e drivers: input: cst816s: Add motion interrupt
Add support for gesture / motion based interrupts
when INPUT_CST816S_EV_DEVICE is enabled.

Signed-off-by: Daniel Kampert <DanielKampert@kampis-elektroecke.de>
2025-12-16 16:08:10 +00:00
Daniel Kampert
11ff520ec7 drivers: input: cst816s: Add power management
Add power management support

Closes: #100300

Signed-off-by: Daniel Kampert <DanielKampert@kampis-elektroecke.de>
2025-12-16 16:08:10 +00:00
Fin Maaß
713ec75a54 litex: i2c: improve litei2c driver
improve litei2c driver

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-16 10:07:32 -06:00
Jeremy Bettis
f14ccdf462 drivers: Add const to rts5912_sha256_process() input
rts5913_sha256_update was changed in #94218, but this function passes
it's input into rts5912_sha256_process also.

Signed-off-by: Jeremy Bettis <jbettis@google.com>
2025-12-16 10:06:45 -06:00
YongWoo Kang
7193d72c9a boards: arm: doc: update wiki url
Update official wiki url.

Signed-off-by: YongWoo Kang <kyw0708@kumoh.ac.kr>
2025-12-16 10:05:54 -06:00
Chun-Chieh Li
3b635196ee drivers: usb: udc: numaker: support USBD/HSUSBD simultaneously
Re-organize to add support for USBD/HSUSBD which can be enabled
at the same time

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-16 10:05:19 -06:00
Chun-Chieh Li
d288a29979 drivers: usb: udc: numaker: support NuMaker M55M1X HSUSBD
Add support for Nuvoton NuMaker M55M1X high-speed USB 2.0 device
controller. Compared to M46X HSUSBD, M55M1X HSUSBD introduces some
differences:
- DMA must handle cache coherency because net_buf can be cache-able
- USB suspend interrupt becomes continuous. Aavoid being locked by
  this interrupt and forward this message just once
- New register bit HSUSBD_OPER_HISHSEN_Msk, which controls to enable
  USB handshake

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-16 10:05:19 -06:00
Chun-Chieh Li
c502ef5b51 drivers: usb: udc: numaker: support HSUSBD DMA
Add DMA support for Nuvoton NuMaker M46X high-speed USB 2.0 device
controller.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-16 10:05:19 -06:00
Chun-Chieh Li
e64e113700 drivers: usb: udc: numaker: support NuMaker M46X HSUSBD
Add support for Nuvoton NuMaker M46X high-speed USB 2.0 device
controller.

The code is re-organized to implement both usbd and hsusbd in single
source file. Multiple instances of either usbd or hsusbd are supported,
but usbd and hsusbd cannot support simultaneously. This limitation is
for easy implementation with just single source file, assuming that real
application just needs one usb device type.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-16 10:05:19 -06:00
Chun-Chieh Li
80df5b5ece drivers: usb: udc: numaker: recover from incomplete control transfer
Previous control transfer can be incomplete and then causes not only
net_buf leak but also logic error. This recycles dangling net_buf for
new clean control transfer.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-16 10:05:19 -06:00
Chun-Chieh Li
a9338eb827 drivers: usb: udc: numaker: report instead of assert in control transfer
On Control Out failure, this changes to report error message instead of
assert failure because USB bus error is allowed to happen.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-16 10:05:19 -06:00
Chun-Chieh Li
1ae35d3acf drivers: usb: udc: numaker: usbd: refine on ATTR undefined bits
Refine code on ATTR undefined bits:
- Add USBD_ATTR_PWRDN_Msk if it is not defined
- Following BSP USBD driver, add note on BIT(6) for hidden

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-16 10:05:19 -06:00
Chun-Chieh Li
3191254b6c drivers: usb: udc: numaker: usbd: refine MXPLD read
For USBD, this refines MXPLD read to avoid unwanted or reserved bits.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-16 10:05:19 -06:00
Chun-Chieh Li
511e10ca7d drivers: usb: udc: numaker: usbd: enable usb wake-up early
Same as VBUS detect, this enables USB wake-up early so that device
can also be woken up by VBUS.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-16 10:05:19 -06:00
Fin Maaß
c8c6379b86 ethernet: stm32: remove phy init and config from HAL_ETH_Init
the phy is already configured by the phy driver in zephyr
and we don't want to overwrite it in the HAL_ETH_Init
function in the stm32 HAL.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-16 10:04:23 -06:00
Bill Waters
e6fd157a93 boards: infineon: cy8cproto_041tp: board.cmake
The openocd --config paramter is not needed.
And it causes an error when used on a ci runner.
The path created by
scripts/west_commands/runners/openocd.py is wrong.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-12-16 10:13:24 +01:00
Krisztian Szilvasi
91681f2221 boards: stm32: b_u585i_iot2a: update flash controller's node
- Refactor the flash controller's node
- Introduce flash device's node under the flash controller's
- Introduce `ranges` property with mem-mapped address

Signed-off-by: Krisztian Szilvasi <krisztian@atym.io>
2025-12-16 10:13:10 +01:00
Martin Hoff
be4723c213 soc: silabs: siwx91x: fix pm when bt is enabled
This patch is a workaround to a know issue when Bluetooth and pm
is activated.
We actually need to set the tx power to the Bluetooth controller
(network coprocessor) before sending power saving request to the
coprocessor.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-16 10:13:00 +01:00
Martin Hoff
e866da994f soc: silabs: siwx91x: remove power profile property
Power profile property doesn't need to be defined in device three.
It is a configuration value that is defined if we want pm with
Bluetooth and/or Wifi .

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-16 10:13:00 +01:00
Zhaoxiang Jin
cfa415e605 tests: dac: Enable dac_api test for frdm_mcxc444
1. Enable dac_api test for frdm_mcxc444.
2. Enable sample/dac for frdm_mcxc444

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-16 10:12:52 +01:00
Zhaoxiang Jin
3d8a570032 boards: frdm_mcxc444: Enable DAC for frdm_mcxc444
Enable DAC for frdm_mcxc444

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-16 10:12:52 +01:00
Mark Rages
37fc90cd1d drivers: sensor: adxl367: fix temperature scaling
The fractional part of the value was getting set incorrectly in
adxl_temp_convert().

Signed-off-by: Mark Rages <markrages@gmail.com>
2025-12-16 10:11:19 +01:00
Gaétan Froissard
9712a58129 drivers: entropy: stm32: Keep RNG clock running during PKA operation
If PKA is running, it needs the RNG clock to properly works.
Don't turn it off when RNG computation is over.

Signed-off-by: Gaétan Froissard <gaetan.froissard@marshmallow.kids>
2025-12-16 10:11:08 +01:00
Biwen Li
0830f9fd38 boards: nxp: imx943_evk: m33: use common dtsi
Use common dtsi imx943_evk_mimx94398_cm.dtsi

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-16 10:10:44 +01:00
Lin Yu-Cheng
dd5f8c483b drivers: spi: spi_rts5912_spi: Add clock-frequency setting from dtsi
The clock-frequency value in dtsi can be used to change
the bus frequency for rts5912 driver and
it support in the range between 15000 to 50000000.

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-12-16 10:10:35 +01:00
Flavio Ceolin
2a8343f0f7 doc: security: Disclose CVE-2025-12035
Disclose information about published CVE.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-12-16 10:10:22 +01:00
Flavio Ceolin
d06d49eb7c doc: security: Disclose CVE-2025-9558
Disclose information about published CVE.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-12-16 10:10:22 +01:00
Flavio Ceolin
5bdff095f5 doc: security: Disclose CVE-2025-9557
Disclose information about published CVE.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-12-16 10:10:22 +01:00
Make Shi
159b4a6d97 Bluetooth: AVRCP: Fix typo in callback name and opid/state
Correct typo and fix opid/state assignment.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-12-16 10:09:49 +01:00
Aiden Hu
f3e7cde40b drivers: uhc: set right value for pipe by xfer's mps
maxPacketSize and numberPerUframe of pipe should
be set considering additional transactions.

Signed-off-by: Aiden Hu <weiwei.hu@nxp.com>
2025-12-16 10:08:55 +01:00
Aiden Hu
53e3cf281f drivers: uhc: add mcux_eps_interval to save ep interval
mcux_eps_interval is added as the new member of
uhc_mcux_data. It is used to save endpoint's
original interval value and can be compared
with xfer->interval.

Signed-off-by: Aiden Hu <weiwei.hu@nxp.com>
2025-12-16 10:08:55 +01:00
Aiden Hu
b3a6b4d405 drivers: uhc: use correct endpoint type and interval
In the USB transfer allocation, set endpoint type and interval
from the appropriate endpoint descriptor.

Signed-off-by: Aiden Hu <weiwei.hu@nxp.com>
2025-12-16 10:08:55 +01:00
Yongxu Wang
0910ebf469 dts: arm: nxp: add scmi system node for i.MX95 M7
Added scmi system node for NXP i.MX95 M7

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-12-16 10:08:45 +01:00
Yongxu Wang
2223233e98 dts: arm: nxp: add scmi system node for i.MX943
Added scmi system node for NXP i.MX943 Mcore

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-12-16 10:08:45 +01:00
Emil Gydesen
df86199532 tests: Bluetooth: Tester: BAP broadcast BSIM test
Adds BSIM testing of the BAP broadcast features of the BT Tester.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-16 10:06:33 +01:00
Emil Gydesen
4f0f02df90 tests: Bluetooth: Tester: BAP unicast BSIM test
Adds BSIM testing of the BAP unicast features of the BT Tester.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-16 10:06:33 +01:00
Jukka Rissanen
d5982f0f89 net: dns: Make sure IPv6 address can be stored to a buf
The CONFIG_DNS_RESOLVER_MAX_NAME_LEN should be large enough so that
IPv6 address can be stored into it. So increase the max name length
to 46 if IPv6 is enabled.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-15 17:11:29 +00:00
Mateusz Junkier
754f972b4d tests: kconfig: fix path for different repo names
Test expected path "zephyr/boards/Kconfig" but failed when the
repository had a different name.
Changed to "boards/Kconfig" to work with any repository name,
as code below.

Signed-off-by: Mateusz Junkier <mateusz.junkier@intel.com>
2025-12-15 17:11:18 +00:00
Mathieu Choplain
98e98be846 drivers: display: stm32_ltdc: remove unnecessary depends on in Kconfig
`choice STM32_LTDC_PIXEL_FORMAT` is already enclosed in an `if STM32_LTDC`
block - there is no need to add a `depends on` on this option.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-15 17:10:41 +00:00
Bjarki Arge Andreasen
5f1cf576a7 tests: arch: arm: vector_table: disable PM for nrf54h20 cpurad
The nrf54h20 cpurad has CONFIG_PM enabled by default. This causes
some of the IRQs reserved for the test to be triggered as they
are used for PM as well. Disable PM for the test to make sure
nothing triggers the IRQs outside of the test itself.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-15 17:10:32 +00:00
Guillaume Gautier
cec2702012 drivers: adc: stm32: fix init issue when 2 adc are enabled
If several ADCs are used and share a common clock property (for example
ADC1/2 prescaler value on STM32U5), none of them should be enabled when
the clock is set.
To that end, make sure to disable ADC at the end of the initialization,
it will be enabled later when necessary anyway.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-12-15 17:10:20 +00:00
Julien Racki
f8ffcbde17 drivers: i2c: stm32: Fix hang on read log position
Ensure that data is transmitted before logging
as it could cause lockups in some setups.

Also update i2c_stm32_v2_rtio.c to match
this behavior to always send data in order to avoid
the I2C to lockup.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-12-15 17:10:11 +00:00
Tim Pambor
9399183944 drivers: rtc: rv3028: add calibration support
Add support for RTC calibration API by implementing set_calibration
and get_calibration functions. RV3028 RTC supports calibration to
adjust for errors from +243.2 ppm to -244.1 ppm in steps of 0.9537 ppm.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-15 17:10:01 +00:00
Tim Pambor
92365ed4b7 drivers: clock_control: stm32{h5,u5}: fix PLL rate with fractional PLL
When calculating the PLL output rate, take into account the fractional part
of the PLL multiplier N. This ensures that the calculated output frequency
is correct.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-15 17:09:46 +00:00
Trond F. Christiansen
049d368524 sensor: bmm350: Fix I2C register write to use single transaction
The bmm350_prep_reg_write_rtio_async() function was incorrectly using two
separate SQEs for register writes, creating two distinct I2C transactions:
Before: [START][ADDR+W][REG][RESTART] + [START][ADDR+W][DATA][STOP]

Change to use a single SQE for the entire write:
After: [START][ADDR+W][REG][DATA][STOP]

Signed-off-by: Trond F. Christiansen <trond.christiansen@nordicsemi.no>
2025-12-15 17:09:32 +00:00
Xavier Razavet
2264f9901c soc: nxp: MCXW7x configuration updated for CSL
The default MCXW7x platform's clock uncertainty in microseconds for
Coordinated Sampled Listening (CSL) timing synchronization in
OpenThread shall be set to 20.

Signed-off-by: Xavier Razavet <xavier.razavet@nxp.com>
2025-12-15 17:09:20 +00:00
Xavier Razavet
aef5728e57 drivers: ieee802154: mcxw ieee802154 driver updated
To support the SSED attachment, the IEEE802154_MCXW_CSL_ACCURACY
default value shall be 50.

Signed-off-by: Xavier Razavet <xavier.razavet@nxp.com>
2025-12-15 17:09:20 +00:00
Xavier Razavet
f6b3101db8 dts: arm: nxp: MCXW72 corrected on the lptmr clock frequency
The lptmr clock frequency was wrong and equal to 32000.
The clock frequency is 32.768KHz (32768).

Signed-off-by: Xavier Razavet <xavier.razavet@nxp.com>
2025-12-15 17:09:20 +00:00
Xavier Razavet
536c937162 samples: openthread: shell: .conf files updated
frdm_mcxw71.conf: LOGs removed for RAM size optimization.
prj-ot-host.conf: LOGs removed because already in prj.conf.

Signed-off-by: Xavier Razavet <xavier.razavet@nxp.com>
2025-12-15 17:09:20 +00:00
Xavier Razavet
91079cf825 drivers: ieee802154: SSED attachment management
Few functions have been corrected to the SSED attachment for the
MCXW72 as leader :
- mcxw_tx():
  tx_frame.tx_delay corrected.
  Adjusts the scheduled transmission start time to account for the SHR
  duration (160us) as requested by the OpenThread radio API.

- mcxw_rx_thread():
  Stores the frame counter and key ID from a
  security-enabled enhanced ACK into the received packet's metadata
  for cryptographic verification.

- mcxw_tx_started() added:
  Notifies the registered event handler that a frame transmission has
  started, passing the frame buffer as context.

- pd_mac_sap_handler(): timestamp corrected

- mcxw_configure(): IEEE802154_CONFIG_EVENT_HANDLER case updated

Signed-off-by: Xavier Razavet <xavier.razavet@nxp.com>
2025-12-15 17:09:20 +00:00
Fabrice DJIATSA
f09282ecde release: migration-guide: 4.4: add entry about mcuboot mode
STM32 platforms now use the default MCUboot operating mode
swap using offset instead of swap using move.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-15 17:08:14 +00:00
Fabrice DJIATSA
2f48c25e98 tests: drivers: flash: stm32: handle conflict for storage partition
Since the addition of a new storage partition definition in
the nucleo_f746zg dts, there is no need to have this configuration
in the overlay file.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-15 17:08:14 +00:00
Fabrice DJIATSA
bdc79574c5 tests: boot: with_mcumgr: update testcase.yaml file
Add STM32 supported boards for the test.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-15 17:08:14 +00:00
Fabrice DJIATSA
81c93141dd tests: boot: test_mcuboot: update testcase.yaml file
Add STM32 supported boards for the test.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-15 17:08:14 +00:00
Fabrice DJIATSA
602baf6829 samples: sysbuild: with_mcuboot: update sample.yaml file
Add STM32 supported boards for the test.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-15 17:08:14 +00:00
Fabrice DJIATSA
d55fc5b857 boards: st: add support for boards compatible with swap using scratch
SomeSTM32 series, like F2, F4, and F7, do not have homogeneous flash
sector sizes; they include very large sectors such as 128 KB
and even 256 KB.

The scratch partition needs to be large enough to hold the largest
sector size ( 256k for F7 and 128k for F2).

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-15 17:08:14 +00:00
Fabrice DJIATSA
b348fd4d7a boards: st: add support for boards compatible with swap using offset
- Swap using offset requires that slot1 has one extra sector size
compared to slot0

- Additionally, add a storage partition with at least 3 sectors for
NVS if needed.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-15 17:08:14 +00:00
Fabrice DJIATSA
b152f71aaa modules: kconfig: mcuboot: make SWAP_USING_OFFSET the default for STM32
Update MCUboot configuration so that STM32 no longer defaults to
SWAP_USING_MOVE. Instead, SWAP_USING_OFFSET becomes the default mode
for STM32 boards.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-15 17:08:14 +00:00
Chaitanya Tata
5018d2456e modules: hostap: Workaround for BTM failure
Fixes WFA QT BTM test case.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-12-15 17:07:37 +00:00
Farsin Nasar V A
dd53e383e0 tests: drivers: pwm: Add SAM E54 test support for TC
Added overlay files for sam_e54_xpro TC nodes
Added sam_e54_xpro platform allow in testcase.yaml.
Added an extra scenario to testcase.yaml

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-12-15 17:07:24 +00:00
Muhammed Asif
b17128e517 boards: microchip: sam_e54_xpro: Add tc node with pwm support
- Adds the tc node and its pinmuxing to the board files

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-12-15 17:07:24 +00:00
Muhammed Asif
20d7d23d53 drivers: pwm: microchip: add support for pwm tc g1
Add pwm driver using tc g1 peripheral.
Adds the support for generating pwm output.
Supports 8-bit, 16-bit and 32-bit mode of tc peripheral

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-12-15 17:07:24 +00:00
Muhammed Asif
b926d85535 dts: bindings: microchip: add tc binding for pwm peripheral
Adds binding YAML for pwm using tc peripheral

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-12-15 17:07:24 +00:00
Muhammed Asif
79d841a600 dts: arm: microchip: add dts nodes of tc peripheral
Adds binding yaml for tc peripheral
Adds the dts nodes for tc peripheral for same5xd5x series and its
default configurations.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-12-15 17:07:24 +00:00
Johan Alfvén
5df9d8d176 MAINTAINERS: add hal_ethos_u collaborator
Add johan-alfven-arm as collaborator for hal_ethos_u driver

Signed-off-by: Johan Alfvén <johan.alfven@arm.com>
2025-12-15 17:07:01 +00:00
Jordan Yates
6b8ad0b48b samples: lora: send: display packet airtime
Display the expected airtime of the transmitted packet at the start of
the sample.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-15 17:06:49 +00:00
Jordan Yates
3514ff9fe2 samples: lora: zero initialise config structure
Zero initialise the configuration struct to ensure non-set fields are
zero.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-15 17:06:49 +00:00
Jordan Yates
08f74a2638 lora: add lora_airtime
Add a simple function that exposes the airtime of a packet of a given
length.

Use the new internal implementations of the airtime function when
calculating TX durations inside the send functions to reduce code
duplication on a complex function.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-15 17:06:49 +00:00
Jordan Yates
fab5f57455 lora: optional disable CRC
Add the option to disable the builtin 16 bit CRC on the LoRa payload.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-15 17:06:49 +00:00
zjian zhang
e369c524c3 MAINTAINERS: Add hal_realtek as a new HAL module
This commit adds maintainers for hal_realtek repository

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-15 17:06:38 +00:00
zjian zhang
1d36710436 boards: add rtl872xda_evb board
add initial version of rtl872xda_evb board

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-15 17:06:38 +00:00
zjian zhang
e788c98af6 drivers: gpio: add amebadplus gpio driver
GPIO driver for amebadplus

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-15 17:06:38 +00:00
zjian zhang
53bba6df01 drivers: serial: add amebadplus loguart driver
loguart driver for amebadplus

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-15 17:06:38 +00:00
zjian zhang
d21b2aa15d drivers: pinctrl: add amebadplus pin controller driver
add amebadplus pin controller driver

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-15 17:06:38 +00:00
zjian zhang
e6d690a983 soc: add realtek amebadplus SOC integration
Add initial version of Amebadplus Soc integration

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-15 17:06:38 +00:00
zjian zhang
56d6012c96 dts: arm: introduce amebadplus SOC Devicetree
add initial version of devicetree for amebadplus SOC.
amebadplus devicetree file is main platform dtsi file, which should
be included from board dts (e.g rtl872xda_evb.dts)

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-15 17:06:38 +00:00
zjian zhang
8ee8509533 west.yml: Add Realtek HAL as a new HAL module
Realtek HAL (Hardware Abstraction Layer) provides
a low level peripheral configuration function.

Signed-off-by: zjian zhang <zjian_zhang@realsil.com.cn>
2025-12-15 17:06:38 +00:00
Muhammad Waleed Badar
44eaeb0119 samples: ocpp: add DNS lookup before SNTP request
Added dns_query() function to perform DNS lookup before attempting
SNTP synchronization. This ensures the SNTP server hostname is
properly resolved to an IP address before making the time request.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2025-12-15 07:31:20 -05:00
Lucien Zhao
fefb283730 boards: nxp: frdm_mcxe247: support cmp feature
- Enable CMP0_IN0 as input channel
- Enable gpio_loopback case

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-15 07:31:06 -05:00
Lucien Zhao
d90ca00c6a boards: nxp: frdm_mcxe247: add adc feature
- enable adc0 channel 0/1
- enable samples cases: adc_dt/adc_squence
         test case: adc_api

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-15 07:31:06 -05:00
CHEN Xing
297ab7ac15 samples: drivers: counter: alarm: add support for pit64b1
Add support for pit64b1 counter device.

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-12-15 07:30:40 -05:00
CHEN Xing
fd0f0f3c60 samples: drivers: counter: alarm: add definition for alarm flag
Counter devices can use this definition to specify alarm flags.

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-12-15 07:30:40 -05:00
CHEN Xing
b7268f9c3b boards: microchip: sam: add and enable pit64b1
Add and enable pit64b1 counter device.

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-12-15 07:30:40 -05:00
CHEN Xing
773cf7a141 soc: microchip: sam: update mmu for sama7g5 pit64b
Update mmu region for mchp sam pit64b
Add gclk configuration for mchp sam pit64b

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-12-15 07:30:40 -05:00
CHEN Xing
14b2a1dfa2 drivers: counter: add support for sama7g54 PIT64B
Add driver for sama7g54 PIT64B
Use PIT64B as a zephyr counter device

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-12-15 07:30:40 -05:00
CHEN Xing
8cad3fd382 dts: arm: microchip: sam: add pit64b device to sama7g5
Add pit64b1 ~ pit64b5 counter devices to sama7g5

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-12-15 07:30:40 -05:00
TOKITA Hiroshi
c7cac1373f tests: drivers: display: read_write: Fix tile eendering test
The buffer size calculation was not rounded up to what it needed.
We fixed it.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-12-15 07:30:31 -05:00
TOKITA Hiroshi
11d3fc4143 drivers: display: display_sdl: Reimplementing tile rendering
The current implementation has a bug in the calculation of
tile offsets, causing them to be calculated incorrectly.
This is particularly evident when there are fractional rows or columns.
Also, there was an assertion that assumed vtiled.

The logic has become too complicated,
so we'll reimplement to simplify this.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-12-15 07:30:31 -05:00
Josia Strack
287ca5b9eb drivers: gpio: pcf857x: ensure input pins default high for open-drain
Ensure that pins configured as inputs are driven high in the port
output register, consistent with open-drain operation. This prevents
inputs from being driven low unintentionally and aligns behavior
with hardware expectations.

Signed-off-by: Josia Strack <j.strack98@gmail.com>
2025-12-15 07:30:23 -05:00
William Tang
4f152eeb37 drivers: can: mcux: flexcan: fix prop_seg for enhanced bit timing
Move the no propagation segment configuration and prop_seg must be 0
logic from the general timing configuration to only apply within the
CAN FD specific sections.

This ensures that for classic CAN mode or platfrom without enhanced
bit timing, prop_seg is always decremented by 1.

The previous implementation incorrectly applied the enhanced bit timing
logic to classic CAN mode, which could cause timing misconfiguration
on devices with enhanced bit timing register support when operating in
classic CAN mode.

Fixes #99746

Signed-off-by: William Tang <william.tang@nxp.com>
2025-12-15 07:30:06 -05:00
Jason Yu
184e031163 drivers: timer: ostimer: Fix run fail when no deep_sleep_counter
Only access deep_sleep_counter when it is available.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-15 07:29:59 -05:00
Jason Yu
c9a1e0fd91 drivers: timer: ostimer: Change to use reset API
Use reset API to reset OSTIMER for better portability.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-15 07:29:59 -05:00
Jason Yu
4e760db893 dts: bindings: os-timer: Add resets in device tree binding
Add resets in OSTIMER device tree binding

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-15 07:29:59 -05:00
Jason Yu
2bff5bdef0 dts: nxp: resets: include the reset header
Include the header so that resets can be added in
each driver node, for such platforms: mcxaxxx6, mcxa344.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-15 07:29:59 -05:00
Zhaoxiang Jin
2e54a3915b tests: counter_basic_api: harden alarm capability probing
- Add a self-contained alarm_capable() probe that starts the device, sets
  and cancels a 1-tick alarm, and stops the counter again. This treats
  -ENOTSUP as “not capable” and avoids leaving pending alarms.
- Switch single/multiple alarm capability checks to reuse alarm_capable(),
  preventing unsupported drivers from running alarm cases and reducing
  false failures.
- Ensure capability probing no longer leaves the driver running or with
  active alarms, preventing teardown/set_top_value failures in later tests.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-15 07:29:41 -05:00
Valerio Setti
d76477f9eb drivers: crypto: mbedtls_shim: fix crash in AES-ECB for RISCV 64 bits
Using "pkt->out_len" as the output length of "psa_cipher_[en|de]crypt"
caused a crash in RISCV 64 bits platforms due to misaligned address
access.
The solution is to add a temporary value on the stack to store this lenght
and only after the [en|de]cryption copy it to "pkt->out_len".

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-15 07:29:29 -05:00
Valerio Setti
75b48db718 samples: drivers: crypto: fix regex matching for Mbed TLS shim
Update regex matching for the Mbed TLS shim driver scenario in order to
match all the supported cases and ensure that they all passed.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-15 07:29:29 -05:00
Valerio Setti
ea9c1af07d samples: drivers: crypto: fix heap memory size for Mbed TLS shim
Increase heap memory size when Mbed TLS shim driver is used otherwise
all crypto tests will fail on some platforms.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-15 07:29:29 -05:00
Fabio Baltieri
318e43503f drivers: ksz8081: fix reset pin polarity
The reset pin, like most reset pins, is active low. Fix the driver to
treat it as active low and simplify the pin control logic while at it.
Fix all current boards using the wrong pin definition and add a note for
out of tree users.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-12-15 07:29:21 -05:00
Fabrice DJIATSA
683ea0eaf0 tests: drivers: spi: spi_loopback: add support for nucleo_g071rb
add nucleo_g071rb overlay and conf files to configure board
to execute spi_loopback to set up the board for executing the
spi_loopback test on CI.
With this addition, we will now be able to detect SPI and RTIO
regressions on this board.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-15 07:29:11 -05:00
Zhaoxiang Jin
93ec5c8c1d test: comparator: Enable gpio_loopback for NXP ACOMP driver
Enable gpio_loopback test for NXP ACOMP driver.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-15 07:29:01 -05:00
Zhaoxiang Jin
315e4efa2d test: comparator/gpio_loopback: handle unsupported BOTH trigger mode
If the comparator driver does not support BOTH edge trigger mode,
skip the test instead of failing it.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-15 07:29:01 -05:00
Zhaoxiang Jin
864272d892 boards: nxp/frdm_rw612: Enable NXP ACOMP for frdm_rw612
Enable NXP ACOMP for frdm_rw612

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-15 07:29:01 -05:00
Zhaoxiang Jin
bd65e115fa drivers: comparator: add NXP ACOMP driver support
Add NXP ACOMP comparator driver support.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-15 07:29:01 -05:00
Zhaoxiang Jin
c65ffc7737 soc: nxp: rw: Power on GAU if acomp is enabled
Power on GAU if acomp is enabled.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-15 07:29:01 -05:00
Farsin Nasar V A
b682749a62 tests: drivers: rtc: Add support for the pic32cx_sg41 and sg61 board
Added pic32cx_sg41_cult.conf file and pic32cx_sg61_cult.conf file

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-12-15 07:28:50 -05:00
Farsin Nasar V A
12192e9d34 boards: microchip: pic32cx_sg61_cult: Add RTC to supported list
Add RTC node in pic32cx_sg61_cult.dts
Update pic32cx_sg61_cult.yaml to reflect RTC G1 support on the board.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-12-15 07:28:50 -05:00
Farsin Nasar V A
58a9c9335c boards: microchip: pic32cx_sg41_cult: Add RTC to supported list
Add RTC node in pic32cx_sg41_cult.dts
Update pic32cx_sg41_cult.yaml to reflect RTC G1 support on the board.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-12-15 07:28:50 -05:00
Farsin Nasar V A
1e510faed4 dts: arm: microchip: add RTC node for G1 IP
Add the device tree node for microchip RTC G1 IP.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-12-15 07:28:50 -05:00
Muzaffar Ahmed
dbe12ad8de drivers: wifi: siwx91x: Fix region persistence across reboots
Use the last configured region in the boot config for the next boot,
as opposed to a default region.

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-12-15 07:28:17 -05:00
Martin Lampacher
a0b8684e46 boards: doc: remove tfm note for stm32u0 boards
The STM32U0 series MCUs don't support TF-M and therefore the
note regarding the `build/tfm` directory needs to be removed.

Signed-off-by: Martin Lampacher <martin.lampacher@gmail.com>
2025-12-15 07:28:07 -05:00
Michael Zimmermann
4759e39122 net: mqtt_sn: Disable support for GWINFO messages
The MQTT-SN v1.2 [0] specification specified the GwAddr as follows:
The GwAdd field has a variable length and contains the address of a GW. Its
depends on the network over which MQTT-SN operates and is indicated in the
first octet of this field. For example, in a ZigBee network the network
address is 2-octet long.

It specifies neither the possible values for the first octet, nor the
format of the network-specific address that follows. Thus, the
specification is incomplete and this functionality unusable.

I also wasn't able to find any implementation which implements a gwinfo
message where the address length is not zero. This includes
https://github.com/eclipse-paho/paho.mqtt-sn.embedded-c .

The current implementation in Zephyr simply copies a `struct sockaddr`
into GwAddr. This is a bad idea for many reasons, the most important one
being that the format is not even specified by POSIX [1]. They only say,
which defines must exist, not what their values are. And in fact, these
even differ between Zephyr and Linux.

Thus, I think it's best to remove the implementation to prevent people from
using this, which may even lead to memory safety issues, depending on the
length of CONFIG_MQTT_SN_LIB_MAX_ADDR_SIZE. If we were to receive an
updated specification, all we'd have to do is to convert between `struct
sockaddr` and mqtt-sn addresses both ways.

[0] https://groups.oasis-open.org/higherlogic/ws/public/download/66091/MQTT-SN_spec_v1.2.pdf
[1] https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/sys_socket.h.html

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-12-15 07:27:57 -05:00
Michael Zimmermann
53012f9cc2 tests: net: mqtt_sn: client: Test gwinfo response from a gateway itself.
When the response comes from a gateway, the address length is 0. I renamed
the test which tests a gwinfo from another client to make this more clear.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-12-15 07:27:57 -05:00
Michael Zimmermann
2d8cb5dad9 tests: net: mqtt_sn: client: fix running just search_gw
Since the code can't handle timestamp 0, we have to sleep during setup.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-12-15 07:27:57 -05:00
Holt Sun
7214e39540 boards: nxp: frdm_mcxe247: enable CRC
Enable the CRC peripheral for MCXE24x and turn it on in the
FRDM-MCXE247 board DTS. Add a CRC sample board config to run
on FRDM-MCXE247 with default.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-15 07:27:48 -05:00
Holt Sun
45e9fe3eb2 drivers: crc: nxp: add CRC driver
Support CRC16 and CRC32 variants; return -ENOTSUP for unsupported types.
Use kCrcBits16/kCrcBits32 and complementChecksum for IEEE CRC-32.
Stream data via CRC_WriteData() and fetch results via
CRC_Get16bitResult()/CRC_Get32bitResult().
Provide simple thread-safety with a semaphore.

Work around the name clash between Zephyr's typedef crc_result_t and the
MCUX enum name by temporarily redefining crc_result_t around fsl_crc.h
include in this TU.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-15 07:27:48 -05:00
Holt Sun
6e6cc2270d dts: bindings: crc: add NXP CRC binding
Add devicetree binding for the NXP CRC controller
(compatible "nxp,crc") with required reg property.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-15 07:27:48 -05:00
Holt Sun
a838ad5ece modules: hal_nxp: mcux: enable CRC driver component
Enable mcux crc driver for zephyr crc driver.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-15 07:27:48 -05:00
Holt Sun
dd73fce1ce tests: drivers: crc: add conditional test compilation
Make CRC tests conditional based on driver capabilities to support
drivers that implement only a subset of CRC protocols.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-15 07:27:48 -05:00
Holt Sun
b44fe22e98 samples: drivers: crc: select protocol by capability
Choose CRC protocol in the sample at build time using
CONFIG_CRC_DRIVER_HAS_* guards (CRC8, CRC16-CCITT, CRC32-IEEE, CRC32-C).
Allow optional verification via EXPECTED_* macros; otherwise log result.
Update README to describe selection and add build instructions for
frdm_mcxe247 in addition to ek_ra8m1.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-15 07:27:48 -05:00
Håvard Reierstad
1540814488 Bluetooth: Host: Add random number clarification
Updates the `bt_le_oob_set_legacy_tk` API docs to encourage the temp key
to be generated randomly for each pairing process.

Updates the `bt_le_oob_get_local` and `bt_le_ext_adv_oob_get_local` to
encourage the user to generate new OOB information for each paring
process.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-12-15 07:27:19 -05:00
Sylvio Alves
b7b32944fc drivers: espressif: move ISRs into IRAM area
Most of Espressif drivers ISRs are already running in IRAM area, except
those in this PR. Move ISRs accordingly so we avoid any
interrupt miss when cache is disabled.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-15 07:27:10 -05:00
Benjamin Cabé
cb93f97bd6 boards: m5stack: add full_name for NanoC6 board
Add full_name field to the m5stack_nanoc6 board definition

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-14 11:14:57 +00:00
Bjarki Arge Andreasen
66dbe436bd lib: os: poweroff: Disable ZLIs before poweroff
We currently only disable "normal" IRQs with irq_lock(). This is not
sufficient if ZLIs are enabled, as even though they are supposed to
be "above" the kernel, they must not interrupt the poweroff procedure.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-14 11:14:45 +00:00
Bjarki Arge Andreasen
7c72e3cc42 lib: os: reboot: Disable ZLIs before reboot
We currently only disable "normal" IRQs with irq_lock(). This is not
sufficient if ZLIs are enabled, as even though they are supposed to
be "above" the kernel, they must not interrupt the reboot procedure.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-14 11:14:45 +00:00
Bjarki Arge Andreasen
239d20af90 arch: arm: implement arch_zli_lock and arch_zli_unlock
Implement arch_zli_lock and arch_zli_unlock for the currently only
supported target cortex-M.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-14 11:14:45 +00:00
Bjarki Arge Andreasen
1bbbedc956 arch: introduce arch_zli_lock and arch_zli_unlock
Introduce APIs for locking zero latency interrupts.

Zero latency interrupts are defined as non-maskable interrupts
"above" the kernel. They can not be locked by the kernel.

However, there are cases where we do need to mask/lock ZLIs from the
kernel, namely when accessing and changing the state of core shared
hardware like RAM and the CPU which must be done atomically.

A common case is when powering down or rebooting the SoC. We can't
allow any IRQ, ZLI or not, to interrupt these operations. In any case,
such an interrupt would be immediately followed by the CPU being off,
and whatever process running from ZLIs would be terminated anyway.

Since we have specific usecases which require these APIs, and there
are already drivers and socs which do lock ZLIs by directly calling
arch APIs to acheive this, let's officially add the APIs with
appropriate documentation detailing expected usecases and warning of
the dire consequences of misusing it, keeping it in arch/cpu.h to
limit exposure of the API (compared to having it in zephyr/irq.h).

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-14 11:14:45 +00:00
Jason Yu
5ce1df22fa drivers: counter: nxp_mrt: Support power device constraint
Call pm_policy_device_power_lock_put/pm_policy_device_power_lock_get
to coordinate with system level power modes.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-12-14 11:14:35 +00:00
Kyle Bonnici
bbff45f1c4 DTS: format files using dts-linter 0.3.7-hotfix2
- Ensure that properties have 2 new lines when node is above it.
- Enures that 1 new line is required between a node and #if/#ifdef...
- Enures that 2 new line are required between #endif and node.
- Wraps property values that exceed 100 characters in length.

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2025-12-12 15:38:31 -05:00
Kyle Bonnici
d726022f83 CI: Update dts-linter to 0.3.7-hotfix2
dts-linter 0.3.7-hotfix2 Security Updates:
- Update `glob` to address CVE-2025-64756
- Update `js-yaml` to address CVE-2025-64718

Formatting updates:
- Ensure that properties have 2 new lines when node is above it.
- Enures that 1 new line is required between a node and #if/#ifdef...
- Enures that 2 new line are required between #endif and node.
- Wraps property values that exceed 100 characters in length.

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2025-12-12 15:38:31 -05:00
Jukka Rissanen
869cfb8fd6 samples: net: pkt_filter: Disabling packet priorities by default
The packet priority support is disabled by default so that the
application can work "normally" as a sample for trying network
packet filtering.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-12 15:38:18 -05:00
Jukka Rissanen
47941a6f58 samples: net: pkt_filter: Add IPv4/6 address blocklist
Add information how to block IPv4 or IPv6 addresses.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-12 15:38:18 -05:00
Jukka Rissanen
9dd57b3405 samples: net: pkt_filter: Fix the readme file
The readme file did not mention the network packet priority
based rules 1-5 introduced recently.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-12 15:38:18 -05:00
Jukka Rissanen
7c62cd32cb net: pkt_filter: Reformat macro lines
Shorten long lines with \ chars in NPF_PRIORITY macro so that the output
looks good if user is using narrower window to view the code.
Reformat \ in NPF_RULE macro so that the code looks better.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-12 15:38:18 -05:00
Jukka Rissanen
2f3e902cd0 net: Start RX before the TX
Honor the comment in the code and make sure RX is started
before TX so that we can receive responses to any data we
are sending.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-12 15:38:18 -05:00
Aksel Skauge Mellbye
3ac0e760e6 boards: silabs: sltb010a: Enable watchdog for testing
Declare watchdog as supported for testing.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-12-12 15:37:28 -05:00
Aksel Skauge Mellbye
9a17f66b77 boards: silabs: xg24_ek2703a: Enable analog peripherals
Configure ADC and DAC to use the Analog pin on the Mikrobus
connector as input/output to enable ADC and DAC samples.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-12-12 15:37:28 -05:00
Aksel Skauge Mellbye
01e19e96c9 boards: silabs: List ADC as supported for testing
Add ADC to supported list for testing on boards that have a
zephyr,user io-channels property.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-12-12 15:37:28 -05:00
Aksel Skauge Mellbye
5be58ab543 boards: silabs: Add pwm-leds configuration
Add PWM configuration on boards that have LEDs, but were
missing a definition of pwm-leds.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-12-12 15:37:28 -05:00
Aksel Skauge Mellbye
44627801a3 boards: silabs: Enable PWM on boards with PWM configuration
xg24_dk2601b and bg22_ek4108a has PWM configuration in Devicetree,
but didn't enable PWM for testing. xg24_dk2601b has RGB LEDs,
add aliases to enable the rgb_led sample.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-12-12 15:37:28 -05:00
Aksel Skauge Mellbye
94212fb665 samples: driver: counter: Fix silabs timer name
The Counter alarm sample contains a hard-coded list of devicetree
nodes to use. Since the definition of the counter node was changed
on Series 2 devices in #97912, this sample hasn't compiled.

Update the sample to select the correct devicetree node, and
add representative boards to platform_allow to allow the sample
to be tested on Series 2 boards.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-12-12 15:37:19 -05:00
Aksel Skauge Mellbye
3b15324eac samples: drivers: uart: async_api: Add overlays for silabs boards
Add overlays enabling DMA for Silabs boards to enable use of the
async API on the default shell uart.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-12-12 15:36:58 -05:00
Camille BAUD
d8f67d777b tests: build_all: display: rename bflb dbi m62 overlay
Forgot to update the file name in PR changing naming

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-12 15:34:59 -05:00
Camille BAUD
0d4517a8ef tests: build_all: display: clear up logic
platform_exclude not necessary

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-12 15:34:59 -05:00
Julien Vermillard
9ece57491b boards: holyiot: support holyiot 21014
Add support fot the holyiot 21014 board.
BLE 5.0 module based on NRF52810.

Signed-off-by: Julien Vermillard <julien@clunkymachines.com>
2025-12-12 15:34:19 -05:00
Marek Maškarinec
5741f3ee6b drivers: tmag5273: Add mag gain property
Adds mag-gain-correction DT property, which sets the magnetic gain
correction value. Previously a property to select the channel for gain
correction existed, but there was no way to configure the correction
value itself.

Signed-off-by: Marek Maškarinec <marek.maskarinec@hardwario.com>
2025-12-12 09:58:56 -05:00
Jason He
89d3de81e6 boards: frdm_imx93: enable USB support
Add EHCI controller configuration with dual USB instances (USB1/USB2),
device tree bindings, 8 bidirectional endpoints, and UDC workqueue
stack optimization for frdm_imx93 A55 platform.

Signed-off-by: Jason He <jason.he_1@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Jony Zhang <jony.zhang@nxp.com>
2025-12-12 09:58:32 -05:00
Jony Zhang
ddb3acfb74 drivers: usb: mcux_ehci: add MMIO configuration for i.MX 93 family
The original driver is only feasible for M-Core, but for Cortex-A Core,
it need to do MMU mapping to map physical address to virtual address,
to the main update is to add MMIO mapping in this driver, and all the
register access should use virtual address.

Replace direct base address access with DEVICE_MMIO_NAMED_* macros
to provide better memory mapping abstraction and improve platform
portability.

This change:
- Adds DEVICE_MMIO_NAMED_ROM/RAM to config and data structures
- Maps the register base address during driver pre-initialization
- Updates all base address references to use DEVICE_MMIO_NAMED_GET
- Maintains backward compatibility with existing functionality

The DEVICE_MMIO API provides a standardized way to handle memory-mapped
registers across different platforms and memory protection schemes.

Signed-off-by: Jason He <jason.he_1@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Jony Zhang <jony.zhang@nxp.com>
2025-12-12 09:58:32 -05:00
Jason He
c2b7ae10e6 drivers: usb: mcux_ehci: add clock control for i.MX 93 family
Support device tree specified clock rates for USB controller and PHY.

Signed-off-by: Jason He <jason.he_1@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Jony Zhang <jony.zhang@nxp.com>
2025-12-12 09:58:32 -05:00
Jiafei Pan
02c808f390 modules: hal_nxp: fix camke for sdk-ng middleware
As middleware.cmake could be included by mcux-sdk's CMakeLists.txt,
so use CMAKE_CURRENT_LIST_DIR to make sure the directory is correct.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Jony Zhang <jony.zhang@nxp.com>
2025-12-12 09:58:32 -05:00
Jason He
24c510ec54 drivers: clock: mcux_ccm: add USB clock control support
Add USB_CLK and USB_PHY_CLK support for NXP EHCI controller on MIMX9352.

Signed-off-by: Jason He <jason.he_1@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Jony Zhang <jony.zhang@nxp.com>
2025-12-12 09:58:32 -05:00
Tomas Gudelevičius
b2d7055de9 drivers: modem: cellular: reinit modem after script failures
If the modem reboots or stops responding to AT commands while in
RUN_DIAL, AWAIT_REGISTERED, or CARRIER_ON, the modem_cellular state
machine could previously dead-end. Applications had to recover by
manually issuing device PM suspend/resume.

This change adds an internal recovery path: after repeated chat/script
failures in the states above, the driver resets the state to INIT, and
posts an immediate RESUME event. This allows the initialization sequence
to run again and restores connectivity, including after unexpected modem
reboots.

No API changes; behavior only differs in failure scenarios.

Signed-off-by: Tomas Gudelevičius <tomas.gudelevicius@draeger.com>
2025-12-12 09:58:23 -05:00
Jisheng Zhang
d2ec1c35a0 boards: renesas: Add CPKCOR-RA8D1B board support
Add CPKCOR-RA8D1B board support. Tested uart, button, led, sdram,
tfcard and usbhs.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
2025-12-12 09:58:11 -05:00
Jisheng Zhang
1dc0e167e3 dts: arm: renesas: Add DTCM and ITCM nodes for RA8D1
Add DTCM and ITCM for RA8D1.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
2025-12-12 09:58:11 -05:00
Jamie McCrae
a4e2a38370 scripts: zephyr_module: Skip writing output on no change
Skips updating files if the output already matches the file
contents, this prevents a random occurance whereby sysbuild
reconfigures itself after a reconfiguration for no known
discernable reason

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-12-12 09:57:48 -05:00
Tim Pambor
7a9b4d3a5c boards: st: stm32h573i_dk: Add TF-M non-secure app support
Add support for building Trusted Firmware-M (TF-M) non-secure
applications for the STM32H573I-DK board.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-12 09:57:40 -05:00
Cristian Bulacu
267c3196f6 net: l2: openthread: Bring OT iface up on backbone events
When Ethernet is enabled, `net_config_init_app` function will use the
first found interface that has auto start enabled. In this particular
case, backbone interface will not be able to perform dhcp request
because OpenThread interface gets to be the first interface found
and chose. Openthread will fail this procedure, as it has no
direct connectivity to backbone.
This is why, ethernet app has `CONFIG_IEEE802154_NET_IF_NO_AUTO_START`
set.
In this case, make sure to call net_if_up for OpenThread interface from
border router code when backbone events are triggered.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-12 09:57:20 -05:00
Cristian Bulacu
7abba8812f samples: net: openthread: border_router: Add ethernet config
Added project configuration for OpenThread Zephyr Border Router with
ethernet configured as backbone interface

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-12 09:57:20 -05:00
Camille BAUD
7a1e2d7509 drivers: lora: Add explicit support for variants
Add explicit support for sx1268, sx1278, llcc68

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-12 09:57:09 -05:00
Camille BAUD
287f40edbe drivers: lora: Add regulator-ldo for sx126x
Adds ability to set usage of LDO instead of DCDC

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-12 09:57:09 -05:00
Damian Krolik
1a6ff4f8e4 drivers: ieee802154: remove unused IEEE802154_CSL_DEBUG
The Kconfig option is not used anywhere for a while.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2025-12-12 09:57:00 -05:00
Nikodem Kastelik
b62921f4ce tests: boards: nrf: i2c: add twi variant
Currently only TWIM peripheral is verified against TWIS.
Add new test variant to verify nRF52 TWI peripheral as well.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-12-12 09:56:50 -05:00
Alberto Escolar Piedras
ba9b5f5ce0 tests: subsys: crc: Improve test
1) Also build the CRC shell:
   Even if we do not runtime test that part, let's at least build it.
   Otherwise we do not have any test building it, and it just rots.
2) Do not limit the test to devices with HW CRC acceleration.
   The CRC module has a SW version, and it makes sense to test it also.
   (we were only build testing the HW support side in CI so far).
3) Limit what we test in integration to one platform for the SW version
   and one HW platform.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-12 09:56:43 -05:00
Alberto Escolar Piedras
a2a215e8cc subsys/crc/crc_shell: Fix includes
To use the shell one does not need anymore to pull unistd.h,
if one uses sys_getopt, we need to include sys/sys_getopt.h

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-12 09:56:43 -05:00
Matthias Alleman
158ec0384b drivers: input: input_chsc5x: configurable ic type verification
Add Kconfig option to skip or execute the verification of the ic
type. This adds a delay of 100ms to the initialization.

Signed-off-by: Matthias Alleman <matthias.alleman@basalte.be>
2025-12-12 09:56:30 -05:00
Matthias Alleman
7a662cac8b drivers: input: input_chsc5x: add delay after reset
The sensor requires at least 94ms of delay before starting
communication after a reset. This is not mentioned in the
datasheet but is arbitrarily defined.

Signed-off-by: Matthias Alleman <matthias.alleman@basalte.be>
2025-12-12 09:56:30 -05:00
Gaetan Perrot
d904d11a22 tests: Fix typo in "Unsupported configuration" error message
Several test sources used the misspelled string "Unsupported
configuraiton".

Fix the typo across all affected files to improve clarity and
consistency.

Updated files:
 - tests/boards/nrf/rram_throttling/src/main.c
 - tests/drivers/flash/common/src/main.c
 - tests/drivers/flash/negative_tests/src/main.c

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-12-12 09:56:20 -05:00
Anuj Pathak
cb2109e7d9 samples: drivers: i2s: echo: add MAX32655 support
- reduced block length from 100ms to 33.33ms to compile for low ram
- add compile time conditional option to slave mode
- add overlay file for max32655fthr

Signed-off-by: Anuj Pathak <anuj@croxel.com>
2025-12-12 05:01:31 -05:00
Anuj Pathak
c0b013d2d4 samples: drivers: i2s: echo: Add MAX9867 codec support
Add MAX9867 codec initialization support to the sample
to later use for MAX32655FTHR support

Signed-off-by: Anuj Pathak <anuj@croxel.com>
2025-12-12 05:01:31 -05:00
Anuj Pathak
68b23bab28 boards: max32655fthr: enable i2c1
MAX32655 uses I2C1 to control on board PMIC and Audio Codec
this commit enable it as per board spec

Signed-off-by: Anuj Pathak <anuj@croxel.com>
2025-12-12 05:01:31 -05:00
Anuj Pathak
4409ba8655 drivers: i2s: add i2s driver for max32 mcu
add necessary build files and i2s driver with tx/rx support

Signed-off-by: Anuj Pathak <anuj@croxel.com>
2025-12-12 05:01:31 -05:00
Anuj Pathak
c4e857c9fd dts: i2s: add i2s node for max32655fthr
- add basic dma only i2s dts binding for max32-i2s
- add i2s node with default config to max32655.dtsi
- add i2s pin definition for max32655fthr board as per spec

Signed-off-by: Anuj Pathak <anuj@croxel.com>
2025-12-12 05:01:31 -05:00
Bjarki Arge Andreasen
7c2ab76a70 drivers: timer: nrf_grtc: Decouple clock source from CLOCK_CONTROL
The GRTC timer, typically used as sys clock on newer nordic chips,
is currently tightly coupled to the CLOCK_CONTROL_NRF drivers though
not being dependent on it. The GRTC and its device driver is
independent from CLOCK_CONTROL, its clock requirements are managed
by hardware, based on its clock source selection.

This commit moves the clock source selection to the GRTC driver, and
removes the hard coupling to the CLOCK_CONTROL drivers. To preserve
backwards compatibility, if CLOCK_CONTROL_NRF_K32SRC_RC is selected,
GRTC will default to LFLPRC.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-12 04:59:53 -05:00
Benjamin Cabé
bef6cdb127 sys: util: add sys_ prefix to SIGN, gcd, and lcm utils
As per our naming conventions for public symbols, these utility functions
and macros should be prefixed with "sys_".

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-12 04:58:14 -05:00
Benjamin Cabé
7389cbbd3e sys: util: hide internal gcd/lcm helpers
These should not show up as API in doxygen

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-12 04:58:14 -05:00
Ruibin Chang
d26ffeba9d drivers/pwm/it8xxx2: add pwm init output level property
When EC reboot, pwm pins go back to default GPI mode.
After we set pin mode to pwm mode at init(), it would
output low, so LED will be light (LED is low-activated).
And until set_cycles() is called to set output high,
then LED will be turn off the light (PWM-LED flicker).
So add the property to set PWM channel init output level.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-12-12 04:56:42 -05:00
Jeppe Odgaard
d32e7de509 debug: coredump: add cpp header guards
Add header guards to support usage from C++.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-12-12 04:55:58 -05:00
Peter Ujfalusi
ebb5625bee intel_adsp: Add debug slot manager
Currently all drivers which uses a slot from the debug window have fragile
hardwired slot 'mapping', they are locked to use specific slots even if
there are free slots available for them to take.

The new API hides the management of the slots and descriptors and users
can ask, release or even seize slots that they want to use.

Add a new debug slot manager API and a new default no config option to
allow selection between the hardwired or dynamic debug slot management.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
2025-12-12 04:54:53 -05:00
Peter Ujfalusi
2ce9d5f5e3 soc: intel_adsp: tools: cavstool.py: Look up the shell slot by type
Instead of using hardwired index for the shell debug slot, look it up by
it's type.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
2025-12-12 04:54:53 -05:00
Peter Ujfalusi
8cb287a411 intel_adsp: debug_window: Describe the partial slot in page0
Resize the reserved part of the debug window to cover the first 1K and
define the partial_page0 which will cover the partial slot in page 0.

Add comment to describe the debug window layout.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
2025-12-12 04:54:53 -05:00
Peter Ujfalusi
c7dd9d79bd intel_adsp: kconfig: Increase the default size of MEMORY_WIN_2_SIZE
The current default of 8192 will provide only 2 pages in debug window:
page0: descriptors
page1: slot0

However, the coredump is hardwired to use slot1, which by default is not
valid.

Increase the default window size to 12288 to allow three pages.

This change affects CAVS25 only as it is using default window sizes and the
window 3 is not used in this configuration at all (it was used with IPC3
only), so we do have enough space for the three page - we could even
increase the default to cover 4 pages (8192+8192), but let's be
conservative on this.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
2025-12-12 04:54:53 -05:00
Peter Ujfalusi
81666a3275 intel_adsp: common: gdbstub: Correct z_gdb_backend_init() return type
The z_gdb_backend_init() is defined to return with success/error code
with return type of int.

Fixes: a9c47a47a4 ("intel_adsp: cavs: add gdb support")
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
2025-12-12 04:54:53 -05:00
Krzysztof Chruściński
90bbc47122 samples: boards: nordic: coresight_stm: Benchmark only the cached code
Add additional call before starting time measurement to ensure that
all calls that are benchmarked are already cached. This change allows
to get more stable results as all exectutions are from cache.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-12 04:47:50 -05:00
Khoa Nguyen
3a384173b4 tests: drivers: i2c: Update to use i2c_write instead of burst_write
Update test app `i2c_target_api` to use i2c_write instead of using
same burst_write functional

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-12-12 10:30:55 +01:00
Qingsong Gou
de66e05602 drivers: watchdog: sf32lb: fix return errors
Fix watchdog driver return error

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-12 10:30:15 +01:00
S Mohamed Fiaz
e88400036e modules: hal_silabs: wiseconnect: CMakeLists fix
This fix addresses a PM failure caused by an inconsistency
between the device tree and the build system. The device tree
was updated with `reg = <0x00000400 DT_SIZE_K(319)>;`,
but the corresponding value for `SL_SI91X_SI917_RAM_MEM_CONFIG`
in CMakeLists.txt was not updated, leading to the problem.
The build system now automatically sets `SL_SI91X_SI917_RAM_MEM_CONFIG`
based on the sram0 RAM size from the device tree using `dt_prop()`
and `list(GET)`, ensuring the configuration matches the device tree
and preventing future mismatches.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-12-12 10:29:49 +01:00
Fabio Baltieri
006a951323 tests: assert_custom_header: only build on some platforms
This test does not build correctly on some modules, namely TFM, just run
it on a few platform, that should be enough to validate that the feature
is working correctly.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-12-11 16:36:45 -05:00
Cristian Bulacu
6dab107c91 openthread: Kconfig: Enable packet filtering
Enable packet filtering functionality for OpenThread Border Router when
NAT64 Translator is enabled

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-11 16:36:17 -05:00
Cristian Bulacu
d1858bed24 openthread: platform: infra_if: Add packet filtering rule for NAT64
This commit aims to implement IPv4 packet filtering for NAT64 translator.
If packets are consumed, those are not processed anymore by network
stack.
NAT64 packets are created by OpenThread stack and sent on backbone
interface using a raw socket.

This commit attempts to fix an issue where a TCP connection is initiated
by an OpenThread node, but discarded by network stack since there is no
active known connection.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-11 16:36:17 -05:00
Bjarki Arge Andreasen
1adf52166d samples: boards: nordic: clock_control: add README.rst
Add documentation of the nordic clock control sample in the form of
a README.rst

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-11 16:35:54 -05:00
Krzysztof Chruściński
01fc83d63d boards: nordic: nrf54h20dk: Add cpuapp TCM memory section
Add memory section which is placed in cpuapp TCM (Tightly Coupled
Memory) RAM0 which is fast, non-cacheable.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-11 16:35:45 -05:00
Krzysztof Chruściński
d9f1761571 boards: nordic: Add bias-pull-up to UART TX pin sleep state
When UART TX pin is in sleep state it should have pull up. So far it
was floating and that could lead to garbage output on terminal.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-11 16:35:18 -05:00
Fabin V Martin
f9fb943967 boards: microchip: Update pic32cm_jh01_cpro device tree
Add uart support for pic32cm_jh01_cpro.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-11 16:35:07 -05:00
Fabin V Martin
7b39f9ac71 dts: arm: microchip: pic32cm_jh: add sercom nodes
Add sercom nodes for pic32cm_jh

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-11 16:35:07 -05:00
Tomasz Chyrowicz
26128ab73d mcumgr: Prevent FW loader from self-destruction
The FW loader reports and manages exactly two slots:
 - slot 0: this is the slot for the application code to update
 - slot 1: this is the slot, in which the FW loader is placed

The slot 1 is reported, so tools can fetch metadata about the
FW loader installed on the device.
Unfortunately, currently SMP-based FW loader allows to issue slot erase
command for the slot 1, effectively erasing the FW loader code that is
being executed.

This change correctly identifies the slot 1 as an active one, marking it
as used and blocking erase operation on that slot.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-12-11 16:34:55 -05:00
Firas Sammoura
41403cae9e tests: riscv: pmp: Add test case for null pointer access
Adds `test_null_pointer_access` to verify that attempting to write to a
null pointer (address 0x0) correctly triggers a fatal error, confirming
the Physical Memory Protection (PMP) guard functionality.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-12-11 16:34:42 -05:00
Jérôme Pouiller
3fbaa29bba drivers: spi: siwx91x: Drop GSPI_MAX_BAUDRATE_FOR_DYNAMIC_CLOCK
Currently, clk_div_factor is force to 1 if user request more than 110MHz.
However, in this case, gspi_siwx91x_get_divider() will never return 2 or
more, unless the input clock is >= 220MHz. The si91x is not designed for
such high clock frequency. So, this case has never been tested.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-12-11 16:34:33 -05:00
Jérôme Pouiller
0623e6f390 drivers: spi: siwx91x: Simplify gspi_siwx91x_pick_lower_freq()
Since actual_hz is no more needed, we can simplify
gspi_siwx91x_pick_lower_freq().

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-12-11 16:34:33 -05:00
Jérôme Pouiller
918426ff30 drivers: spi: siwx91x: clk_div_factor can't be 0
In gspi_siwx91x_config(), clk_div_factor can't be < 1. Therefore, we can
remove the dead code.

This code has been tested with tests/drivers/spi/spi_loopback, with a PLL
clock configured to 160MHz and a bus clock to 80MHz with success. I have
not found the case where change in GSPI_CLK_CONFIG are required.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-12-11 16:34:33 -05:00
Jérôme Pouiller
1c356d0ed1 drivers: spi: siwx91x: Fix use of GSPI_DATA_SAMPLE_EDGE
Until now, GSPI_DATA_SAMPLE_EDGE was enabled as soon as the user requested
> 40Mhz (even if the actual frequency was in fact 40Mhz). However, at 40MHz
and at 80MHz, use of GSPI_DATA_SAMPLE_EDGE generated read errors on the
last bit of the transaction:

    Buffer contents are different:
     [...],0xaa,0xaa,0xaa,0xaa,
    vs:
     [...],0xaa,0xaa,0xaa,0xab,

I have not found any case where GSPI_DATA_SAMPLE_EDGE is useful, so this
patch just remove this parameter.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-12-11 16:34:33 -05:00
Jérôme Pouiller
115241c645 drivers: spi: siwx91x: Simplify error management
In functions requiring to lock/release resources, it is less error prone to
have only one exit point and user goto to manage errors.

The behavior of the new code is exactly identical to the initial one.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-12-11 16:34:33 -05:00
Jérôme Pouiller
88b39fd6f9 drivers: spi: siwx91x: Simplify gspi_siwx91x_config()
The bit_rate variable does not bring any benefit.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-12-11 16:34:33 -05:00
Dmitrii Sharshakov
1ef630572b MAINTAINERS: add TF-M PSA Settings backend collaborators
Add myself alongside @seankyer and @tomi-font as the engineers
involved in development of this backend.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-11 16:34:25 -05:00
Keith Short
46a60bb7d9 drivers: i2c: Fix default setting for I2C dump allowlist
The option CONFIG_I2C_DUMP_MESSAGES_ALLOWLIST should automatically be
turned on if the depedencies are satisfied.

Signed-off-by: Keith Short <keithshort@google.com>
2025-12-11 16:34:17 -05:00
Chaitanya Tata
d404fa6879 net: lib: shell: Rejig statistics
Use the newly added API to get specific type of stats (if supported) but
also keep the backwards compatibility.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-12-11 16:33:54 -05:00
Chaitanya Tata
f312cc341b tests: drivers: nrf_wifi: Add twister combo for vendor stats
This ensures vendor stats always builds.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-12-11 16:33:54 -05:00
Chaitanya Tata
55c492c7c5 drivers: nrf_wifi: Switch to new stats API
nRF70 queries FW to fet the stats, use the new stats API and filter FW
query depending on the type.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-12-11 16:33:54 -05:00
Chaitanya Tata
f24b902f5e net: l2: ethernet: Add new stats API
Add a new API that takes stat type, the networking stack only needs
NATIVE stats per-packet, it doesn't need to update vendor stats
per-packet. This saves unncessary exchanges in case driver needs to
query the firmware for the vendor stats.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-12-11 16:33:54 -05:00
McAtee Maxwell
d533ef74ea drivers: allow for two different infineon clock init flows
- differentiate fixed_factor init priority based on soc family

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-12-11 16:33:30 -05:00
Mario Paja
66121b7bb8 drivers: i2s: stm32 sai fix dma_cfg
This change fixes dma_cfg conflict between #99967 and #100223

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-12-11 16:33:11 -05:00
Benjamin Cabé
fd24cefd01 doc: spelling/typo fixes
minor spelling/typo fixes, mainly around using proper US English

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-11 16:32:58 -05:00
Mathieu Choplain
3be4c4c5a8 soc: st: stm32f0: SRAM vector table CMake Linker Generator compatibility
Add required CMake directives to enable working CONFIG_SRAM_VECTOR_TABLE=y
on STM32F0 series when CONFIG_CMAKE_LINKER_GENERATOR=y.

Builds OK with both ZEPHYR_TOOLCHAIN_VARIANT undefined (uses GNU toolchain
from Zephyr SDK) and set to "iar" (uses IAR toochain from EWARM v9.70.1).

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-11 17:06:28 +01:00
Alberto Escolar Piedras
244fe54a6d drivers: wifi: Fix remaining use of sa_family_t
In 55c49cdb8f the mayority of the
Zephyr wifi drivers was changed to use the Zephyr native net_ prefixed
types, but some were forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
will fail to build.

Note that the net_offload struct was updated accordingly in
d45cd6716b

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-11 17:06:04 +01:00
Alberto Escolar Piedras
f81011ee6a net: ip: Rename namespaced type in comment
In d45cd6716b the mayority of the
Zephyr codebased was changed to use the Zephyr native net_ prefixed
types. This comment was fogotten.
Let's fix it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-11 17:06:04 +01:00
Alberto Escolar Piedras
e19d78e607 drivers: modem: Fix remaining net API use
In b5588ed684 the mayority of the
Zephyr modem drivers were changed to use the Zephyr native
net_ prefixed types, but this one was forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Note that the net_offload struct was updated accordingly in
d45cd6716b

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-11 17:06:04 +01:00
Alberto Escolar Piedras
f0ecb0a17f drivers: ethernet: intel_igc: Use net namespaced APIs
In e6daacf3c9 the mayority of the
Zephyr ethernet drivers were changed to use the Zephyr native
net_ prefixed types, but this one was forgotten.
Without this fix/change the code still builds as we are by now setting
CONFIG_NET_NAMESPACE_COMPAT_MODE. But when this is not set, things
fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-11 17:06:04 +01:00
Stefan Schmidt
13ce8eac99 drivers: sensor: adi: adxl345: use selected range for conversion
When running the samples/sensor/accel_trig sample with a adxl345 sensor
the logged output values were doubled compared to the expected values.

The sensor_channel_get() path calls adxl345_accel_convert which did not
handle the configured g-range, resulting in invalid sample values except
for the +/-16g range. To fix this issue the configured range is taken
into account and different conversion factors are applied.

adxl345_accel_convert is also made static. It is not used by another file.

Signed-off-by: Stefan Schmidt <kontakt@stefanschmidt-embedded.de>
2025-12-11 17:05:27 +01:00
Mathieu Choplain
c4d72ac549 dts: arm: st: stm32f723: disable USBPHYC by default
Like other devices, the USBPHYC should be disabled by default. Add missing
property `status` with value `disabled` on the node in DTSI.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-11 17:04:55 +01:00
Hank Wang
2ed5e0d608 dts: arm: xilinx: fix zynqmp RPU IPI mailbox base addresses
The RPU0 mailbox node in `zynqmp_rpu.dtsi` used incorrect IPI
message buffer base addresses. According to UG1085 (Table 13-3)[1],
RPU0 should use the channel 1 message buffer region at `0xFF99_0080`
for local request/response and `0xFF99_0400` for remote request/
response. The previous values pointed to the APU channel 0
buffer (`0xFF99_0200`), which does not match the hardware mapping.
The same is true for rpu1.

The IPI buffer base looks something like this:
IPI1 - 0xFF990000
IPI2 - 0xFF990200
IPI0 - 0xFF990400

Fix the DTS by updating the RPU0, RPU1 mailbox nodes to use the correct
base addresses from the documentation.

[1] https://docs.amd.com/v/u/en-US/ug1085-zynq-ultrascale-trm

Signed-off-by: Hank Wang <wanghanchi2000@gmail.com>
Signed-off-by: Harini T <harini.t@amd.com>
2025-12-11 17:04:27 +01:00
Alberto Escolar Piedras
139b7c20c2 drivers: xen: Fix uninitialized variable warning
gcc complains about the posibility of ret and gfn being used
unitialiazed (with the input npages == 0).
Let's fix it by initializing ret to 0.

The warnings being:
```
      zephyr/CMakeFiles/zephyr.dir/drivers/xen/gnttab.c.obj
In file included from include/zephyr/logging/log.h:11,
                 from drivers/xen/gnttab.c:31:
include/zephyr/logging/log_core.h: In function 'gnttab_get_pages':
include/zephyr/logging/log_core.h:221:9: warning: 'gfn' may be used
uninitialized [-Wmaybe-uninitialized]
  221 |         z_log_minimal_printk("%c: " fmt "\n", \
      |         ^~~~~~~~~~~~~~~~~~~~
drivers/xen/gnttab.c:202:19: note: 'gfn' was declared here
  202 |         xen_pfn_t gfn;
      |                   ^~~
include/zephyr/logging/log_core.h:221:9: warning: 'ret' may be used
uninitialized [-Wmaybe-uninitialized]
  221 |         z_log_minimal_printk("%c: " fmt "\n", \
      |         ^~~~~~~~~~~~~~~~~~~~
drivers/xen/gnttab.c:199:13: note: 'ret' was declared here
  199 |         int ret;
      |             ^~~
```

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-11 17:04:05 +01:00
Jukka Rissanen
5dada87def doc: net: Enhance network packet filtering documentation
Add more information to network packet filter documentation to
make it more useful to end users.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-11 17:03:54 +01:00
Jamie McCrae
7d7aa2c1d7 west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  234c66e66ee39c0f836a57ba805245534be332f2

Brings following Zephyr relevant fixes:

  - 55ae5342 doc: imgtool: Update available options
  - cd96b62f boot: zephyr: Fix comment in banner.c
  - 1357a70f Updates for v2.3.0-rc2 release
  - afcca2c7 boot: zephyr: Fix Espressif build issues
  - d95ca5c7 boot: zephyr: Remove BOOT_MAX_IMG settings
  - 623f0230 boot: zephyr: stm32n657xx: Move overlay to socs
  - 31469b43 boot: zephyr: kconfig: Flip swap move defaults for
    esp32/stm32
  - a2ee0a75 scripts: imgtool: Fix verification with public ed25519
    key file
  - 49bbbabf boot: zephyr: Add watchdog setup/timeout
    configurability options
  - c25d2506 boot: zephyr: Move watchdog code to separate file
  - 9efb9d3f boot: zephyr: kconfig: Move modes to choice Kconfig
  - 92854b7b boot: zephyr: kconfig: Only show signature file when
    needed
  - 716f338a boot: zephyr: Remove weird custom key directory
    handling
  - c52f8af7 boot: zephyr: select `IS_BOOTLOADER`

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-12-11 17:02:54 +01:00
Jamie McCrae
7127ff4be3 kconfig: Remove dependencies from CONFIG_IS_BOOTLOADER symbol
This symbol has no relation to the dependencies it had, thus remove
them

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-12-11 17:02:54 +01:00
Sylvio Alves
16f6f392b4 tests: espressif: rtc_clk: update to keep nominal tests usage
Update the test case to use the nominal clock_subsys and print
calibration deviation.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-11 17:02:14 +01:00
Sylvio Alves
889910d7d8 tests: counter_basic_api: esp32h2: remove custom tolerance
ESP32-H2 counter test works with default tolerance.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-11 17:02:14 +01:00
Sylvio Alves
d3d2bd2f02 driver: clock: espressif: get frequency default to calibrated value
When clock get_rate() is called, return by default the calibrated
frequency instead of nominal one. This improves accuracy specially
when internal RC SLOW clock is used.

To guarantee that nominal values can be still be retrieved, add a
new type of clock subsys for such scenario.

west.yml is also updated to add fix into calibration sources.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-11 17:02:14 +01:00
Qingsong Gou
fc370b8481 drivers: rtc: sf32lb: fix alarm_is_pending error
Fix alarm_is_pending error

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-11 17:01:35 +01:00
Szymon Janc
09c80e18e6 tests: Bluetooth: Update ICS to TCRL pkg101
Updated to TCRL pkg101.

Security Mode 2 supporte removed (GAP,SM,GATT). Bumped supported
LE Audio profiles versions and enabled implemented features (notably
TMPA UMS)

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-12-11 17:00:28 +01:00
Martin Stumpf
ffb046b797 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>
2025-12-11 16:59:35 +01:00
Atilla Filiz
ddd25e81e7 drivers: sensor: add ams as6221 temperature sensor driver support
The as6221 is functionally equivalent to ti tmp108 and ams as6212,
so it is added as a new variant of tmp108.

Signed-off-by: Atilla Filiz <atilla@fi-tech.be>
2025-12-11 16:58:50 +01:00
Mathieu Choplain
aecaeae13e soc: st: stm32: wb0: don't quote section names in Z_GENERIC_SECTION
Don't quote the section names provided to Z_GENERIC_SECTION: the macro
already performs stringification on our behalf.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-11 16:57:59 +01:00
Gilles Devillers
7e139d6bfe net: mqtt: fix log typo
Fix typo in a log message and remove a redundant “error” mention.

Signed-off-by: Gilles Devillers <gildev@gmail.com>
2025-12-11 16:57:33 +01:00
Alberto Escolar Piedras
dd7526af49 modules: openthread: Fix network namespace API usage
bcec3bd04b introduced some of the
non-native API names back into this module. Let's fix it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-11 16:57:22 +01:00
Alberto Escolar Piedras
a90994006a tests: net: all: Also build latmon
Also build the latency monitor support code.

As a sideeffect, we run out of bits in the kernel objects per thread
permissions tracking field. So let's increase it to 6 bytes.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-11 16:57:22 +01:00
Alberto Escolar Piedras
addca1250b samples: net: latmon: Use native networking API directly
This subsystem does not use the POSIX_API, and the sample only used one
call to the POSIX API to close a socket instead of using the native
networking API.
Let's just use the native networking API, so we avoid pulling-in more
dependencies.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-11 16:57:22 +01:00
Alberto Escolar Piedras
cc8bb0427a net: latmon: Fix net API use
In d45cd6716b the mayority of the Zephyr
networking code was changed to use the Zephyr native net_/zsock_
prefixed types, but some symbols were forgotten.
Let's change them.

Without these fixes/changes the code still builds in most cases as we are
by now setting CONFIG_NET_NAMESPACE_COMPAT_MODE.
But when this is not set, things will fail to build.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-11 16:57:22 +01:00
Carles Cufi
15716542c2 dts: nordic: Fix ngpios for nRF54L15 (and variants)
The correct number is 7, since the QFN52 (QGAA) variant has P0.00 to
P0.06 present. See:
https://docs.nordicsemi.com/bundle/ps_nrf54L15/page/chapters/pin.html#ariaid-title6

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-12-11 05:51:32 -05:00
Jilay Pandya
aa2a0fbc8a doc: migration_guide: address stepper split
add entry for splitting stepper api in migration-guide-4.4

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-12-11 05:51:17 -05:00
Jilay Pandya
83956260f7 drivers: stepper: split stepper api
- split stepper api into stepper and stepper_drv api
- stepper api now comprises only of motion control apis
- stepper_drv api comprises of apis for configuring stepper
  drivers

- add documentation about stepper and stepper_drv api
- move stepper.rst in a dedicated stepper folder
- add information about stepper_drv api and relevant functions
  in stepper documentation.

- drop motion control functions from all the stepper_drv drivers
- create a common a library for controlling stepper motors by
  toggling gpios via h-bridge or step-dir stepper_drivers

- tmc5xxx devices are a combination of motion controller and
  stepper driver devices. tmc5xxx devices need to be modelled as
  mfds in order to address the split in stepper driver subsystem

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-12-11 05:51:17 -05:00
Sven Ginka
c4a4d8aa87 drivers: ethernet: dsa_nxp_imx_netc: fix zephyr random mac
zephyr,random-mac-address defaults to 0 or 1, which is always
available in generated code. so we can use the value itself.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-12-11 05:51:07 -05:00
Simon Piriou
c1091acd09 net: l2: ieee802154: add support for IEEE802154_CFI_DATA_REQUEST
802.15.4 specifies that a device may send a DATA_REQUEST command to the
coordinator after waiting for "macResponseWaitTime", starting after the
acknowledgment to the association request command.

This change adds support to generate DATA_REQUEST frames and sends one
for the association usecase only. The two other usecases, for MLME-POLL
or for beacon-enabled PAN, are not yet supported.

Signed-off-by: Simon Piriou <spiriou31@gmail.com>
2025-12-11 05:50:58 -05:00
Michał Grochala
2a9114af3d soc: nordic: nrf54l: Remove selecting a DTS-type option
Remove selecting `CONFIG_HAS_HW_NRF_RADIO_IEEE802154` that should be
generated from DTS based on the SoC selection.

Signed-off-by: Michał Grochala <michal.grochala@nordicsemi.no>
2025-12-11 05:50:33 -05:00
Holt Sun
6008841b60 tests: counter: add mcux LPTMR alarm mode coverage
Extend the counter_basic_api tests with a dedicated configuration that
enables the MCUX LPTMR driver in alarm mode.

The new testcase:
- Selects CONFIG_COUNTER_MCUX_LPTMR_ALARM
- Runs the existing counter_basic_api suite against nxp_lptmr devices
  when built for a board that instantiates the LPTMR

This verifies that the alarm-only LPTMR configuration passes the common
counter API tests without relying on the TOP callback feature.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-11 05:50:21 -05:00
Holt Sun
fba7c3ed88 drivers: counter: fix mcux lptmr unit test issue.
The counter alarm irq shall set the match value
to the max top value after stopping the timer, otherwise
the next start of the lptmr counter may shortly match the
the previous match value thus cause test_valid_function_without_alarm
run failed.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-11 05:50:21 -05:00
Cristian Bulacu
bcec3bd04b openthread: platform: infra_if: Remove NAT64 packet checksums
OpenThread NAT64 translator creates a packet that has header checksum
computed and appended.
In case of using ethernet as backbone interface, some NICs may want to
have checksum set to 0 for a correct computation.
This commit aims to address this issue by checking if hardware has
offload capabilities and setting NAT64 packet checksums to 0, if needed.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-11 05:50:07 -05:00
Maochen Wang
09aac143bf manifest: update hostap to fix EAP-TLS failure with TLS 1.3 on Cisco AP
Current implementation uses tls_connection_export_keys_cb to retrieve
exporter_master_secret, client_random, and server_random, which only
works for TLS 1.2. TLS 1.3 introduces a different key derivation
mechanism.
In mbedtls 3.6.4, MBEDTLS_SSL_KEYING_MATERIAL_EXPORT supports exporting
keying material for both TLS 1.2 and TLS 1.3. Update logic to use this
macro and remove redundant MBEDTLS_SSL_PROTO_TLS1_3 check in TLS 1.2
handling.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-12-11 05:49:56 -05:00
Maochen Wang
e01e67e1b0 samples: net: wifi: enable supplicant key debug for NXP config
Introduce WIFI_NM_WPA_SUPPLICANT_DEBUG_SHOW_KEYS to allow key dump
when using the NXP board debug configuration.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-12-11 05:49:56 -05:00
Maochen Wang
2faece5494 hostap: update mbedtls config for enterprise use
Enable MBEDTLS_SSL_KEYING_MATERIAL_EXPORT by default to support TLS
keying material export for enterprise scenarios.
Replace deprecated TLS 1.3 configs with MBEDTLS_SSL_PROTO_TLS1_3 and
MBEDTLS_SSL_SESSION_TICKETS.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-12-11 05:49:56 -05:00
Maochen Wang
ba04029986 mbedtls: enable config for keying material export
Introduce MBEDTLS_SSL_KEYING_MATERIAL_EXPORT configuration option to
control support for TLS keying material export.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-12-11 05:49:56 -05:00
Filip Kokosinski
ff252ebbf4 MAINTAINERS: relegate some Microchip RISC-V maintainers to colalborators
This commit relegates some of the Microchip RISC-V area maitainers to the
collabolator tier.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-12-11 05:49:34 -05:00
Firas Sammoura
ab0bf3a47f tests: riscv: pmp: Make permission change tests dynamic
The existing PMP permission tests relied on hardcoded region indices
(e.g., index 0 or 2). This makes the tests fragile and dependent
on the exact memory attribute region setup.

This change refactors the tests to dynamically determine region counts
and indices based on the output of `mem_attr_get_regions()`:

-   `test_pmp_change_perm_invalid_permission`: Uses the last valid
    region index to test invalid permission flags.
-   `test_pmp_change_perm_invalid_region_index`: Uses the total number
    of regions as the out-of-bounds index.
-   `test_successful_permission_change`: Locates the index of the
    target test region (`dt_regions[0]`) by matching its base address
    and size. The test now also inverts the X bit of the current
    permissions to ensure a change is applied and verified.

These changes make the tests more robust and less dependent on a
specific static configuration.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-12-11 05:49:15 -05:00
Michał Stasiak
cdb23524c3 drivers: nrf: remove GPIO HAL inclusion
Since pin retention handling was moved to nrfx,
GPIO HAL no longer has to be included in analog drivers.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-11 05:49:05 -05:00
Robert Lubos
2565352d11 net: http: server: websocket: Fix truncated string warning on copying
WS_MAGIC is a constant string and when calculating lengths for copying
we always exclude the NULL terminator. In result, using strncpy() for
copying can generate a warning about truncated string, as WS_MAGIC will
always be truncated from the NULL terminator. Therefore replace
strncpy() with memcpy() as it seems more appropriate for this case.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-12-11 05:48:34 -05:00
Pieter De Gendt
82845973a6 scripts: footprint: size_report: Close ELF file
Use the ELFFile context manager to open/close an input file.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-11 05:48:23 -05:00
Yassine El Aissaoui
cafe285810 modules: hal_nxp: Fix spc module selection on MCXW SoC family
Fix wrong condition for spc selection on MCXW family.

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-12-11 05:48:14 -05:00
Cristian Bulacu
510ccd718f net: ip: net_context: Use sin6_scope_id for link-local IPv6 addresses
This commit aims to make use of sin6_scope_id field of net_sockaddr_in6
structure to correctly choose the network interface when destination
address in link-local.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-11 05:47:48 -05:00
Cristian Bulacu
e197198f0a openthread: platform: udp: Correct scope_id assignment for ll addresses
This commit aims to fix correct scope_id assignment when link local
addresses are in use

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-11 05:47:27 -05:00
Fin Maaß
0a5ad3aaa8 drivers: ethernet: remove imply MDIO
remove `imply MDIO` from the
ethernet drivers, that don't directly use mdio
and only use the ethernet phy api, now that the
phys select MDIO.

in 648c8252b5 the
`select MDIO` ones were remove, unfortunatly I forgot
the implyed ones.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-11 05:47:14 -05:00
Alexandre Rey
0b52928625 driver: spi: mcux_dspi: remove obsolete rx_bufs check
The guard against rx_bufs == NULL was originally added to prevent a
DMA misconfiguration observed when no RX buffer was provided.

The issue can no longer be reproduced, and the check was incomplete
since it did not cover rx_bufs->buffers == NULL or rx_bufs->count == 0,
which lead to the same effective condition.

Removing the check simplifies the driver and avoids blocking valid
TX-only transfers.

Signed-off-by: Alexandre Rey <alx.rey@icloud.com>
2025-12-11 09:20:10 +02:00
Pisit Sawangvonganan
c5365797ac shell: modules: devmem: utilize sys_put_le(16|32|64) in memory_dump
Replaces direct byte shifting and assignment with `sys_put_le16`,
`sys_put_le32`, and `sys_put_le64` to simplify the `memory_dump` function.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-12-11 09:19:51 +02:00
Pisit Sawangvonganan
ed75a0a293 shell: modules: devmem: use shell_print where applicable
To improve code clarity, use `shell_print` in place of `shell_fprintf`
with `SHELL_NORMAL` where appropriate.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-12-11 09:19:51 +02:00
Stuart Longland
b87498212d shell_uart: Drop superfluous if statement
We're now checking if there is space prior to executing the loop body,
therefore guaranteeing this condition is never going to fire in a
single-threaded context.

Signed-off-by: Stuart Longland <stuartl@vrt.com.au>
2025-12-11 09:19:40 +02:00
Stuart Longland
301c0130b2 shell_uart: Stop polling if buffer is full
Before calling `uart_poll_in`, check we have space to store the character
in the ring buffer beforehand.  If we do, *then* poll for the character.

That way we don't miss out on serial traffic when our ring buffer is full
unless we fill our hardware ring buffer too.

Signed-off-by: Stuart Longland <stuartl@vrt.com.au>
2025-12-11 09:19:40 +02:00
cyliang tw
43d1c516af tests: drivers: pwm: pwm_gpio_loopback: support numaker_m3334ki
Add support for Nuvoton numaker board numaker_m3334ki.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-12-11 09:19:29 +02:00
cyliang tw
5c31987ce2 dts: arm: nuvoton: add PWM nodes for numaker m333x
Update m333x.dtsi to add PWM nodes for PWM driver support.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-12-11 09:19:29 +02:00
Missael Maciel
726e7b64c2 drivers: uart: save interrupts in PM Action
Removed usart_intenset attribute from conditional compilation
in mcux_flexcomm_data structure since this parameter needs to
be saved/restored independently if the interrupts are enabled
or not based on the PR feedback

Signed-off-by: Missael Maciel <davidmissael.maciel@nxp.com>
2025-12-11 09:19:05 +02:00
Missael Maciel
a84e0b5413 drivers: uart: save interrupts in PM Action
The PM action saves the interrupts enabled using a
global variable called usart_intenset. The problem is
when you have multiple uart instances that have different
configurations, when entering/exiting from a power level,
only one configuration is saved and will be applied to all
uart instances when exiting from a power level. We need to
keep this setting individual for each instance. To do this,
usart_intenset was added as a new element to mcux_flexcomm_data
structure. In this way, each uart instance will keep/restore
each own setting.

Signed-off-by: Missael Maciel <davidmissael.maciel@nxp.com>
2025-12-11 09:19:05 +02:00
Andrej Butok
75a2b1e35c drivers: gpio: nxp: mcux_igpio: fix mcux_igpio_port_get_raw()
- Reads the Pad Status Register (PSR) to get
  the current GPIO input value, instead of the Data Register (DR).
  Following IMXRT1170RM.pdf "13.5.2 GPIO Write Mode".
- Enables input buffer via Software Input On (SION)
  to get correct pin value in PSR for both input/output pins.
- Issue has been discovered during Safety DIO self-tests.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-12-11 09:18:54 +02:00
Zhaoxiang Jin
bd500cb1f9 boards: nxp: remove unused definitions
1. Remove 'XIP_BOOT_HEADER_ENABLE', it is not
used in the mcxn947 build tree.

2. Remove 'BOARD_FLASH_SIZE', it is not used
in the rw612 build tree.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-11 09:18:47 +02:00
Alain Volmat
d671e3f675 drivers: stm32: remove all HAL_RIF_ calls from stm32 drivers
RIF configuration is now done at soc init time in a centralized
way so it is no more necessary for drivers to perform this
configuration.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-11 09:18:38 +02:00
Alain Volmat
76410eef68 soc: stm32n6x: addition of RIF configuration at soc init
Perform all the IPs RIF configuration at init time in case of this
isn't yet performed by an earlier entity during the boot sequence.
This configuration depends on TRUSTED_EXECUTION_SECURE which is
currently always enabled on STM32N6x but will be configurable in
future.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-11 09:18:38 +02:00
Firas Sammoura
89ae7bb8e8 arch: riscv: pmp: Remove header guards and add kconfig deps
Remove the CONFIG_RISCV_PMP #ifdef guards from the function
declarations in pmp.h. This allows the header to be included
unconditionally, while the function definitions remain conditional
on the Kconfig option.

Add @kconfig_dep to the Doxygen comments for all functions
to clearly indicate the dependency on CONFIG_RISCV_PMP.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-12-11 09:18:28 +02:00
Lucien Zhao
b78d150e47 dts: arm: nxp: rt700_cpu0: add uuid support
SYSCON0 IP can be accessed by CPU0, HiFi4, EZH-V, eDMA0, eDMA1.
So cm33_cpu1 can't be supported this feature.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-11 09:18:20 +02:00
Alberto Escolar Piedras
312b1ef04f pmci: mctp: samples: Remove unnecessary include
These samples do not seem to need the unistd.h header, but including it
limits us to C libraries which have it, which as it is a POSIX
extension is not all.
So let's not include it so we do not limit ourselves unnecessarily.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-11 09:18:02 +02:00
Pete Johanson
17d143a175 tests: secure_storage: Don't try to erase flash with no controller
Add a check for a chosen flash controller to avoid attempting to clear the
settings flash with no controller available.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-12-11 09:17:53 +02:00
Alberto Escolar Piedras
9f0ce75b41 drivers: disk: loopback: Remove unnecessary include
This file does not seem to need unistd.h, and that header is a
POSIX extension to the C library which is not avaiable in general.
So let's not include it.

Without this change this file fails to build with minimal libc or
other C libraries which do not have this extra header.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-10 17:37:49 +00:00
Fabrice DJIATSA
307c08ba6b boards: st: stm32n6570_dk: increase size ram size of serial boot variant
Increase the RAM size of the SB variant to enable execution of relevant
tests that require at least 172 KB.

This ensures continuous tracking of these tests on CI.


Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-10 17:37:40 +00:00
Mathieu Choplain
cb27d92c0c scripts: build: check_init_prio: take deferred-init into account
A device with zephyr,deferred-init is initialized by the application, so
we cannot check if it is initialized in "the correct order". On the other
hand, a non-deferred device must not depend on a deferred-init device: this
is guaranteed to be initialized out of order.

Also adjust existing test cases and add a new test case to validate this
behavior.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-10 17:37:27 +00:00
Mathieu Choplain
ed182a89cd scripts: build: check_init_prio: create dedicated "flag errors" function
There is a bit of logic to run every time an error is reported. Factor it
out into a dedicated function.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-10 17:37:27 +00:00
Tahsin Mutlugun
15965b266c drivers: serial: uart_max32: Enable TX AE workaround for MAX32657
Extend UART_MAX32_TX_AE_WORKAROUND to also apply when building for
MAX32657.

Without this option, logging output may become fragmented or delayed
because TX interrupts fail to trigger reliably for small chunks of data.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-12-10 17:37:18 +00:00
Tahsin Mutlugun
6c6e8e51bf drivers: serial: uart_max32: Refactor IRQ flag clearing
api_irq_update was clearing TX interrupt flags before the TX interrupt
could be served, breaking synchronization in time-sensitive applications.

Changes:
1. Remove unnecessary MXC_UART_ClearFlags() calls in api_fifo_read() and
   api_irq_update to avoid premature flag clearing; ISR handler already
   clears them after returning from the callback.
2. Replace raw flag checks in irq_is_pending() with more complete
   api_irq_rx_ready() and api_irq_tx_ready().

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-12-10 17:37:18 +00:00
Qingsong Gou
a8d0a7789e drivers: adc: sf32lb: fix ref_internal
Fix adc ref_internal value

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-10 17:37:09 +00:00
Peter van der Perk
24b3ff233b gpio: mcux_rgpio: Support IRQ output select and access checks for i.MX95 M7
Support for selecting the IRQ output via the `irq-output-select` property
in devicetree. Updates interrupt configuration and ISR logic to use the
selected IRQ index. For i.MX95 M7, ensures pins and IRQs are configured
only when secure access is allowed by checking PCNS and ICNS registers.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-12-10 17:36:57 +00:00
Marcelo Roberto Jimenez
ce99d1e428 drivers: ethernet: stm32hal: Fixes source address control
The default configuration for all STM32 microcontrollers in HAL is
to replace the ehternet MAC address with the address configured in
replace address zero. In "modules/hal", Grep for:

macDefaultConf.SourceAddrControl = ETH_SOURCEADDRESS_REPLACE_ADDR0;

But this is a bad thing for bridging. Since Zephyr ethernet LL code
always writes the source address, this patch has no impact on normal
operation. And has the benefit of maintaining the source MAC address
of bridged packets.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2025-12-10 17:36:47 +00:00
Anas Nashif
172c403be5 Revert "ci: assigner: only run on main branch"
This reverts commit 79356f1385.

Was the wrong "fix".

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-12-10 17:36:29 +00:00
Anas Nashif
51a6e8b6f6 ci: assigner: do not check permission/manifest on branches
Workaround GH running workflows from main on release branches.
The assignment script fails and does wrong assignments based on wrong
versions of the maintainer file and manifest.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-12-10 17:36:29 +00:00
Michał Stasiak
013428c551 drivers: i2c: add DMM to i2c_nrfx_twim
Added DMM buffer preparation to I2C TWIM driver.
Adds little impact as buffer content is already copied
into message buffer which is places in proper memory for
optimized transfer.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-10 15:47:00 +00:00
Michał Stasiak
ca5986b084 drivers: i2c: clean-up macros used in nrfx_twim
Removed unused macros. Moved common macros to common header.
Aligned naming and style to other nrf drivers.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-10 15:47:00 +00:00
Zhaoxiang Jin
4a92103f92 tests: dma: Enable loop_transfer for nxp,4ch-dma
Enable loop_transfer for nxp,4ch-dma

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-10 15:46:47 +00:00
Zhaoxiang Jin
ee2cab94d9 boards: Enable DMA on frdm_mcxc444
Enable DMA on frdm_mcxc444

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-10 15:46:47 +00:00
Zhaoxiang Jin
a58a750336 drivers: dma: nxp: Add support for NXP 4 channel DMA driver
This commit introduces a new DMA driver for NXP platforms,
specifically supporting the MCXC/kinetis series.

Please access https://www.nxp.com/webapp/sps/download/preDownload.jsp?render=true
to download MCXC44x Sub-Family Reference Manual for more details.
DMAMUX can be found in Chapter 20 and DMA in Chapter 21.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-10 15:46:47 +00:00
Zhaoxiang Jin
41542b5613 drivers: sim: Enable dma clock through sim driver
Enable dma and dmamux clock through sim driver

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-10 15:46:47 +00:00
Deepika aerlync
067426ac54 drivers: serial: add Infineon PSOC4 UART support
Add initial implementation of the Infineon PSOC4 UART driver based on the
Peripheral Driver Library (PDL) for PSOC4 (PSoC 4100TP) devices.

Features:
- UART transmit and receive using PDL SCB UART APIs
- Configurable baud rate, parity, stop bits, and data bits from devicetree
- Pinctrl integration for TX/RX pins
- Support for Zephyr console and shell subsystems
- Build-time validation for UART configuration parameters

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Deepika aerlync <deepika@aerlync.com>
2025-12-10 15:46:35 +00:00
Deepika aerlync
c40d66d046 drivers: clock_control: add Infineon PSOC4 support
Add clock control driver support for Infineon PSoC4:
- Fixed clock driver (clock_control_ifx_fixed_clock.c)
- Fixed factor clock driver (clock_control_ifx_fixed_factor_clock.c)
- Peripheral clock driver (clock_control_ifx_peri_clock.c)
- CAT1 clock control header

Provides clock initialization and management based on
devicetree configuration.

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Deepika aerlync <deepika@aerlync.com>
2025-12-10 15:46:35 +00:00
Deepika aerlync
ccabf2457f boards: infineon: add CY8CPROTO-041TP board support
Add board porting for the Infineon CY8CPROTO-041TP evaluation kit:
- Board devicetree and pinctrl configuration
- Kconfig and YAML definitions
- Documentation
- Support for west build, west flash, and west debug (OpenOCD)

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
Signed-off-by: Deepika aerlync <deepika@aerlync.com>
2025-12-10 15:46:35 +00:00
Deepika aerlync
f54955f6d2 soc: infineon: add PSoC4100TP SOC support
Add SoC port for the Infineon PSoC4100TP series, including:
- Core initialization
- Kconfig files
- YAML device definitions
- SoC-specific pin control configuration

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
Signed-off-by: Deepika aerlync <deepika@aerlync.com>
2025-12-10 15:46:35 +00:00
Manojkumar Konisetty
6dfae9c9f7 dts: arm: infineon: add CY8C4147 MPN variants
Add devicetree support for CY8C4147 MPN variants including:
- AXI packages (T403-T493)
- AZI packages (T403-T475)
- AZQ packages (T415-T495)
- LQI packages (T403-T473)
- LQQ package (T493)

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
Signed-off-by: Deepika aerlync <deepika@aerlync.com>
2025-12-10 15:46:35 +00:00
Deepika aerlync
69ed4fc87d dts: arm: infineon: add CY8C4146 MPN variants
Add devicetree support for CY8C4146 MPN variants including:
- AXI packages (T403, T413, T453)
- AZI packages (T403-T455)
- AZQ packages (T413, T453)
- LQI packages (T403, T413, T453)

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
Signed-off-by: Deepika aerlync <deepika@aerlync.com>
2025-12-10 15:46:35 +00:00
Deepika aerlync
977f3f10ac dts: arm: infineon: add PSoC4100TP base devicetree
Add base devicetree support for Infineon PSoC4100TP series including:
- Core SoC devicetree (psoc4100tp.dtsi)
- CM0+ core configuration (psoc4100tp.cm0p.dtsi)
- Pin package variants (44-TQFP, 48-QFN, 48-TQFP, 64-TQFP)
- System clocks configuration (system_clocks.dtsi)

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
Signed-off-by: Deepika aerlync <deepika@aerlync.com>
2025-12-10 15:46:35 +00:00
Deepika aerlync
0add918ec9 modules: hal_infineon: add PSoC4 build support
Add CMake build configuration support for PSoC4 PDL and templates.

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
Signed-off-by: Deepika aerlync <deepika@aerlync.com>
2025-12-10 15:46:35 +00:00
Deepika aerlync
592c22f25d modules: hal_infineon: add PSoC4 Kconfig support
Add Kconfig configuration support for PSoC4 family in hal_infineon module.

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
Signed-off-by: Deepika aerlync <deepika@aerlync.com>
2025-12-10 15:46:35 +00:00
Deepika aerlync
007203965e manifest: hal_infineon: update rev to latest
Update hal_infineon revision to add PSOC4 family support

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
Signed-off-by: Deepika aerlync <deepika@aerlync.com>
2025-12-10 15:46:35 +00:00
Josuah Demangeon
367c859ee9 usb: device_next: uvc: fix frame interval sorting
The qsort() function takes a callback argument that is having the
same semantics as strcmp(). Fix uvc_compare_frmival_desc() sorting
to make qsort() list frame intervals in increasing values.

Fix a bug where Windows would not enumerate devices when the video device
have multiple frame interval supported.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-12-10 15:46:09 +00:00
Henrik Brix Andersen
7703c31c98 code of conduct: change the title from the template
Change the Code of Conduct title from the one used in the template to
reflect that this is the Code of Conduct for the Zephyr Project, not the
Contributor Covenant project.

The attribution for the Contributor Covenant template is present at the
very last paragraph.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-12-10 15:45:56 +00:00
Jamie McCrae
949adae4f1 dts: vendor: nordic: Fix invalid nrf54lm20a partition layout
This device indicates 4KiB sector size and has an impossible
partition layout that starts part the way through a sector,
this fixes the issue by having proper partition alignment

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-12-10 15:45:37 +00:00
Gang He
32c1db7c15 samples: bluetooth: bap_broadcast_sink: add parameter checking
BT_LE_PER_ADV_SYNC_OPT_FILTER_DUPLICATE option is only available when
BT_FEAT_LE_PER_ADV_ADI_SUPP is enabled in chipset.

Signed-off-by: Gang He <ganghe@sifli.com>
2025-12-10 15:44:43 +00:00
Gang He
9c8e72a0d9 samples: bluetooth: bap_broadcast_sink: format source code
Run clang-format to format sample source code.

Signed-off-by: Gang He <ganghe@sifli.com>
2025-12-10 15:44:43 +00:00
Gang He
2594859a0e bluetooth: host: Add parameter check when creating periodic adv sync
In option of HCI_LE_Periodic_Advertising_Create_Sync, bit 2
depend on Periodic Advertising ADI Support feature.

Signed-off-by: Gang He <ganghe@sifli.com>
2025-12-10 15:44:43 +00:00
Gang He
23d873188b bluetooth: host: scan: Format source code
Run clang-format on scan.c

Signed-off-by: Gang He <ganghe@sifli.com>
2025-12-10 15:44:43 +00:00
Mathieu Choplain
22a163f938 kconfig: source autogenerated Kconfig.dts earlier than defconfigs
In addition to the DT_HAS_<compat>_ENABLED options, the autogenerated
Kconfig.dts file also provides the DT_COMPAT_<compat> *macros* which avoid
manually declaring them when working around the no comma limitation. Unlike
options which can be referenced before their declaration, macros MUST
be defined before their usage (otherwise, they expand to nothing ("")).

Because the defconfig files were sourced before "dts/Kconfig", it was not
possible to use the DT_COMPAT macros from shields/boards/SoC defconfig;
this is not only confusing but also suboptimal because the macros must be
defined manually.

Include "dts/Kconfig" earlier to allow usage of the DT_COMPAT macros from
shields, boards and SoC defconfig. This should have no adverse effect
since there is no reason to override the options provided by the
autogenerated Kconfig.dts anyways.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-10 15:44:27 +00:00
Mathieu Choplain
df1677c8aa doc: kconfig: document DT_COMPAT_<...> macro variables
The DT_COMPAT_<...> macro variables are generated for every compatible
found in bindings: document them as existing and recommend using them
in various Kconfig documentation pages.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-10 15:44:07 +00:00
cyliang tw
518a21f59d MAINTAINERS: modify dts files to match Numaker
Modify dts/arm/nuvoton/m* to better align with Numaker platform
naming conventions. Also add one more collaborator.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-12-10 15:43:46 +00:00
Khoa Nguyen
e09d0adf57 samples: modules: lvgl: demos: Enable ek_ra8p1 CM85 using MIPI LCD
Enable ek_ra8p1_r7ka8p1kflcac_cm85 to run with rtkmipilcdb00000be
MIPI LCD shield

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-12-10 07:25:01 -05:00
Khanh Nguyen
d231118e7a boards: shields: add rtkmipilcdb00000be support for ek_ra8p1
Add support for the RTK MIPI LCD shield on EK-RA8P1:
- Add default display configuration in .conf
- Add overlay with MIPI DSI PLL, timing, gpio-hog, panel settings

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-12-10 07:25:01 -05:00
Khanh Nguyen
f4ff6f6ca1 boards: renesas: ek_ra8p1: add MIPI DSI support
Add MIPI DSI support for EK-RA8P1:
- Add default configs for MEMC, GLCDC framebuffer, and LVGL
- Update DTS:
  * Add zephyr,user node with mipi-dphy-en-gpios
  * Add mipi-dsi alias and MIPI connector node
  * Add interrupts for lcdif, and mipi_dsi
  * Add aliases for lcdif, mipi_dsi, and I2C
  * Add gpio-hog for mipi_phy_enable

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-12-10 07:25:01 -05:00
Khanh Nguyen
2e7115a45f drivers: mipi_dsi: Add support Renesas RA MIPI DSI for RA8P1
Update the Renesas RA MIPI DSI driver and bindings to align
with RA8P1 SoC support:

- Add SoC-specific PHY PLL multiplier ranges
  - RA8D1: 20–180
  - RA8P1: 40–375
- Correct t_init limit from 15 bits to 19 bits as specified in HUM
- Update devicetree bindings:
  - Clarify `pll-div` as input frequency divisor
  - Add `pll-out-div` property as output frequency divisor

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-12-10 07:25:01 -05:00
Pieter De Gendt
ea85a8b841 drivers: ethernet: eth_lan865x: Support MAC address config
Update the microchip,lan865x ethernet driver to use a MAC address
configuration struct.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-10 07:24:43 -05:00
Qingsong Gou
3da552b2c7 drivers: i2c: sf32lb: add get_config() support
Add get_config() support for sf32lb

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-10 07:24:34 -05:00
Robert Lubos
221699228a samples: net: lwm2m_client: Use cert-based DTLS overlay in twister
Make sure that certificate-based DTLS config is built by twister and
also mention it in the README file.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-12-10 07:24:26 -05:00
Robert Lubos
d9cc7845ec samples: net: lwm2m_client: Add missing PSA configs neeed for HS
Add missing PSA configs required for successful DTLS handshake with PSK.
Cert-based config also needed to enable some RSA support, as otherwise
mbed TLS throws errors about some undefined RSA error mapping.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-12-10 07:24:26 -05:00
Henrik Brix Andersen
573f4805c9 tests: drivers: can: api: canfd: use 75% for the data phase sample point
Use a sample point of 75% for the data phase timing to match the bitrate of
1Mbit/s.

Fixes: #100615

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-12-10 07:24:14 -05:00
Henrik Brix Andersen
f7786bba5f tests: drivers: can: api: relax CAN sample point accuracy requirements
Relax the CAN sample point location accuracy requirements in the CAN API
test suites by taking CONFIG_CAN_SAMPLE_POINT_MARGIN into account.

Fixes: #100615

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-12-10 07:24:14 -05:00
Camille BAUD
7830a76b7f dts: bflb: Add flash-controller chosen
Adds flash controller chosen to make CI happy

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-10 07:24:00 -05:00
Anas Nashif
79356f1385 ci: assigner: only run on main branch
See if this fixes the issue where this workflow runs on released
branches.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-12-10 07:23:52 -05:00
Pavel Vasilyev
fd38fde6c2 doc: bluetooth: mesh: Update supported Bluetooth Mesh Protocol version
Update Bluetooth Mesh Protocol supported version to 1.1.1.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-12-10 10:35:30 +00:00
Stephen Stauts
e260a69c61 samples: boards: nordic: Update command for checking ironside
Uses the modern nrfutil command for checking ironside versions
through the boot report, rather than hardcoded addressing.

Signed-off-by: Stephen Stauts <stephen.stauts@nordicsemi.no>
2025-12-10 10:35:21 +00:00
Tim Pambor
33f50ee90e drivers: clock_control: stm32: enable fractional divider for PLL2/3
Configure the fractional divider (FRACN) for PLL2 and PLL3
on STM32H5 series when specified in the device tree.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-10 10:35:14 +00:00
Tim Lin
e4f518b56a drivers/i2c: it8xxx2: Add port info to error logs
Improve I2C error logs by adding port number to all timeout and host
error messages, making it easier to identify which controller reports
failures.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-12-10 10:35:02 +00:00
Paweł Pelikan
82ed28fea6 manifest: Update hal_nordic
Manifest to update latest changes.

Signed-off-by: Paweł Pelikan <pawel.pelikan@nordicsemi.no>
2025-12-10 10:34:47 +00:00
Biwen Li
ab6c28fd98 soc: nxp: imx943: set dma tcd queue size to fix build issues
Set dma tcd queue size to 4 defaultly to fix build issues,
- error: static assertion failed: NUM_DMA_BLOCKS_RX_PREP must be
  < CONFIG_DMA_TCD_QUEUE_SIZE
  #define BUILD_ASSERT(EXPR, MSG...) _Static_assert((EXPR),...
  drivers/i2s/i2s_mcux_sai.c:45: note: in expansion of
  macro BUILD_ASSERT
  BUILD_ASSERT(MAX_TX_DMA_BLOCKS > NUM_DMA_BLOCKS_RX_PREP,

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-10 10:34:30 +00:00
Sercan Erat
a57fcc12a8 boards: rakwireless: Adding rak11160 board support
The RAK11160 WisDuo module is a low-power, long-range LoRaWAN
module based on the STM32WLE5 and Espressif ESP8684H2 MCUs.

Signed-off-by: Sercan Erat <sercanerat@gmail.com>
2025-12-10 10:34:06 +00:00
Mario Paja
f4cfd85c56 drivers: video: stm32_dcmi: relocate dma stream to driver data
This change moves the dma stream from _config to _data,
allowing direct reference the DMA stream rather than
duplicating it on the stack. Additionally, it aligns the
declaration to the other STM32 drivers.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-12-10 10:33:50 +00:00
Mario Paja
ccdf98acd8 drivers: remove on-stack copying of dma cfg on stm32 drivers
This change removes the on-stack copying and instead
uses a pointer to the configuration to  avoid unnecessary
stack usage

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-12-10 10:33:50 +00:00
Dmitrii Sharshakov
a6b9f877e9 doc: releases: migration-guide-4.4: add a note on SETTINGS_TFM_PSA
Add a note about a renamed Kconfig option

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-10 10:33:34 +00:00
Dmitrii Sharshakov
e80b608cd4 settings: tfm_psa: improve code style
Fix SonarQube warnings, move variable declarations to the
top of the block according to Zephyr code style

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-10 10:33:34 +00:00
Dmitrii Sharshakov
7c3762130d samples: settings: cover PSA PS backend
By default, run on mps2/an521/cpu0/ns with TF-M.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-10 10:33:34 +00:00
Dmitrii Sharshakov
3117d7ad2c tests: settings: cover PSA PS backend
Just like ITS, it can be tested on mps2/an521/cpu0/ns with TF-M.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-10 10:33:34 +00:00
Dmitrii Sharshakov
0e04d8a802 settings: tfm_psa: add support for PS backend
Protected Storage is another type of secure (encrypted and
authenticated) storage available using PSA interfaces.

When targeting TF-M builds, allow making use of PS for storing settings

Fixes #94681

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-10 10:33:34 +00:00
Dmitrii Sharshakov
06eb1473d5 settings: tfm_psa: rename from its
Prepare for extending this backend to also allow storing settings in the
PS (Protected Storage).

Mostly file and kconfig renames, as well as updates
to comments and log messages.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-10 10:33:34 +00:00
Peter Mitsis
8fa52bf82f tests: Add smp_metairq test
Adds a new meta-IRQ test just for SMP. This test verifies that
a cooperative thread preempted by a meta-IRQ thread resumes on
the same CPU after the meta-IRQ thread finishes.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-12-10 10:32:50 +00:00
Peter Mitsis
9d23a1a948 doc: Add note to meta-IRQ threads
Adds a note to the meta-IRQ thread documentation indicating that
that when a cooperative thread resumes after being preempted by
a meta-IRQ thread it will resume on the same CPU from which it was
preempted.

On a UP system such behavior is a given. However, this behavior becomes
relevant on an SMP system to ensure that both schedule-locked and
cooperative threads are not accidentally shuffled to another CPU while
querying the properties associated with their current CPU.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-12-10 10:32:50 +00:00
Peter Mitsis
5dd36854fd kernel: Update clearing metairq_preempted record
If the thread being aborted or suspended was preempted by a metaIRQ
thread then clear the metairq_preempted record. In the case of
aborting a thread, this prevents a re-used thread from being
mistaken for a preempted thread. Furthermore, it removes the need
to test the recorded thread for readiness in next_up().

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-12-10 10:32:50 +00:00
Peter Mitsis
36d195b717 kernel: MetaIRQ on SMP fix
When a cooperative thread (temporary or otherwise) is preempted by a
metaIRQ thread on SMP, it is no longer re-inserted into the readyQ.
This prevents it from being scheduled by another CPU while the
preempting metaIRQ thread runs.

Fixes #95081

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-12-10 10:32:50 +00:00
Peter Mitsis
653731d2e1 kernel: Adjust metairq preemption tracking bounds
Adjust the bounds for tracking metairq preemption to include the
case where the number of metairq threads matches the number of
cooperative threads. This is needed as a thread that is schedule
locked through k_sched_lock() is documented to be treated as a
cooperative thread. This implies that if such a thread is preempted
by a metairq thread that execution control must return to that
thread after the metairq thread finishes its work.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-12-10 10:32:50 +00:00
Kai Vehmanen
3b7b2aef96 drivers: dai: intel: ssp: add get_properties_copy support
Add support for new get_properties_copy() method. This allows to
use ssp driver from user-space threads.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2025-12-10 10:32:14 +00:00
Kai Vehmanen
05069845d4 drivers: dai: make user-space support build-time selectable
The DAI interface is not used from user-space in all configurations
where Zephyr user-space is enabled, so it is beneficial to have
a build option to contorl whether the DAI syscalls are included or
not.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2025-12-10 10:32:14 +00:00
Kai Vehmanen
fa2c904266 drivers: dai: add get_properties_copy() method
Add a variant of get_properties() method that writes the properties
to a caller provided pointer. Unlike the old variant, this copy
variant can be exported to user-space in a safe way.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2025-12-10 10:32:14 +00:00
Kai Vehmanen
81e37ad4e8 drivers: dai: add ability to use dai.h from user threads
Add user-space support to the dai.h interface. No functional
impact to builds when CONFIG_USERSPACE is not set.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2025-12-10 10:32:14 +00:00
Vijay Sharma
432d9d2a6b tracing: trace timer calls
Add tracing support for timer expiry and stop function callbacks,
enabling measurement of callback execution duration and facilitating
debugging of cases where callbacks take longer than expected.

Signed-off-by: Vijay Sharma <vijshar@qti.qualcomm.com>
2025-12-09 22:40:13 -05:00
Marek Matej
90e81504ae soc: espressif: hide AMP configs
Hide AMP configs if not used.
Provide safe SRAM values for synthetic appcpu targets.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-12-09 22:40:01 -05:00
Pieter De Gendt
e3882162cf drivers: ethernet: litex: Support MAC address config
Update the litex,liteeth ethernet driver to use a MAC address configuration
struct.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-09 22:39:53 -05:00
Yongxu Wang
90f2a22882 drivers: firmware: scmi: force polling mode for message attributes query
During reboot operations, interrupts are disabled but k_is_pre_kernel()
returns false, causing SCMI communication to fail when using interrupt
mode. Force polling mode to ensure reliable operation in all contexts.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-12-09 22:39:35 -05:00
Yongxu Wang
2d3c40d1b3 drivers: firmware: scmi: add initial reboot interface
Implement sys_arch_reboot() using SCMI system power protocol
for warm and cold reset operations on SCMI-enabled platforms.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-12-09 22:39:35 -05:00
Yongxu Wang
cc069c0201 drivers: firmware: scmi: Introduce basic system power protocol
Add SCMI System Power Domain Protocol support with:

- System power state set operations
- Standard SCMI power states (shutdown, cold/warm reset, suspend)
- Graceful and forceful power transitions
- Optional NXP vendor-specific power states
- Device tree binding for "arm,scmi-system"

This enables system-wide power management through standardized
SCMI interfaces for reboot and power control operations.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-12-09 22:39:35 -05:00
Yongxu Wang
ada584012b drivers: firmware: scmi: add protocol version negotiate
Add SCMI protocol version negotiation to handle compatibility between
different agent and platform versions. The negotiation automatically
downgrades to supported version when needed and maintains backward
compatibility with legacy systems.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-12-09 22:39:35 -05:00
Yongxu Wang
9d163c73fb drivers: firmware: scmi: add protocol version support
Add version field to struct scmi_protocol and update protocol macros
to accept version parameter.

Protocol versions added:
  - Clock Control: v3.0.0 (SCMI v3.2 DEN0056E)
  - Pin Control: v1.0.0 (SCMI v3.2 DEN0056E)
  - Power Domain: v3.0.1 (SCMI v3.2 DEN0056E)
  - NXP CPU: v1.0.0 (vendor extension)

Updated macros:
  - DT_SCMI_PROTOCOL_DATA_DEFINE
  - DT_SCMI_PROTOCOL_DEFINE
  - DT_SCMI_PROTOCOL_DEFINE_NODEV
  - DT_INST_SCMI_PROTOCOL_DEFINE

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-12-09 22:39:35 -05:00
Yongxu Wang
d0e9d950fb drivers: firmware: scmi: add common protocol interface functions
Add standardized SCMI protocol common interface functions that can be
reused across different SCMI protocol implementations:

- scmi_protocol_get_version(): Query protocol version
- scmi_protocol_attributes_get(): Get protocol-specific attributes
- scmi_protocol_message_attributes_get(): Query message capabilities
- scmi_protocol_version_negotiate(): Negotiate protocol version support

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-12-09 22:39:35 -05:00
Mathieu Choplain
1b2b09d6ad tests: drivers: udc: add integration platform for skeleton test
Add `integration_platforms` to the `drivers.usb.udc.skeleton` test case to
ensure the UDC Skeleton driver is built and tested by CI.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 22:39:24 -05:00
Mathieu Choplain
5c65e3797f drivers: usb: udc: skeleton: share thread creation code across instances
Instead of having one "make_thread" function per instance, called through
a function pointer in the instance configuration, save the thread stack
information instead and consume it from shared code in the driver pre-init
function. This makes the driver more readable (less code in the instance
creation macro) and should reduce its footprint impact (since the thread
creation code is no longer duplicated).

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 22:39:24 -05:00
Biwen Li
ac576474e6 soc: nxp: imx943: use configdefault
Use configdefault

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-09 22:38:43 -05:00
Tim Pambor
816dfb8f11 drivers: timer: stm32_lptim: add reset support
Add support for resetting the LPTIM peripheral to its default state
on initialization. This ensures that any previous configurations
do not interfere with the new settings.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-09 22:38:35 -05:00
Tim Pambor
7fc2f421a4 dts: arm: st: add reset for lptim
Add resets property to lptim binding and define resets for all lptim
instances in device tree files for STM32 MCUs.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-09 22:38:35 -05:00
Pieter De Gendt
f75ba50de6 drivers: ethernet: sensry: Support MAC address config
Update the sensry,sy1xx-mac driver to use a MAC address configuration
struct.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-09 22:38:23 -05:00
Pieter De Gendt
00b051dd76 drivers: ethernet: sensry: Fix phy handle instance
Fix ethernet PHY handle in case of multiple instances.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-09 22:38:23 -05:00
Marek Matej
5f3f4e7285 drivers: flash: Fix flash host type for CI builds
This fixes the APPCPU synthetic builds.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-12-09 22:38:02 -05:00
Tobias Kässer
ef85dbe085 drivers: sensor: adxl345: add device PM support
Add support for the Zephyr device power management framework to
enable runtime power control of the ADXL345 accelerometer.

This implementation adds a pm_device_action callback that handles
SUSPEND and RESUME actions. When suspended, the sensor enters
standby mode for low power operation. On resume, it returns to
measurement mode.

The implementation follows the standard pattern used by other
sensor drivers (lis2dh, bme280, vcnl4040) and integrates with
the PM_DEVICE_DT_INST_DEFINE macro for automatic PM setup.

Tested on nRF52832 with CONFIG_PM_DEVICE enabled.

Signed-off-by: Tobias Kässer <t.kaesser@gmail.com>
2025-12-09 22:37:39 -05:00
Zhaoxiang Jin
6e51add741 tests: comparator: enable gpio_loopback for lpcxpresso55s36
enable gpio_loopback for lpcxpresso55s36

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-09 22:37:32 -05:00
Zhaoxiang Jin
d17a9659ea boards: lpcxpresso55s36: enable hscmp for lpc55s36
enable hscmp for lpc55s36

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-09 22:37:32 -05:00
Zhaoxiang Jin
a62bf4b978 drivers: comparator: Add high-speed comparator support
Add high-speed comparator support

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-09 22:37:32 -05:00
Zhaoxiang Jin
bc93570584 drivers: clock_control_mcux_syscon: add HSCMP clock support
add HSCMP clock support.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-09 22:37:32 -05:00
Zhaoxiang Jin
f08ec232b2 soc: lpc55xxx: update NUM_IRQS for SOC_LPC55S36
SOC_LPC55S36 has 119 IRQs.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-09 22:37:32 -05:00
John Chung
d41d915330 pmci: mctp: Fix MCTP USB Packet Length Issue
According to DSP0283 1.0.1, Length byte in MCTP over USB header
fields should start from the "MCTP over USB Header" to the last
byte in the "MCTP packet payload"

Signed-off-by: John Chung <john.chung@arm.com>
2025-12-09 17:13:56 -05:00
Etienne Carriere
88cc16191b manifest: psa-arch-tests: support for STM32U5 and STM32WBA65
Update PSA-Arch-tests to support testing STM32U585 and STM32WBA
based boards.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-12-09 17:09:50 -05:00
Daniel Leung
bf44a017a6 coredump: fix ruff warnings on gdbstuc scripts
This fixes ruff warnings on coredump gdbstuc scripts.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 17:09:41 -05:00
Daniel Leung
9ace08210e coredump: fix ruff warnings on parser scripts
This fixes ruff warnings on coredump parser scripts.

Note SIM115 is not fixed yet as it requires more intrusive
changes to handle opened file with context manager.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 17:09:41 -05:00
Daniel Leung
79a5783a4b coredump: fix ruff warnings on top level scripts
This fixes ruff warnings on top level coredump scripts.
This is done via "ruff check --fix" without manual editing.

Note SIM115 is not fixed yet as it requires more intrusive
changes to handle opened file with context manager.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 17:09:41 -05:00
Daniel Leung
37b8402668 coredump: run ruff format on scripts
This is done via "ruff format" without any manual editing.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 17:09:41 -05:00
Daniel Leung
67e6720b31 coredump: gdbstubs: x86: disable pylint duplicate code warnings
This disables the duplicate code warnings on x86 and x86_64
gdbstubs. The exception vector tables may look the same now but
can deviate depending on supported features on architecture.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 17:09:41 -05:00
Sylvio Alves
3b39e3dca4 soc: espressif: power: register power log module
All power.c files in Espressif SoCs depends on un-registered
soc log module. When CONFIG_LOG=y and CONFIG_LOG_DEFAULT_LEVEL=4,
build fails as LOG_DBG used in those files won't have its proper
declaration.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-09 17:09:32 -05:00
Peter Mitsis
d59b2a29b4 sys: sys_heap: Fix _system_heap type
Changes the type used in _system_heap extern declarations to use
k_heap instead of sys_heap.

Fixes #100530

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-12-09 17:09:25 -05:00
Lauren Murphy
e82a8a612f MAINTAINERS: add laurenmurphyx64 to LLEXT
Adds Lauren Murphy as a LLEXT collaborator.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-12-09 17:08:26 -05:00
Jacky Lee
3b38d6cc71 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-12-09 14:55:35 -05:00
Ederson de Souza
bc480ca3f4 samples/subsys/pmci/mctp: Make host/endpoint sample messages friendly
This patch achieves that by:
  - Waiting one second between each message sent by the host, so people
    can actually follow what's going on;
  - Wraping the content of the messages (strings "hello" and "world") in
    quotes, so it's clear what they are;
  - Toning down the logging to INF - no need for DBG;
  - Removing astray `\n` - LOG_XXX already takes care of that.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-12-09 14:55:24 -05:00
Ederson de Souza
b6d0ac47dc samples/subsys/pmci/mctp: Do not repeatedly start RX
It only needs to be started once - all subsequent start will fail with
-EBUSY and possibly print some error message.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-12-09 14:55:24 -05:00
Ederson de Souza
3376da8a90 samples/subsys/pmci/mctp: Endpoint needs to reply to host
But it was sending the reply to its own endpoint ID, thus the host was
ignoring it.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-12-09 14:55:24 -05:00
Anas Nashif
7aeddc3386 doc: tracing: add a note about compatibility
Add a note about compatibility with older traces.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-12-09 14:55:15 -05:00
Anas Nashif
2bfe6c498b tracing: move event ids from uint8_t to uint16_t
We are hitting the limit of 256 events possible with event id right now
defined as uint8_t.

The bandwidth increase is minimal (2 bytes per event) compared to the
payload data, and the scalability benefits far outweigh the costs.

Existing CTF traces with 8-bit IDs won't be compatible.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-12-09 14:55:15 -05:00
Ederson de Souza
308c40c111 samples/subsys/pmci/mctp: Add npcx4m8f_evb overlays
So that one can run the host/endpoint sample on them.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-12-09 14:54:56 -05:00
Mathieu Choplain
7af28275f0 migration-guide: 4.4: document remplacement of zephyr,ccm
Document remplacement of the ST-specific `zephyr,ccm` by `zephyr,dtcm`
along with actions to take in application code in the migration guide.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 14:54:36 -05:00
Mathieu Choplain
9a54da0c34 doc: dts: api: remove documentation of chosen zephyr,ccm
The `zephyr,ccm` chosen was an ST-specific property which has been replaced
by the generic `zephyr,dtcm`. Remove it from the DTS documentation.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 14:54:36 -05:00
Mathieu Choplain
7323d50fc5 soc: st: stm32: remove CCM handling code
The `st,stm32-ccm` is now used though the generic DTCM mechanism: remove
all SoC-specific code which was used to implement support for it.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 14:54:36 -05:00
Mathieu Choplain
63081242b9 linker: remove STM32 CCM sections
Remove section names and symbols relating to the STM32 CCM region,
`/chosen/zephyr,ccm`, which is replaced by the standard DTCM region
`/chosen/zephyr,dtcm`.

For backwards compatibility, the old `__ccm_<...>_section` attribute
macros are aliased to `__dtcm_<...>_section` (until release 4.5).

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 14:54:36 -05:00
Mathieu Choplain
dc5e85a8d0 kernel/arch: remove zephyr,ccm initialization code
doc: dts: api: remove documentation of chosen `zephyr,ccm`

The `zephyr,ccm` chosen was an ST-specific property which has been replaced
by the generic `zephyr,dtcm`. Remove region initialization code from the
common arch init code (+ BSS zeroing from common XIP init code).

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 14:54:36 -05:00
Mathieu Choplain
f7d75fc991 samples: board: st: ccm: update sample for zephyr,dtcm usage
Update the ST CCM usage sample to be compatible with CCM as `zephyr,dtcm`.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 14:54:36 -05:00
Mathieu Choplain
2d4feea8ce boards: (STM32F4 based): replace zephyr,ccm chosen with zephyr,dtcm
The STM32 CCM can be used as `/chosen/zephyr,dtcm` - transition all boards
to this chosen to allow deprecation/removal of the legacy `zephyr,ccm`.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 14:54:36 -05:00
Mathieu Choplain
f507f0975b dts: arm: st: stm32{f3,f4}: rename CCM memory region for zephyr,dtcm
Rename the CCM memory region for STM32F3 and STM32F4 series such that the
CCM node can be used as a `zephyr,dtcm`.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 14:54:36 -05:00
Sylvio Alves
ee02e088ae west.yml: hal_espressif: fix ESP32-C3 linker for ECO7
Fix missing linker file when ESP32-C3 SOC_REV_1_1 is used.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-09 14:54:27 -05:00
Tomáš Juřena
e784d3bc0d boards: st: Add stlink_dbgserver to multiple boards
Allow to use `stlink_gdbserver` as a gdb server when running
`west debug -r stlink_gdbserver`. This is helpful when OpenOCD does not
yet support the chip, for example, **nucleo_c071rb**.

In my tests, I have flashed the debug build of *blinky* sample and used
GDB to add a temporary hardware breakpoint to the main function. When I
reached there, I stepped through the code.

I have tested this with the following boards:

- disco_l475_iot1
- nucleo_c071rb
- nucleo_f042k6
- nucleo_f303k8
- nucleo_f303re
- nucleo_f411re
- nucleo_l432kc
- nucleo_l452re
- nucleo_wl55jc
- stm32f0_disco
- stm32f3_disco
- stm32f411e_disco
- stm32f412g_disco
- stm32f429i_disc1
- stm32f4_disco
- stm32f769i_disco
- stm32l1_disco
- stm32l476g_disco

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-12-09 14:54:20 -05:00
Martin Hoff
a0602f0358 tests: driver: spi: add overlay for xg23_rb4210a board
This patch introduces overlay for xg23_rb4210a for the spi_loopback
test. It is needed because it has another peripheral ip version than
all the other already tested board.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-09 14:54:10 -05:00
Henrik Brix Andersen
8f7861fbd7 doc: releases: migration guide: 4.4: add entry for CAN Kconfig changes
Mention the CAN controller driver Kconfig namespace changes in the
migration guide.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Henrik Brix Andersen
d672bdbdcc samples: can: remove CONFIG_CAN_MAX_FILTER setting
Remove setting of CONFIG_CAN_MAX_FILTER and rely on driver defaults.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Henrik Brix Andersen
65eee6d3d9 drivers: can: increase default setting for software-limited RX filters
Increase the default number of software-limited CAN RX filters across the
drivers. Some of these were chosen quite conservative, requiring custom
configuration for even simple in-tree samples.

Users can reduce the number of available RX filters to reduce RAM footprint
as needed.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Henrik Brix Andersen
479666f26f drivers: can: rcar: rename CONFIG_CAN_RCAR_MAX_FILTER Kconfig option
Rename Kconfig option CONFIG_CAN_RCAR_MAX_FILTER to
CONFIG_CAN_RCAR_MAX_FILTERS to match remaining CAN driver Kconfig option
naming.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Henrik Brix Andersen
d3104b9f6d drivers: can: xmc4xxx: use proper namespace for Kconfig symbols
Use proper namespace for the CAN xmc4xxx Kconfig symbols, renaming
CONFIG_CAN_MAX_FILTER to CONFIG_CAN_XMC4XXX_MAX_FILTERS.

This prevents Kconfig symbol clashes between different CAN controller
drivers.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Henrik Brix Andersen
38c3297421 drivers: can: stm32: fdcan: use proper namespace for Kconfig symbols
Use proper namespace for the STM32 FDCAN Kconfig symbols, renaming
CONFIG_CAN_MAX_STD_ID_FILTER to CONFIG_CAN_STM32_FDCAN_MAX_STD_ID_FILTERS
and CONFIG_CAN_MAX_EXT_ID_FILTER to
CONFIG_CAN_STM32_FDCAN_MAX_EXT_ID_FILTERS.

This prevents Kconfig symbol clashes between different CAN controller
drivers.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Henrik Brix Andersen
f2a6a191cf drivers: can: stm32: bxcan: use proper namespace for Kconfig symbols
Use proper namespace for the STM32 bxCAN Kconfig symbols, renaming
CONFIG_CAN_MAX_STD_ID_FILTER to CONFIG_CAN_STM32_BXCAN_MAX_STD_ID_FILTERS
and CONFIG_CAN_MAX_EXT_ID_FILTER to
CONFIG_CAN_STM32_BXCAN_MAX_EXT_ID_FILTERS.

This prevents Kconfig symbol clashes between different CAN controller
drivers.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Henrik Brix Andersen
89a238d74c drivers: can: mcux: flexcan: use proper namespace for Kconfig symbols
Use proper namespace for the MCUX FlexCAN Kconfig symbols, renaming
CONFIG_CAN_MAX_FILTER to CONFIG_CAN_MCUX_FLEXCAN_MAX_FILTERS and
CONFIG_CAN_MAX_MB to CONFIG_CAN_MCUX_FLEXCAN_MAX_MB.

This prevents Kconfig symbol clashes between different CAN controller
drivers.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Henrik Brix Andersen
f2e49c8d55 drivers: can: mcp251xfd: use proper namespace for Kconfig symbols
Use proper namespace for the CAN mcp251xfd Kconfig symbols, renaming
CONFIG_CAN_MAX_FILTER to CONFIG_CAN_MCP251XFD_MAX_FILTERS.

This prevents Kconfig symbol clashes between different CAN controller
drivers.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Henrik Brix Andersen
4ec070570b drivers: can: max32: use proper namespace for Kconfig symbols
Use proper namespace for the CAN max32 Kconfig symbols, renaming
CONFIG_CAN_MAX_FILTER to CONFIG_CAN_MAX32_MAX_FILTERS.

This prevents Kconfig symbol clashes between different CAN controller
drivers.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Henrik Brix Andersen
6234480a57 drivers: can: mcp2515: use proper namespace for Kconfig symbols
Use proper namespace for the CAN mcp2515 Kconfig symbols, renaming
CONFIG_CAN_MAX_FILTER to CONFIG_CAN_MCP2515_MAX_FILTERS.

This prevents Kconfig symbol clashes between different CAN controller
drivers.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Henrik Brix Andersen
8b52241c06 drivers: can: sja1000: use proper namespace for Kconfig symbols
Use proper namespace for the CAN sja1000 Kconfig symbols, renaming
CONFIG_CAN_MAX_FILTER to CONFIG_CAN_SJA1000_MAX_FILTERS.

This prevents Kconfig symbol clashes between different CAN controller
drivers.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Henrik Brix Andersen
62f7dfa4be drivers: can: native_linux: use proper namespace for Kconfig symbols
Use proper namespace for the CAN native_linux driver Kconfig symbols,
renaming CONFIG_CAN_MAX_FILTER to CONFIG_CAN_NATIVE_LINUX_MAX_FILTERS.

This prevents Kconfig symbol clashes between different CAN controller
drivers.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Henrik Brix Andersen
4333f98b2c drivers: can: loopback: use proper namespace for Kconfig symbols
Use proper namespace for the CAN loopback driver Kconfig symbols, renaming
CONFIG_CAN_MAX_FILTER to CONFIG_CAN_LOOPBACK_MAX_FILTERS.

This prevents Kconfig symbol clashes between different CAN controller
drivers.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-12-09 14:54:02 -05:00
Martin Hoff
7c87f23c9b boards: silabs: add missing clock frequency on spi eusart node
This patch add the clock-frequency property for two board. Without this
patch, the frequency is silently set to 1 Mhz which can introduce
some lack of understanding.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-09 14:53:51 -05:00
Qingsong Gou
7c39469e17 drivers: pwm: sf32lb: add atim based pwm driver
add atim based pwm driver for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-09 09:54:16 -05:00
Qingsong Gou
01a7b9e2d8 dts: arm: sifli: sf32lb52x: add atim node
add atim timer node for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-09 09:54:16 -05:00
Qingsong Gou
8d331b7b08 dts: bingdings: pwm: add sifli,sf32lb-atim-pwm
add sifli,sf32lb-atim-pwm bingdings

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-09 09:54:16 -05:00
Qingsong Gou
ae25d71a63 dts: bingdings: timer: add sifli,sf32lb-atim
add sifli,sf32lb-atim bingdings

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-09 09:54:16 -05:00
Emil Gydesen
4e98b05755 tests: Bluetooth: Tester: Fix bad BIS sync shift
The shift is an old leftover from when the BAP API was
different and BIT(1) means BIS Index 1, but now BIT(0)
means BIT Index 1.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-09 09:53:35 -05:00
Joakim Andersson
2226ba8778 test: drivers: modem: Test modem cmd send and parse response
Add test cases to verify modem_cmd_send functionality, including parsing
of response parameters.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2025-12-09 09:53:20 -05:00
Joakim Andersson
79b9025315 drivers: modem: Include empty string arguments in argument parsing
When parsing AT command responses, empty string arguments were being
ignored if they occur it the end of the response.
This is not only iconsistent behavior, but also causes issues when
parsing responses where we need to know the number of arguments.
For example, the +CEREG response and unsolicited command response which
we need to know if it is response or unsolicited command response to
correctly parse the it, as the first argument will be different.
Example:
Response:     +CEREG: 5,4,\"0A0B\",\"FFFFFFFF\",9,0,0,,
Notification: +CEREG: 4,\"0A0B\",\"FFFFFFFF\",9,0,0,,
Here we want to know that response has 8 arguments, not 7, or we will
confuse it with the notification.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2025-12-09 09:53:20 -05:00
Yassine El Aissaoui
15a347b405 drivers: mcux_os_timer: Add Kconfig option for MIN_DELAY configuration
Introduce CONFIG_MCUX_OS_TIMER_MIN_DELAY to allow the configuration
of the minimum delay cycles.

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-12-09 09:53:05 -05:00
Jonathan Nilsen
3e081acf9c soc: nordic: uicr: fix pin function ignore handling in CTRLSEL lookup
Selecting the correct CTRLSEL value for VPR IO pins relies on
mapping any pinctrl psel value with the correct port/pin set on the
VPR nodes in devicetree to the same CTRLSEL value, to avoid enumerating
all permutations of (pin function, port, pin).

However, the mechanism did not work as intended and ended up mapping all
these pins to GPIO instead, which meant that the pins did not behave
as expected.

Update the handling so that it works as intended.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-12-09 09:52:50 -05:00
Julien Racki
dc7f445dbd drivers: ethernet: stm32: Add generic helper functions
This commit introduces helper functions to avoid having large
#if DT_HAS_COMPAT_STATUS_OKAY ... #else blocks,
improving readability.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-12-09 09:52:43 -05:00
Mathieu Choplain
65f710f6f4 drivers: gpio: stm32: return error on invalid WKUP configuration for WBA
When an invalid GPIO configuration is provided for a wake-up pin on
STM32WBA series, display a series-specific message and return an error.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 09:52:22 -05:00
Mathieu Choplain
19666bb12e drivers: gpio: stm32: bubble-up wake-up pin configuration error
When an error occurs while attempting to configure a GPIO pin as wake-up
pin, return the error to the caller instead of merely printing a log
message which may not even be displayed.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 09:52:22 -05:00
Julien Vermillard
eef720ff3f net: lwm2m: add send scheduler helper objects
Introduce the optional OMA 10523/10524 send scheduler extension to manage
cached resources, including control and sampling rule objects, cache
filter with gt/lt/st and pmin/pmax handling, max-age/max-sample limits,
and registration flush helper.
Add an overlay to the LWM2M client sample.
Add a fake humidity sensor.

Signed-off-by: Julien Vermillard <julien@clunkymachines.com>
2025-12-09 09:52:11 -05:00
Tony Han
dc3a719917 dts: arm: microchip: sama7d6: reorganize and add dtsi files for SiPs
Add dtsi files for SiPs and put all the dtsi files for sama7d6 to
"dts/arm/microchip/sam/sama7/sama7d6".
Update the path of dtsi in the board dts file accordingly.

URL for SiP (System-in-Package):
https://ww1.microchip.com/downloads/aemDocuments/documents/MPU32/ProductDocuments/DataSheets/SAMA7D6-Series-SiP-Data-Sheet-DS60001853.pdf

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-12-09 09:51:59 -05:00
Tony Han
7ebf2b3375 dts: arm: microchip: sama7g5: reorganize and add dtsi files for SiPs
Add dtsi files for SiPs and put all the dtsi files for sama7g5 to
"dts/arm/microchip/sam/sama7/sama7g5".
Update the path of dtsi in the board dts file accordingly.

URL for SiP (System-in-Package):
https://ww1.microchip.com/downloads/aemDocuments/documents/MPU32/ProductDocuments/DataSheets/SAMA7G5-SIP-Series-Data-Sheet-DS50003577.pdf

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-12-09 09:51:59 -05:00
Lyle Zhu
2571b7efa3 Bluetooth: Classic: HFP_HF: Fix invalid indicator index issue
A invalid indicator index will cause the underflow of the array
`ag_ind` if the indicator index is not returned by AG in the
response of AT command `AT+CIND=?`.

Replace hardcoded `-1` values with HFP_HF_INDICATOR_INVALID constant
for better code readability and maintainability. Add proper bounds
checking to validate indicator indices before accessing the `ag_ind`
array using the `ind_table` mapping.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-09 09:51:47 -05:00
Lyle Zhu
75ff93ae21 Bluetooth: Classic: HFP: Fix SCO conn cannot be released issue
There is an issue found that the sco conn cannot be released when the
SCO has been disconnected. The sco conn count is referred in the sco
connected callback due to the `sco_conn` is NULL while `sco_conn`
should not be NULL when the sco connected callback is triggered.

It is a race condition issue where the sco connected callback is
triggered before `sco_conn` is updated. The sco conn reference count
has been referred incorrectly, actually it should not be referred.

Replace direct pointer access to `sco_conn` with atomic operations to
prevent race conditions in concurrent SCO connection scenarios.

If the value of `sco_conn` is not NULL when trying to set the return
value of `bt_conn_create_sco()` to `sco_conn`, it means the race
condition occurs. In this situation, discount the sco conn reference
count to fix the issue.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-09 09:51:18 -05:00
Tomasz Chyrowicz
764f0d183b img_mgmt: Use absolute address in active partition
Use absolute addresses while determining a running application
partition.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-12-09 09:51:07 -05:00
Tomasz Chyrowicz
276ebfcf24 img_util: Use absolute address in active partition
Use absolute addresses while determining a running application
partition.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-12-09 09:51:07 -05:00
Tomasz Chyrowicz
f7e1d0c768 soc: Use absolute address in active partition
Use absolute addresses while determining a running application
partition.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-12-09 09:51:07 -05:00
Tomasz Chyrowicz
88495301d3 flash_map: Add a macro to fetch controller ID
Add a macro that allows to get the node identifier of the flash
controller the area/partition resides on.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-12-09 09:51:07 -05:00
cyliang tw
8f13b37763 tests: drivers: adc: adc_api: support numaker_m3334ki
Add support for Nuvoton numaker board numaker_m3334ki.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-12-09 09:50:26 -05:00
cyliang tw
452e001932 dts: arm: nuvoton: add adc node of numaker m333x
Update m333x.dtsi, to add adc node for adc driver support.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-12-09 09:50:26 -05:00
Alain Volmat
366f337743 dts: bindings: display: clarify lcd-controller pixel-format
Clarify the pixel-format property of a lcd-controller in order to
indicate that this is the pixel-format of data generated by the
lcd-controller, not only for a panel attached to this controller
but also for another device such as interface converter which
would be receiving the data from the lcd-controller.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-09 09:50:07 -05:00
Alain Volmat
d0c45d981a drivers: mipi_dsi: configure DSI host using pixelformat from panel
Use the pixelformat information provided by the DSI panel in order
to control the color coding of the DSI host.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-09 09:50:07 -05:00
Alain Volmat
73ca8c9f76 display: stm32-ltdc: clarify pixel-format property of lcd_controller
So far the LTDC driver has not be using the pixel-format property
defined in the lcd_controller bindings. This property describes the
format of the panel connected to the LTDC output. It is not to be
confused with the format of the LTDC layers (aka format of data stored
into the framebuffer). The LTDC accepts various input formats while in
most cases only RGB888 is supported for output. RGB666 is also supported
by enabling Dithering however it is not supported currently by the
driver.
Enforce verification of the pixel-format given to the LTDC device-tree
by checking that it matches with the platform supported formats.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-09 09:50:07 -05:00
Alain Volmat
6a336abb3c boards: stm32: correct LTDC panel pixel-format to RGB888
LTDC pixel-format property has been wrongly set to various values
so far without being actually used by the LTDC driver itself.
This property describes the format of the output of the LTDC
(aka format of data between the LTDC and a panel or between
the LTDC and the MIPI-DSI block). Currently only RGB888 is
supported.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-09 09:50:07 -05:00
Michał Stasiak
d6062435ff tests: drivers: timer: nrf_grtc_timer: wait for coverage dump
If test is to be run in coverage mode, wait for output to
dump at the end of a failing testcase.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-09 09:49:44 -05:00
Benjamin Cabé
a297a65e60 doc: ci: refresh requirements.txt pinned versions and SHAs
This ensures, we pick a `urllib` version >2.6.0.
See:
- CVE-2025-66418 High severity
- CVE-2025-66471 High severity

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:49:26 -05:00
Benjamin Cabé
223e521275 scripts: ci: refresh requirements-actions.txt pinned versions and SHAs
This ensures, we pick a `urllib` version >2.6.0.
See:
- CVE-2025-66418 High severity
- CVE-2025-66471 High severity

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:49:26 -05:00
Mathieu Choplain
923ece1eea drivers: sensor: qdec_stm32: don't enable LL full driver module
The QDEC driver does not use any of the functions implemented in the TIM
LL full driver module (`stm32XXxx_ll_tim.c`), only those provided by the
LL header (`stm32XXxx_ll_tim.h`).

Disable compilation of the unnecessary full driver module.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 11:14:14 +01:00
Mathieu Choplain
aaf69f5cef drivers: rtc: stm32: don't enable LL full driver module
The RTC driver does not use any of the functions implemented in the LL full
driver module (`stm32XXxx_ll_rtc.c`), only those provided by the LL header
(`stm32XXxx_ll_rtc.h`).

Disable compilation of the unnecessary full driver module.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 11:13:45 +01:00
Mathieu Choplain
3546e73cda drivers: flash: stm32_ospi: cleanup STM32H5-related quirks
STM32H5 series now uses the dedicated `flash_stm32_xspi` driver instead.
Remove all quirks related to H5 in the STM32 OSPI driver.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-09 11:13:27 +01:00
Krzysztof Chruściński
8422e7ed4f tests: arch: arm: Increase kobject text area when no optimization
When CONFIG_NO_OPTIMIZATIONS=n then kobject area can get inflated.
Some targets are currently fail to compile due to that.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-09 11:13:04 +01:00
Haoran Jiang
2a2d5b7be4 drivers: crc: sf32lb: Fix crc calculation error
When the number of input bits changes, the value in the `CR_DATASIZE`
register should be modified accordingly.
The CRC32_C algorithm does not require the result to be XOR

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-12-09 11:12:52 +01:00
Qingsong Gou
9bdafbf23b drivers: clock_control: sf32lb: fix GPTIM2 clock rate
Fix GPTIM2 clock rate

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-09 11:12:30 +01:00
Peter Wang
a249d79afe boards: frdm_mcxa577: add frdm_mcxa577 board
1. add soc mcxa577
2. add board frdm_mcxa577

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-12-09 11:12:03 +01:00
Peter Wang
336a25c1eb drivers: hwinfo: add mcxa577 support into mcux_mcx_cmc
1. add mcxa577 support into hwinfo_mcux_mcx_cmc

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-12-09 11:12:03 +01:00
Markus Becker
80d09acfca drivers: Typo in Interrupt
Trivial typo fix.

Signed-off-by: Markus Becker <Markus.Becker@tridonic.com>
2025-12-09 11:11:03 +01:00
Jordan Yates
a1970ebd2f bluetooth: hci: spi: fix length check
The buffer length check was not updated with the change to the H4 header
push location (changed in 6113230c). As the complete buffer is now
provided, a buffer of length `SPI_MAX_MSG_LEN` is now valid.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-09 09:27:32 +01:00
Benjamin Cabé
cdcdd10c15 MAINTAINERS: remove nbalabak due to inactivity
Last activity: 22 months ago (pr)

Recent activities:

- pr: driver: ilc: Interrupt Latency Counter driver
  https://github.com/zephyrproject-rtos/zephyr/pull/68518
  (2024-02-05T07:03:16Z)
- issue: Create an API for Single Event Upset (SEU) Driver Devices
  https://github.com/zephyrproject-rtos/zephyr/issues/67493
  (2024-01-11T18:18:43Z)
- commit: Commit to zephyrproject-rtos/zephyr
  https://github.com/zephyrproject-rtos/zephyr (2024-01-05T08:00:00Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Benjamin Cabé
8e3efa39ca MAINTAINERS: remove swinslow due to inactivity
Last activity: 20 months ago (review)

Recent activities:

- review: Review on 'scripts: zephyr_module: Add CPE support'
  https://github.com/zephyrproject-rtos/zephyr/pull/66495 (2024-03-20T11:48:25Z)

- review: Review on 'scripts: zspdx: fix writing custom license IDs'
  https://github.com/zephyrproject-rtos/zephyr/pull/45815 (2022-05-21T17:26:45Z)

- pr: doc: Fix west spdx command docs formatting bug
  https://github.com/zephyrproject-rtos/zephyr/pull/43994 (2022-03-19T19:13:36Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Benjamin Cabé
57690087b1 MAINTAINERS: remove sgrrzhf due to inactivity
Last activity: 2 years ago (review)

Recent activities:

- review: Review on 'Introduce early print'
  https://github.com/zephyrproject-rtos/zephyr/pull/65046
  (2023-11-28T04:20:11Z)
- pr: MAINTAINERS: Add myself to ARM arch as collaborator
  https://github.com/zephyrproject-rtos/zephyr/pull/65505
  (2023-11-21T09:02:18Z)
- commit: Commit to zephyrproject-rtos/zephyr
  https://github.com/zephyrproject-rtos/zephyr (2023-11-21T08:00:00Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Benjamin Cabé
1659552d15 MAINTAINERS: remove sateeshkotapati due to inactivity
Last activity: 18 months ago (review)

Recent activities:

- review: Review on 'drivers: spi: gecko: Apply frequency configuration,
  support devices with a single USART'
  https://github.com/zephyrproject-rtos/zephyr/pull/72145
  (2024-05-27T06:40:15Z)
- pr: boards: silabs: Added support for Counter and Watchdog in
  efr32xg24_dk2601b https://github.com/zephyrproject-rtos/zephyr/pull/71300
  (2024-04-10T05:20:18Z)
- pr: gecko: service: sysrtc files updated
  https://github.com/zephyrproject-rtos/hal_silabs/pull/62
  (2024-04-10T05:04:03Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Benjamin Cabé
8eb468d61d MAINTAINERS: remove ppryga due to inactivity
No activity from this user for over 2 years. It is likely that they're
now @ppryga-nordic but since it doesn't seem anybody noticed the
discrepancy in many years, I think it is safe to drop the entry :)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Benjamin Cabé
6fdce219d0 MAINTAINERS: remove qianruh due to inactivity
Last activity: 18 months ago (pr)

Recent activities:

- pr: tests: subsys: sensing: add sensing test skeleton
  https://github.com/zephyrproject-rtos/zephyr/pull/73124
  (2024-05-22T06:55:42Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Benjamin Cabé
213bb20b0a MAINTAINERS: remove povergoing due to inactivity
Last activity: 22 months ago (review)

Recent activities:

- review: Review on 'arm64: smp: Fix cache operations in the SMP'
  https://github.com/zephyrproject-rtos/zephyr/pull/66647
  (2024-01-29T07:37:19Z)
- review: Review on 'tz: Remove unused trustzone driver'
  https://github.com/zephyrproject-rtos/zephyr/pull/66224
  (2023-12-07T06:31:24Z)
- review: Review on ' arch: arm: cortex_m: Move default configs to a file
  and add consistency checks '
  https://github.com/zephyrproject-rtos/zephyr/pull/64978
  (2023-12-05T06:06:35Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Benjamin Cabé
b8c3b50cc0 MAINTAINERS: remove najumon1980 due to inactivity
Last activity: 18 months ago (review)

Recent activities:

- review: Review on 'x86: ia32: linker: move bss/noinit sections after data
  section'
  https://github.com/zephyrproject-rtos/zephyr/pull/73044
  (2024-05-22T06:47:31Z)
- pr: kernel: timer: fixes for log_timestamp test case failer due to timer
  PR regression
  https://github.com/zephyrproject-rtos/zephyr/pull/72352
  (2024-05-06T10:47:53Z)
- review: Review on 'Revert 69705 and fix #72344'
  https://github.com/zephyrproject-rtos/zephyr/pull/72345
  (2024-05-06T09:53:31Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Benjamin Cabé
053a0624bf MAINTAINERS: remove mrfuchs due to inactivity
Last activity: 2 years ago (pr)

Recent activities:

- pr: drivers: bluetooth: slz_hci: Configure Number of Completed Packets
  threshold https://github.com/zephyrproject-rtos/zephyr/pull/62455
  (2023-09-08T15:59:14Z)
- pr: modules: hal_silabs: Update library BLOBs to version 4.2.4
  https://github.com/zephyrproject-rtos/hal_silabs/pull/38
  (2023-09-08T09:15:52Z)
- commit: Commit to zephyrproject-rtos/zephyr
  https://github.com/zephyrproject-rtos/zephyr (2023-09-08T07:00:00Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Benjamin Cabé
600601aa0b MAINTAINERS: remove jgoppert due to inactivity
Last activity: 18 months ago (review)

Recent activities:

- review: Review on 'drivers: input: sbus remote controller support'
  https://github.com/zephyrproject-rtos/zephyr/pull/72628
  (2024-05-26T21:59:03Z)
- review: Review on 'zbus: improve the way of storing observers'
  https://github.com/zephyrproject-rtos/zephyr/pull/60713
  (2023-08-28T18:07:20Z)
- review: Review on 'sensors: icm42688: Do not force rc oscillator'
  https://github.com/zephyrproject-rtos/zephyr/pull/60552
  (2023-07-20T00:37:34Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Benjamin Cabé
f8f0bcf0cd MAINTAINERS: remove inteljiangwe1 due to inactivity
Last activity: 2 years ago (review)

Recent activities: - review: Review on 'drivers: dma: add init version for
dma sedi driver'
  https://github.com/zephyrproject-rtos/zephyr/pull/63129
  (2023-10-09T01:45:30Z)
- commit: Commit to zephyrproject-rtos/zephyr
  https://github.com/zephyrproject-rtos/zephyr (2023-08-04T07:00:00Z)
- pr: drivers: ipm: add init version of sedi ipm driver
  https://github.com/zephyrproject-rtos/zephyr/pull/61142
  (2023-08-04T04:23:36Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Benjamin Cabé
4852e61f9e MAINTAINERS: remove casparfriedrich due to inactivity
Last activity: 20 months ago (pr)

Recent activities:
  - pr: drivers: adc: tla2021: Fix reference voltage
    https://github.com/zephyrproject-rtos/zephyr/pull/71179
    (2024-04-06T15:00:32Z)
  - commit: Commit to zephyrproject-rtos/zephyr
    https://github.com/zephyrproject-rtos/zephyr (2024-04-03T07:00:00Z)
  - pr: modules: segger: Add Kconfig option to use CCM for data
    https://github.com/zephyrproject-rtos/zephyr/pull/70919
    (2024-03-30T18:26:39Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Benjamin Cabé
c29596cfea MAINTAINERS: remove Casper-Bonde-Bose due to inactivity
Last activity: 18 months ago (review)

Recent activities:
  - review: Review on 'Bluetooth: Audio: Shell: Fix build errors for USB=n'
    https://github.com/zephyrproject-rtos/zephyr/pull/72733
    (2024-05-16T06:13:15Z)
  - review: Review on 'Bluetooth: ISO: Introduce bt_iso_chan_send_ts'
    https://github.com/zephyrproject-rtos/zephyr/pull/68611
    (2024-02-07T07:53:39Z)
  - review: Review on 'Bluetooth: BAP: Fix issue with setting invalid iso
  data path'
    https://github.com/zephyrproject-rtos/zephyr/pull/67835
    (2024-01-22T10:15:03Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Benjamin Cabé
9b961e7382 MAINTAINERS: remove Andrewpini due to inactivity
Last activity: 18 months ago (pr)
Recent activities:
  - pr: Bluetooth: Mesh: Fix PB GATT adv name
    https://github.com/zephyrproject-rtos/zephyr/pull/73526
    (2024-05-30T13:56:48Z)
  - commit: Commit to zephyrproject-rtos/zephyr
    https://github.com/zephyrproject-rtos/zephyr (2024-05-30T07:00:00Z)
  - review: Review on 'tests: Bluetooth: Mesh: move semaphores out bsim
  initializations'
    https://github.com/zephyrproject-rtos/zephyr/pull/73464
    (2024-05-29T12:59:46Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-09 09:27:21 +01:00
Phuc Pham
5392683060 boards: renesas: rzv: Update the memory layout for board RZ/V2H core CR8
Update the memory layout to use the SRAM3 node for board RZ/V2H core CR8

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-12-09 09:27:12 +01:00
Phuc Pham
931de13d52 soc: renesas: rzv: Modify soc files for RZV2H core CR8
- Enable the DTCM region in soc.c
- Apply MPU configuration for the new memory region (itcm, dtcm,
  sram,...)
- Turn on the Kconfig to relocate the vector table to 0x0.

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-12-09 09:27:12 +01:00
Phuc Pham
0d3d86ae52 dts: renesas: rzv: Add new memory nodes for RZ/V2H core CR8
Add itcm, dtcm and sram3 region for RZ/V2H core CR8

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-12-09 09:27:12 +01:00
Mirai SHINJO
5e530e2d2d boards: renesas: ek_ra2l1: set 'full_name'
Set 'full_name' for RA2L1 Evaluation Kit.

Signed-off-by: Mirai SHINJO <oss@mshinjo.com>
2025-12-09 09:26:34 +01:00
Georgios Vasilakis
2338a37ff2 modules: tf-m: Add syscall header dependency for TF-M
Zephyr generates the system call headers using CMake custom
targets and various scripts. Some platforms, like the Nordic onces,
reuse some files located in Zephyr inside the TF-M build as well.
Because of this the generated Zephyr headers needs to exist before
TF-M starts the build process in order to succeed.

This adds a dependency to make sure TF-M starts building after the
Zephyr custom command which generates the system call headers is
executed.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-12-09 09:26:24 +01:00
Martin Hoff
9f9ea79c7f tests: drivers: dma: change power-state checks in dma loop test
This patch allows a DMA device that is part of a power domain to start
the test in a suspended power-management state. If another device makes
the power domain active (for example, the console UART), the DMA device
within the same power domain may enter a suspended state.
The test will now verify that the device is suspended/off before the
test begins, active during the test, and restored to its initial state
at the end.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-09 09:26:13 +01:00
Daniel Leung
701cbfbc23 xtensa: mmu: may need to copy entries during L2 table dup
During L2 page table duplication, there are cases where we
should copy the table over instead of restoring the PTEs.
Add the ability to copy the table over.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
8d0103b4ad xtensa: mmu: spin lock for counter manipulation
This adds a spinlock to guard page table counter updates.
For some reasons, without this, xt-clang generated code would
result in incorrect counter update possibly due to memory
access ordering (though GCC generated code works fine without
the spin lock).

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
3e33978078 cache: deprecate CONFIG_DOUBLEMAP
Use CONFIG_CACHE_HAS_MIRRORED_MEMORY_REGIONS instead.
The new kconfig reflects more correctly on what is going on
in hardware. Also, this is not enabled by default if CPU
cache is not coherent. CPU cache can be incoherent and yet
there are no mirrored memory regions. Those relying on this
deprecated default behavior has their config adding
CONFIG_CACHE_HAS_MIRRORED_MEMORY_REGIONS separately.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
0540d274c0 xtensa: remove CONFIG_XTENSA_RPO_CACHE
This removes the following kconfigs:

() CONFIG_XTENSA_RPO_CACHE
() CONFIG_XTENSA_CACHED_REGION
() CONFIG_XTENSA_UNCACHED_REGION

The associated feature is actually SoC specific and not general
architecture feature. Since the only user of these have its own
implementation, we can now safely remove these.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
a82a09a314 soc: intel_adsp: SoC specific cached/uncached regions support
This re-implements the CONFIG_XTENSA_RPO_CACHE and its cached
and uncached region support in the SoC layer. This is in
preparation for removing RPO cache in the architecture layer
as this is a SoC feature and not an architecture feature.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
5fefc8b8b8 xtensa: cache: guard kconfig CONFIG_XTENSA_{UN,}CACHED_REGION
Make sure code using these kconfigs are only compiled if they
are defined. They will be removed later. But for now, we need
these #ifdef to avoid breaking the build when we move these
caching functions to SoC layer.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
a8c1df6b80 cache: adds CONFIG_SOC_CACHE
This allows SoC to define their custom cache related functions
and are used by sys_cache_*() functions.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
169304813a cache: move arch_mem_coherent() into cache subsys
arch_mem_coherent() is cache related so it is better to move it
under cache subsys. It is renamed to sys_cache_is_mem_coherent()
to reflect this change.

The only user of arch_mem_coherent() is Xtensa. However, it is
not an architecture feature. That's why it is moved to the cache
subsys.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
a0a529aecc soc: intel_adsp: move ARCH_XTENSA_SET_RPO_TLB inside
The macro ARCH_XTENSA_SET_RPO_TLB is only used for Intel Audio
DSP. The specific memory mapping requiring this is SoC specific
feature and not a feature on Xtensa in general. It should not be
declared in the architecture layer. So move it.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
06b462bdf6 soc: intel_adsp: add CONFIG_INTEL_ADSP_MEMORY_IS_MIRRORED
This adds a kconfig to indicate a memory mapping where physical
memory regions are both mirrored and mapped in different
addresses. Accessing one set of addresses is via CPU cache
while the other is directed to memory.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
b90b396e64 soc: intel_adsp/ace: move included linker script to include dir
This moves the ace-link.ld into include/linker to indicate it is
to be included by the main linker script. Also rename it to
ace-link-mirrored.ld to indicate that it is for the mirrored
cache configuration.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
301abd8630 xtensa: imply CONFIG_ARCH_HAS_RESERVED_PAGE_FRAMES if MMU
The Zephyr linker script usually puts something before
z_mapped_start (where .text is), for example, vecbase vectors.
So we need to reserve those space or else k_mem_map() would be
mapping those which may result in faults.

To avoid mapping there, CONFIG_ARCH_HAS_RESERVED_PAGE_FRAMES
needs to be used. Since it is common when MMU is enabled, we
should enable it by default using imply. All current Xtensa
MMU SoCs all have this selected anyway. Using 'imply' instead
of 'select' is to allow it to be disabled if so desired.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
48537aeb1f xtensa: CONFIG_ARCH_HAS_USERSPACE should be in arch layer
CONFIG_ARCH_HAS_USERSPACE should be in arch layer as MMU and MPU
support both in the arch layer.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
c11b666ab4 soc: intel_adsp/ace: remove secondary boot flow kconfig
This is no longer needed for simulator to start other CPUs.
So remove it.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
27b1c3138f xtensa: mmu: remove CONFIG_XTENSA_MMU_DOUBLE_MAP
This removes CONFIG_XTENSA_MMU_DOUBLE_MAP and its associated
code. The double mapping of a page into both cached and
uncached memory regions should be done in SoC and application,
as it gives finer control on what actually is being mapped.
For example, if a page only needs to mapped in cached region,
there is no need to map it in the uncached region. This may
save the need to allocate a L2 page table for it, and saves
some memory.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
2e1b4de6d7 soc: intel_adsp/ace: rework MMU mapping array
Rework the SoC MMU mappings in preparation for removal of
double mapping code in Xtensa architecture code. This will let
the SoC layer and application to fine tune memory mappings
instead of having double mapping forcibly applied everywhere.

The modified mapping array mimics what the double mapping
would have done simply to have the same behavior. Future
optimizations can be done to remove unnecessary mappings.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
fdc2e88435 soc: intel_adsp/ace: don't use default MMU mappings
This adds the arch default MMU mappings into the SoC mapping
array. This is in preparation of not forcibly doing double
mapping in architecture code as this type of double mapping
should be specified for individual regions. This allows
the SoC layer to fine tune the mappings as not anything
needs to be double-mapped.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
1bc72e68c6 xtensa: mmu: allow SoC to override default mappings
Adds kconfig CONFIG_XTENSA_MMU_USE_DEFAULT_MAPPINGS for arch
code to initialize the page tables with a few default mappings
covering text, data, BSS and RODATA. Disabling this allows
the SoC to customize and fine-tune the mappings if needed.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
31428237dc soc: intel_adsp/ace: move Xtensa HiFi kconfigs to each SoC
Moves the HiFi related kconfigs to their respective SoC
kconfigs as it is specific to the SoC... and this requires
creating new kconfigs for each SoC series.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
3ed951e150 tests: lib/newlib: skip intel_adsp platforms
The newlib that comes with the Xtensa toolchain is very old,
and is not thread-safe _at all_. So the newlib tests would
fail sometimes but pass in the next run. So skip the newlib
tests for intel_adsp platforms.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
4e54b2f37f tests: mem_protect/stack_random: more randomness for intel_adsp
Due to CONFIG_DCACHE_LINE_SIZE=64, the stack is always aligned
on 64 bytes. With data cache line size and the default of
CONFIG_STACK_POINTER_RANDOM=64 in test, there is not much
randomness as any added offset (<= 64) would be rounded up to
64 bytes due to stack alignment. For the added offset to stack
pointer to actually mean something, CONFIG_STACK_POINTER_RANDOM
has to be larger.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Daniel Leung
04dd427bf1 xtensa: cleanup crt1.S
Removes some unused macros.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-09 09:25:33 +01:00
Charles Hardin
b38a46bade drivers: ethernet: lan9250: add in the reset gpio configurate
The reset gpio field was in the config structure but was not coded
into the initialization path. So, add the appropriate code to handle
the gpio setup when it is defined in the device tree.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-12-09 09:25:15 +01:00
Charles Hardin
855631aeba drivers: ethernet: lan9250: add support for a random mac address
Extend the lan9250 driver to support using a local administered
unicast random mac address during init. This follows the device tree
settings for zephyr_random_mac_address from other ethernet drivers
for the added support.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-12-09 09:25:15 +01:00
Vladislav Kulikov
286cefbb30 smf: improve sibling transitions speed
Sibling transitions are now detected in smf_set_state() when source and
destination share the same parent, removing the need for states to flag
the sibling transition explicitly.

Restore include/zephyr/smf.h and lib/smf/Kconfig to match main so this
change only carries the functional update in lib/smf/smf.c, and add a
micro-benchmark test. For accurate statistics, run the test on a board.

Micro-benchmark setup
- Board: NUCLEO-F746ZG (STM32F746, ~192 MHz)
- 200000 iterations per state transition
- Simple HSM (letters are nodes; R is root):

=== SMF transition micro-benchmark ===
        R
      /   \
     A     B
    / \   / \
   C   D E   F
  / \         \
 G   H         J

Current smf_set_state:
======================
Sibling Transitions
(A->B) : 459 cycles/transition (2390 ns)
(C->D) : 482 cycles/transition (2510 ns)
(G->H) : 522 cycles/transition (2718 ns)

Other Transitions
(G<->G) : 237 cycles/transition (1234 ns)
(C->G) : 343 cycles/transition (1786 ns)
(A->H) : 452 cycles/transition (2354 ns)
(G->D) : 651 cycles/transition (3390 ns)
(D->E) : 752 cycles/transition (3916 ns)
(J->D) : 893 cycles/transition (4651 ns)
(J->G) : 1077 cycles/transition (5609 ns)

New smf_set_state:
==================
Sibling Transitions
(A->B) : 356 cycles/transition (1854 ns)(22% faster)
(C->D) : 356 cycles/transition (1854 ns)(26% faster)
(G->H) : 356 cycles/transition (1854 ns)(32% faster)

Other Transitions
(G<->G) : 258 cycles/transition (1343 ns)(9% slower)
(C->G) : 356 cycles/transition (1854 ns)(4% slower)
(A->H) : 464 cycles/transition (2416 ns)(3% slower)
(G->D) : 707 cycles/transition (3682 ns)(9% slower)
(D->E) : 797 cycles/transition (4151 ns)(6% slower)
(J->D) : 970 cycles/transition (5052 ns)(9% slower)
(J->G) : 1157 cycles/transition (6026 ns)(8% slower)

This change makes sibling transitions
deterministic and cheaper (356 cycles on nsim),
at the cost of a small increase for deeper/LCA
transitions (~7–9%). This is a net win for state machines
that mostly hop between siblings.

Signed-off-by: Vladislav Kulikov <vlad_kulikov_c@pm.me>
2025-12-08 22:27:54 -05:00
Laurentiu Mihalcea
e8d8979386 firmware: scmi: nxp: add "nxp" to the CPU protocol definitions
The SCMI CPU protocol is in fact a vendor extension from NXP. The current
naming used for the CPU protocol definitions (i.e. functions, structures,
macros) follows that of the SCMI standard protocols, which might be
misleading.

Include "nxp" in the name of all of the CPU protocol definitions.

This change was performed mechanically using "git grep" and "sed -i"
with some manual intervention.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-12-08 22:27:38 -05:00
Dennis Grijalva
61938e7460 mgmt: mcumgr: make mcumgr handler variable const
Ensure mcumgr handler variables are consts in order to make ld happy and
not emit the "LOAD segment with RWX permissions" warning

Signed-off-by: Dennis Grijalva <dennisgrijalva@meta.com>
2025-12-08 22:27:04 -05:00
Fabio Baltieri
4ab97f565e sys: getopt: drop the gcd definition
This is available in util.h since 646f255373 and the existing one
creates a collision and build breakage. Just drop it.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-12-08 22:26:48 -05:00
Dmitrii Sharshakov
8f0df404c2 tests: subsys: ipc: ipc_sessions: add _no_unbound tests for bsim
Also cover these code paths.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-08 15:02:29 -05:00
Dmitrii Sharshakov
7c1b95f435 tests: subsys: ipc: ipc_sessions: run on nrf5340bsim
Improve CI coverage.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-08 15:02:29 -05:00
Dmitrii Sharshakov
8f4f1fa5fa ipc: icmsg: fix unbound for POSIX
Make sure unbound works on nrf5340bsim.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-08 15:02:29 -05:00
Dmitrii Sharshakov
3411facb24 tests: subsys: ipc: ipc_sessions: decrement before sending
Once the primary CPU receives the block, it will immediately try to ask
the remote for blocks left to send.

On real hardware, this would typically work fine, since the IRQ
round-trip allows remote to finish the loop iteration.

However on nrf5340bsim the host answers immediately, receiving wrong
data and failing the test.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-08 15:02:29 -05:00
Dmitrii Sharshakov
c125d2dc96 tests: subsys: ipc: ipc_sessions: fix wrong sizeof usage
Fix clangd warnings around use of sizeof on pointers.

No functional change.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-08 15:02:29 -05:00
Dmitrii Sharshakov
bd982008fe tests: subsys: ipc: break busy loops
Busy loops without any way to yield to the kernel are not recommended,
and here it causes a multicore BabbleSim simulation to stall.

Co-authored-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-08 15:02:29 -05:00
Phi Bang Nguyen
646f255373 sys: util: Add gcd and lcm utilities
Add helpers to compute Greates Common Divisor (GCD) and Least Common
Multiple (LCM).

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
Signed-off-by: Trung Hieu Le <trunghieu.le@nxp.com>
2025-12-08 15:01:46 -05:00
Phi Bang Nguyen
1f31da3398 sys: util: Add SIGN macro
Add a macro to determine the sign of a value.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
Signed-off-by: Trung Hieu Le <trunghieu.le@nxp.com>
2025-12-08 15:01:46 -05:00
Phi Bang Nguyen
53f4f22968 west.yml: Update hal_stm32 revision for SIGN fix
Update the revision to include SIGN macro fix

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-12-08 15:01:46 -05:00
Firas Sammoura
a9500f3846 tests: riscv: Implement unit tests for change permissions function
This commit implements a new unit test suite to validate the
`z_riscv_pmp_change_permissions` function.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-12-08 15:01:37 -05:00
Firas Sammoura
7dc9e87f6c riscv: pmp: Add API to change region permissions at runtime
The new function 'z_riscv_pmp_change_permissions' provides a mechanism
to modify the Read, Write, and Execute (R/W/X) permissions of an
existing PMP region based on its memory attribute index.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-12-08 15:01:37 -05:00
Tom Chang
ab7a558f19 drivers: espi: npcx: workaround for missed IRQ1/12 on NPCX9M7FB
When the firmware wrote data to KBC/AUX output buffer, the hardware
automatically generated IRQ1/12 to notify the host. After the host read
the data, the EC received an output buffer empty (OBE) interrupt to
indicate that the next byte could be written. However, on the NPCX9M7FB,
this mechanism may cause IRQ1/12 to be missed if the firmware write new
data immediately after detecting that the output buffer is empty,
resulting in incorrect behavior.
To avoid missing IRQ1/12, the flow is changed so that it first checks
VWIRE_AVAIL to ensure no pending VW events. If no VW event is pending,
the firmware writes data to the output buffer and explicitly asserts
IRQ1/12 to notify the host. After the host reads the data and the OBE
interrupt triggers, the firmware clears IRQ1/12.
This updated sequence prevents IRQ1/12 from being lost and ensure
correct notification behavior.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-12-08 15:01:15 -05:00
Dennis Grijalva
9dbe4bed29 kernel: make static thread data variable const
Ensure static thread data variables are consts in order to make ld happy
and not emit the "LOAD segment with RWX permissions" warning

Signed-off-by: Dennis Grijalva <dennisgrijalva@meta.com>
2025-12-08 15:01:01 -05:00
Tom Burdick
dc512c820b MAINTAINERS: Update maintainership for myself
Transition my MAINTAINERS file statuses to align better with my new role
at Infineon. I loved my time at Intel and am forever thankful to have
been part of an amazing team. I look forward to leading Infineon in the
project.

Signed-off-by: Tom Burdick <thomas.burdick@infineon.com>
2025-12-08 15:00:37 -05:00
Mateusz Junkier
fb8a1ec9f3 Twister: fix serial port timeout
Fix for 1d70b70. Original code used start_time (set before flashing)
to calculate serial port wait timeout, which caused wait loop
to include flash duration, leading to exceed overall timeout.
Added serial_wait_start timestamp for avoid
including flash time in serial port enumeration timeout.
Make timeout dynamic (20% of flash_timeout, minimum 10s).

Signed-off-by: Mateusz Junkier <mateusz.junkier@intel.com>
2025-12-08 13:19:16 -05:00
Jisheng Zhang
1292d6e11a drivers: console: support building for SoCs with no MMU
The device_map() is not defined for SoCs with no MMU, add the
device_map() macro when !DEVICE_MMIO_IS_IN_RAM to support building for
SoCs with no MMU.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
2025-12-08 13:15:53 -05:00
Hake Huang
b3dff9bbbc tests: twister: using --no-rebuild in west flash
west flash deprecates --skip-rebuild to --no-rebuild

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-12-08 13:12:04 -05:00
Jordan Yates
d020049f01 scripts: twisterlib: main: trim run duration
Display the total run duration to two decimal points instead of ~14,
similar to the other displayed timestamps.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-08 13:11:44 -05:00
Jordan Yates
d1cd982f8f scripts: twisterlib: display testplan build duration
Display how long it takes to build the testplan in the logs. This can
be useful since the duration to bulid the plan can vary wildly depending
on the arguments given. Without this information, it is difficult to
tell (from CI logs) whether a long execution time is from actually
building and running the tests, or just generating the testplan.

For example, in a downstream repo:
```
./zephyr/scripts/twister --integration -iv -T . --dry-run

INFO    - Building initial testsuite list...
INFO    - Built testsuite list in 10.58 seconds
```
vs
```
./zephyr/scripts/twister --integration -iv -T . --dry-run \
--vendor nordic --vendor zephyr

INFO    - Building initial testsuite list...
INFO    - Built testsuite list in 201.01 seconds
```

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-08 13:11:44 -05:00
Pieter De Gendt
e622bdafe0 docs: releases: 4.4: Add entry for DT_CHILD_BY_UNIT_ADDR_INT
Add a DeviceTree section and entries for the new C macros.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-08 13:09:24 -05:00
Pieter De Gendt
73ab6b6ffb include: zephyr: drivers: adc: Replace FOREACH with CHILD_BY_UNIT_ADDR_INT
The macro to initialise a struct adc_dt_spec instance uses a FOREACH macro,
which can be problematic when nesting in other FOREACH macros, for example
in driver implementations.

Replace it with DT_CHILD_BY_UNIT_ADDR_INT.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-08 13:09:24 -05:00
Pieter De Gendt
4208bd7fcc tests: lib: devicetree: api: Add test cases for DT_CHILD_BY_UNIT_ADDR_INT
Introduce test cases to the devicetree API test suite for
DT_CHILD_BY_UNIT_ADDR_INT and DT_INST_CHILD_BY_UNIT_ADDR_INT.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-08 13:09:24 -05:00
Pieter De Gendt
91278bdddf devicetree: Add DT_CHILD_BY_UNIT_ADDR_INT
Allow fetching child node identifiers by integer unit address.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-08 13:09:24 -05:00
Martin Hoff
da6cd1a474 test: benchmarks: update timing cycle to ns conversion function
SYS_CLOCK_HW_CYCLES_TO_NS_AVG is not correct since we are tracking
cpu tick and SYS_CLOCK_HW_CYCLES_TO_NS_AVG convert it with the clock
frequency.
This patch used the correct conversion function (same api as function
to get the timestamp).

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-08 13:09:08 -05:00
Anas Nashif
d7a8f29ce7 tests: twister: keep this workflow for pytest only
Do not use this workflow for running tests, it should be limited to
blackbox tests only testing command line already happens somewhere else.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-12-08 13:08:57 -05:00
Ayush Singh
61fba0cbb3 tests: subsys: mgmt: mcumgr: smp_client: Fix test
- Do not use uninitialized smp_client for allocations.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-12-08 11:41:30 -05:00
Ayush Singh
4f98eede4b mcumgr: client: Allow specifying server address
- Currently, it is not possible to use mcumgr client with smp server
  since there is no way to specify smp server address for requests.
- This patch series adds support for creating smp_client_object
  containing information regarding the host server. This design allows
  multiple smp_client_object to exist for the same underlying smp_udp
  transport, making it much easier to use the same udp socket for multiple
  OTAs.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-12-08 11:41:30 -05:00
Zhaoxiang Jin
aa7efb4744 tests: power_mgmt_soc: enable test for frdm_mcxn236
Enable power_mgmt_soc test for NXP frdm_mcxn236 board.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-08 11:40:34 -05:00
Zhaoxiang Jin
3114d7751b soc: nxp/mcxn: Add power management support for MCXN236
Add power management support for MCXN/MCXN236.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-08 11:40:34 -05:00
Zhaoxiang Jin
999e3ab204 dts: nxp_mcxn23x: Add power-states for MCXN23x devices
1. Add power-states for MCXN23x devices
2. Add power management related device nodes to MCXN23x,
including spc, cmc vbat, and wuu.
3. Add 'zephyr,cortex-m-idle-timer' node in frdm_mcxn236.dts

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-08 11:40:34 -05:00
Zhaoxiang Jin
6cfd51e35b dts: nxp,spc: Add wakeup-delay property for nxp spc
When a different VDD_CORE level is configured in low
power modes (LP_CFG register) compared to active modes
(ACTIVE_CFG register), the LPWKUP_DELAY register must
be configured to a minimum value.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-08 11:40:34 -05:00
Zhaoxiang Jin
439d8f2a97 modules: hal_nxp: pull in spc, cmc and vbat driver for mcxn/a
pull in spc, cmc and vbat driver for mcxn/a

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-08 11:40:34 -05:00
Felipe Neves
035156ea50 sensors: as5048: add initial support for AS5048 angle sensor
Which is a contactless angle sensor that communicates over
SPI.

Signed-off-by: Felipe Neves <ryukokki.felipe@gmail.com>
2025-12-08 11:39:37 -05:00
Markus Becker
dedc526ee5 boards: m5stack: Add support for M5Stack NanoC6
This adds support for M5Stack NanoC6, an ESP32-C6 based development board
with a tiny form factor.

Based off https://github.com/zephyrproject-rtos/zephyr/pull/74697 and
adapted to match other Espressif C6 devices currently in tree.

Signed-off-by: Markus Becker <markushx@gmail.com>
2025-12-08 11:39:29 -05:00
David Jewsbury
c7eccea629 drivers: mspi_dw: nrf_qspi_v2: Update to align nrfx 4.0.1
New nrfx release makes including nrf.h invalid.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-12-08 11:39:17 -05:00
Dmitrii Sharshakov
8725972764 samples: tfm_ipc: remove old overlay for nrf9160dk
The region sizes already match ones in nrf91xx_partition.dtsi,
and the overlay has not been adapted to the new partition DT updates.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-08 11:39:06 -05:00
Alberto Escolar Piedras
7d933a4ad2 ci: bsim tests: net: Explicitly define the BOARD
Instead of relying on this board being the default.
Let's explicitly set it in the script.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-08 11:38:58 -05:00
Alberto Escolar Piedras
0096ff2e2a ci: bsim tests: run_parallel: Print in which board we failed a test
In the console log, print out in which board the test failed, so it
is easier for developers, so they don't need to scroll up to the
beginning of the batch to see it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-08 11:38:58 -05:00
Pieter De Gendt
c7e7f6be24 doc: releases: migration: 4.4: Add shell_set_bypass update
Add an entry for the shell API change for shell_set_bypass.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-08 09:39:05 -05:00
Pieter De Gendt
d7cd700ad0 tests: shell: Add shell_set_bypass test
Add a test to the shell testsuite for validating shell_set_bypass.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-08 09:39:05 -05:00
Pieter De Gendt
3695b2c0ca shell: Add user data argument to shell_set_bypass
Allow passing some context to the shell bypass callback function by
providing a void pointer user data argument.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-08 09:39:05 -05:00
Arunprasath P
7a975accfd tests: dma: microchip: Add board overlay file
Add board overlay file for pic32cx_sg41_cult to enable dma
test cases to run on this board

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-12-08 09:38:40 -05:00
Arunprasath P
62e36f45bb tests: dma: microchip: Add board overlay file
Add board overlay file for pic32cx_sg61_cult to enable dma
test cases to run on this board

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-12-08 09:38:40 -05:00
Arunprasath P
5a05889c92 boards: microchip: pic32cx_sg41_cult: add DMA to supported list
Update pic32cx_sg41_cult.yml to include DMA in the supported
features list.
Also enable the DMA controller node in pic32cx_sg41_cult.dts.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-12-08 09:38:40 -05:00
Arunprasath P
959edb5c3c boards: microchip: pic32cx_sg61_cult: add DMA to supported list
Update pic32cx_sg61_cult.yml to include DMA in the supported
features list.
Also enable the DMA controller node in pic32cx_sg61_cult.dts.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-12-08 09:38:40 -05:00
Arunprasath P
2cedc2d8cf dts: arm: microchip: add DMA node for PIC32CX-SG family devices
Add DMA controller node to enable DMA G1 driver
support on PIC32CX-SG devices.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-12-08 09:38:40 -05:00
Arunprasath P
66de8afef2 soc: microchip: pic32cx_sg: add DT helper file
Add DT helper file for PIC32CX-SG family devices to support
SoC-specific device tree definitions and utilities.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-12-08 09:38:40 -05:00
Markus Becker
ef5495afa8 net: ocpp: readonly is a bool.
GetConfiguration.conf read_only is a bool according to https://openchargealliance.org/wp-content/uploads/2025/04/OCPP_1.6_documentation.zip.

The Python OCPP implementation reports an error if read_only is reported as an integer: ae716a1507/ocpp/v16/datatypes.py (L73)

Signed-off-by: Markus Becker <markushx@gmail.com>
2025-12-08 09:38:26 -05:00
Seppo Takalo
c4c2c61ccd samples: net: cellular_modem: Remove nRF9160DK examples
Remove nRF9160DK examples from Zephyr's cellular modem sample as
these use nRF91 as an external modem and the pin configuration
heavily depends on the build target.

Therefore we would like to host and document our own examples
within our own repository with the Serial Modem application.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-12-08 09:38:01 -05:00
Zhaoxiang Jin
c8e20fd5ef drivers: timer: cortex_m_systick: fix counter wrap detection in LPM
Improve the logic for detecting counter wrap-around events when exiting
low power mode.

Add idle_timer_alarm_ticks variable to track alarm configuration at LPM
entry. Implement comprehensive wrap detection that considers:
- Counter overflow (pre > post)
- Alarm pending with same pre/post values
- Alarm pending when pre + alarm_ticks would exceed counter top value

This ensures accurate time calculation across all counter wrap scenarios
during low power mode transitions.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-08 09:37:52 -05:00
Farsin Nasar V A
8f92aca133 boards: microchip: sam_e54_xpro: add hwinfo to supported list
- Update sam_e54_xpro.yaml to reflect G1 hwinfo support on the board.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-12-08 09:37:31 -05:00
Farsin Nasar V A
3ea5ce2a47 drivers: hwinfo: microchip: Add hardware info driver
- Add new hardware info driver for Microchip G1 series.
- Update Kconfig and CMakeLists.txt to support the new driver.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-12-08 09:37:31 -05:00
Farsin Nasar V A
61714f9f4b dts: arm: microchip: samd5xe5x: Add HWINFO node and binding
- Added hwinfo node in the samd5xe5x.dtsi file.
- Added device tree binding file for Microchip HWINFO G1.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-12-08 09:37:31 -05:00
Gerson Fernando Budke
60518617d8 dts: arm: microchip: samd5xe5x: Fix rstc node
The hwinfo driver should build inconditionally. It checks if the rstc
node is present and when CONFIG_HWINFO=y is selected by the user the
rstc information will be available. The fallback mechanism will provide
a weak implementation for all APIs that are not available.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-12-08 09:37:31 -05:00
BUDKE Gerson Fernando
5d6e4d9469 west.yml: Bump TF-M with stm32u5a sram5 support
Enable SRAM5 region in the Global TrustZone controller (GTZC).

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-12-08 09:37:00 -05:00
Ahmad Atoof
82fa487cca modbus: client: change 'EXNO' to '-EIO'
Fix error in Modbus client write response validation.

Signed-off-by: Ahmad Atoof <aat@trackunit.com>
2025-12-08 09:36:42 -05:00
Shreyas G Khanapur
b41ea1748d modules: hal_infineon: Fix build failure for CYT4BFC 320 BGA pin package
The CMakeLists.txt file in the MTB HAL CAT1 module incorrectly appended
a '.c' extension to the source file reference for the 320 BGA pin package,
causing a build error.

Remove the extraneous '.c' extension to
correctly reference cyhal_xmc7200_320_bga.c.

Fixes #100523

Signed-off-by: Shreyas G Khanapur <ShreyasG.Khanapur@infineon.com>
2025-12-08 09:35:01 -05:00
Nikodem Kastelik
67f3201aba drivers: hwinfo: nrf: fix missing reset reasons for nRF5340 Network
Incorrect symbols were used for detecting nRF5340 Network-specific
reset reasons presence.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-12-08 09:34:44 -05:00
Thomas Decker
69a6f24821 drivers: serial: uart_stm32: Fix typo in LOG_ERR string
Change "Could not enable (LP)UART clock" to "[...] disable [...]" when
clock_control_off() fails.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-12-08 09:34:35 -05:00
Mark Wang
3b23c76a24 bluetooth: a2dp: Fix function name in documentation comments
Update documentation comments to reference the correct function name
'bt_a2dp_register_ep' instead of the outdated
'bt_a2dp_register_endpoint' in SBC endpoint macro descriptions.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-12-08 06:15:20 -05:00
Mark Wang
6e9eda8e1c bluetooth: a2dp: Replace manual loop with ARRAY_FOR_EACH macro
Replace the manual for loop with the ARRAY_FOR_EACH macro for better code
consistency.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-12-08 06:15:20 -05:00
Jukka Rissanen
32059d7414 usb: next: Change to use network namespaced APIs
Do not use POSIX symbols directly but use network namespaced
APIs instead.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-08 06:15:04 -05:00
Jukka Rissanen
c52c206e26 usb: legacy: Change to use network namespaced APIs
Do not use POSIX symbols directly but use network namespaced
APIs instead.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-08 06:15:04 -05:00
Filip Stojanovic
8622bbb84c boards: frdm_imx93: Add support for the M33 core
Add support for the real-time M33 core on the FRDM-IMX93 board.

Signed-off-by: Filip Stojanovic <filipembedded@gmail.com>
2025-12-08 06:14:49 -05:00
Ruoshan Shi
9e0c0c1ce0 boards: nxp: update shield of 7inch DSI LCD(C) for FRDM_IMX93
Updated the display driver controller to waveshare_dsi2dpi

Signed-off-by: Ruoshan Shi <ruoshan.shi@nxp.com>
2025-12-08 06:14:31 -05:00
Ruoshan Shi
9f5310960e drivers: display: add waveshare dsi2dpi display bridge support
Replace the waveshare_dsi_lcd panel with the waveshare_dsi2dpi
display bridge.

Signed-off-by: Ruoshan Shi <ruoshan.shi@nxp.com>
2025-12-08 06:14:31 -05:00
Emil Gydesen
ca085cee3c tests: Bluetooth: Tester: Enable CAP commander and handover
Enable the CAP Commander role for the BT tester. This will
help pass some TMAP and GMAP tests that require the CAP
Commander to be enabled.

The actual implementation of the tests related to the
CAP commander is not implemented.

TMAP also requires that handover is supported if we
support both unicast and broadcast, so enable the config
for now. Support for the handover tests will follow in
a separate commit.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-08 06:14:17 -05:00
Axel Utech
ae69e60dad drivers: spi: sam: Fix configuring with more than 4 chip selects
If spi_sam_configure() is called with more than 4 chip selects the
current check fails even if the pins are used as gpios. The variable
spi_csr_idx already has the correct index to be checked and must be
used in this check.

Signed-off-by: Munawar Ali <ali@sofiha.de>
Signed-off-by: Axel Utech <utech@sofiha.de>
2025-12-08 06:14:08 -05:00
Jordan Yates
6fe6a8bbb4 modules: tfm: don't pad unconfirmed image
If the image is not confirmed, there is no need to pad the entire flash
slot with empty data. This reduces the size of
`tfm_s_zephyr_ns.signed.bin` (the file actually sent for an OTA upgrade)
from 100% of the slot size down to the size of the application.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-08 06:13:58 -05:00
Mario Paja
caf11a5ece dts: st: h5: set sai default clock configuration
This change sets SAI clock to its default configuration

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-12-08 06:13:46 -05:00
Mario Paja
b2098af1f5 boards: st: nucleo_h563zi: fix PLL clocks
These changes fix PLL clocks of nucleo_h563zi board

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-12-08 06:13:46 -05:00
Thomas Decker
6b14321635 tests: cmake: app_version: fix include app_version.h
Fix include of app_version.h (see PR #63973).

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-12-08 06:13:34 -05:00
Thomas Decker
0b4e13e77f soc: silabs: silabs_s2: fix include app_version.h
Fix include of app_version.h (see PR #63973).

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-12-08 06:13:34 -05:00
Thomas Decker
06ba1ed88e shell: modules: app_version_service: fix include app_version.h
Fix include of app_version.h (see PR #63973).

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-12-08 06:13:34 -05:00
Thomas Decker
296dd3993e doc: build: version: update include path to app_version.h
Update include path note for app_version.h to match changes from PR #63973

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-12-08 06:13:34 -05:00
Alexandre Rey
d0e8180e60 soc: nxp: fix DISABLE_WDOG value if WDT is not disabled at boot
If CONFIG_WDT_DISABLE_AT_BOOT is not defined (i.e. WDT should be enabled
at boot), DISABLE_WDOG should be 0 (disabled).

Signed-off-by: Alexandre Rey <alx.rey@icloud.com>
2025-12-08 06:13:00 -05:00
Ren Chen
7654e3a4ed soc: it8xxx2: block idle if timer is close to expiration
If the event timer or free-run timer is close to expiration when
system enters idle with I2C target DMA mode enabled, the memory
and CPU clocks may become unsynchronized after wakeup. This
causes CPU to fetch incorrect data and eventually trigger SoC
watchdog timeout.

Due to this hardware limitation, SoC should skip entering idle
mode if the remaining timer value is less than 150µs(safe margin).

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-12-08 06:12:16 -05:00
Jukka Rissanen
e2fa01d2c1 drivers: ethernet: intel_igc: Use net namespaced APIs
One POSIX symbol was not converted to network namespaced API.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-08 06:12:04 -05:00
Jukka Rissanen
9fe1570117 tests: net: all: Compile test NET_CANBUS
Enable CONFIG_NET_CANBUS and make sure the code enabling it
compiles ok.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-08 06:12:04 -05:00
Jukka Rissanen
83e3825654 drivers: net: canbus: Use network namespaced APIs
Use network namespaced APIs instead of POSIX symbols.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-12-08 06:12:04 -05:00
Krzysztof Chruściński
18a42741fa manifest: Update segger with enabling DT sections
Update segger with a change in SEGGER_RTT_Conf.h that allows to use
DT memory section for RTT data.

Added help section to SEGGER_RTT_SECTION_CUSTOM_DTS_REGION Kconfig
explaining what alias need to be added to DTS.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-08 06:11:51 -05:00
Bjarki Arge Andreasen
8bd82dce88 nordic: nrf54h: bicrgen: patch lfosc lfxo accuracy parsing
The accuracy field of lfocs lfxo is incorrectly parsed from the SVD
file. Instead of stripping the "ppm" from the value before converting
it to an int, we are taking only the first three digits. This works
for 500ppm, but not for 20ppm.

Patch to strip last three digits instead.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-08 06:11:35 -05:00
Josuah Demangeon
3c900b7023 boards: doc: index: fix list indentation
The RST syntax for list requires indentation on the second line
or the list is not detected.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-12-08 06:11:24 -05:00
Josuah Demangeon
a14cf9fbc0 boards: doc: index: do no mix minicom and screen instructions
Remove minicom-related instructions when screen is used as demo.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-12-08 06:11:24 -05:00
Camille BAUD
84ea7a3d53 boards: ai_m61_32s_kit: fix wrong values and supported test
Input the wrong number in flash size, also should not run display tests

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-08 06:11:09 -05:00
Sam Friedman
5d52e10671 net: coap_client: remove lwm2m from blocksize kconfig option
The block-wise transfer block size is not specific to LWM2M.

Signed-off-by: Sam Friedman <sam@golioth.io>
2025-12-08 06:10:47 -05:00
Pete Johanson
3ea2951bc0 tests: subsys: secure_storage: Erase flash before write once test
Where possible (i.e. not running in NS), erase the flash before testing the
write once secure storage API.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-12-07 21:22:39 -05:00
Mario Paja
6795a795c8 dt-bindings: dma: stm32 introduce 32bit transfer macro
This change introduces 32bit DMA tranfer macro

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-12-07 21:20:06 -05:00
Mario Paja
9065e7b019 drivers: i2s: stm32 sai enable dma data size config
This change enables the user to configure SAI DMA data size.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-12-07 21:20:06 -05:00
Sreeram Tatapudi
5ecf248ba3 drivers: infineon: Drop cat1 from the files names
Drop cat1 from the file names to enable reuse by other
category devices as well

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-12-07 21:19:38 -05:00
Sreeram Tatapudi
46fed1ec88 MAINTAINERS: Update the infineon driver file pattern
All the drivers are renamed as part of
https://github.com/zephyrproject-rtos/zephyr/issues/99174
Updating the pattern to support the new driver names

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-12-07 21:19:38 -05:00
Jordan Yates
76c5084943 sensor: current_amp: fix incorrect PM error
Returning `-ENOTSUP` (and logging a `LOG_ERR`) is not the correct
behaviour if there is no enable GPIO. The fact there was no work to do
does not make the result an error.

From the docs for `pm_device_runtime_get`
```
 * @retval 0 If it succeeds. In case device runtime PM is not enabled or
 *  not available this function will be a no-op and will also return 0.
```

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-07 21:19:04 -05:00
Chun-Chieh Li
ff3284fcc1 tests: i2c: i2c_target_api: support numaker_m3334ki board
Add support for Nucoron NuMaker-M3334KI board

To run the test, check board overlay file for I2C wiring

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-06 15:50:35 -05:00
Chun-Chieh Li
6fb261c655 drivers: i2c: support nuvoton m333x series
Add support for Nuvoton M3331 series SoC

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-06 15:50:35 -05:00
Josuah Demangeon
8212b0835b soc: microchip: mec: add missing GPIO reg include in soc.h
Complement #99761 that added register includes to too few files.
Fix build error for some boards using these SoCs.

Signed-off-by: Josuah Demangeon <josuah.demangeon@nordicsemi.no>
2025-12-06 15:50:03 -05:00
Anas Nashif
021fd07448 Revert "scripts: checkpatch: fix missing blank line detection"
This reverts commit c310133b3e.

randomly asking for Missing a blank line after declarations.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-12-06 11:41:00 -05:00
Michael Smorto
5b05d649d0 drivers: video: Changed common registers to OV767X
Updated register tables to use use OV767X.

Signed-off-by: Michael Smorto <CyberMerln@gmail.com>
2025-12-06 11:40:08 -05:00
Michael Smorto
7ac0dc47bc drivers: video: Add OV7675 changes to OV767x
Adds support for the ov7675 camers.

Signed-off-by: Michael Smorto <CyberMerln@gmail.com>
2025-12-06 11:40:08 -05:00
Michael Smorto
2ffdb90223 drivers: video: Changes the driver name to ov767x.c
Changes the driver name to ov767x.

Signed-off-by: Michael Smorto <CyberMerln@gmail.com>
2025-12-06 11:40:08 -05:00
Michael Smorto
0d5c6aa074 drivers: video: Update OV7670 to use generic ov767x functions
Minimal changes to OV760 drive to use generic ov767x structures.
- This includes changes to function names.
-  Includes changes to defines as necessary.
-  Deleted camera_id as no longer required

Signed-off-by: Michael Smorto <CyberMerln@gmail.com>
2025-12-06 11:40:08 -05:00
Michael Smorto
a6311c5377 drivers: video: Restructure OV760.c driver before adding OV7675 support
Modifications for use of video cci helpers in video_common.h.

Signed-off-by: Michael Smorto <CyberMerln@gmail.com>
2025-12-06 11:40:08 -05:00
Chen Xingyu
6082b0cfce boards: m5stack: cores3: Add bus_out and usb_otg fixed regulators
Add two fixed-regulator nodes to model the load switches on the M5Stack
CoreS3 that control 5V output to the M-Bus/Grove connectors and the USB
VBUS line.

- `bus_out_reg`: controls the BUS_OUT 5V rail (BUS_OUT_EN).
- `usb_otg_reg`: controls USB VBUS output (USB_OTG_EN).

The BUS_OUT regulator is enabled by default to match the behavior of
existing M5Stack boards. USB_OTG remains disabled by default, since
ESP32-S3 does not currently support USB host mode.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-12-06 11:39:58 -05:00
Chen Xingyu
bb678c1acf boards: m5stack: cores3: Add bus_5v fixed regulator
Add a `bus_5v` fixed-regulator node driven by the `BOOST_EN` pin. This
enables drivers and shields to reference the 5V supply through the standard
`vin-supply` property, providing correct power sequencing and runtime
control via Zephyr’s regulator API.

This regulator is equivalent to the `bus_5v` already defined on the M5Stack
Core2 board.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-12-06 11:39:58 -05:00
Guowei Li
83cfbc634f drivers: intc: gicv3: add ARM AArch32 affinity comparison
This commit introduces a new comparison for the ARM (AArch32) architecture
in the GICv3 interrupt controller.
It specifically compares the lower 24 bits of the affinity values,
because there is no aff3 in AArch32 or Arm-v7.

Signed-off-by: Guowei Li <15035660024@163.com>
2025-12-06 11:39:38 -05:00
Lucien Zhao
98673d0aad scripts: ... :edtlib.py: update edtlib.py to generate some warning messages
During the actual development process, it was discovered that the
controller/device' would describe the bus type in the binding. However,
when the two sides did not match, the generated process would not be
affected and there were no any prompts. This made it very difficult for
developers to identify the problem.

I've updated the implementation to:
1. Add a `warn_bus_mismatch` kwarg to `edtlib.EDT()` constructor
   (default: False)
2. Add a `--warn-bus-mismatch` flag to gen_edt.py
3. Only show the warning when explicitly opted in
4. Add some checks in the edtlib. When the bus type of the node
   does not match the binding requirements, provide some auxiliary
   judgment information:
     a. bus position of the node
     b. available binding types
     c. expected binding type.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-06 11:39:17 -05:00
Jacky Lee
f2ab79278e driver: spi: egis_et171_spi supports clock driver
Allows "egis_et171_spi" to use basic clock information
provided by the clock driver to calculate the runtime
SPI frequency.

Signed-off-by: Jacky Lee <jacky.lee@egistec.com>
2025-12-06 11:39:09 -05:00
Srikanth Boyapally
d784a95c5c spi: cdns: Add support for slave transfers exceeding FIFO depth
Enable slave mode to handle transfers larger than FIFO depth (128 bytes)
by implementing dynamic TX threshold management.

Signed-off-by: Srikanth Boyapally <srikanth.boyapally@amd.com>
2025-12-06 11:38:51 -05:00
Srikanth Boyapally
4b75597786 spi: cdns: Fix unreliable RX not empty detection with software counter
The Cadence SPI controller has a hardware issue (Xilinx AR#65885
contains more details) where the RX_NOT_EMPTY (RNE) status bit
reports inconsistent state. This causes the driver to unreliably
detect when RX FIFO contains valid data, leading to transfer
failures and test hangs.

Signed-off-by: Srikanth Boyapally <srikanth.boyapally@amd.com>
2025-12-06 11:38:51 -05:00
Jamie McCrae
356f992f68 sysbuild: cmake: Only touch empty conf file if it does not exist
Prevents a random occurance whereby sysbuild reconfigures itself
after a reconfiguration for no known discernable reason

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-12-06 11:38:41 -05:00
Scott Worley
5dd9e8cd59 tests: drivers: gpio: Add MEC boards to three GPIO driver tests
We added Microchip MEC15xx, MEC172x, MEC174x, and MEC175x evalutaion
boards to the GPIO driver gpio_basic_api, gpio_api_1pin, and
gpio_get_direction tests.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-12-06 11:38:34 -05:00
Scott Worley
cd6d7c9515 drivers: gpio: microchip: mec: One common driver for all MEC parts
Microchip MEC parts have a similar GPIO peripheral block. We
create a unified driver for all parts. NOTE: MEC GPIO interrupt
detection sets active status when changed from interrupt detect
disabled to any enabled mode. Driver ISR and interrupt configuration
implementation includes work-arounds for this issue.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-12-06 11:38:34 -05:00
Jamie McCrae
546adfa555 scripts: snippets: Use temp buffer and only output on change
Stores data to output in a temporary buffer and only outputs data
to a file if the data is different to the file's existing data
(assuming it exists). This prevents a random occurance whereby
sysbuild reconfigures itself after a reconfiguration for no known
discernable reason

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-12-06 11:38:26 -05:00
Simon Maurer
ca71da8a85 arch: arm, arm64: linker: place .ARM.{extab, exidx} sections in rodata
The .ARM.extab and .ARM.exidx sections are now mapped under the
zephyr_rodata MMU region, ensuring they remain accessible at runtime.
These sections contain unwind information required for C++ exception
handling, so they must reside in readable memory.

Fixes #96070

Signed-off-by: Simon Maurer <mail@maurer.systems>
2025-12-06 11:38:18 -05:00
Biwen Li
0e46139300 tests: arch: arm: irq_advanced_features: fix build issue
This commit fixes build issue when multi level interrupts feature
is enabled, define new macro TEST_1ST_LEVEL_INTERRUPTS_MAX to
support multi level interrupts case.
  - error: array subscript 24 is above array bounds of 'volatile
    uint32_t[16]' {aka 'volatile unsigned int[16]'}
    [-Werror=array-bounds])

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-06 11:38:08 -05:00
Biwen Li
0ea051a433 tests: arch: arm: custom_interrupt: fix build issue
Fix build issue when multi level interrupts is enabled,
define new macro TEST_1ST_LEVEL_INTERRUPTS_MAX to support multi
level interrupts case.
  - core_cm33.h:2559:47: error: iteration 496 invokes undefined behavior
    [-Werror=aggressive-loop-optimizations]

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-06 11:38:00 -05:00
Zackery Backman
248151624d doc: develop: manifests: external: add wolfSSH
Add documentation to external module section for adding wolfSSH to Zephyr

Signed-off-by: Zackery Backman <backman23@live.com>
2025-12-06 11:37:53 -05:00
Peter van der Perk
084f2a1dda drivers: pwm: Fix prescaler 256 overflow and get cycles
Setting a prescaler of 256 would overflow the uint8_t.
Also get cycles calculation was wrong.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-12-06 11:37:45 -05:00
Benjamin Cabé
0a24a7f90b doc: _extensions: adjust link-roles regex to be non-greedy
Currently, if the role is used like this: :zephyr_file:`blah <link>`
the regex for the link text group is greedy and captures "blah " (note
trailing space). This is incorrect and causes the link to render poorly.
Make regex non-greedy.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-06 11:37:37 -05:00
Mathieu Choplain
681db7c1cc cmake: linker_script: arm: place IDT_LIST where ld linker script does
Instead of mirroring the ld linker script, the CMake Linker Generator for
ARM was placing the IDT_LIST region right after the Zephyr SRAM. While this
may work fine in most cases, this scheme leads to build errors on some SoCs
such as STM32WBxx, where there are multiple RAM banks that are contiguous
but split over multiple `zephyr,memory-region`s: in such scenarios, the
IDT_LIST region will overlap with one of these `zephyr,memory-region` and
cause a build failure.

Mimic the IDT_LIST placement found in ld linker script to avoid this issue,
except that the region start address is aligned: 0xFFFF8000 instead of
0xFFFF7FFF. This is required by `gen_isr_tables.py` which otherwise errors
out due to finding one more byte than expected in the .intList section.
(The exact reason is not clear, but aligning the region fixes the issue)

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-06 11:37:31 -05:00
Lingao Meng
409e1277b6 kernal: work: Use Z_WORK_DELAYABLE_INITIALIZER replace dup code
Use `Z_WORK_DELAYABLE_INITIALIZER` replace duplicate init code.

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2025-12-06 11:37:21 -05:00
Alexandre Rey
2bc15b4532 drivers: i2s: mcux_sai: correct DMA burst length
Set DMA burst length in bytes.
Fixes a bug introduced in #97777.

Signed-off-by: Alexandre Rey <alx.rey@icloud.com>
2025-12-06 07:13:05 -05:00
Hake Huang
2c2922fb09 boards: nxp: frdm_ke16z: New board with 64kB device added
SOC_MKE16z4 and MKE15z4 (64kB, 48MHz) is now supported by DT
LPFLL clock option with proper frequency select
dts: nxp_ke1xz64.dtsi added.
Tested on board: frdm_ke16z

Signed-off-by: Michael Galda <michael.galda@nxp.com>
Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-12-06 07:12:52 -05:00
Hake Huang
68937acbb8 soc: nxp: kinetis: ke1xz: add LPFLL clock support to SCG
LPFLL (soc: scg: "lpfll_clk") clock source can be now selected
in KE1xz Device tree (nxp_ke1xz.dtsi., board.dts or overlay)
Tested on boards: frdm_ke15z, frdm_ke17z, frdm_ke17z512

Signed-off-by: Michael Galda <michael.galda@nxp.com>
Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-12-06 07:12:52 -05:00
Hake Huang
3c87d0862b dts: arm: nxp: nxp_ke1xz.dtsi: tsi0 & tsi1 nodes added
TSI (Touch Sensing IP) is now supported by DT
for the Kinetis KE1x family
dts: nxp_ke1xz, nxp_ke17z and nxp_ke17z512.dtsi
Tested on freedom boards

Signed-off-by: Michael Galda <michael.galda@nxp.com>
Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-12-06 07:12:52 -05:00
Hake Huang
00e5a399cc drivers: clock_control: kinetis scg support
add driver and dts-binding for kinetis_scg driver
used on ke1xz

Signed-off-by: Hake Huang <hake.huang@nxp.com>
Signed-off-by: Michael Galda <michael.galda@nxp.com>
2025-12-06 07:12:52 -05:00
Yves Wang
31311c4023 tests: drivers: watchdog: Enable basic api test for frdm_mcxc444
Enable wdt_basic_api for frdm_mcxc444.
Couple callback testcases with CONFIG_HAS_WDT_NO_CALLBACKS.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-12-06 07:12:45 -05:00
Yves Wang
2ea83f42c9 boards: nxp: frdm_mcxc444: Enable watchdog cop
Enable cop for zephyr watchdog.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-12-06 07:12:45 -05:00
Yves Wang
9d76a637f9 drivers: watchdog: cop: ignore unused parameter
In install timeout api, the cfg parameter does not make sense to cop, we
can ignore it rather than return an error code to keep forward
compatibility.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-12-06 07:12:45 -05:00
Badr Bacem KAABIA
c8d9011925 drivers: adc: mcux_adc16: Fix buffer size check for multi-channel reads
The mcux_adc16 driver's read function fails to validate the user-provided
buffer size when `adc_sequence.options` are used (extra samplings).

The calculation erroneously considered only the size required for one
channel, neglecting the total number of channels in the sequence.

This leads to a **buffer overflow** when reading multiple channels.

Fix this by using `POPCOUNT(sequence->channels)` to determine the
correct channel count and ensure the buffer size is sufficient.

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-12-06 07:12:36 -05:00
Kate Wang
e5234d4e32 boards: shield: Update shield support for zc143ac72mipi
The zc143ac72mipi panel can only accept update area
that has even size and coordinates, so the panel
driver was updated to maintain a buffer to collect
all dirty areas. This buffer shall have address and
pitch alignments which compliant to the board's display
driver's requirement, and can be placed outside of ram.
Update the board specific overlay to add such configurations.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-06 07:12:26 -05:00
Kate Wang
1527cd506a drivers: display: display_co5300: Update panel driver
1. Fix wrong backlight pin in driver overlay
2. Remove the power-on pin configuration in code and binding, and
add mipi display panel regulator in panel overlay instead. Set
regulator-boot-on' to true means the power-on pin will be enabled
uring system boot.
3. Remove 'last_known_framebuffer' from panel data structure. It is
not used anywhere
4. Fix bug in 'co5300_set_pixel_format' function.
5. Fix the issue that the panel does not support start coordinates
   and the width/height of the updated area being odd value.
   Solution: In panel driver, maintain a full screen-sized buffer,
   its address and pitch alignment is configurable in device tree
   and shall be compliant with the display controller's requirements.
   It can be placed in RAM or if the RAM space is not enough it can
   also be placed in other memory resion. When there is a frame
   update request, the updated area will be first filled to the
   buffer, if the area's size or coordinate is odd, adjust the value
   so the real updated area covers the requested updated area, then
   use this buffer to send pixel to panel, this can ensure the
   updated area's size and coordinate are always even.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-06 07:12:26 -05:00
Kate Wang
3768890460 samples: lvgl: Add board specific configuration for mimxrt700_evk
The mimxrt700_evk uses DC8000 to drive panel which requires a 64
byte align of buffer address and stride.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-06 07:12:26 -05:00
Kate Wang
79182d2d38 samples: drivers: display: Add user configuration
Add user configuration of buffer address alignment and update area pitch
alignment.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-12-06 07:12:26 -05:00
Patryk Koscik
4e21fc26fa dts: nxp: mcxn94x: Add SoC compatible
Add SoC-level compatible string to the nxp_mcxn94x_common DT file.

Signed-off-by: Patryk Koscik <pkoscik@antmicro.com>
2025-12-06 07:11:33 -05:00
Jiafei Pan
b4476dbfdb boards: imx95_evk_15x15: add netc ethernet support
Added NETC ethernet support on i.MX 95 15x15 EVK board, enlarged
memory size to be 10M accordingly.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-12-06 07:11:24 -05:00
Jiafei Pan
da64db64ad boards: imx95_evk_15x15: add jlink runner support
Added J-Link runner to support west debug and west flash.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-12-06 07:11:24 -05:00
Thomas Hebb
e1b6de46d2 soc: nxp: imxrt: Initialize FlexRAM before first stack use
If the stack is in ITCM, DTCM, or FlexRAM OCRAM, flexram_dt_partition()
may change its contents. The comment on flexram_dt_partition()
acknowledges that, stating that it's inlined because it "cannot use
[the] stack". But we currently call SystemInit(), which is not inlined
and does use the stack, prior to flexram_dt_partition()! Fix that issue
by reordering the calls.

It seems to me that flexram_dt_partition() would be safer as a
soc_early_reset_hook implemented in assembly, but this fix does work for
the moment. Tested on an i.MX RT1061, with the stack in FlexRAM OCRAM
and entering Zephyr with all FlexRAM allocated to ITCM and DTCM.

Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
2025-12-06 07:10:57 -05:00
Thomas Hebb
799ac970d4 soc: nxp: imxrt: Initialize FlexRAM before first stack use
If the stack is in ITCM, DTCM, or FlexRAM OCRAM, flexram_dt_partition()
may change its contents. The comment on flexram_dt_partition()
acknowledges that, stating that it's inlined because it "cannot use
[the] stack". But we currently call SystemInit(), which is not inlined
and does use the stack, prior to flexram_dt_partition()! Fix that issue
by reordering the calls.

It seems to me that flexram_dt_partition() would be safer as a
soc_early_reset_hook implemented in assembly, but this fix does work for
the moment. Tested on an i.MX RT1061, with the stack in FlexRAM OCRAM
and entering Zephyr with all FlexRAM allocated to ITCM and DTCM.

Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
2025-12-06 07:10:57 -05:00
Yangbo Lu
216695e91b drivers: eth_nxp_imx_netc: fix wrong irq_lock area in netc_eth_rx
The irq_lock area including net_pkt_rx_alloc_with_buffer() was causing
error "Context switching while holding lock!".
Actually we didn't have any hardware access to protect in netc_eth_rx,
so just removed irq_lock.

Fixes #99694

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-06 07:10:46 -05:00
Neil Chen
7e963a07e0 boards: nxp: frdm_mcxa344: Support lptmr for NXP frdm_mcxa344 board
Support lptmr for NXP frdm_mcxa344 board.
Test using tests/drivers/counter/counter_basic_api.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-12-06 07:10:32 -05:00
Neil Chen
b5b1a14316 boards: nxp: frdm_mcxa344: Support ctimer for NXP frdm_mcxa344 board
Support ctimer for NXP frdm_mcxa344 board.
Test using tests/drivers/counter/counter_basic_api.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-12-06 07:10:32 -05:00
Holt Sun
3f0320cf19 boards: frdm_mcxe247: Add RTC support
Enable and configure RTC clock source for the
FRDM-MCXE247 board.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-06 07:10:11 -05:00
Holt Sun
b045e8fdc0 samples: counter: alarm: add nxp_rtc support.
Enable nxp_rtc device for sample counter alarm.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-06 07:10:11 -05:00
Charles Hardin
5c70e93afd drivers: pwm: stm32: change the order of deadtime and enable all timers
For stm32h7 the order matters to get the pwm to output the values as
expected. As reported for the the H730 doesn't produce PWM output when
the LL_TIM_OC_SetDeadTime is called after LL_TIM_EnableAllOutputs. So,
switch the order of the calls and this doesn't impact the stm32f413zh
boards.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-12-06 07:10:01 -05:00
Peter Robinson
8e79423f74 samples: net: openthread: coprocessor: Add nrf52840dongle config
Add a config for the nrf52840dongle to use the CDC_ACM interface
for the ot_uart. Without this building the OpenThread coprocessor
fails to build when using the nrf52840 dongle because the UART
isn't defined so fix it.

Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
2025-12-06 07:09:50 -05:00
Pieter De Gendt
3b730a20ae doc: releases: 4.4: Add COND_CASE_1 entry
Add a Sys section, with an entry for the COND_CASE_1 macro.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-06 07:09:38 -05:00
Pieter De Gendt
2a5dc8cd94 doc: releases: 4.4: Align bullet lists
Use 2 spaces indents for bullet lists.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-06 07:09:38 -05:00
Daniel Leung
8053d7793f tests: shell: also build UART shell for coverage
This enables building the UART shell alongside with the UART
backend test. The UART shell source file was not built in CI
before this, so this will provide build coverage.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-12-05 15:00:13 -05:00
Camille BAUD
fac6d51550 doc: releases: Fix renamed boards and add new entry
fix ai_wb2,m62 add m61

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-05 14:56:03 -05:00
Camille BAUD
71f784a7b5 boards: bflb: Introduce ai_m61_32s_kit
Introduce the top tier version of BL618 from aithinker, with the PSRAM

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-05 14:56:03 -05:00
Camille BAUD
8cd91f3b76 dts: bindings: vendor-prefixes: Add XMC
Add prefix for XMC Wuhan Xinxin Semiconductor Manufacturing Co

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-05 14:56:03 -05:00
Camille BAUD
8a54f73c5a boards: dt_xt_zb1_devkit: clear up module/board confusion
Clears module and board being confused

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-05 14:56:03 -05:00
Camille BAUD
a927634c16 boards: ai_wb2_12f: clear up module/board confusion
Clears module and board being confused

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-05 14:56:03 -05:00
Camille BAUD
3cd6671f05 boards: ai_m62_12f: clear up module/board confusion
Clears module and board being confused

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-05 14:56:03 -05:00
Guillaume Gautier
b73feddf6e tests: drivers: spi: loopback: change duration scaling
Increase the duration scaling for two boards that were causing some tests
to fail.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-12-05 14:55:32 -05:00
Guillaume Gautier
fbb2848ef2 drivers: spi: stm32: fix spi rtio with fifo-enable
This commit fixes the SPI RTIO transfers when the fifo-enable property is
enabled.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-12-05 14:55:32 -05:00
Guillaume Gautier
133da1c017 drivers: spi: stm32: extend data size support
Extend the number of SPI data sizes supported for series that allow it.
The driver uses the new property st,stm32-data-width to create a table
with all compatible data widths and to check if the SPI instance
support the required width (some instances may have a limited set
of widths compared to others on the same SoC).

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-12-05 14:55:32 -05:00
Guillaume Gautier
f91258d17e drivers: spi: stm32: invert ll_func_spi_dma_busy logic
Inverts ll_func_spi_dma_busy logic so that the function returns true if
the SPI DMA is busy (as suggested by the name) instead of the other way
around.
Also completes the check for H7-compatible with the LL_SPI_IsActiveFlag_EOT
function when transfer size is set.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-12-05 14:55:32 -05:00
Guillaume Gautier
21950ef873 dts: arm: st: add st,stm32-data-width property for all spi instances
Addd st,stm32-data-width property for all STM32 SPI instances.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-12-05 14:55:32 -05:00
Guillaume Gautier
e20076c2c7 dts: bindings: spi: add st,stm32-data-width property
Adds a new property for STM32 SPI bindings to indicate which data widths
are supported by each SPI instance.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-12-05 14:55:32 -05:00
Yassine Safraoui
50ebaed6bf drivers: i2c: xmc47_relax_kit: fix clock frequency macro
The xmc47_relax_kit i2c driver is incorrectly using the
I2C_SPEED_STANDARD macro to set the clock frequency. The correct macro
to use is XMC4_I2C_SPEED_STANDARD which is defined by the XMC4 driver.

Signed-off-by: Yassine Safraoui <yassine.safraoui@grenoble-inp.org>
2025-12-05 14:55:22 -05:00
Sai Santhosh Malae
b82944ef83 tests: drivers: spi: siwx91x: Enable spi_loopback test for PSRAM board
Add overlay and config files for siwx917_rb4342a
to enable the spi_loopback test.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-05 14:54:54 -05:00
Sai Santhosh Malae
649e1f6d64 tests: drivers: spi: siwx91x: Adjust transfer scaling factor
Increase CONFIG_SPI_IDEAL_TRANSFER_DURATION_SCALING to
compensate for the additional burst size calculation in
the SPI driver, which slightly increases transfer time.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-05 14:54:54 -05:00
Sai Santhosh Malae
f8b5b77348 drivers: spi: siwx91x: Guard callback registration
Guard callback registration with CONFIG_SPI_ASYNC to avoid
build error for blocking SPI transfers using DMA

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-05 14:54:54 -05:00
Sai Santhosh Malae
d4b551b3fb drivers: spi: siwx91x: Swap write and read data inside GSPI controller
Swap the write and read data paths within the GSPI controller to ensure
correct data is seen on the SPI lines during 16-bit transfers.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-05 14:54:54 -05:00
Sai Santhosh Malae
b6cef6fbf6 drivers: spi: siwx91x: Align mosi_overrun to 32 bytes
Updated mosi_overrun alignment from 4 bytes to 32 bytes to
ensure compatibility with the GPDMA driver. This prevents
alignment-related errors during DMA transfers.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-05 14:54:54 -05:00
Sai Santhosh Malae
9ebba6821b drivers: spi: siwx91x: Add support for higher burst rates using GPDMA
Enable higher SPI burst sizes when using GPDMA to improve throughput.
Bursts are only enabled when both TX and RX channels use GPDMA and
the SPI clock frequency is at least 10 MHz, as DMA flow control is
unreliable at lower SPI rates.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-05 14:54:54 -05:00
Sai Santhosh Malae
23c8db4f8c drivers: spi: siwx91x: Add helper to round GSPI freq to valid range
Add gspi_siwx91x_pick_lower_freq() to select the nearest lower
supported GSPI clock frequency based on the requested value.
The GSPI clock can operate only at discrete frequencies such as
80 MHz, 40 MHz, 26.6 MHz, 20 MHz, and so on (80 MHz divided by
integer factors). If the requested frequency does not match one
of these valid steps, it is rounded down to the nearest lower
supported frequency.

The driver now logs both the requested and the actual programmed
frequency along with the divider value, helping users verify the
effective SPI clock configuration.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-05 14:54:54 -05:00
Sai Santhosh Malae
cbb2fda8d2 drivers: clock_control: siwx91x: Set INTF_PLL_FREQUENCY to 160 MHz
The GSPI and QSPI peripherals run on the interface PLL clock.
To ensure correct operation, the interface PLL frequency should
be set to 160 MHz. This provides a base clock of 80 MHz to the
QSPI peripheral, which matches its required operating frequency.
The GSPI peripheral can continue to operate at higher frequencies
as it receives the full interface PLL clock.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-05 14:54:54 -05:00
Bjarki Arge Andreasen
5dec22a5ef tests: drivers: spi: loopback: wait for idle before timed test
Wait a bit before performing timed spi_loopback_transceive() in
test_spi_complete_multiple_timed to ensure the console is idle,
otherwise the console completing and suspending in the "background"
near the end of the spi transaction can introduce latency.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-05 14:54:40 -05:00
Pieter De Gendt
35c8301278 include: zephyr: Replace nested COND_CODE_1 with COND_CASE_1
Update some header files with nested COND_CODE_1 macros to use a single
COND_CASE_1 macro instead.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-05 14:53:57 -05:00
Sai Santhosh Malae
0ceef4fb97 tests: drivers: gpio: Add device runtime PM compatibility
Update the gpio_basic_api test to support device runtime
power management. This ensures the test runs correctly when
runtime PM is enabled on GPIO devices.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-05 14:53:49 -05:00
Sai Santhosh Malae
76b1a07c54 drivers: gpio: siwx91x: Implement device runtime PM for GPIO ports
The existing device runtime PM model requires applications to call
pm_device_runtime_get()/put() on the GPIO controller device directly,
which is not ideal when GPIO ports are exposed as child nodes.

This update enables runtime PM at the GPIO port (child node) level,
allowing applications to manage power through the port devices instead
of the top-level controller.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-05 14:53:49 -05:00
Martin Hoff
25362f7228 tests: drivers: comparator: add silabs boards overlays
This patch introduce multiple silabs boards overlay that are needed to
test different ip version of the peripheral.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-05 14:53:35 -05:00
Martin Hoff
62e97eb5a7 dts: arm: silabs: add missing clock on acmp node in xg21 dtsi
Without this clock definition, you will get compilation error
when using acmp device on board that use xg21 SoC.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-05 14:53:35 -05:00
Tim Pambor
373d92ae73 drivers: rtc: rtc_shell: add calibration support
Add `get_calibration` and `set_calibration` subcommands to allow users
to read and modify the RTC calibration settings from the shell.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-05 14:53:27 -05:00
Jamie McCrae
ae2c244486 maintainers: Add nRF boards sub-group and add self as collaborator
Adds a new sub-group to nRF platforms, specifically for board
files, and add myself to this sub-group as a collaborator

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-12-05 11:20:29 -05:00
Jonathan Nilsen
b1c68f53c9 soc: nordic: uicr: Parse pinctrls for local domain peripherals
Generate PERIPHCONF SPU/CTRLSEL entries based on pinctrl properties
on the local domain peripherals as well as the global ones.
This fixes an issue where the required pin configuration was not
generated for the pinctrls on the radio local domain GPIOTE0 on
nrf54h20.

The secure attribute of nodes without an address and without a bus node
are now interpreted as being secure by default, instead of failing with
an error. This prevents the parsing of certain nodes from triggering
failing the build (in particular the 'ieee802154' node in
cpurad_peripherals).

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-12-05 11:13:03 -05:00
Zafer SEN
3e9f83c196 doc: releases: Document HL78xx modem updates for 4.4
Update migration guide for HL78xx Kconfig option renames and startup
time changes. Add release notes for new AT Shell and AirVantage FOTA
support.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-12-05 11:12:48 -05:00
Zafer SEN
3e6424de4f sample: hl78xx: Add AirVantage FOTA support
Demonstrate SWIR AirVantage FOTA in the HL78xx sample.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-12-05 11:12:48 -05:00
Zafer SEN
241fdaa980 drivers: modem: hl78xx: Add AirVantage FOTA support
Sierra Wireless AirVantage FOTA updates in the HL78xx modem driver.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-12-05 11:12:48 -05:00
Zafer SEN
d2a083c142 drivers: modem: hl78xx: Add AT Shell support
Adds AT shell support, enabling developers to send AT commands directly.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-12-05 11:12:48 -05:00
Zafer SEN
0124ac6287 drivers: modem: hl78xx: reduce startup_ms and increase init chat timeout
The previous delay could cause missed URCs because the pipe and chat
layer were not yet attached when the modem started sending its first
messages (+KSUP). The modem boot takes ~1.8s, while the driver only
needs ~120ms to set up the interfaces, so reducing the delay ensures
the receiver is ready before the modem outputs any URCs.

Increase hl78xx_init_chat_script command limit from 10 to 100 to allow
longer initialization sequences.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-12-05 11:12:48 -05:00
Zafer SEN
5caa49c08f drivers: modem: hl78xx: rename timing configs to clarify units
Rename HL78XX device timing configuration options to include units (ms):
- CONFIG_MODEM_HL78XX_DEV_POWER_PULSE_DURATION ->
  CONFIG_MODEM_HL78XX_DEV_POWER_PULSE_DURATION_MS
- CONFIG_MODEM_HL78XX_DEV_RESET_PULSE_DURATION ->
  CONFIG_MODEM_HL78XX_DEV_RESET_PULSE_DURATION_MS
- CONFIG_MODEM_HL78XX_DEV_STARTUP_TIME ->
  CONFIG_MODEM_HL78XX_DEV_STARTUP_TIME_MS
- CONFIG_MODEM_HL78XX_DEV_SHUTDOWN_TIME ->
  CONFIG_MODEM_HL78XX_DEV_SHUTDOWN_TIME_MS

Update MODEM_HL78XX_DEFINE_INSTANCE macro to use *_MS options.

This improves configuration clarity and robustness of modem init.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-12-05 11:12:48 -05:00
Zafer SEN
4805aafd4e drivers: modem: hl78xx: Improve restart handling and boot tracking
This update refactors the HL78xx initialization and runtime state
machine to provide robust handling of unexpected modem restarts
and improve PDP and boot status management.

Key changes:
- Add KSUP unsolicited response to the global chat match table
  so modem boot status is monitored independently from the
  initialization script.
- Introduce a boot-status structure tracking previous boot state
  to detect unexpected restarts.
- Dispatch a new MODEM_HL78XX_EVENT_MDM_RESTART event when the
  modem reports a READY status after having been previously
  booted.
- Add restart-handling transitions across relevant states
  (await-power-on, RAT-config, await-registered, carrier-on) to
  ensure the driver cleanly re-enters the initialization
  sequence.
- Rework init and post-restart script entry points to run
  asynchronously via hl78xx_run_init_script_async() and
  hl78xx_run_post_restart_script_async().
- Move bus-open and chat-attach operations out of the
  init-script state and into the await-power-on state for
  clearer separation of responsibilities.
- Expose a getter for the AT-ready match structure.

These changes improve resilience during modem restarts, clarify
the state machine flow, and prepare the driver for multi-PDP-
context configurations.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-12-05 11:12:48 -05:00
Zafer SEN
5c082329c2 drivers: modem: hl78xx: Fix GSM RAT registration and PDP handling
Fix several issues in GSM mode for the HL78xx modem driver to
ensure correct registration reporting, RAT handling, and PDP
context activation.

Changes include:
- Skip band configuration when RAT=GSM to prevent +CME ERROR
  responses.
- Explicit PDP activation (AT+CGACT=1,1) for GSM data sessions.
- Parse +CGACT URCs and track PDP activation state internally.
- Introduce gprs status struct and update initialization
  scripts to handle GSM reliably.
- Add helper functions and chat scripts to manage GSM
  registration and PDP flow.
- Correct GSM registration-status handling: enable CREG=3 and
  disable unused CEREG.
- Dynamically switch between CREG (GSM) and CEREG (LTE/NB-IoT)
  based on active RAT.

These changes improve driver stability and ensure reliable data
and registration behavior on GSM networks.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-12-05 11:12:48 -05:00
Zafer SEN
bc08d3cdb7 drivers: modem: hl78xx: reorder Kconfig entries, and comment fixes
This patch applies multiple small cleanups across the HL78xx modem
driver, improving readability, consistency, and diagnostics without
changing logic.

Key changes:
- Added missing blank lines in Kconfig sections for readability.
- Improved several log messages for clarity and guidance to users.
- Added a debug log when RAT/Band configuration requires a modem restart.
- Replaced an incorrect SET_RAT_GMS_CMD macro name with SET_RAT_GSM_CMD.
- Added TODO marker for unhandled script failure case.
- Corrected log format string in event handler to include event ID.
- Added an informational log on modem initialization.
- Added clarifying comments in header structures and APN lookup path.
- Normalized #endif comment style throughout the driver.
- Fixed use of CME_ERROR_STRING in chat match definitions.
- Applied formatting hints (clang-format off/on) around multi-line
  MODEM_CHAT_MATCHES blocks.
- Improved enum documentation in public API header.

These changes improve maintainability and developer usability without
modifying driver behavior.

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-12-05 11:12:48 -05:00
Lyle Zhu
0f1fcbb139 tests: Bluetooth: Classic: GAP_C: Reduce time consumption
In current implementation, the useless for loop is called in function
`_wait_for_shell_response()` if the target message has been found. It
causes the case will consume too much time.

Exit the useless for loop to reduce the time consumption when the
target message is found.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-05 11:12:28 -05:00
Lyle Zhu
eaa7cfff24 tests: Bluetooth: Classic: GAP_S: Reduce time consumption
In current implementation, the useless for loop is called in function
`_wait_for_shell_response()` if the target message has been found. It
causes the case will consume too much time.

Exit the useless for loop to reduce the time consumption when the
target message is found.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-05 11:12:18 -05:00
Ioannis Damigos
cc4bc45556 drivers/timer/cortex_m_systick: Avoid division by zero
Preprocessor evaluates CYC_PER_TICK as zero in condition
`(COUNTER_MAX / CYC_PER_TICK) == 1` when
CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME is defined.

This commit skips the check when
CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME is defined.

Fixes: #100040

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-12-05 11:10:58 -05:00
Fin Maaß
94b3a7c13f docs: migration-guide: 4,4: mention ethernet phy change
Mention split of the ethernet phy.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-05 11:10:46 -05:00
Fin Maaß
8f8071a546 drivers: ethernet: phy: split generic phy
moves the fixed link functionality of the
generic ethernet phy into its own driver.
This makes both drivers more readable and
efficient.

Also makes it easier to use the normal generic
phy as a base for a vendor specific driver, as
the fixed link functionality is not needed on
them.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-05 11:10:46 -05:00
Fin Maaß
58b48b0423 dts: bindings: ethernet: phy: split and group common
split and group common dts bindings

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-05 11:10:46 -05:00
Fin Maaß
a21fdccd50 drivers: ethernet: nxp: allow driver to be build without mdio
allow driver to be build without mdio,
implemented similar to ptp.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-05 11:10:46 -05:00
Alberto Escolar Piedras
efca68625a Bluetooth: userchan: Validate UNIX socket path fits in sockaddr_un
sockaddr_un.sun_path is limited to 108 in Linux
(and to similarly small numbers in other systems).

Let's check that it fits before copying it, and error out otherwise
(the user won't be able to connect to that socket if the path
is truncated, and if we overflow we will just corrupt memory).

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-05 11:10:38 -05:00
Krzysztof Chruściński
123a0cd29f tests: drivers: uart: async_api: Add overlay for nRF non-secure
Add configuration for nrf9160dk/nrf9160/ns and
nrf5340dk/nrf5340/cpuapp/ns targets.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-05 11:10:09 -05:00
Guillaume Gautier
a0ffee2b92 drivers: spi: stm32: add support for baudrate prescaler bypass
Some STM32 SPI have the ability to bypass the baudrate prescaler, which is
equivalent to having a prescaler of 1.
Adds this new value in the prescaler calculation if available.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-12-05 11:09:59 -05:00
Matthias Alleman
476483075c drivers: input: input_chsc5x: fix sda and scl being pulled low
The CHSC5X chip requires reads to be aligned to multiples of 4 bytes.
If the read length is not a multiple of 4, the device pulls SDA/SCL low
for about 140 ms. The IC_TYPE address is corrected to 0x80.

Signed-off-by: Matthias Alleman <matthias.alleman@basalte.be>
2025-12-05 13:39:48 +02:00
Krzysztof Chruściński
242bf65d1d manifest: Update hal_nordic with GPPI helper changes
Improve GPPI documenation and fixes for bsim support in PPI
implementation of GPPI helper.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-05 13:39:34 +02:00
Julien Racki
dc6d5ae970 drivers: ethernet: stm32: Add Port Selection
Add Port Selection for the N6 series.
This allows to run ethernet at 10mbs, 100mbs or 1000mbs.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-12-05 13:39:24 +02:00
Jun Lai
769ba82aa5 llext: export some symbols
Export these symbols for loadable modules
that use them.

Signed-off-by: Jun Lai <jun.lai@dolby.com>
2025-12-05 13:39:15 +02:00
Benjamin Cabé
67cd6120b9 doc: developer: enhance manifest index with introductory text
The "West Projects Index" could use a bit more context so this commit
adds just that.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-05 13:38:58 +02:00
Alberto Escolar Piedras
cb1b1212e4 boards native_sim: Add documentation on how to cross-compile
Providing a guide on how to setup an Ubuntu24.04 x86_64 host
for arm builds and how to build and run locally the arm binary.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-05 13:38:48 +02:00
Alberto Escolar Piedras
8c194648e4 arch/posix: Support cross-compiling
Support cross-compiling from one Linux host for another Linux target.
This is done by allowing users to set NATIVE_TARGET_HOST for cmake
which will override the automatic detection.
At the same time, add support for building for 32bit arm targets.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-05 13:38:48 +02:00
Alberto Escolar Piedras
654535bea3 cmake: FindHostTools: Do not override cross-compile for native builds
This check is meant to be easier on users so they do not need to bother
setting ZEPHYR_TOOLCHAIN_VARIANT to "host" when building for
native_simulator based targets, so we default in that case to it.
But when somebody has actively set it to "cross-compile" we should not
override it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-05 13:38:48 +02:00
Alberto Escolar Piedras
d38df492ee toolchain: gcc: GEN_ABSOLUTE* macros merge & support POSIX arch on arm
Merge the GEN_ABSOLUTE* macros for architectures which have
the same assembler.
Add support for building the POSIX architecture for armhf targets.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-05 13:38:48 +02:00
Johan Hedberg
69946a1253 drivers: crypto_mbedtls_shim: Fix build with Clang/LLVM
drivers/crypto/crypto_mbedtls_shim.c:310:3: error: label followed by a
declaration is a C23 extension [-Werror,-Wc23-extensions]
                 uint16_t tag_len = ctx->mode_params.ccm_info.tag_len;
                 ^

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-12-05 13:38:37 +02:00
Bjarki Arge Andreasen
cc68eaef2b dts: nordic: nrf54h20: disable lfclk by default
The lfclk was left enabled by mistake, it has status disabled
followed by status okay a few lines down. Remove the spurious
status = "okay";

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-05 10:55:53 +02:00
Cristian Bulacu
ea543d87cd openthread: platform: dns_resolver: Allow A type queries
Allow dns upstream resolver module to perform A queries on behalf of
Thread nodes

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-05 10:55:44 +02:00
Peter Mitsis
864e648e68 kernel: Add ifdef guard around ipi_lock definition
The global variable ipi_lock is both local to the file ipi.c and
only used when CONFIG_SCHED_IPI_SUPPORTED is enabled. As such its
definition should be wrapped with an ifdef.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-12-05 10:55:32 +02:00
Jordan Yates
2c47b2d2a3 i2c/i3c: rtio: explicit zeroing of SQE flags
Explcitly zero the flags of the SQE obtained from `rtio_sqe_acquire`
when the `rtio_sqe_prep_*` helpers aren't used (the helpers memset the
entire struct to 0).

The flags must be reset to ensure the `RTIO_SQE_TRANSACTION` and
`RTIO_SQE_CHAINED` are not retained from a previous SQE.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-05 10:55:22 +02:00
Attie Grande
3b16975c64 drivers: sdmmc: stm32: introduce cache flush & invalidation for DMA
Introduce steps to maintain cache coherence around DMA accesses to the
underlying SD / eMMC storage.

Signed-off-by: Attie Grande <attie.grande@argentum-systems.co.uk>
2025-12-05 10:55:11 +02:00
Anthony Williams
07b300ee4f sensor: rm3100: Remove duplicate edata header encoding when streaming
Remove the manual encoding of edata->header.channels and
edata->header.timestamp as these are now handled during rm3100_encode()

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-12-05 10:54:53 +02:00
Anthony Williams
640a696cc4 sensor: rm3100: Use rm3100_encode to populate cycle_count during stream.
Use rm3100_encode() to populate cycle_count info when
configured in streaming mode.

Previously when configured for streaming, cycle_count would
be 0 and rm3100_convert_raw_to_q31 would default to always
use the 600hz divider resulting in values off by a factor of 2.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-12-05 10:54:53 +02:00
Anthony Williams
ca2ed7de3d sensor: rm3100: Correct LSB/uT scale factor comment in rm3100_decoder.c
The scale factor when used as a divider from the datasheet specifies
units in LSB/uT not uT/LSB. This change corrects the comment to reflect
the correct units for the divider.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-12-05 10:54:53 +02:00
Jilay Pandya
71368aaa01 doc: add migration guide entry for replacing msx-gpios to m0/m1-gpios
msx-gpios is now replaced with m0/m1-gpios for adi,tmc2209 in order
to be consistent with other step/dir drivers

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-12-05 10:54:41 +02:00
Jilay Pandya
fddadaf012 tests: generalize drv84xx tests for all step-dir drivers
drv84xx test-suite could be extended to other step-dir drivers
as well

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-12-05 10:54:41 +02:00
Jilay Pandya
4d68fb8be5 drivers: tmc2209: use m0/m1-gpios instead of msx-gpios
unify msx-gpios for step-dir drivers. tmc2209 is an exception
for now and hence migrating to m0/m1-gpios instead of msx-gpios.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-12-05 10:54:41 +02:00
Fabio Baltieri
6850470587 i2c: shell: make the buffer configurable
Add a Kconfig option to tweak the i2c shell command buffer size,
similarly to other shell commands.

This is allocated on the stack so add a note about it.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-12-05 10:54:31 +02:00
Cheng Chang
abb707ca36 bluetooth: host: obex: Allow MOPL to exceed MTU for mobile compatibility
When MOPL  exceeds MTU, adjust it to match MTU instead of failing the
connection. This handles the common case where mainstream mobile
operating systems (iPhone and Android) negotiate
MOPL values greater than the RFCOMM or L2CAP MTU.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-12-05 10:54:21 +02:00
Holt Sun
07a67e81b6 samples: memc: rw612: set AHB RX buffer defaults for FlexSPI cache/DMA
FRDM/RD RW612 overlays are updated to provide explicit AHB RX buffer
configuration for the FlexSPI controller, aligning with RW61x features:
- FlexSPI flash (port A): 32 KiB cache, dynamic decryption, XIP, DMA
- FlexSPI pSRAM (port B): 32 KiB cache, dynamic decryption, XIP, DMA

The rx-buffer-config now assigns a dedicated buffer for the primary
CPU traffic and leaves buffer 7 as the generic fallback, matching the
expected cache/DMA behavior and MCUX SDK defaults. This ensures sane
defaults when PSRAM is enabled without requiring users to patch AHB
buffer settings manually.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-05 10:54:12 +02:00
Zhaoxiang Jin
f052dbb68f drivers: counter: lptmr: Fix get_pending_int wrong implementation
Originally, function 'mcux_lptmr_get_pending_int' checks if both
TCF and TIE flags are set to determine if an interrupt is pending.
But function 'LPTMR_GetStatusFlags' only returns the status flags,
that is we will never get TIE flag from it. then the function
always returns false.

The correct approach is to read the CSR register directly and check
if both TIE and TCF bits are 1. If yes, there's a pending interrupt;
if not, there isn't.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-05 10:54:01 +02:00
Jordan Yates
8b697b6b03 tests: audio: dmic_util: test PDM_DT_IO_CFG_GET
Test the implementation of `PDM_DT_IO_CFG_GET`. Implemented as a
distinct test from `dmic_api` to allow running natively in CI.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-05 10:53:35 +02:00
Jordan Yates
e2d88b44e4 audio: dmic: macros to query DT microphone config
Add a macro to construct a `struct pdm_io_cfg` instance from the
devicetree node with the appropriate properties.

Add macros to query which PDM channels are available.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-05 10:53:35 +02:00
Jordan Yates
2ceda8506e dts: bindings: audio: common PDM channel configuration
The allowable ranges for the clock frequency and duty cycle, together
with the enabled channels, are hardware configuration parameters that
should be described in devicetree.

`pdm-dmic.yaml` is its own file to allow more complicated hardware
configurations to inherit it.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-05 10:53:35 +02:00
Seppo Takalo
acf375ed48 drivers: modem_cellular: Switch chat to UART when CMUX closes
When CMUX channels are closed, UART goes back to AT command mode.
Switch Chat pipe to use the plain UART as DLCI2 pipe does not
exist anymore.

Add a small delay, so the remote end have time to clean up and
go back to normal AT command mode.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-12-05 10:53:25 +02:00
Alex Apostolu
557e7c6111 tests: drivers: dma: configure alignment based on devicetree
Configure the alignment of the data buffers based on the
dma_buf_addr_alignment property. Default to 32 if property isn't set.

Signed-off-by: Alex Apostolu <aapostolu@tenstorrent.com>
2025-12-05 10:53:12 +02:00
Alex Apostolu
0e28a0230c tests: drivers: dma: use tst_dma0 across all tests
Use tst_dma0 node across all tests for consistency.

Signed-off-by: Alex Apostolu <aapostolu@tenstorrent.com>
2025-12-05 10:53:12 +02:00
Badr Bacem KAABIA
ceac2e6c0f drivers: wifi: airoc: Fallback to user security on scan fail
In the `airoc_mgmt_connect` function, if the user provides a security
type of `WIFI_SECURITY_TYPE_NONE` along with a PSK, the driver attempts
to scan for the AP to determine the correct security protocol.

However, if this scan fails or does not find the AP, the driver would
previously fail the connection attempt instead of using the security
type originally provided by the user.

This change ensures that if the scan does not resolve the security
type (`WHD_SECURITY_UNKNOWN`), the driver falls back to using the
security type from the connection parameters. This makes the connection
process more robust and resilient to scan failures.

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-12-05 10:52:44 +02:00
Jacky Lee
83c7b1a6b8 doc: boards: update index.rst
Updated boards/index.rst to remove unnecessary context
and fix statements.

Signed-off-by: Jacky Lee <jacky.lee@egistec.com>
2025-12-05 10:52:33 +02:00
Jacky Lee
46b9326bfd soc: egis_et171: Fix the i-cache activation order issue
Since caching is enabled before z_data_copy(), RAM
functions may still be cached in the d-cache instead
of being written to SRAM. In this case, the i-cache
will fetch the wrong content from SRAM. Thus, using
"fence.i" to fix it.

Signed-off-by: Jacky Lee <jacky.lee@egistec.com>
2025-12-05 10:52:33 +02:00
Jacky Lee
61e6e64abc boards: egis_et171: Remove unnecessary default configuration
Remove the default configuration FLASH_LOAD_SIZE, because
"linker.ld" will automatically configure FLASH_LOAD_SIZE
to the same default value

Signed-off-by: Jacky Lee <jacky.lee@egistec.com>
2025-12-05 10:52:33 +02:00
Mark Wang
3a8d37ecc4 libsbc: Fix compiler-specific warning flag for non-GNU compilers
The -Wno-stringop-overflow flag is specific to GCC and causes issues
with other compilers like Clang. Separate the compiler options so that
the warning suppression flag is only applied when using GCC.

This change wraps the -Wno-stringop-overflow flag in a compiler ID
check while keeping the optimization flags (-O3 -std=c11 -ffast-math)
applied for all compilers.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-12-05 10:52:18 +02:00
farsin NASAR V A
fd63bf93a5 tests: drivers: rtc: Add support for the sam_e54_xpro board
Added sam_e54_xpro.conf file

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2025-12-04 17:12:33 -05:00
farsin NASAR V A
e30cf00a70 boards: microchip: sam: Add RTC node and enable RTC G1 support
Add RTC node in sam_e54_xpro.dts
Update sam_e54_xpro.yaml to reflect RTC G1 support on the board.

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2025-12-04 17:12:33 -05:00
Farsin Nasar V A
e7b40aeb15 drivers: rtc: microchip: Add rtc driver
Add rtc driver for Microchip RTC G1.

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-12-04 17:12:33 -05:00
farsin NASAR V A
2830be0cd5 dts: arm: microchip: add RTC node and binding for G1 IP
Add the device tree node and the binding file for
microchip RTC G1 IP.

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2025-12-04 17:12:33 -05:00
Kevin Chan
bde681d27a drivers: dma: add UART async. logic
- Modified DMA configuration and logic for UART Async.

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2025-12-04 17:12:23 -05:00
Kevin Chan
162be31386 samples: drivers: uart: async_api: support PSC3 and PSE84
- add overlay files in order to run async_api app.

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2025-12-04 17:12:23 -05:00
Kevin Chan
531e4507a8 tests: drivers: uart: uart_async_api: support pse84 and psc3
- add overlay and .conf files in order to run uart_async_api app.

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2025-12-04 17:12:23 -05:00
Kevin Chan
203c655343 Drivers: Serial: Add PDL based UART Async. for PSE84 and PSC3
- add UART Async. driver code
- Remove references to cat1-uart-pdl from devicetree references

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2025-12-04 17:12:23 -05:00
John Batch
0fadfd211f boards: Infineon: Removing dts references to infineon,cat1-uart-pdl
Removing references to infineon,cat1-uart-pdl from device tree board
files.  The differentiation between PDL and UART based drivers is done
by a Kconfig option.  See discussion in this PR for context:

https://github.com/zephyrproject-rtos/zephyr/pull/98035

Signed-off-by: John Batch <john.batch@infineon.com>
2025-12-04 17:12:23 -05:00
Julien Racki
b3cb7040e8 samples: watchdog: Add CI build test for STM32 IWDG EWI
This commit ensures the CI will run test build  for the STM32
that supports the IWDG early wake-up.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-12-04 17:12:08 -05:00
Julien Racki
086b873667 drivers: watchdog: Add the support of the IWDG Early Wakeup
Add the support of the IWDG early wakeup.
Gives the possibility for the user to set a
callback that will be called before an IWDG reset.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-12-04 17:12:08 -05:00
Julien Racki
d3baaac688 drivers: watchdog: Add Kconfig option for the IWDG Early Wakeup
Add a Kconfig option that is enabled if the soc's
IWDG support early wakeup.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-12-04 17:12:08 -05:00
Julien Racki
2715539964 dts: arm: st: Add the interrupt line for the IWDG
Add the interrupt line for the socs with the IWDG implemented.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-12-04 17:12:08 -05:00
Farsin Nasar V A
2a5077b407 tests: drivers: pwm: pic32cx_sg61_cult: added pwm test support files
Added pwm test support files for pic32cx_sg61_cult

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-12-04 17:11:56 -05:00
Muhammed Asif
6b6711f520 boards: microchip: pic32cx_sg41_cult: Add pwm-led on board
- Configures the pwm led on board.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-12-04 17:11:56 -05:00
Muhammed Asif
b936e42adf boards: microchip: pic32cx_sg61_cult: Add pwm-led on board
- Configures the pwm led on board.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-12-04 17:11:56 -05:00
Muhammed Asif
b70c7bb7d5 dts: arm: microchip: pic32cx_sg: add tcc node for pwm peripheral
- Adds the dts nodes for pwm driver using tcc peripheral.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-12-04 17:11:56 -05:00
Fabin V Martin
7e44876a29 tests: boot: test_mcuboot: Add board to platform allow list
Add pic32cx sg41 and sg61 cult boards.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-04 17:11:43 -05:00
Fabin V Martin
eee296298e samples: sysbuild: update list of allowed platforms
Add pic32cx sg41 and sg61 cult boards.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-04 17:11:43 -05:00
Fabin V Martin
51cf71afea boards: microchip: pic32cx_sg61_cult: update board dts
Add zephyr,flash-controller to the chosen node and
add partitions for mcuboot support

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-04 17:11:43 -05:00
Fabin V Martin
6e7591d772 boards: microchip: pic32cx_sg41_cult: update board dts
Add zephyr,flash-controller to the chosen node and
add partitions for mcuboot support

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-04 17:11:43 -05:00
Fabin V Martin
840a7c6955 dts: arm: microchip: add flash node and bindings
Add flash node and binding parameters for nvmctrl
flash driver

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-04 17:11:43 -05:00
Marco Widmer
9634425478 net: context: release context mutex before clearing IN_USE flag
A race condition was observed with concurrent net_context_get()
and net_context_unref() calls: If net_context_unref() is interrupted
just after clearing the NET_CONTEXT_IN_USE flag, net_context_get() may
try to reuse the context and reinitialize its mutex through
k_mutex_init(). Once net_context_unref() resumes, it calls
k_mutex_unlock() on the newly initialized mutex, which may lead to the
following assertion:

ASSERTION FAIL [mutex->lock_count > 0U] @ zephyr/kernel/mutex.c

Fix this by unlocking the context mutex before clearing the
NET_CONTEXT_IN_USE flag.

Signed-off-by: Marco Widmer <marco.widmer@bytesatwork.ch>
2025-12-04 17:11:25 -05:00
Nikhil Namjoshi
79a7106f9d net: Initialize unspec_addr to avoid -Werror=maybe-uninitialized
The variable 'unspec_addr' in net_dhcpv6_init() is implicitly
initialized on some platforms and optimization levels, but not
guaranteed to be initialized on all code paths when built with
compiler instrumentation.

This leads to a build failure with the strict
'-Werror=maybe-uninitialized' warning when code coverage flags are
enabled (e.g., via twister --coverage).

```
zephyr/subsys/net/lib/dhcpv6/dhcpv6.c:2325:26: error: ‘unspec_addr’
may be used uninitialized [-Werror=maybe-uninitialized]
         net_ipaddr_copy(&net_sin6(&unspec_addr)->sin6_addr,
```

Signed-off-by: Nikhil Namjoshi <nikhilnamjoshi@google.com>
2025-12-04 17:11:17 -05:00
Swamidas Nampalli
c2f8f9813d drivers: wifi: siwx91x: Drop the loop back packets
Added a MAC-layer filter to discard frames whose source MAC address
matches the devices own MAC address. These packets are looped-back
frames that do not need to be processed again by the network stack.

Dropping such frames early improves correctness, avoids redundant RX
processing, and reduces load on the IPv4/IPv6 protocol handlers.

This patch is a workaround for a bug in the NWP

Signed-off-by: Swamidas Nampalli <Swami.Das@silabs.com>
2025-12-04 14:05:47 -05:00
Johann Fischer
c828f5db8d doc: usb: add VID/PID documentation for the new USB device stack
The content is almost identical to that of the legacy stack because we
either ported or rewrote all the samples.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-12-04 14:05:35 -05:00
Markus Becker
96944d92f4 net: ocpp: Change Current.OfferedMaximum to Current.Offered
According to
<https://openchargealliance.org/wp-content/uploads/2025/04/OCPP_1.6_documentation.zip>
the Measurand value is called Current.Offered (Maximum current offered
to EV).

Signed-off-by: Markus Becker <markushx@gmail.com>
2025-12-04 14:05:24 -05:00
Jaro Van Landschoot
ca556db5c3 doc: releases: 4.4: Add PWM events
Add an entry for the addition of PWM events

Signed-off-by: Jaro Van Landschoot <jaro.vanlandschoot@basalte.be>
2025-12-04 14:05:13 -05:00
Jaro Van Landschoot
9be9684b53 samples: drivers: pwm: event: Add sample
Add a simple sample demonstrating how the PWM event API can be
used to precisely time 5 periods of a PWM signal.

Signed-off-by: Jaro Van Landschoot <jaro.vanlandschoot@basalte.be>
2025-12-04 14:05:13 -05:00
Jaro Van Landschoot
1becebc8f9 tests: drivers: build_all: pwm: add pwm event to sam
Add the pwm event functions of the sam pwm driver to the
build all test.

Signed-off-by: Jaro Van Landschoot <jaro.vanlandschoot@basalte.be>
2025-12-04 14:05:13 -05:00
Jaro Van Landschoot
8407f1766f drivers: pwm: sam: Add period and fault events
The SAM4S pwm supports several events. This commit
implements the events when a channel period has ended
or a fault event has occured.

Signed-off-by: Jaro Van Landschoot <jaro.vanlandschoot@basalte.be>
2025-12-04 14:05:13 -05:00
Jaro Van Landschoot
c6e64a1337 drivers: pwm: extend API to support events
Extend the PWM API to support events, as some
controllers allow interrupts if e.g., a pwm period
has ended or a fault occured.

Signed-off-by: Jaro Van Landschoot <jaro.vanlandschoot@basalte.be>
2025-12-04 14:05:13 -05:00
Emil Gydesen
ff4347571b Bluetooth: BAP: Bcast Source: Add missing use of variable
The broadcast_state variable was not used in
bt_bap_broadcast_source_update_metadata to verify the
state, but broadcast_source_get_state was instead called
twice.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-04 14:05:05 -05:00
Emil Gydesen
51946986e6 Bluetooth: BAP: Bcast Source: Refactor bt_bap_broadcast_source_reconfig
Refactor the bt_bap_broadcast_source_reconfig function to be less
complex by splitting the verification into multiple functions.

Additionally, it also fixes a rare, but potential, issue where
some subgroups were updated before a later subgroup would fail
to be updated. Added can_merge_codec_cfg_data to verify correctness
before we attempt to update any subgroups. This new check is also
applied to bt_bap_broadcast_source_create.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-04 14:05:05 -05:00
Emil Gydesen
b6e3f8ee5c Bluetooth: BAP: Broadcast source: Reduce complexicty of valid_param
Move the subgroup parameter validation to its own function to
reduce the size and complexity of valid_broadcast_source_param
to make Sonarcube happy.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-04 14:05:05 -05:00
David Jewsbury
6450eaab48 drivers: nrf_auxpll: Add CHECK_DTS_BINDING_VS_MDK macro
Macro added to compare the devicetree bindings against
values in the MDK to clean up code and check out-div
bindings.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-12-04 14:04:54 -05:00
David Jewsbury
2a395ba0b9 dts: bindings: clock: nrf-auxpll: add out-div binding
It was previously possible to set output division setting
to an invalid number. These bindings ensure a valid number
is set of 0-8.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-12-04 14:04:54 -05:00
David Jewsbury
0e00299dcf dts: nrf9280: Update canpll to use frequency dts binding
CANPLL was not using the frequency binding defined in
nrf-auxpll.h

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-12-04 14:04:54 -05:00
Vignesh Pandian
c310133b3e scripts: checkpatch: fix missing blank line detection
Fix checkpatch not warning when blank line after declaration
is removed. Updated regexes to also handle context lines,
ensuring consistent detection.

Fixes: #98976

Signed-off-by: Vignesh Pandian <vignesh@aerlync.com>
2025-12-04 14:04:45 -05:00
Tomi Fontanilles
82906c642b doc: release-notes-4.4: add entry for TF-M 2.2.2 update
Document the update.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-12-04 14:03:35 -05:00
Tomi Fontanilles
ea3697bf88 manifest: tf-m: update to 2.2.2
Update the TF-M repos to 2.2.2, from version 2.2.0.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-12-04 14:03:35 -05:00
Mathieu Choplain
0289dec335 samples: board: st: wkup_pins: configure the GPIO pin as input
Certain series (e.g., STM32WBA) require pins to be configured as input
to behave properly as wake-up pins.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 14:03:17 -05:00
Lyle Zhu
91f19de3f8 tests: Bluetooth: Classic: rfcomm_s: Check connect event before send
Sometimes, the command `rfcomm_s send 9 1` will fail to execute due
to the DLC has not been established.

Check the DLC connected event before sending shell command
`rfcomm_s send 9 1`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-04 14:03:06 -05:00
Emil Hammarström
9538b4f0de drivers: sensor: lsm6dso: Add support for Accel LP filter
Add device tree support for enabling the second low pass filter
(LPF2) for the accelerometer output.

This adds additional low pass on top of the default ODR/2 from
the LPF1 output.

Signed-off-by: Emil Hammarström <emil.a.hammarstrom@gmail.com>
2025-12-04 14:02:57 -05:00
Emil Hammarström
54cd6a3963 drivers: sensor: lsm6dso: Change log level for failures during init
Log level in failures were changed from DBG to ERR so that the reason of
initialization failure may be known.

Signed-off-by: Emil Hammarström <emil.a.hammarstrom@gmail.com>
2025-12-04 14:02:57 -05:00
Axel Le Bourhis
5a2c28236e soc: nxp: mcxw23: increase system workque stack size when BT
Fix sysworkq stack overflow in various bluetooth samples due to using
mbedtls for crypto.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-12-04 14:02:41 -05:00
Carlo Caione
6343677e80 modules: Bump lora-basics-modem to v4.9.0
Bump lora-basics-modem module to v4.9.0.

Signed-off-by: Carlo Caione <carlo.caione@gmail.com>
2025-12-04 14:02:28 -05:00
Mathieu Choplain
92ebb28bb2 doc: generation: bump up known-good Doxygen and Latexmk versions
The "Documentation Generation" page listed a severely outdated "known-good"
version for Doxygen (1.8.13) which is no longer correct: recent attempts to
build the documentation using 1.9.1 failed miserably.

Update the minimum version to 1.15.0 which matches the version used by the
Zephyr-build Docker image, also used as part of CI, to ensure that what we
document as "known-good" is indeed a configuration known to work.

Following the same logic, bump up the known-good version of Latexmk to 4.83
which matches the version found in the Docker image. Even though some older
versions (such as 4.76) are also working, this documentation page is
informative rather than authoritative, so it's fine to merely document one
version known to work rather than the exact minimum version required.

The Graphviz version is untouched as it seems to match the Docker image.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 14:01:55 -05:00
Mathieu Choplain
fdd70c3769 dts: arm: st: n6: add nodes for USB2 instance
Even though the USB driver does not support multi-instance yet, out-of-tree
or custom boards may want to use the USB2 instance instead of USB1, which
is not currently possible because its node is not declared.

Add missing USBOTGHS2 and corresponding USBPHYC2 nodes to STM32N6 series
root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 14:01:31 -05:00
Stine Åkredalen
78c2b35a0e docs: Bluetooth: Mesh: Add Static OOB entropy requirement
Updates documentation for clarifying that for secure provisioning
with the BTM_ECDH_P256_HMAC_SHA256_AES_CCM algorithm,
the Static OOB value should contain more than 128 bits of
entropy to provide adequate security against attacks.

Signed-off-by: Stine Åkredalen <stine.akredalen@nordicsemi.no>
2025-12-04 14:01:22 -05:00
Valerio Setti
4cf7cd5748 drivers: crypto: mbedtls_shim: allow tag len to be specified in CCM
Retrieve the desired tag length from the "struct cipher_ctx" being passed
to "cipher_begin_session()" when using CCM.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-04 14:01:02 -05:00
Mathieu Choplain
518725cb3b drivers: rtc: stm32: remove ll in driver's file name
The `ll` part of driver's file name indicates that the implementation uses
the STM32Cube Low Level ("LL") library, which is not interesting because
there is only *one* STM32 driver implementation anyways. Addtionnally, the
presence of `ll` among STM32 drivers is not consistent.

Get rid of it for this class's driver to match most other STM32 drivers.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 14:00:34 -05:00
Mathieu Choplain
d0113285cf drivers: i2s: stm32: remove ll in driver's file name
The `ll` part of driver's file name indicates that the implementation uses
the STM32Cube Low Level ("LL") library, which is not interesting because
there is only *one* STM32 driver implementation anyways. Addtionnally, the
presence of `ll` among STM32 drivers is not consistent.

Get rid of it for this class's driver to match most other STM32 drivers.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 14:00:34 -05:00
Mathieu Choplain
967b42cbfe drivers: i2c: stm32: remove ll in drivers' file name
The `ll` part of drivers' file name indicates that the implementation uses
the STM32Cube Low Level ("LL") library, which is not interesting because
there is only *one* STM32 driver implementation anyways (per IP variant).
Addtionnally, the presence of `ll` among STM32 drivers is not consistent.

Get rid of it for drivers of this class to match most other STM32 drivers.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 14:00:34 -05:00
Mathieu Choplain
96632cd686 drivers: counter: stm32: remove ll in drivers' file name
The `ll` part of drivers' file name indicates that the implementation uses
the STM32Cube Low Level ("LL") library, which is not interesting because
there is only *one* STM32 driver implementation anyways (per IP variant).
Addtionnally, the presence of `ll` among STM32 drivers is not consistent.

Get rid of it for drivers of this class to match most other STM32 drivers.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 14:00:34 -05:00
Mathieu Choplain
6cb3ea5510 drivers: spi: stm32: remove ll in driver's file name
The `ll` part of driver's file name indicates that the implementation uses
the STM32Cube Low Level ("LL") library, which is not interesting because
there is only *one* STM32 driver implementation anyways. Addtionnally, the
presence of `ll` among STM32 drivers is not consistent.

Get rid of it for this class's driver to match most other STM32 drivers.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 14:00:34 -05:00
Piotr Kosycarz
167247ccdd tests: crypto: mbedtls_psa: just use ztest
This is regular ztest, no need to console harness.
(beside that console harness fails)

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-12-04 14:00:24 -05:00
Mark Wang
ab09c94377 doc: releases: migration-guide-4.4: libsbc is moved under bluetooth
Document that libsbc (sbc.c and sbc.h) has been moved under the Bluetooth
subsystem, with sbc.h now located in include/zephyr/bluetooth.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-12-04 05:26:00 -05:00
Mark Wang
2739b87566 libsbc: remove unused compile definitions
They are used in the sbc of bluedroid not in the sbc of Android bluetooth,
and Zephyr is using the sbc of Android bluetooth, so remove them.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-12-04 05:26:00 -05:00
Mark Wang
d776d00c42 bluetooth: sbc: move sbc to bluetooth
move sbc to bluetooth because only bluetooth uses it,
change CONFIG_LIBSBC_ENCODER and CONFIG_LIBSBC_DECODER as CONFIG_LIBSBC.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-12-04 05:26:00 -05:00
Mark Wang
5f79cd83ea libsbc: fix build issue
Remove `-Wno-array-bounds` as there does not seem to be any issues
that require it anymore.
Add -Wno-stringop-overflow to avoid what seem like false positive
warnings with gcc 13.3.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-12-04 05:26:00 -05:00
Firas Sammoura
0119c82065 tests: riscv: Add unit tests for riscv_pmp_decode_region
This commit introduces a suite of unit tests for the `pmp_decode_region`
function using the Ztest framework. The tests validate the correct
calculation of start and end addresses for various RISC-V PMP
(Physical Memory Protection) entry configurations.

The following scenarios are covered:
- TOR (Top of Range) mode for index 0.
- TOR (Top of Range) mode for index > 0.
- NA4 (Naturally Aligned Four-byte) mode.
- NAPOT (Naturally Aligned Power-of-Two) mode.
- Default behavior for a disabled PMP entry.

These tests ensure the PMP region decoding logic is accurate across
different addressing modes.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-12-04 05:25:40 -05:00
Mohamed Azhar
01af640688 boards: microchip: pic32cz_ca80_cult: add pinctrl to supported list
Add pinctrl to the supported drivers list for pic32cz_ca80_cult board

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-12-04 05:24:51 -05:00
Mohamed Azhar
3c79fb39a0 drivers: pinctrl: microchip: update pinctrl driver for Port G1
Updates G1 pinctrl driver

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-12-04 05:24:51 -05:00
Mohamed Azhar
d90bd3a0ed dts: arm: microchip: pic32cz_ca: Add pinctrl nodes
Adds the pinctrl node and encapsulates the port nodes within
the pinctrl node for pic32cz ca series of socs, and updates
the binding file

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-12-04 05:24:51 -05:00
Mohamed Azhar
f1cd357087 west.yml: Update west.yml for updating hal directory
Update west.yml for adding the pinctrl definition in
hal_microchip for pic32cz_ca devices

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-12-04 05:24:51 -05:00
Seppo Takalo
7f1eb218c0 modem: pipe: Don't return EPERM on closed pipe
When working on CMUX power saving, it is typical
that we end up closing the pipe before the last
RX_READY event is handled from workqueue, so we end up
receiving -EPERM which is not really a fatal error.

Pipes recover when they are re-opened. So drop this error
and return zero instead, like modem_pipe_open() and close() does.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-12-04 05:24:38 -05:00
Seppo Takalo
437becb0da modem: cmux: Add struct cmux_config into struct cmux
Instead of copying all fields from cmux_config into run-time
struct cmux, just have the configuration structure as a member.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-12-04 05:24:38 -05:00
Seppo Takalo
392665578c doc: modem: Add documentation regarding CMUX power saving
Add documentation and state machine diagrams for CMUX power saving
feature and how to use it with Zephyr.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-12-04 05:24:38 -05:00
Seppo Takalo
f6f4212710 drivers: modem: Implement support for RING indicator
Use ring indicator to wake up the CMUX device
from sleep.
Only used for runtime power management, but same event
could be used for initiating idle -> connected as well.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-12-04 05:24:38 -05:00
Seppo Takalo
94246742fb drivers: modem: cellular: Use k_pipe instead of ringbuffer
Ringbuffer is not safe in ISR but k_pipe without waiting is.
So use pipe for events, so that possible GPIO callbacks from
ISR content can post events.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-12-04 05:24:38 -05:00
Seppo Takalo
af0a788bd8 drivers: modem: Implement runtime power management for CMUX
CMUX driver can enable the support for idle-timer in
devicetree and can be requested to shut down the pipe
during sleep.

Then UART backend put the actual device into sleep when
pipe is closed.

Waking up is requested by sending data to DLC pipe
or by manually opening the uart_pipe.
Modem may request similar wake-up by a RING interrupt which
would open the same pipe.

When UART is powered and pipe is not closed, CMUX wake-up
procedure is automatic. Either end may initiate the wake-up.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-12-04 05:24:38 -05:00
Seppo Takalo
aa408d7184 modem: cmux: Implement Power Saving Control message
Signal powersaving mode for the remote end using PSC command.
Wakes up the remote end from powersaving mode by sending flag characters.

This method is defined in 3GPP TS 27.010.
Sections 5.4.6.3.2 Power Saving Control (PSC) and
5.4.7 Power Control and Wake-up Mechanisms.

Essentially it is one PSC command to indicate a sleep state, and
then repeated flag characters to wake up the remote end or indicate
that we have been woken up.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-12-04 05:24:38 -05:00
Yves Wang
3d0d909d9f doc: Update edac shell sample's readme
Update the console log in readme to make it aligned with the actual
output

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-12-04 05:24:28 -05:00
Yves Wang
e9209e60ef samples: edac: update the app to support more platforms
Decouple the edac sample with IBECC.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-12-04 05:24:28 -05:00
Yves Wang
e0cf011c9a dts: nxp: add edac support for MCX platforms
Add eim, erm and edac instance for frdm_mcxa153, frdm_mcxn236,
frdm_mcxn947, frdm_mcxe247 and frdm_mcxe31b.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-12-04 05:24:28 -05:00
Yves Wang
67e0217399 drivers: edac: Add NXP EDAC driver
Add edac driver for NXP's ERM and EIM peripherals. It can inject ECC
error to specific channel within EIM and then report the error address,
syndrome and count within ERM.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-12-04 05:24:28 -05:00
Lucien Zhao
f335c00ccd boards: nxp: mimxrt700_evk: Upgrade the onboard chip to B0 silicon
- Update the pinctrl configuration for mimxrt700_evk board to support
- Update FCB settings from SDK

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-04 05:24:16 -05:00
Lucien Zhao
b6868c885a manifest: hal_nxp: sync rt700 B0 chip update
Update manifest to sync rt700 B0 chip update

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-04 05:24:16 -05:00
farsin NASAR V A
ec1167d78f tests: drivers: clock_control: Added sam_e54_xpro test support files
Added mchp_v1_subsys.h and sam_e54_xpro.overlay file and .conf file
Added Added sam_e54_xpro platform allow in testcase.yaml

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2025-12-04 05:23:59 -05:00
Mathieu Choplain
aaee496010 mgmt: ec_host_cmd: backends/stm32_spi: configure proper DMA burst length
The burst length unit is bytes, not number of transfers. This had not been
an issue since the DMA driver historically ignored the values, but has now
become one since they are used and (most importantly for us) validated.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 05:23:02 -05:00
Mathieu Choplain
3b745a1214 drivers: video: stm32_dcmi: configure proper DMA burst length
The burst length unit is bytes, not number of transfers. This had not been
an issue since the DMA driver historically ignored the values, but has now
become one since they are used and (most importantly for us) validated.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 05:23:02 -05:00
Mathieu Choplain
4aa5e95135 drivers: uart: stm32: configure proper DMA burst length
The burst length unit is bytes, not number of transfers. This had not been
an issue since the DMA driver historically ignored the values, but has now
become one since they are used and (most importantly for us) validated.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 05:23:02 -05:00
Mathieu Choplain
be9c5398ae drivers: i3c: stm32: configure proper DMA burst length
The burst length unit is bytes, not number of transfers. This had not been
an issue since the DMA driver historically ignored the values, but has now
become one since they are used and (most importantly for us) validated.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 05:23:02 -05:00
Mathieu Choplain
9e14885e14 drivers: i2s: stm32: configure proper DMA burst length
The burst length unit is bytes, not number of transfers. This had not been
an issue since the DMA driver historically ignored the values, but has now
become one since they are used and (most importantly for us) validated.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 05:23:02 -05:00
Mathieu Choplain
f3499071cd drivers: i2c: stm32: configure proper DMA burst length
The burst length unit is bytes, not number of transfers. This had not been
an issue since the DMA driver historically ignored the values, but has now
become one since they are used and (most importantly for us) validated.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 05:23:02 -05:00
Mathieu Choplain
c4d884c7ed drivers: adc: stm32: configure proper DMA burst length
The burst length unit is bytes, not number of transfers. This had not been
an issue since the DMA driver historically ignored the values, but has now
become one since they are used and (most importantly for us) validated.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 05:23:02 -05:00
Mathieu Choplain
208b3ef5ba drivers: spi: stm32: configure proper DMA burst length
The burst length unit is bytes, not number of transfers. This had not been
an issue since the DMA driver historically ignored the values, but has now
become one since they are used and (most importantly for us) validated.

Fixes broken 16-bit on STM32N6 series.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 05:23:02 -05:00
Mathieu Choplain
3e64d53b17 release-notes: 4.4: add new voltage-scale property for STM32U5 PWRC
Add new voltage scale selection property for STM32U5 to 4.4 release notes.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 05:22:26 -05:00
Mathieu Choplain
926f9f456b drivers: clock_control: stm32u5: fix frequency range check for scale
The range check should be inclusive: scale 4 allows *up to* 25 MHz, scale 3
*up to* 55 MHz, etc.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 05:22:26 -05:00
Mathieu Choplain
1f70c795c7 drivers: clock_control: stm32u5: add configurable voltage scale support
Add support for the new `voltage-scale` property on the STM32U5-specific
Power Controller binding.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 05:22:26 -05:00
Mathieu Choplain
6dd9182912 dts: arm: st: stm32: u5: add U5-specific compatible on Power Controller
Add the "st,stm32u5-pwr" compatible to the Power Controller node in the
DTSI for STM32U5 series.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 05:22:26 -05:00
Mathieu Choplain
a49a06949c dts: bindings: pwr: add STM32U5 power controller binding
Add a binding for the power controller of STM32U5 series.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-04 05:22:26 -05:00
Michał Stasiak
46e90f93f5 soc: nordic: nrf_sys_event: handle errors correctly
nrfx_power_constlat API returns negative value if
the requested action has no effect, which is expected
in cases of multiple requests/releases. Align nrf_sys_event
to not treat it as an error.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-04 05:21:55 -05:00
Sai Santhosh Malae
ef1bd9d2a9 samples: adc: siwx91x: Add adc_dt support for siwx917_rb4338a
Add an overlay to enable the adc_dt sample on the siwx917_rb4338a
board.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-04 05:21:40 -05:00
Sai Santhosh Malae
78f47a362f drivers: adc: siwx91x: Return raw ADC value
Instead of returning a converted ADC reading, return the
raw ADC sample. Conversion is left to the user based on
the selected ADC mode (single-ended or differential).

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-04 05:21:40 -05:00
Sai Santhosh Malae
f4c152ab47 drivers: adc: siwx91x: Add ref_internal to device API
The Siwx91x ADC reference voltage is configurable rather than fixed.
Expose `ref_internal` in the device API so the driver can retrieve the
reference voltage from the device tree instead of assuming a constant
value.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-04 05:21:40 -05:00
Alvis Sun
55156419bc drivers: sensor: npcx: add sensor v2t support for npck3
Introduces the sensor driver managing the V2T module for
temperature readout.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-12-04 05:21:24 -05:00
Alvis Sun
e69bbfc55c drivers: adc: npcx: add-v2t support for npck3
Please note that when performing conversions,
the selected channels must all be of the same type
(either ADC raw or V2T.)

Mixing ADC and V2T channels in a single conversion sequence is
not supported.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-12-04 05:21:24 -05:00
Alvis Sun
b4a9e6f0b6 drivers: adc: npcx: add adc driver support for npck3
As title.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-12-04 05:21:24 -05:00
S Mohamed Fiaz
57a2249896 boards: silabs: siwx91x: Fix MEMC enable and initialization priorities
This commit corrects board configuration to enable the memory controller
and set proper initialization priorities, ensuring PSRAM is correctly
initialized during system startup.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-12-04 05:20:20 -05:00
Rex Chen
64a1477976 modules: hostap: Fix connection failed with TLS cipher RSA3K
The TLS cipher RSA3K ciphersuites ECDHE-RSA-AES256-GCM-SHA384 and
DHE-RSA-AES256-GCM-SHA384 only support TLS1.2, but TLS1.3 enabled,
version check failed in ssl_tls13_validate_peer_ciphersuite
during parse client hello.
Disable TLS1.3 for TLS cipher RSA3K to fix this issue.

Signed-off-by: Rex Chen <rex.chen_1@nxp.com>
2025-12-04 06:34:58 +00:00
Peter Mitsis
0d4856bb38 tests: Fix variable name
Updates the spawn_threads() sleep_sec parameter name to sleep_msec
to more accurately reflect the units of measurement.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-12-04 06:34:47 +00:00
Maureen Helm
e76dd0c7ec dts: bindings: usb: Fix max3421e compatible to use hyphen word separator
Fixes the max3421e devicetree compatible to follow the convention of
using a hyphen rather than an underscore as the word separator.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-12-04 06:34:09 +00:00
Nicholas Lowell
d98ec13320 logging: add all format options to Kconfig and std_get_flags()
Some but not all LOG_OUTPUT_ format flags were Kconfigurable
for log backends using log_backend_std_get_flags()

Adding the missing configurable flags to Kconfig and referencing
them in log_backend_std_get_flags() for full control of output:
- CRLF_NONE
- CRLF_LFONLY
- SKIP_SOURCE

FORMAT_SYSLOG was omitted b/c it is specific to NET log backend.

Signed-off-by: Nicholas Lowell <Nicholas.Lowell@lexmark.com>
2025-12-04 06:33:40 +00:00
Sylvio Alves
d14a547d42 dts/dtsi: add missing zephyr prefix for consistency
Many dts/dtsi files where its dt-bindings are in-tree
do not include zephyr prefix in the #include path.
Add it to make it consistent globally.

Some dt-bindings that resides in hal can not be changed.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-12-03 15:38:17 -05:00
Holt Sun
6cacb70092 soc: nxp: lpc55XXX: add cache support for LPC55S36
Enable instruction cache support for LPC55S36 SoC:
- Select CPU_HAS_ICACHE and HAS_MCUX_SYSCON_LPCAC
- Enable CACHE_MANAGEMENT and EXTERNAL_CACHE by default
- Set ICACHE_LINE_SIZE to 256 bytes

This enables the SYSCON LPCAC cache driver for improved
performance on the LPC55S36 SoC.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-03 15:37:50 -05:00
Holt Sun
aa6f7e925b modules: hal_nxp: add SYSCON LPCAC cache support
Add HAL support for SYSCON LPCAC cache controller by:
- Adding HAS_MCUX_SYSCON_LPCAC Kconfig option
- Integrating cache_lpcac_mcxn driver component

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-03 15:37:50 -05:00
Holt Sun
b403bb5c66 drivers: cache: add NXP SYSCON LPCAC cache driver
add cache driver for NXP SYSCON LPCAC controller,
this driver provides instruction cache management
with enable/disable and invalidation support.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-03 15:37:50 -05:00
Martin Hoff
4f1313b0ad soc: silabs: siwx91x: unique place for sys clock tick definition
This patch put in the same place the default value for
SYS_CLOCK_TICKS_PER_SEC. It also apply the sleeptimer clock frequency
when sleeptimer is used for sys clock.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-03 15:37:09 -05:00
Martin Hoff
e524c1f51e soc: silabs: siwx91x: define hardware sys clock from dts
This patch introduce configuration of the symbol
'SYS_CLOCK_HW_CYCLES_PER_SEC' with dts entry rather than a hardcoded
value.
Clock control on siwx91x needs to use the clock frequency of the cpu
to init rather than the 'SYS_CLOCK_HW_CYCLES_PER_SEC' symbol,
otherwise we initialize the m4 clock with the ULP ref clock.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-03 15:37:09 -05:00
Damjan Belavic
470290cfc4 xen/dom0: Add xen_domctl_deassign_dt_device support
Add wrapper function for XEN_DOMCTL_deassign_device hypercall to
support deassigning device tree devices from guest domains.

Signed-off-by: Damjan Belavic <damjan_belavic@epam.com>
2025-12-03 15:37:00 -05:00
Chaitanya Tata
466d18d19c net: l2: wifi_shell: Fix MFPR handling
When protocol says MFP is required for WPA3, no point in asking user and
then validating.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-12-03 15:36:47 -05:00
Chaitanya Tata
7cbcd1d1d3 modules: hostap: Add checks for WPA3
If the WPA3 is disabled in the build handle gracefully rather than
cryptic supplicant internal messages.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-12-03 15:36:47 -05:00
Chaitanya Tata
237e4e4ae8 modules: hostap: Fix auto mode without WPA3 enabled
In case WPA3 is disabled in the config but auto security is used, the
wifi status shows security as "Unknown".

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-12-03 15:36:47 -05:00
Alberto Escolar Piedras
61e544c2f3 tests: benchmark: Mbed TLs: filter for posix arch
There is no point benchmarking on the posix architecture, and
how the test is now it just hungs. So let's filter it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-03 15:36:29 -05:00
Rahul Gurram
e02845b7cb drivers: wifi: siwx91x: To improve SiWx91x performance
To enhance throughput performance on the SiWx91x series, Added
some Siwx91x configurations by deafult.

Signed-off-by: Rahul Gurram <rahul.gurram@silabs.com>
2025-12-03 10:40:10 -05:00
Damian Krolik
6402a58f34 debug: coredump: stack top limit for current thread
Extend the functionality to limit the number of stack bytes
included in the core dump by allowing the limit to be
different for the current thread and remaining threads.

This is useful because it is more likely that we need more
call frames of the thread that was running when the
exception occurred than of the other threads in order to
analyze the exception.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2025-12-03 10:40:00 -05:00
Marc Herbert
a0045c5573 doc/requirements.in: clarify they are additional, not standalone
Rephrase the file header to make sure these dependencies cannot be
misinterpreted as standalone.

The doc requirements were standalone in January 2021 as demonstrated by
commit e21ffe6baa ("requirements-doc: add PyYAML which removes
dependency on -base") and were most likely tested as standalone by CI
until January 2025 when commit b6922c83a8 ("ci: doc: add
action-zephyr-setup") added a Zephyr setup step to
`.github/workflows/doc-build.yml`

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2025-12-03 10:39:52 -05:00
Ricardo Cañuelo Navarro
e407153fd2 shields: buydisplay_3_5_tft: disable pointer axes inversion
The current configuration of the touch controller node inverts the x and
y axes, which doesn't match the current display configuration in the
ili9488_buydisplay_3_5_tft_touch_arduino node, ie. pointing to the
right/bottom side of the screen registers a touch in the left/top side.

Fix it by removing the inverted-x and inverted-y properties.

Signed-off-by: Ricardo Cañuelo Navarro <rcn@igalia.com>
2025-12-03 10:39:36 -05:00
Matthias Alleman
78b5ecff1e lvgl: input: lvgl_pointer_input: fix NULL pointer dereferencing
Fixes the dereferencing of a NULL pointer when interrupts of an
input device happen early in the application.

Signed-off-by: Matthias Alleman <matthias.alleman@basalte.be>
2025-12-03 10:39:23 -05:00
dependabot[bot]
53950396ff ci: doc: bump the doc-deps group across 1 directory with 3 updates
Bumps the doc-deps group with 3 updates in the /doc directory: [doxmlparser](https://github.com/doxygen/doxygen), [pytest](https://github.com/pytest-dev/pytest) and [python-dotenv](https://github.com/theskumar/python-dotenv).


Updates `doxmlparser` from 1.14.0 to 1.15.0
- [Release notes](https://github.com/doxygen/doxygen/releases)
- [Changelog](https://github.com/doxygen/doxygen/blob/master/doc_internal/releases.md)
- [Commits](https://github.com/doxygen/doxygen/commits)

Updates `pytest` from 8.4.2 to 9.0.1
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/8.4.2...9.0.1)

Updates `python-dotenv` from 1.1.1 to 1.2.1
- [Release notes](https://github.com/theskumar/python-dotenv/releases)
- [Changelog](https://github.com/theskumar/python-dotenv/blob/main/CHANGELOG.md)
- [Commits](https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.1)

---
updated-dependencies:
- dependency-name: doxmlparser
  dependency-version: 1.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: doc-deps
- dependency-name: pytest
  dependency-version: 9.0.1
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: doc-deps
- dependency-name: python-dotenv
  dependency-version: 1.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: doc-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-03 10:39:10 -05:00
Krzysztof Chruściński
be27fa38b4 soc: nordic: common: gppi_init: Move initialization earlier
GPPI initialization shall be executed as early as possible.
Add _ prefix to the initialization function to reduce chances that
other function calls uninitialized GPPI.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-03 10:38:57 -05:00
Pavel Vasilyev
9227a7c131 bluetooth: buf: Fix callback protection for ISR context
Fix assertion failure when buf_rx_freed_notify() is called from ISR
by replacing k_sched_lock with atomic_ptr operations for callback
pointer access.

The scheduler lock is retained during callback execution in thread
context to maintain backward compatibility, but is skipped in ISR
context where it's not available.

Updated documentation to clarify the behavior difference between
thread and ISR contexts.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-12-03 10:38:47 -05:00
Piotr Kosycarz
9cd1247615 tests: bluetooth: audio: pacs: move native_sim to common
Move platform def into common section.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-12-03 10:38:37 -05:00
Piotr Kosycarz
20eabf354d tests: bluetooth: audio: ascs: set native_sim in common
Use native_sim for all configurations.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-12-03 10:38:37 -05:00
Fin Maaß
0e0ff29121 drivers: regulator: Add TI tps55287
Add regulator driver for TI TPS55287 buck-boost

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-03 09:13:45 -05:00
Michał Stasiak
3603ce5626 manifest: update hal_nordic to have nRF54l errata 55 fixed
Errata needs to apply in more cases.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-03 09:13:33 -05:00
Michał Stasiak
60892a30a7 drivers: watchdog: wdt_nrfx: return expected error
According to API docs, wdt_disable() should return
EFAULT when called too early. Adjusted driver.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-03 09:13:24 -05:00
Aaron Delago
bc6edd95c7 include: storage: fixes typo in disk_access.h
Fix two typos in the disk access header file.

Signed-off-by: Aaron Delago <aarondelago@gmail.com>
2025-12-03 09:13:12 -05:00
Robert Lubos
2c21048ade net: core: Verify interface state in net_try_send_data()
Verify that the interface is in operational UP state before attempting
to send the packet with net_send_data() / net_try_send_data().

So far there's only been an NET_IF_LOWER_UP check in a lower level
function, net_if_try_send_data(), however that didn't work well with
interface like Wi-Fi, whouch could have carrier state set to ON, but
was still not associated with the network (so the interface was no
operational UP). Protocols like ICMP or DHCP, which use net_send_data()
directly, should not be able to send packets in such case.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-12-03 09:12:58 -05:00
Adam Kondraciuk
75dfc059e7 drivers: i2s: nrf_tdm: Add guards for buffers size
TDM peripheral requires TXD.MAXCNT and RXD.MAXCNT registers to be:
- multiple of 4 bytes
- larger than 8 bytes

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-12-03 09:12:29 -05:00
Fabian Blatz
de52d1df10 drivers: display: sdl: Move sdl_bottom parameters into structs
Since the number of function arguments grows out of hand, place them into
structs and pass a struct to the method instead.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-12-03 09:12:18 -05:00
Fabian Blatz
ef45a64f0d drivers: display: sdl: Add elliptical masking of display area
Adds `SDL_DISPLAY_ROUNDED_MASK` and `SDL_DISPLAY_ROUNDED_MASK_COLOR`
Kconfig options to mask a elliptical area of the display. This is useful
for prototyping alignments for rounded displays.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-12-03 09:12:18 -05:00
Mathieu Choplain
636df434b9 twister: device-handler: use --dev-id for STM32CubeProgrammer runner
Now that the STM32CubeProgrammer runner supports the standard `--dev-id`
argument, replace usage of `--tool-opt` in the Twister device handler code.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-03 09:12:09 -05:00
Mathieu Choplain
aaaf1d3992 scripts: pytest: hw_adapter: use --dev-id for STM32CubeProgrammer runner
Now that the STM32CubeProgrammer runner supports the standard `--dev-id`
argument, replace usage of `--tool-opt` in the pytest harness hardware
adapter.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-03 09:12:09 -05:00
Mathieu Choplain
f1a75d75c7 runners: stm32cubeprogrammer: add support for --dev-id
Add support for the standard `--dev-id` argument used to select
target ST-Link debug probe based on serial number. Note that this
could already be achieved using custom argument `--conn-modifiers`.
(`--dev-id <XXX>` is equivalent to `--conn-modifiers sn=<XXX>`)

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-03 09:12:09 -05:00
Mathieu Choplain
5f67dfdf41 twister: device-handler: silence no-name-in-module warning
Silence CI warning caused by line "from . import ZEPHYR_BASE". This is a
legitimate pattern, but pylint seems unable to deduce so. Many other
scripts perform a similar silencing.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-03 09:12:09 -05:00
Stanislav Bobokalo
f16f13d9e8 dts: renesas: fix syntax error in multiple DTS/DTSI files
Properties in bclk nodes were defined after the bclkout subnode,
disk subnode was defined before properties in a few boards DTS files
which violates the Devicetree Specification v0.4, section 6.3:

"Nodes may contain property definitions and/or child node definitions.
If both are present, properties shall come before child nodes."

This caused the Device Tree Compiler error:
"Properties must precede subnodes. Unable to parse input tree"

This commit moves nested nodes after properties,
fixing the syntax error and ensuring compliance with
the Devicetree Specification.

Signed-off-by: Stanislav Bobokalo <stanislav.b@embedd.it>
2025-12-03 09:12:00 -05:00
Michał Stasiak
316c363f8e modules: hal_nordic: nrfx: change symbol for pinreset GPIO
Changed symbol that configures GPIO as pinreset source,
aligning to change in nRF MDK.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-03 09:11:50 -05:00
Michał Stasiak
6e5400bd24 modules: hal_nordic: nrfx: allow SWD pins as GPIOs
Added compile definition expected by nRF MDK that configures
SWD pins as GPIOs.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-03 09:11:50 -05:00
Michał Stasiak
cb7433bc72 dts: bindings: arm: add binding for Nordic TAMPC
Added dts binding for Nordic Tamper Controller with
property to configure SWD pins as GPIOs.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-03 09:11:50 -05:00
Tony Han
e411e7e896 tests: crypto: hash: update to support testing Microchip SHA
Update to support testing crypto_hash on sama7g54_ek board.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-12-03 09:11:40 -05:00
Tony Han
bec0afff62 boards: microchip: sam: enable SHA in sama7g54-ek dts
Enable the SHA node in sama7g54_ek.dts file.
Add crypto to sama7g54_ek.yaml support list.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-12-03 09:11:40 -05:00
Tony Han
6d52c87443 drivers: crypto: hash: add driver for Microchip SHA
Add driver for Microchip Secure Hash Algorithm (SHA), update Kconfig
and make files.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-12-03 09:11:40 -05:00
Tony Han
39fde55680 soc: microchip: sam: update MMU for sama7g5 SHA
When SHA 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-12-03 09:11:40 -05:00
Tony Han
c1251176fb dts: arm: microchip: sama7g5: add the node for SHA
Add the node for Secure Hash Algorithm (SHA) to sama7g5.dtsi file.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-12-03 09:11:40 -05:00
Tony Han
ff8acc2d7a dts: bindings: crypto: add microchip,sha-g1-crypto.yaml
Add microchip,sha-g1-crypto.yaml for Secure Hash Algorithm (SHA)
controller.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-12-03 09:11:40 -05:00
Tony Han
ac31be0d98 drivers: crypto: Kconfig: rename Kconfig.xec to Kconfig.mchp
Rename to Kconfig.mchp for Microchip crypto drivers support.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-12-03 09:11:40 -05:00
Tony Han
05ef041359 dts: arm: microchip: sam: reorder the nodes by address in sama7g5.dtsi
Update the soc nodes in sama7g5.dtsi by address ascending order.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-12-03 09:11:40 -05:00
farsin NASAR V A
d3076f0600 tests: drivers: flash: Add support for the sam_e54_xpro board
Added sam_e54_xpro platform allow in testcase.yaml.
Added board support in main.c

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2025-12-03 09:11:31 -05:00
Henrik Lindblom
83064c0f5c settings: apply clang-format to settings.h
The code was not formatted properly causing compliance failures.

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2025-12-03 09:11:03 -05:00
Henrik Lindblom
d5fc0dd6ad docs: settings: add missing docstring
The macro SETTINGS_STATIC_HANDLER_DEFINE did not have a docstring alghough
it's used in-tree more than the documented
SETTINGS_STATIC_HANDLER_DEFINE_WITH_CPRIO.

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2025-12-03 09:11:03 -05:00
Henrik Lindblom
41da3e91a8 docs: settings: harmonize docstring style
Use the same docstring style throughout the public header. Prefer to
have struct field documentation above the field definition instead of
placing it after using "/**<". Also use the doxygen special commands for
documenting function parameters and return values.

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2025-12-03 09:11:03 -05:00
Sunil Abraham
a3952ebef0 boards: microchip: PIC32CM_JH: configure clock source and frequency
Configure CPU clock using FDPLL, sourced from XOSC to achieve 48Mhz.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-12-03 09:10:52 -05:00
Sunil Abraham
a280bb5b9d drivers: clock_control: PIC32CM_JH: Add clock control driver
Add clock control driver.
Implement bootup clock initialization, on, off and get_rate API.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-12-03 09:10:52 -05:00
Sunil Abraham
236589252e dts: clock: PIC32CM_JH: Add clock control driver bindings
Add bindings for dfll, fdpll, gclk generator, mclk cpu, osc32k, rtc clock
and xosc.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-12-03 09:10:52 -05:00
Appana Durga Kedareswara rao
c8d6d20443 boards: amd: versalnet_apu: Add comprehensive TF-A build integration
Enable ARM Trusted Firmware support for Versal NET APU board with
platform-specific optimizations.

Changes:
- Add TF-A platform configuration (PLAT=versal_net)
- Configure board-specific TF-A parameters (TFA_NO_PM, PRELOADED_BL33_BASE)
- Add automatic TF-A module selection in Kconfig
- Update QEMU kernel loading to use TF-A bl31.elf
- Modified data address configuration to match QEMU implementation

The board now automatically builds ARM Trusted Firmware during Zephyr
application compilation with Versal NET specific optimizations.

Boot flow: Boot PDI -> TF-A -> Zephyr

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-12-03 09:10:37 -05:00
Appana Durga Kedareswara rao
927584b773 modules: tf-a: Add extensible board-specific build parameter support
Enhance the TF-A build system to support board-specific build parameters
through TFA_EXTRA_ARGS mechanism.

Changes:
- Add TFA_EXTRA_ARGS variable support for board-specific parameters
- Implement proper string-to-list conversion for make argument expansion

This allows individual board configurations to specify platform-specific
TF-A build parameters without modifying the core TF-A build logic.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-12-03 09:10:37 -05:00
Pieter De Gendt
7e4235ff21 scripts: ci: check_compliance: Skip generated Devicetree Kconfig symbols
Do not generate a compliance error when referring to generated Kconfig
symbols from Devicetree.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-03 11:45:00 +01:00
Aleksandr Khromykh
00fdcf0582 bluetooth: mesh: lpn shouldn't relay messages received over friendship
Commit fixes the issue when lpn device relays
broad- and group cast messages received over
friendship queue. This is specification violation,
see Table 3.13: Network layer Network PDU retransmission
requirements. Also, it does not have sense since
sending messages have already happened and lpn
just consumes extra power to retransmit useless data.
In general, lpn device will be more power efficient after
this fix.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-12-03 11:44:34 +01:00
Haoran Jiang
e73f231ef8 dt-bindings: pinctrl: sf32lb52: Add SA port pinmux definition
Add SA port pinmux definition

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-12-03 11:44:28 +01:00
Haoran Jiang
6d4900d0b9 drivers: pinctrl: sf32lb: Preserve the SR/IS definition for each register
Only modify the definitions that need to be changed in the pinmux register;
SR/IS will retain their default values after reset.

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-12-03 11:44:28 +01:00
Haoran Jiang
7ebf5091c2 soc: sifli: sf32lb52x: Add pinctrl definition
- Add helper macros related to sifli,analog
- Standardize driver level descriptions to `DS` instead of `DS0`

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-12-03 11:44:28 +01:00
Haoran Jiang
f71beede1a dts: bindings: pinctrl: Modify pinmux binding definitions in sf32lb
- Add sifli and analog definitions
- Modify the drive-strength definition to use the original register
    definition instead of the physical current value, as different I/O
    pins may have different definitions

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-12-03 11:44:28 +01:00
Biwen Li
e6c9feabef tests: app_dev: ram_context_for_isr: fix irq_num
This commit fixes build issue when multi level interrupts is enabled,
define TEST_IRQ_NUM as (CONFIG_2ND_LVL_ISR_TBL_OFFSET - 1)
  - CMSIS/Core/Include/core_cm33.h:2438:15: error: array subscript 24
    is above array bounds of volatile uint32_t[16]

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-12-03 11:44:03 +01:00
Chaitanya Tata
8981e4ed6b manifest: nrf_wifi: Pull fix for set station failure
Fixes issue with authentication in nRF71 set station.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-12-03 11:43:30 +01:00
Zhaoxiang Jin
a3663c8c7f drivers: counter: mcux_lptmr: add alarm support
LPTMR is a commonly used wake-up source for many NXP MCUs and
may be used as the companion low-power timer for the Cortex-M
systick. This commit enabled LPTMR set and cancel ALARM functions.

Enabling single-shot alarm support requires reprogramming
the hardware compare register (COMPARE/CMR), which is the same
resource used for the periodic TOP callback. Because of this
hardware limitation, we added Kconfig 'CONFIG_COUNTER_MCUX_LPTMR_ALARM'
to select whether alarm support is enabled. When alarm support is
enabled the driver will not allow support set TOP operation at runtime
(attempts to set TOP will return -ENOTSUP); When alarm support is
disabled the driver will not allow set and cancel ALARM operation
at runtime (attempts to set and cancel ALARM will return -ENOTSUP).
Choose the configuration that matches your application's requirements.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-03 11:43:22 +01:00
Zhaoxiang Jin
10b529709b west.yml: update hal_nxp to MCUX SDK latest release
update hal_nxp to MCUX SDK latest release (25.12.00 pvw2)

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-03 11:42:11 +01:00
Make Shi
8a5657427e Bluetooth: AVRCP: Mask invalid bit in absolute volume
PTS may send absolute volume values with bit 7 set, which exceed the
valid range. Instead of rejecting these values, mask the invalid bit
to ensure compatibility.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-12-03 11:41:55 +01:00
Make Shi
d58782fe1a Bluetooth: AVRCP: Return INVALID_COMMAND when PDU ID is invalid
Added a check in the vendor dependent handler to ensure the PDU ID
matches supported command handlers. If the PDU ID or command type
is invalid, respond with BT_AVRCP_STATUS_INVALID_COMMAND.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-12-03 11:41:55 +01:00
Chris Friedt
de917358aa libc: minimal: add missing ctype.h functions
Add the functions below to the minimal libc ctype.h since they are
missing, and are required as of C89 (C99 for `isblank()`)

* `isblank()`
* `islower()`
* `ispunct()`

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-12-03 11:41:43 +01:00
Chris Friedt
6b6a259b78 libc: minimal: ctype: remove unnecessary casts
A review comment in the PR below requested that unnecessary casts were
removed from ctype.h in the PR below.

https://github.com/zephyrproject-rtos/zephyr/pull/99451

Tested with manual compilation in C and C++ mode with the arguments
```shell
gcc -Wconversion -Werror -Wall -Wextra -Wint-conversion
clang -Wconversion -Werror -Wall -Wextra -Wint-conversion
gcc -Wconversion -Werror -Wall -Wimplicit--Wextra
clang++ -Wconversion -Werror -Wall -Wextra
```

and also with `-- -DCONFIG_COMPILER_WARNINGS_AS_ERRORS=y`

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-12-03 11:41:43 +01:00
Chris Friedt
6b393c7106 libc: minimal: ctype: express ctype limits in more direct fashion
Based on review feedback, it was suggested to express ctype
character checks in a more direct fashion, rather than using
arithmetic, and allow the compiler to optimize as it sees fit.

https://github.com/zephyrproject-rtos/zephyr/pull/99451#\
discussion_r2530339430

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-12-03 11:41:43 +01:00
Chris Friedt
8a2442fadd libc: minimal: ctype: use unsigned int instead of unsigned
The "check warns" workflow in CI warned over the use of `unsigned` as a
shorthand for `unsigned int` in several locations in
`lib/libc/minimal/include/ctype.h`.

```
 UNSPECIFIED_INT: Prefer 'unsigned int' to bare use of 'unsigned'
File:lib/libc/minimal/include/ctype.h
```

Adjust `unsigned` to `unsigned int` to avoid linter warnings.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-12-03 11:41:43 +01:00
Bindu S
473db1d26e boards: intel: adl: Added alias for pwm
Added pwm alias for ADL-N platform.

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-12-03 11:41:33 +01:00
Bindu S
64a3e11ee0 samples: drivers: uart: async_api: Added overlay to support ADL-n platform
Added support for async api application on ADL-n platform

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-12-03 11:41:33 +01:00
Holt Sun
888bd699d5 soc: nxp: mcx: mcxe24x: enable LMEM I-cache and cache management
Select CPU_HAS_ICACHE and HAS_MCUX_LMEM_CACHE.
Default CACHE_MANAGEMENT=y and select EXTERNAL_CACHE.
Prepares MCXE24x to use the LMEM cache driver.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-03 11:41:13 +01:00
Holt Sun
e179f48a8c drivers: cache: add NXP LMEM cache driver
Add LMEM cache driver implementing instruction cache ops.
Wire driver into cache Kconfig menu and CMake build.
Enables I-cache control on SoCs with NXP LMEM controller.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-03 11:41:13 +01:00
Holt Sun
e881029ae8 modules: hal_nxp: mcux: add HAS_MCUX_LMEM_CACHE and hook LMEM for MCXE24X
Select cache_lmem component for MCXE24X devices.
This exposes the LMEM cache API needed by the Zephyr driver

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-03 11:41:13 +01:00
Sreeram Tatapudi
d0cda31dc4 MAINTAINERS: Adding airoc wifi driver
Adding Infineon AIROC drivers to the Infineon Platforms

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-12-02 21:00:55 -05:00
Yongxu Wang
0626d57441 MAINTAINERS: Add Yongxu Wang as Firmware collaborator
Add myself as a collaborator for the firmware drivers subsystem.
I have been actively contributing to SCMI protocol implementations
and will continue developing new features, reviewing patches,
and testing firmware functionality

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-12-02 21:00:12 -05:00
James Roy
44106ac05f edtlib: binding: Add a examples keyword
Add an `examples` keyword to the binding to
provide a minimal example node for the binding.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-12-02 20:53:01 -05:00
Mathieu Choplain
d770c6ce13 docs: bindings-syntax: re-add note about title being optional
When originally introduced in [1], `title` was described as optional, but
this information was lost when the documentation was reworked in [2], even
though the underlying behavior in edtlib is unchanged.

Update the documentation to indicate that that `title` is optional. While
at it, fix a little typo in modified paragraph.

[1]: ee17657ad3
[2]: 3a2f839d45

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 20:52:49 -05:00
Anton Puppe
043a725b1f edtlib: Fix unformatted error message
Adds a missing f in the second line of a multiline f-string.
Previously, having the wrong top-level keys in a DTS binding YAML file
could cause a partially unformatted error message to be printed.

Signed-off-by: Anton Puppe <anton-noel-flynn.puppe@zeiss.com>
on-behalf-of: @ZEISS anton-noel-flynn.puppe@zeiss.com
2025-12-02 20:52:34 -05:00
Mathieu Choplain
18b62a567f doc: kconfig: document "named choices" as a language extension
When creating a "choice" block, it is possible to associate a name to the
choice, resulting in a so-called "named choice" being created. This allows
modification of the choice after its initial declaration - for example, its
default value can be overridden from another Kconfig file.

This feature originates from Linux and is supported by Kconfiglib; however,
since [1] (first found in release v6.9), Linux no longer supports this
feature. Critically, this means that the feature is no longer covered by
the Linux Kconfig Language documentation [2], even though it is supported
and used in Zephyr.

Add "named choices" to the Kconfig language extensions documentation page
since it has de facto become an extension after its support was dropped
from Linux.

[1] c83f020973bc72d9eec65474d8c47495191aef20 (on Linux source tree)
[2] https://www.kernel.org/doc/html/latest/kbuild/kconfig-language.html

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 19:02:38 -05:00
Mahesh Mahadevan
2c7d560c71 MAINTAINERS: Update the NXP maintainers list
Update the NXP area maintainers and collaborators

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-12-02 18:45:35 -05:00
Fabian Blatz
25d96b2589 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>
2025-12-02 18:41:42 -05:00
Scott Worley
8824b288dd boards: microchip: mec_assy6941: Add MEC1653B to board docs
We added information about MEC1653B to the mec_assy6941 board
documentation.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-12-02 18:41:18 -05:00
Scott Worley
c00ca4497b boards: microchip: mec_assy6941: Add support for MEC1653B
We added support for the MEC1653B daughter card on the
mec_assy6941 EVB base board. We removed variant specific
kconfig files since none of the boards require board
specific settings.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-12-02 18:41:18 -05:00
Scott Worley
91e7959c94 soc: microchip: mec: Add MEC165xB chip series
We add Microchip MEC165xB SoC series.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-12-02 18:41:18 -05:00
Scott Worley
e9e8d1ee52 dts: arm: microchip: mec: Add MEC165xB chip device tree files
We add MEC165xB chip device tree files. We are sharing the
same base mec5.dtsi which required modifications due to
peripherals not present in MEC165xB.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-12-02 18:41:18 -05:00
Alexander Kozhinov
fa5a2c7d94 tests: lib: devicetree: api: add new macro tests
add tests for DT_STRING_TOKEN_BY_IDX_OR macro
add tests for DT_INST_STRING_TOKEN_BY_IDX_OR macro

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-12-02 18:41:09 -05:00
Alexander Kozhinov
047cec8a34 zephyr: devicetree: add string token helper macros
This commit introduces the DT_INST_STRING_TOKEN_BY_IDX_OR()
and DT_STRING_TOKEN_BY_IDX_OR() macros, which allow
specifying a default value if the indexed string token is not
defined.

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-12-02 18:41:09 -05:00
Adrien Lessard
87d52f4993 drivers: serial: stm32: fix locked pm state
When not using the async API, the rx_woken flag can be set but cannot be
cleared, leading to an indefinitely locked pm state. This commit
prevents the flag from being set when not using the async API.

Signed-off-by: Adrien Lessard <adrien.lessard.42@gmail.com>
2025-12-02 18:40:58 -05:00
Radosław Koppel
9b35906861 Bluetooth: GATT: Simplify GAP write_name and apperance_write
Update write_name function to check the offset value against 0 as long
writes are not used here.
Simplify write_appearance function also to remove long writes support.
The appearance property is always 16 bit and is should not even support
long writes.

Signed-off-by: Radosław Koppel <r.koppel@k-el.com>
2025-12-02 18:40:50 -05:00
Ibrahim Abdalkader
78429c804b dts: arm: st: h7: delete ITCM/DTCM nodes from M4 devicetree
Delete the ITCM and DTCM nodes from all M4-specific devicetree.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-12-02 18:40:42 -05:00
Ibrahim Abdalkader
a794f8eb8b dts: arm: st: h7: add ITCM and DTCM memory regions for STM32H7
Add ITCM and DTCM memory region definitions to the common STM32H7
devicetree.

ITCM: 64 KB @ 0x00000000
DTCM: 128 KB @ 0x20000000

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-12-02 18:40:42 -05:00
Dmitrii Sharshakov
956063604b drivers: led: shell: avoid implicit conversion to boolean
Use a clear and style-adherent condition format.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-12-02 18:38:53 -05:00
Johan Hedberg
24842b852a MAINTAINERS: Remove Johan & Chris from release notes
Remove the 4.3 release managers from the maintainers list for the release
notes.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-12-02 18:38:45 -05:00
Yuvraj Khadke
b7dc36f186 sensors: dps310: Added dps368 node for CY8CKIT-062S2-AI
Enable DPS310 and I2C in DTS
for Infineon CY8CKIT-062S2-AI kit.

Fixes #97948

Signed-off-by: Yuvraj Khadke <yuvraj.khadke@infineon.com>
2025-12-02 15:49:39 -05:00
Holt Sun
ce186be5fa tests: settings: its: enable lpcxpresso55s69_cpu0_ns platform
Enable the lpcxpresso55s69_cpu0_ns board for the Internal Trusted
Storage (ITS) settings test case. This platform supports the required
settings subsystem functionality needed for ITS testing.
Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-12-02 15:49:22 -05:00
Szymon Janc
c37f0567b1 Tests: Bluetooth: tester: Update LL overlay configuration
Match number of supported periodic advertising instances with
configure extended advertising instances and increase number
of advertising buffers to match qualification tests requirements.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-12-02 15:24:00 -05:00
Camille BAUD
3b9007ad93 boards: Add flash to supported for bflb boards
Adds the flash to supported for testing

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-02 15:23:13 -05:00
Camille BAUD
20c16ee36b soc: bflb: Enable Flash Controller
Enable the flash controller. Relocation is required.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-02 15:23:13 -05:00
Camille BAUD
05520bcf9f dts: bflb: Enable Flash Controller
Enable the Flash Controller

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-02 15:23:13 -05:00
Camille BAUD
a2a7463ec0 drivers: flash: Introduce BFLB flash controller
Introduce Bouffalolab Flash Controller with support for bank 1

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-02 15:23:13 -05:00
McAtee Maxwell
61100bb14f drivers: clock_control: bugfix pse84 frequencies by fixing dpll support
- fix dpll_hp support
- add dpll_lp support for kit_pse84_*
- update kit_pse84_eval dts for dpll fixes
- update kit_pse84_ai dts for dpll fixes

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-12-02 15:23:03 -05:00
McAtee Maxwell
95184d330d drivers: clock_control: bugfix frequency on psc3 by adding dpll support
- add dpll_lp support to infineon clock_control drivers
- update psc3 dts for fix

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-12-02 15:23:03 -05:00
Vinayak Kariappa Chettimada
9351a1ab79 samples: Bluetooth: observer: Fix Extended Scanning on BBC Micro:bit
Fix configuration overlay file to support observer sample
with Extended Scanning on BBC Micro:bit board.

Due to slow CPU, there were assertions and, this commit
addresses them by defaulting to use of BT_CTLR_LOW_LAT.

Asserts mitigated:

- ASSERTION FAIL [start_us == (aux_start_us + 1U)]
  @ WEST_TOPDIR/zephyr/subsys/bluetooth/controller/ll_sw/
  nordic/lll/lll_scan_aux.c:359
  This will happen for small aux offset value, definitely
  for the 300 us because CPU usage latency to setup such
  auxiliary PDU reception on nRF51 is high due to slow CPU.

- ASSERTION FAIL [0]
  @ WEST_TOPDIR/zephyr/subsys/bluetooth/controller/ll_sw/
  nordic/lll/lll_scan_aux.c:592
    prepare_cb: Actual EVENT_OVERHEAD_START_US = 579
  This will happen due to CPU usage latencies scheduling
  the radio events, due to slow CPU.

Relates to commit eba31282e8 ("samples: Bluetooth:
observer: Extended Scanning on BBC Micro Bit board").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-12-02 15:22:52 -05:00
Vinayak Kariappa Chettimada
57e8cf516c Bluetooth: Controller: Fix BT_CTLR_LOW_LAT scan disable hang
When using BT_CTLR_LOW_LAT and LLL_PRIO equals ULL_LOW_PRIO,
add missing mayfly_enable() call for ULL_LOW execution
context, without this ticker_stop() does not get processed.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-12-02 15:22:52 -05:00
Raffael Rostagno
b3d34a20f6 drivers: sensor: dietemp: esp32: Update driver
Update driver to new version, from legacy driver.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-12-02 15:22:30 -05:00
Stoyan Bogdanov
57ea97ca8e tests: build_all: counter: Enable GPIO in prj.conf
Add missing CONFIG_GPIO in prj.conf which cause fails
while testing drivers which use GPIOs

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-12-02 15:20:56 -05:00
Stoyan Bogdanov
7af8403a51 tests: sensor: Add microcrystal,rv3032-temp in build_all test suite
Ensure this driver is tested in the build_all test suite.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-12-02 15:20:56 -05:00
Stoyan Bogdanov
1659a967e6 tests: counter: Add microcrystal,rv3032-counter in build_all test suite
Ensure this driver is tested in the build_all test suite.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-12-02 15:20:56 -05:00
Stoyan Bogdanov
036cd7a451 tests: rtc: Update microcrystal,rv3032 in build_all test suite
Update rv3032 to reflect latest chanes to the driver.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-12-02 15:20:56 -05:00
Stoyan Bogdanov
641ec27106 drivers: sensor: rv3032c7: Add temperature sensor driver for rv3032
Expose internal temperature sensor for rv-3032-c7. Driver is reporting
temperature from internal deice sensors and have HIGH an LOW temperature
treshhold which are triggering interrupts. I2C communication and IRQ are
handled from parent MFD driver.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-12-02 15:20:56 -05:00
Stoyan Bogdanov
5028aa4036 drivers: counter: rv3032c7: Add rv3032 counter driver
Expose timer functionality from rv-3032-c7 via counter api.
I2C communication and IRQs are arbitrated via MFD parent driver
for rtc, sensor and counter at once.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-12-02 15:20:56 -05:00
Stoyan Bogdanov
1a93d33d29 drivers: rtc: rv3032: Rework driver to use MFD driver
Rework rv3032 implementaion to use MFD driver unstead of local
implementaion for I2C access and Interrupt managements. This way
could be utilized parts which are not implemented because did not fit
in to RTC api - counter and temperature sensor. To have propper
sincronization arbitration is need which is handled from mfd_rv3032.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-12-02 15:20:56 -05:00
Stoyan Bogdanov
c7bf6e83d6 dts: bindings: rv3032: Remove backup from rtc driver
Remove backup flag from RTC driver and move it to parent instead.
RTC driver still can access the values of the flags but MFD need
to know what is expected in term of initial behaviour.
Some assumptions done in RTC driver are causing inconsistant behaviour.
We cannot assume that the RTC alarms and notifications need to be
cleaned only if POR bit is triggered. We can have situation where
whole system go throigh soft restart and need to zero RV3032, so driver
need to have option to allow that kind of behaviour.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-12-02 15:20:56 -05:00
Stoyan Bogdanov
f39882472a dts: bindings: rtc: Update rv3032 bindings
Remove gpio-int since interrupts will be managed from MFD driver
insted, acticting like dispatcher for interrupts.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-12-02 15:20:56 -05:00
Stoyan Bogdanov
395d97bf81 drivers: rtc: Kconfig: Update rv3032 Kconfig to utilize MFD driver
Add dependecy for MFD driver and remove I2C dependency since it will
be managed from MFD driver together with interrupts.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-12-02 15:20:56 -05:00
Stoyan Bogdanov
4d1713a07e drivers: mfd: rv3032: Add MFD driver for rv3032
Add MFD driver for managing rv3032 functionality which did not fit RTC
api. That way are implemented part which otherwise will not be used:
- RTC
- counter/timer
- temperature sensor

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-12-02 15:20:56 -05:00
S Mohamed Fiaz
376747f2dd tests: gpio: siwx917_rb4342a: Add gpio_basic_api overlay files
This commit adds the GPIO overlay files for the brd4342a board,
enabling gpio_basic_api support in Zephyr.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-12-02 15:20:47 -05:00
Mathieu Choplain
6cab9e7343 boards: st: *c0: add missing wake-up pins
On the STM32C0 series, the availability of certain wake-up pins depends on
the exact SoC in use. To avoid providing a large amout of SoC DTSI files,
boards are responsible for defining these "optional" wake-up pins inside
their own DTS.

Update existing STM32C0 boards' DTS to include the missing wake-up pins.
While at it, align Nucleo-C092RC which has the pins, but no comment about
why they are provided.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 15:20:11 -05:00
Trond F. Christiansen
e716bb7546 tests: zbus: add channel name test suite
Add tests to verify the zbus_chan_from_name() functionality

Signed-off-by: Trond F. Christiansen <trond.christiansen@nordicsemi.no>
2025-12-02 15:19:32 -05:00
Trond F. Christiansen
46eca1e3a9 zbus: add zbus_chan_from_name() function
Add a new API function zbus_chan_from_name() that allows retrieving a
zbus channel by its name string. This complements the existing
zbus_chan_from_id() function and provides more flexibility for channel
lookup operations.

The implementation is conditionally compiled when CONFIG_ZBUS_CHANNEL_NAME
is enabled, ensuring it's only available when channel names are configured
in the system.

Signed-off-by: Trond F. Christiansen <trond.christiansen@nordicsemi.no>
2025-12-02 15:19:32 -05:00
Fin Maaß
5c152e19fa drivers: gpio: use I2C_INIT_PRIORITY as default for gpio chips on i2c bus
use I2C_INIT_PRIORITY as default for gpio chips,
that are on a i2c bus.

If childs have the same priority as their parents,
the init order is decided by the devicetree ordinals.
This ensures, that these childs are init after their parent.
Because of that gpio chips on a i2c bus can have the
same priority as the i2c controller.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-02 15:19:24 -05:00
Fin Maaß
66f572e24b drivers: gpio: Kconfig: use if for pca95xx and pca_series
use if instead of multiple depends on for pca95xx and pca_series GPIO
Kconfig files to improve readability.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-02 15:19:24 -05:00
Emil Gydesen
9155e50d3d doc: releases: Fix duplicate Bluetooth entry
There were 2 entries for Bluetooth in the New APIs and options

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-02 15:19:13 -05:00
Pieter De Gendt
5c56bf0240 tests: unit: util: Add tests for COND_CASE_1
Add test cases for the COND_CASE_1 macro.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-02 15:19:02 -05:00
Pieter De Gendt
0d43cd2ba0 sys: util: Add COND_CASE_1 macro
Add a switch/case like variant of the COND_CODE_1 macro where the first
flag that equals 1 has its value expanded, with a default fallback.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-02 15:19:02 -05:00
Martin Hoff
ff3637bf83 soc: silabs: siwx91x: enabled clock control by default for siwx91x soc
Enable clock control by default for siwx91x SoCs. Moreover, most
drivers for siwx91x soc depend on clock control, but didn't declare
it.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-02 15:18:53 -05:00
Yves Wang
bf9f4c0cee ci: compliance: Correct dts-linter install cmd
Install dts-linter requires prefix for package.json

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-12-02 15:18:43 -05:00
Mathieu Choplain
16a14f9dd8 boards: st: *: use lowercase hex for properties
Update various properties using hex values in STM32 boards DTS to comply
with the DTS Coding Style which says that "hex values in properties should
use lowercase hex".

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 15:18:36 -05:00
Mathieu Choplain
c30fd6e3e4 dts: arm: st: *: use lowercase hex for vrefint-cal-addr property
Update all `vrefint-cal-addr` properties in STM32 DTSI to comply with DTS
Coding Style which says that "hex values in properties should use lowercase
hex".

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 15:18:36 -05:00
Mathieu Choplain
e9e1d12496 dts: arm: st: *: use lowercase hex for dietemp cal-addr properties
Update all `cal-addr` properties in STM32 DTSI to comply with DTS Coding
Style which says that "hex values in properties should use lowercase hex".

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 15:18:36 -05:00
Mathieu Choplain
9176880f25 dts: arm: st: *: use lowercase hex for reg property
Update all `reg` properties in STM32 DTSI to comply with DTS Coding Style
which says that "hex values in properties should use lowercase hex".

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 15:18:36 -05:00
Fabio Baltieri
db1a4f6e54 ci: pr_metadata_check: add a concurrency key
Add a concurrency key so old runs are cancelled automatically.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-12-02 15:18:18 -05:00
Fabio Baltieri
d646664406 ci: pr_metadata_check: timeout after 30mins
This workflow spins forever if the manifest workflow does not run, and
apparently sometimes GitHub "forgets" to run it.

Add a timeout so that this fails after some time rather than the whole
6h timeout.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-12-02 15:18:18 -05:00
Qingsong Gou
f45b55404f boards: sifli: sf32lb52_devkit_lcd: enable reset
Enable reset on sf32lb52_devkit_lcd board

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-02 16:16:20 +00:00
Mathieu Choplain
bfef7e6de9 soc: st: stm32: reorganize family-wide common Kconfig
Split STM32 family-wide common Kconfig in two separate files: a new Kconfig
file `soc/st/stm32/common/Kconfig` to hold options that affect the common
code found in the same directory, and the existing top-level Kconfig file
`soc/st/stm32/Kconfig` which now only holds options used by multiple series
but not consumed by the common code - for example, options that are used by
SoC-specific code or consumed by the STM32Cube HAL module go in this file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 16:16:13 +00:00
Mathieu Choplain
236e0d0765 soc: st: stm32: use autogenerated compatible Kconfig macro variables
Instead of defining our own, use the DT_COMPAT_<> macro variables generated
by the build system inside the STM32 SoC Kconfig file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 16:16:03 +00:00
Yasushi SHOJI
912dd66608 boards: sc: Add SC-OBC module V1 support
Add initial board support for the Space Cubics SC-OBC Module V1. The
hardware is based on an AMD Versal AI Edge VE2302 and a Microchip
IGLOO2. This Zephyr port runs on the Versal device’s Real-Time Processing
Unit (dual Arm Cortex-R5F).

This commit is the first in the series and only supports the basic devices
needed to run samples/hello_world and samples/philosophers. Specifically,
it adds the Cortex-R5F, UARTs, and the GIC interrupt controller.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2025-12-02 16:15:49 +00:00
Erwan Gouriou
eefebb4555 dts: stm32l4: Clean up comment from can nodes
Remove use less comments

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-12-02 16:15:29 +00:00
Jilay Pandya
a3ce6ccb0a drivers: tmc51xx: move DT_DRV_COMPAT to tmc51xx.c
TMC51XX would have to be remodeled as a mfd, this means
that each device tmc51xx, tmc51xx_motion_controller and
tmc51xx_stepper_driver will have their own DT_DRV_COMPATs.
Whenever the common header is included as of now, the
adi_tmc51xx DT_DRV_COMPAT would have to be undef-ed each time
in order to define a new DT_DRV_COMPAT i.e. required by the devices
of the tmc51xx mfd.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-12-02 16:14:47 +00:00
Mathieu Choplain
d49fc11661 drivers: usb: udc: stm32: instance-aware ULPI reset GPIO handling
Make ULPI reset GPIO accessible via a pointer in the instance configuration
block, initialized only when the instance's PHY is an ULPI PHY with the
corresponding property. Check at runtime during instance initialization for
this GPIO, and perform appropriate action depending on its presence.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 16:14:37 +00:00
Mathieu Choplain
4c51bf6987 drivers: usb: udc: stm32: instance-aware disconnect GPIO handling
Make disconnect GPIO accessible via a pointer in the instance configuration
block, initialized only when the instance does have it as property. Always
provide the HAL_PCDEx_SetConnectionState() callback which configures the
GPIO when present in the instance configuration block.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 16:14:37 +00:00
Mathieu Choplain
659c6e91f2 drivers: usb: udc: stm32: instance-aware message queue handling
Move message queue backing buffer inside instance data block to reduce
usage of globals. The message queue structure itself was already inside the
instance data block, only the initialization code needed an update.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 16:14:37 +00:00
Mathieu Choplain
d3769f7385 drivers: usb: udc: stm32: instance-aware worker thread handling
Obtain the stack info for each instance's worker thread from the instance
configuration block instead of using globals.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 16:14:37 +00:00
Mathieu Choplain
419860eb97 drivers: usb: udc: stm32: instance-aware pinctrl configuration handling
Use pinctrl from the instance configuration block instead of global object.
Create pinctrl on all series (even STM32N6) and always attempt to configure
it, but don't treat empty configuration as an error to allow pinctrl-less
series to work.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 16:14:37 +00:00
Mathieu Choplain
a06a97c40a drivers: usb: udc: stm32: instance-aware EP configurations handling
Get rid of global macro USB_NUM_BIDIR_ENDPOINTS by using the direct DT
macro when creating the endpoint configuration arrays and initializing
the instance configuration block. Access the endpoint configurations
through the instance configuration block instead of using global objects.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 16:14:37 +00:00
Mathieu Choplain
eccb243bdf drivers: usb: udc: stm32: instance-aware IRQ configuration handling
Get rid of global macros UDC_STM32_IRQ and UDC_STM32_IRQ_PRI by using the
direct DT macro when initializing the instance configuration block, and
performing IRQ_CONNECT() in a per-instance function called indirectly via
the instance configuration block.

While at it, get rid of the driver's useless ISR wrapping layer: the Zephyr
ISR calling convention just so happens to allow using the HAL IRQ handler
directly without a trampoline, which is slightly faster and ought to use
less ROM.

Note that global UDC_STM32_IRQ_NAME is still consumed, but it will be
replaced by another mechanism as part of the final step of multi-instance
support implementation.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-02 16:14:37 +00:00
Valerio Setti
f5ec45bf49 tests: benchmark: renew Mbed TLS crypto testing
The previous source file was copied from Mbed TLS several years ago and
since then not many updates were made. For example:
- testing stopped at CTR-DRBG exiting with failure;
- emulation wasn't really catching any output so a timeout of 60 seconds
  was required in order to fully complete the testing;
- the "harness: crypto" was preventing the code from being really tested
  with twister.

Last but not least, all of the functions used here belong to the legacy
Mbed TLS crypto support that is going to be removed from the next
TF-PSA-Crypto release.

The goal of this commit is to renew the test code making it really usable
and testable. For the time being hash and ciphers are tested, but
asymmetric key testing can be added in the future if desired.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 16:14:25 +00:00
Valerio Setti
e41a4098b5 tests: mbedtls: remove crypto.mbedtls
The file "mbedtls.c" was copied from upstream Mbed TLS several years ago
and since then only minor fixes has been added when failing, no real
upgrade was made since then.

Reasons for removal include:
- some of the symbols were already removed (ex: MD2, MD4, RIPEMD160, ARC4,
  etc) but their testing was not removed;
- most of the code is guarded but "prj.conf" doesn't set any Kconfig
  related to the crypto features in Mbed TLS, so likely only the default
  ones are really tested;
- last but not least all of these "mbedtls_xxx_self_test()" function will
  disappear in the next TF-PSA-Crypto release so they cannot be maintained
  here.

This suite is replaced with tests in "zephyr/tests/crypto/mbedtls_psa".

"MAINTAINERS.yml" was also updated in this commit in order to reflect
this removal and add path for existing tests.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 16:14:25 +00:00
Valerio Setti
ad8ffe9c14 tests: crypto: mbedtls_psa: add tests for hash, hmac and cipher
Extend current testing of Mbed TLS' PSA Crypto API adding hash and hmac
functions.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 16:14:25 +00:00
Valerio Setti
97e4511a03 doc: migration-guide: add note for JWT_SIGN_RSA_LEGACY removal
Add a note about CONFIG_JWT_SIGN_RSA_LEGACY removal. The note also includes
details on why this removal is done before the usual Zephyr deprecation
period.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 16:14:11 +00:00
Valerio Setti
6ebc151f6d tests: subsys: jwt: remove tests for legacy RSA support
Since support for CONFIG_JWT_SIGN_RSA_LEGACY has been removed,
corresponding tests should be removed as well.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 16:14:11 +00:00
Valerio Setti
597fc3bbe1 jwt: remove support for legacy RSA crypto
CONFIG_JWT_SIGN_RSA_LEGACY was already deprecated, but we agreed on
removing all usages of legacy Mbed TLS crypto from Zephyr codebase quickly
in order to prepare for the transition to Mbed TLS 4.0/TF-PSA-Crypto 1.0.

Therefore this commit remvoes support for CONFIG_JWT_SIGN_RSA_LEGACY
before the deprecation period expires.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 16:14:11 +00:00
Marek Matej
d5d8bb17fa samples: espressif: Flash multicore sharing example
This is a simple example of sharing flash access between multiple CPU
cores.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-12-02 16:13:52 +00:00
Marek Matej
4c62fee6eb drivers: flash: esp32: flash access supervisor
Add support to access flash from remote CPU cores.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-12-02 16:13:52 +00:00
Sumit Batra
8d8fdbd7e0 boards: nxp: mr_canhubk3: add mcuboot variant and document sysbuild
Add an mcuboot board variant under the S32K344 SoC in board.yml.
New target is - mr_canhubk3/s32k344/mcuboot. This enables a
single sysbuild invocation to build MCUboot and the application.
Also make a common dtsi for all mr_canhubk3 board variants.

Extend the board documentation with an “MCUboot (sysbuild)” section
that:

Shows one-command sysbuild to produce both MCUboot and app
Documents signing via sysbuild (SB_CONFIG_BOOT_SIGNATURE_*),
and where the signed artifacts are generated.

Provides simple flashing instructions and a troubleshooting
note about using a 1 KiB (0x400) image header and not emitting
an IVT for chain-loaded apps.

Signed-off-by: Sumit Batra <sumit.batra@nxp.com>
2025-12-02 16:12:51 +00:00
Sumit Batra
3edbc3762c soc: nxp: s32k3: gate IVT emission when chain-loaded by MCUboot
Emit the IVT section and IVT header only when XIP and the image is either
a standalone XIP app or MCUboot itself. Do not emit the IVT when the
Zephyr image is chain-loaded by MCUboot (BOOTLOADER_MCUBOOT=y).

- linker.ld/sections.ld: place .ivt_header at IVT_HEADER only under
XIP && (!BOOTLOADER_MCUBOOT || MCUBOOT).
Provide __ivt_region_start/end symbols.
- soc.c: guard IVT struct under the same condition and mark it 'used'
so the linker keeps it when needed.
- Kconfig.defconfig - Make the bootloader and the sign tool compatible
with the vector table.

This avoids populating 0x400000 IVT from the app image while retaining it
for MCUboot or standalone XIP use-cases.

Files:
- soc/nxp/s32/s32k3/linker.ld
- soc/nxp/s32/s32k3/sections.ld
- soc/nxp/s32/s32k3/soc.c
- soc/nxp/s32/s32k3/Kconfig.defconfig

Signed-off-by: Sumit Batra <sumit.batra@nxp.com>
2025-12-02 16:12:51 +00:00
Sumit Batra
1b2517b9b6 soc: nxp s32k3: derive sys clock from devicetree
Use devicetree to provide the system clock frequency for S32K3
instead of hardcoding it in board defconfigs.

- Add clock-frequency to /cpus/cpu@0 in nxp_s32k344_m7.dtsi using
DT_FREQ_M(160).
- Define DT_SYSCLK_PATH and derive SYS_CLOCK_HW_CYCLES_PER_SEC from
the sysclk node via dt_node_int_prop_int() when CORTEX_M_SYSTICK.
- Remove CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC from mr_canhubk3

This keeps the clock configuration in a single SoC-level place,
aligns S32K3 with other NXP Cortex-M SoCs, and ensures both the
MCUboot and application builds share the same
SYS_CLOCK_HW_CYCLES_PER_SEC.

Signed-off-by: Sumit Batra <sumit.batra@nxp.com>
2025-12-02 16:12:51 +00:00
Sumit Batra
1be79f0c92 dts: nxp: Add binding for C40 flash and flash controller
Introduce DT bindings for on-chip C40 flash and its controller
and describe their corresponding nodes in nxp_s32k344_m7.dtsi.

- Binding: dts/bindings/mtd/nxp,c40-flash.yaml
Erase/write block sizes.

- Binding: dts/bindings/flash_controller/nxp,c40-flash-controller.yaml
Describe flash device (child) ranges

- SoC nodes:  With the new compatible and geometry
properties. Keep status = "disabled" at the SoC level
so boards opt-in.

This prepares the platform for using Zephyr’s flash API / FLASH_MAP /
MCUboot with internal code flash.

Signed-off-by: Sumit Batra <sumit.batra@nxp.com>
2025-12-02 16:12:51 +00:00
Sumit Batra
404556e36c drivers: flash: Add MCUX C40 flash controller driver
Add flash controller driver for the on-chip C40 flash controller
The driver is backed by the MCUX C40 HAL and implements
read/erase/program, page layout, and an optional protection policy
that can lock well-known regions (IVT/MCUboot) derived from devicetree.

Key details:
- Selects FLASH_HAS_DRIVER_ENABLED / FLASH_HAS_EXPLICIT_ERASE /
FLASH_HAS_PAGE_LAYOUT.
- Runs erase/program from SRAM when XIP by relocating both the shim and
the MCUX HAL source if CODE_DATA_RELOCATION_SRAM=y.
- Optional protection pass at init (FLASH_MCUX_C40_APPLY_PROTECTION),
which aligns windows to sector boundaries and applies lock/unlock
using the HAL. This is useful on XIP systems to keep IVT/bootloader
ranges read-only; can be disabled if a bootloader or security policy
manages protection instead.

Files:
- drivers/flash/flash_mcux_c40.c (new)
- drivers/flash/CMakeLists.txt (+zephyr_code_relocate when needed,
Compliance fixes)
- drivers/flash/Kconfig.mcux (enable flash driver, reloc & protection)
- modules/hal_nxp/mcux/mcux-sdk-ng/drivers/drivers.cmake

Signed-off-by: Sumit Batra <sumit.batra@nxp.com>
2025-12-02 16:12:51 +00:00
Omeed Baboli
1034ba6b9b drivers: sensor: qdec_stm32: add sensor channel for encoder counts
Add a sensor channel for the encoder counts. This is useful for
reading the encoder counts and calculating an absolute position
of a linear actuator.

Signed-off-by: Omeed Baboli <omeedbaboli@gmail.com>
2025-12-02 16:12:35 +00:00
Muzaffar Ahmed
d31c6e9503 drivers: wifi: siwx91x: Fix link mode query for AP mode in channel 14
Add a channel check to update the link mode in wifi status query.

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-12-02 12:31:30 +00:00
Siratul Islam
86db58627a boards: xtensa: add support for WEMOS LOLIN32 Lite
Add board support for the WEMOS LOLIN32 Lite, a compact ESP32-D0WDQ6/
ESP32-D0WD-V3 based development board with integrated Wi-Fi and BLE.

Features:
- 4MB flash (W25Q32)
- Onboard battery charging (TP4054, PH-2 connector)
- CH340C USB-to-serial converter
- Onboard LED on GPIO22
- Micro-USB or USB Type-C variants

Signed-off-by: Siratul Islam <email@sirat.me>
2025-12-02 12:31:22 +00:00
Maochen Wang
cf6e450f5a manifest: fix double-free assertion in TLS 1.3 case of hostap
In TLS 1.3, when mbedtls_ssl_read() returns an error, wpabuf_free() is
called twice: first in tls_connection_handshake() and then again in
eap_tls_process_input(), leading to an assertion failure. Remove the
redundant wpabuf_free() to prevent the double-free issue.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-12-02 12:30:57 +00:00
Maochen Wang
bdaf732c44 samples: net: wifi: fix PEAP connection failure on RW612
PEAP Wi-Fi connections on RW612 may fail due to memory allocation
errors in mbedTLS. Increasing the mbedTLS heap size resolves this
issue.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-12-02 12:30:57 +00:00
Maochen Wang
198592a505 hostap: disable TLS 1.3 for PEAP-TLS phase2
The supplicant currently supports TLS 1.3 only for EAP-TLS. To prevent
TLS handshake failures in PEAP-TLS phase2, add the flag
'tls_disable_tlsv1_3=1' to phase2 configuration, ensuring TLS 1.3 is
disabled for inner authentication.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-12-02 12:30:57 +00:00
Luis Ubieda
b0646f3d03 modules: hal_afbr: Add binary blobs with FPU
To work with applications using Floating point math.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-12-02 12:30:28 +00:00
Aksel Skauge Mellbye
e61c04e05d drivers: entropy: gecko_trng: Fully initialize on read
If the TRNG has been unretained, it's not sufficient to enable
the clock, it must be fully reinitialized.

This is a minimal fix to ensure entropy is accumulated after sleep.
Long term, this driver should be made to use device power
management with power domain awareness.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-12-02 12:29:14 +00:00
Yangbo Lu
ad205339ef samples: net: gptp: add default case for status switch statement
Added default case for status switch statement.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-02 11:45:19 +01:00
Yangbo Lu
548d0008b6 samples: net: dsa: improve code quality
Improved code quality with below changes.
- Avoided declaration shadowing variable in the global scope.
- Avoided missing default in switch block.
- Dropped unused variable.
- Reduced the level of if statements properly.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-02 11:45:19 +01:00
Yangbo Lu
40594fa40c samples: net: add Ethernet bridge sample
Added Ethernet bridge sample and enable mimxrt1180_evk_mimxrt1189_cm33
board as an example. On mimxrt1180_evk_mimxrt1189_cm33, 5 ports are
bridged with DHCPv4 enabled to test, including 4 DSA ports and
1 normal Ethernet port.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-02 11:45:19 +01:00
Yangbo Lu
c697eff0c3 MAINTAINERS: update vlan and dsa samples path
Updated vlan and dsa samples path as they were moved.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-02 11:45:19 +01:00
Yangbo Lu
840d464ffb samples: net: move Ethernet samples to folder
Moved current Ethernet samples to folder ethernet,
as there will be more samples added in the future.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-02 11:45:19 +01:00
Yangbo Lu
8c95e841ec net: dsa: use snprintk instead of snprintf
Used snprintk instead of snprintf as snprintk is compatible
across platforms.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-02 11:45:19 +01:00
Yangbo Lu
b46db1e2ea net: net_if: use debug level message for iface down
Dropping packet is normal operation when iface is down.
So, we don't have to use warning here for much noise.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-02 11:45:19 +01:00
Yangbo Lu
44463a42d8 net: bridge: enable IPv4/IPv6 support
Ethernet bridge performs L2 forwarding between bridged interfaces.
But for the virtual bridge interface, we could make it perform as
normal Ethernet interface with IP address to use.

This is useful allowing applications to communicate with network,
like LAN router or switch with a host IP.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-02 11:45:19 +01:00
Yangbo Lu
684957e9c1 net: bridge: add forward decision support
Added forward decision support including for broadcast,
multicast and local address packets.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-02 11:45:19 +01:00
Yangbo Lu
27b8d65b77 net: ethernet: support bridge RX
Added support for bridge RX. We were going to support protocols
on bridge.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-02 11:45:19 +01:00
Yangbo Lu
7d22828642 net: bridge: handle RX in bridge_input.c
Current bridge function is very simple which does forwarding for all
packets. There will be more and more features of bridge RX handling.

Let's move bridge RX handling to bridge_input.c for next IPv4/IPv6
protocols support for virtual bridge interface.

And currently there is no path to call bridge_iface_recv function.
Let's rework it for proper function returning NET_CONTINUE.

Also fixed another issue of link local address checking. Because
net_linkaddr structure changed. So fixed

is_link_local_addr((struct net_eth_addr *)net_pkt_lladdr_dst(pkt))

to

is_link_local_addr((struct net_eth_addr *)(net_pkt_lladdr_dst(pkt)->addr))

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-02 11:45:19 +01:00
Yangbo Lu
3361dd1939 net: bridge: move bridge files to folder
Moved bridge files to folder to manage. More bridge features
and files will be added in the future.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-02 11:45:19 +01:00
Fabin V Martin
08fdc8fcdc boards: microchip: pic32cx_sg41_cult: update board with uart nodes
Add uart support for pic32cx_sg41_cult.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-02 11:45:04 +01:00
Fabin V Martin
91258fada7 boards: microchip: pic32cx_sg61_cult: update board with uart nodes
Add uart support for pic32cx_sg61_cult.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-02 11:45:04 +01:00
Fabin V Martin
c394cd8502 dts: arm: microchip: pic32cx_sg: add sercom nodes
Add sercom nodes for pic32cx_sg

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-02 11:45:04 +01:00
Pavel Vasilyev
6da559f565 bluetooth: host: Fix stale RPA usage after invalidation
Add !BT_ADV_RPA_VALID check to force RPA regeneration when re-enabling
an advertising set after RPA rotation occurred while disabled.

The BT_ADV_RANDOM_ADDR_UPDATED flag was added to prevent unnecessary
address regeneration (RPA/NRPA) between bt_le_ext_adv_param_set() and
bt_le_ext_adv_start() calls. However, this revealed an issue:

When RPA rotation (le_force_rpa_timeout) occurs while an advertiser is
disabled, BT_ADV_RPA_VALID is cleared but the RPA is not regenerated.
On subsequent bt_le_ext_adv_start() without a new param_set() call:
- BT_ADV_RANDOM_ADDR_UPDATED is already cleared (from previous start)
- Without BT_PER_ADV_ENABLED, no regeneration occurs
- Stale RPA is used, violating privacy requirements

Add !BT_ADV_RPA_VALID check for both connectable and non-connectable
advertisers to ensure fresh RPA generation when the previous RPA was
invalidated while the advertiser was disabled.

Fixes regression introduced in #98117.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-12-02 11:40:39 +01:00
Luis Ubieda
1c07d92f7f gnss: F9P: Send RTK commands only if RTK is enabled
Otherwise treat it as a basic UXB GNSS modem.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-12-02 11:35:18 +01:00
Yves Wang
9dafe6e67e cmake: usage: add ram/rom plot and traceconfig in usage
Added missing ram/rom plot and traceconfig targets in usage.cmake.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-12-02 11:35:05 +01:00
Valerio Setti
e5ec376e28 samples: tfm_integration: replace legacy Mbed TLS deps with PSA API
Replace selection of legacy Mbed TLS Kconfigs with PSA API ones.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 11:32:35 +01:00
Valerio Setti
b2f3175793 samples: mcumgr: smp_svr: replace legacy Mbed TLS deps with PSA API
Replace selection of legacy Mbed TLS Kconfigs with PSA API ones.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 11:32:35 +01:00
Valerio Setti
768df256b2 samples: net: http_client: replace legacy Mbed TLS deps with PSA API
Replace selection of legacy Mbed TLS Kconfigs with PSA Crypto API ones.

While at this, add also a test case using "overlay-tls.conf" since this
is also mentioned in README file.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 11:32:35 +01:00
Valerio Setti
271a213f23 samples: net: big_http_download: replace legacy MD with PSA API
Replace usage of Mbed TLS' MD module with PSA Crypto API for SHA-256 hash
computation.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 11:32:35 +01:00
Valerio Setti
04cfed9fd0 samples: net: lwm2m_client: replace legacy Mbed TLS deps with PSA API
Replace selection of legacy Mbed TLS crypto support with PSA API.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 11:32:35 +01:00
Valerio Setti
67d68108fa samples: net: mqtt_azure: replace legacy Mbed TLS deps with PSA API
Replace selection of legacy Mbed TLS crypto with corresponding PSA API
alternative.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 11:32:35 +01:00
Valerio Setti
4f947f00f9 tests: net: tls_configurations: replace legacy crypto with PSA API
Replace selection of legacy Mbed TLS crypto Kconfig with PSA Crypto API
ones.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 11:32:35 +01:00
Valerio Setti
99bb73537c tests: net: lwm2m: replace legacy crypto deps with PSA API
Replace usage of legacy Mbed TLS crypto with PSA Crypto API.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 11:32:35 +01:00
Valerio Setti
52df6fb770 tests: net: http_server: replace legacy crypto deps with PSA API
Replace legacy Mbed TLS crypto support with PSA API.
RSA key exchange dependency was removed because all certificates and
keys used in the test are EC.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-02 11:32:35 +01:00
Krzysztof Chruściński
9d09993ce6 tests: kernel: timer: timer_api: Fix hanging for slow platforms
Test had forever loop that was attempting to read k_timer_remaining_ticks
while system tick did not change. If target has relatively fast system
clock then it might be impossible.

Tweak test to repeat few times and if k_timer_remaining_ticks is not
read in the known tick then range is used to validate correctness of
the returned value.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-02 11:31:41 +01:00
Muzaffar Ahmed
f0454eb8b1 drivers: wifi: siwx91x: Fix AP mode channel status when using auto channel
Fixes the auto channel status by using the channel number from fetched
wireless info, rather than the input config variable.

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-12-02 11:31:24 +01:00
Fabian Blatz
85e0067877 doc: dts: Expand explanation of zephyr,touch chosen node
Add explanation of the `CONFIG_LV_Z_POINTER_FROM_CHOSEN_TOUCH` interaction
with the `zephyr,touch` chosen node.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-12-02 11:31:07 +01:00
Fabian Blatz
d7720d8085 tests: misc: check_init_priorities: Update reference init level list
After removing the `zephyr,lvgl-pointer-input` device the init level
entries have shifted by one entry. Update them accordingly.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-12-02 11:31:07 +01:00
Fabian Blatz
d4ec3fef5e boards: Remove lvgl_input_pointer where chosen zephyr,touch is present
With the new LV_Z_POINTER_FROM_CHOSEN_TOUCH most boards do not need to
specify a dedicated pseudo device anymore.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-12-02 11:31:07 +01:00
Fabian Blatz
36c673f5f9 modules: lvgl: Add LV_Z_POINTER_FROM_CHOSEN_TOUCH option
Adds a Kconfig option LV_Z_POINTER_FROM_CHOSEN_TOUCH which automatically
creates a lvgl input pointer device from the chosen zephyr,touch node.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-12-02 11:31:07 +01:00
Chun-Chieh Li
d29321fee6 drivers: can: numaker: fix m55m1x core clock
On M55M1 series, the clock module index is virtual to stay compatible
with 32-bit only cell value in devicetree. Its real value of being
64-bit integer needs to acquire indirectly.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-12-02 11:27:51 +01:00
Dilip Raman
00e9d45245 drivers: sensor: adi: fix build warnings in ADXL decoder drivers
Fix invalid pointer-to-integer cast and comparison warnings in
ADXL362, ADXL367, and ADXL372 decoder drivers. The previous code
used `(uint8_t *)*fit` for offset comparison, which triggered
`-Wint-to-pointer-cast` warnings on recent compilers and could
lead to undefined behavior.

This patch replaces unsafe casts with `uintptr_t` arithmetic and
ensures type-safe offset calculations, preserving existing logic
while eliminating all build warnings.

Signed-off-by: Dilip Raman <dilipr@aerlync.com>
2025-12-02 11:27:43 +01:00
S Mohamed Fiaz
8dda8fc1a6 tests: drivers: rtc: Add rtc_api overlay and update yaml file
This commit adds the rtc_api overlay file for the brd4342a board,
enabling rtc support and also updates the rtc tag in
siwx917_rb4342a.yaml.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-12-02 11:27:24 +01:00
S Mohamed Fiaz
8c5e3d05b5 tests: drivers: counter: Add counter_basic_api overlay file
This commit adds the counter_basic_api overlay file for the
brd4338a board,enabling counter support.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-12-02 11:27:24 +01:00
S Mohamed Fiaz
c8fa6c8d34 tests: drivers: pwm: Add pwm_api overlay and update yaml file
This commit adds the pwm overlay file for the brd4342a board,
enabling pwm support and also updates the pwm tag in
siwx917_dk2605a.yaml.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-12-02 11:27:24 +01:00
S Mohamed Fiaz
08b55fae92 tests: dma: siwx917_rb4342a: Add chan_blen_transfer overlay files
This commit adds the DMA overlay and config file for the brd4342a board,
enabling chan_blen_transfer support in Zephyr.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-12-02 11:27:11 +01:00
Tony Han
7e29ddadda soc: microchip: sam: common: update CMakeLists.txt for more obvious
The 'common' folder is under 'soc/microchip/sam' which contains both MCU
and MPU devices. Currently all the files in 'common' is for MPU. Adding
if(foo) in 'CMakeLists.txt' to make more obvious of where the files are
used.
Update soc/microchip/sam/common/CMakeLists.txt with combining the .c
files with the same usage into one 'zephyr_source' call.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-12-02 11:24:28 +01:00
Tony Han
9810eecad9 soc: microchip: sam: sama7: some optimize in Kconfig and CMakeLists.txt
Select MMU and CACHE_MANAGEMENT in 'config SOC_FAMILY_MICROCHIP_SAMA7'.
Replace 'config' with 'configdefault' for items in defconfig file.
Remove duplicated linker script in CMakeLists.txt in sama7d6 and sama7g5
directories, use the one in sama7 directory.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-12-02 11:24:28 +01:00
Tony Han
f703c2ee09 soc: microchip: sam: sama7: add sama7g54 (System-in-Package) SIP SoCs
Add SAMA7G5 series System-in-Package (SiP) MPUs to Kconfig.soc and
soc.yml, update the header files for them too.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-12-02 11:24:28 +01:00
Tony Han
0a9d1493a8 soc: microchip: sam: reorganize directory structure for sama7g5 series
Update directory structure to the following hierarchy for MPU devices:
  Product Architecture
    |__ SOC Series
          |__ Product Group
Move directory 'soc/microchip/sama7g5/' into 'soc/microchip/sama7/'.
Add sama7g5 to 'soc/microchip/sam/sama7/soc.yml'.
Remove the files under soc/microchip/sam due to they became useless
with the reorganization.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-12-02 11:24:28 +01:00
Jeppe Odgaard
6fbff921c7 drivers: led: pca9533: fix ms_to_psc wrap-around
If `period_ms` is 3 or less `tmp` is 0. Since `tmp` is type `uint32`
subtracting 1 from 0 will wrap around to `UINT32_MAX` and is then clamped
to `UINT8_MAX`.

Fix the issue by changing `tmp` and `1` to signed types.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-12-02 11:22:48 +01:00
Jordan Yates
e401209af0 bluetooth: host: name AUTO_PHY choices
Add names to the automatic PHY update choices so the defaults can be
updated.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-02 11:22:38 +01:00
Emil Gydesen
1d1f66c509 tests: Bluetooth: CCP: Modify server unittests to native_sim
Modify the unit tests to use the native_sim board instead of the
unit_testing board.
The native_sim board allows us to use the kernel in a more
regular way, while still being able to treat the tests as
unittest.

To support mocking we cannot rely on the default
Kconfig options and values. The required Kconfig options
to satisfy dependencies are overridden in the Kconfig
file and the necessary Kconfig files are sourced.
We cannot enable e.g. CONFIG_BT as that would attempt
to pull in a lot of files we do not want in this test.

This commit also removes unused includes in the CMakelists

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-02 11:21:21 +01:00
Emil Gydesen
522b8697b0 tests: Bluetooth: CCP: Modify client unittests to native_sim
Modify the unit tests to use the native_sim board instead of the
unit_testing board.
The native_sim board allows us to use the kernel in a more
regular way, while still being able to treat the tests as
unittest.

To support mocking we cannot rely on the default
Kconfig options and values. The required Kconfig options
to satisfy dependencies are overridden in the Kconfig
file and the necessary Kconfig files are sourced.
We cannot enable e.g. CONFIG_BT as that would attempt
to pull in a lot of files we do not want in this test.

This commit also removes unused includes in the CMakelists

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-02 11:21:11 +01:00
Emil Gydesen
96630fa564 tests: Bluetooth: CCID: Modify initiator unittests to native_sim
Modify the unit tests to use the native_sim board instead of the
unit_testing board.
The native_sim board allows us to use the kernel in a more
regular way, while still being able to treat the tests as
unittest.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-02 11:21:03 +01:00
Emil Gydesen
90b05da76a tests: Bluetooth: CAP: Modify commander unittests to native_sim
Modify the unit tests to use the native_sim board instead of the
unit_testing board.
The native_sim board allows us to use the kernel in a more
regular way, while still being able to treat the tests as
unittest.

To support mocking we cannot rely on the default
Kconfig options and values. The required Kconfig options
to satisfy dependencies are overridden in the Kconfig
file and the necessary Kconfig files are sourced.
We cannot enable e.g. CONFIG_BT as that would attempt
to pull in a lot of files we do not want in this test.

This commit also removes unused includes in the CMakelists

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-02 11:20:55 +01:00
Emil Gydesen
50a5cb3ec6 tests: Bluetooth: ASCS: Modify unittests to native_sim
Modify the unit tests to use the native_sim board instead of the
unit_testing board.
The native_sim board allows us to use the kernel in a more
regular way, while still being able to treat the tests as
unittest.

To support mocking we cannot rely on the default
Kconfig options and values. The required Kconfig options
to satisfy dependencies are overridden in the Kconfig
file and the necessary Kconfig files are sourced.
We cannot enable e.g. CONFIG_BT as that would attempt
to pull in a lot of files we do not want in this test.

This commit also removes unused includes in the CMakelists,
and cleans up the code.
Since the kernel is actually running, we also need to support
that e.g. k_work items are actually scheduled, and that we have
to wait for them to finish. test_drain_syswq has been implemented
as a way to drain the system workqueue before we check for
callbacks or perform subsequent actions.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-02 11:20:48 +01:00
Emil Gydesen
540e6c6c75 tests: Bluetooth: BAP: Modify Broadcast unittests to native_sim
Modify the unit tests to use the native_sim board instead of the
unit_testing board.
The native_sim board allows us to use the kernel in a more
regular way, while still being able to treat the tests as
unittest.

To support mocking we cannot rely on the default
Kconfig options and values. The required Kconfig options
to satisfy dependencies are overridden in the Kconfig
file and the necessary Kconfig files are sourced.
We cannot enable e.g. CONFIG_BT as that would attempt
to pull in a lot of files we do not want in this test.

This commit also removes unused includes in the CMakelists,
and moves the mock bap_broadcast_source.c file to the
correct location.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-02 11:20:40 +01:00
Ha Duong Quang
676a0504e5 boards: enables support for s32z270 hse crypto
Enable test for s32z270 hash crypto.

Enable samples for cipher cryptoEndable samples for EBC, CBC,
CTR mode of cipher crypto.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2025-12-02 11:20:29 +01:00
Ha Duong Quang
aab99a548b driver: crypto: add NXP S32 CRYPTO HSE driver
Add device tree node for MU instances that will be used by HSE and RTU
for s32z270.

Add support hash crypto for NXP S32 with Algo 2:
SHA224, SHA256, SHA384 and SHA512.

Add support cipher crypto with ECB, CBC and CTR mode by using ram key
catalog.

Add support 128/256 bits ram key length.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2025-12-02 11:20:29 +01:00
Johannes Meyer
8aaa5031f7 drivers: sensor: ti: Add INA232 native support
The INA232 is another device in the INA2XX family and is very similar
to the already implemented INA230 and INA236. The main difference
between the INA232 and the INA236 is that the INA232 does not have a
Device ID register. Because of these similarities, it is implemented
in the ina230.x files in the same way as the IN236. Modifications to
the corresponding tests are included as well.

Signed-off-by: Johannes Meyer <johannes.meyer@intego.de>
2025-12-01 19:48:40 -05:00
Johan Alfvén
d5e82737a7 samples: tflm_ethosu: add PMU counters
Add CONFIG_SAMPLE_TFLM_ETHOSU_PMU to collect PMU counters per inference
in the sample. Disabled by default.

Signed-off-by: Johan Alfvén <johan.alfven@arm.com>
2025-12-01 19:48:29 -05:00
Michał Stasiak
d722ac0aab tests: drivers: uart_async_dual: remove unused overlay
nRF54L15 PDK is no longer supported.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-01 19:48:07 -05:00
Łukasz Stępnicki
c00dd68c9d tests: arch: common: nrf54h20/cpuflpr needs different isr offset
NRF54H20 cpuflpr and cpuppr do not share common interrupts
(VEVIF TASKS) that can be used in this test, so they need
to be separated.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-12-01 19:47:57 -05:00
Aurelien Jarno
6cb019d0ab openthread: Kconfig: fix MTD build by enabling OPENTHREAD_UPTIME
The 250745e198 OT stack upmerge pulled upstream commit 079852b67e9b
("[uptime] enforce `UPTIME` feature for MTD and FTD builds (#11354)")
which made `OPENTHREAD_CONFIG_UPTIME_ENABLE` mandatory for MTD builds.

Update the module configuration accordingly to fix a build failure with
CONFIG_OPENTHREAD_MTD=y.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2025-12-01 19:47:46 -05:00
Fin Maaß
4ae9e45db9 drivers: ethernet: phy: also set autoneg_in_progress for already on init
also set autoneg_in_progress for already on init.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-01 19:47:37 -05:00
Fin Maaß
5da33001d2 drivers: ethernet: phy: check auto negotiation completion directly
auto negotiation might already be finished when we
check the link status, therefore check directly
instead of waiting 100 ms.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-01 19:47:37 -05:00
Fin Maaß
e92adb56b2 drivers: ethernet: phy: improve reading of latched bits
The latched bits are defined in the ethernet specification,
as the only latched bit, that we use, is the link status, improve
the code for it.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-01 19:47:37 -05:00
Fin Maaß
570c658f51 drivers: ethernet: phy: let the compiler remove checks for cfg->fixed
let the compiler remove checks for cfg->fixed if we don't have any
fixed link.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-01 19:47:37 -05:00
Fin Maaß
c99e3413ea net: mii.h: provide the BMSR bits positions
provide the BMSR bits positions, so we can use
the `IS_BIT_SET` macro with them.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-01 19:47:37 -05:00
Abderrahmane JARMOUNI
2334a6a347 MAINTAINERS: Add collaborators to MIPI DSI & DBI areas
Add JarmouniA as collaborator to MIPI-DSI area.
Add JarmouniA and VynDragon as collaborators to MIPI-DBI area.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-12-01 19:47:27 -05:00
Fabio Baltieri
b676f6ba6d samples: usb: common: clarify the use of sample vid/pid
Add a note about sample vid/pid.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-12-01 12:41:15 -05:00
Fabio Baltieri
2dee7614ed samples: usb: common: make vid configurable
Add a SAMPLE_USBD_VID Kconfig to allow changing the USB VID on samples
using the common code. Can be handy for testing things against code that
expects a specific vid.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-12-01 12:41:15 -05:00
Benjamin Cabé
9cbfcc0bf3 doc: zephyr.doxyfile.in: remove workaround for Doxygen <= 1.14
Doxygen 1.15.0 is now available and a bug previously impacting
STRIP_FROM_INC_PATH handling has been fixed. Update the list of
paths accordingly to have headers from lib/libc/minimal/include/
covered.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-01 12:41:04 -05:00
Benjamin Cabé
a8fac553b6 ci: doc-build: update to Doxygen 1.15.0
Update to Doxygen 1.15.0 version (html build uses doxygen from the
docker image but PDF build uses vanilla Ubuntu runner from GitHub
so installation is done manually).
Replace MD5SUM by SHA256SUM since Doxygen project now conveniently makes
the checksums available on their Github releases page.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-01 12:41:04 -05:00
Paweł Pelikan
76701217f1 tests: kernel: usage: Adjustments for slower platforms
Adjusting sleep times as core is to slow too run
the test with the default system clock frequency,
and fixing outdated comment in the test manifest file.

Signed-off-by: Paweł Pelikan <pawel.pelikan@nordicsemi.no>
2025-12-01 12:26:31 -05:00
Carles Cufi
a264b54f37 drivers: nrf: Clean up remnants of nrfx error codes
Starting with nrfx 4.0.0, the nrfx_err_t, NRFX_SUCCESS and NRFX_ERROR_*
have been deprecated. Most of them were removed here:

https://github.com/zephyrproject-rtos/zephyr/pull/99399

but a few were missed.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-12-01 12:26:18 -05:00
Łukasz Stępnicki
1cb7671248 tests: drivers: counter: nrf54h20/cpuflpr support
Added new target nrf54h20/cpuflpr/xip to counter basic
api tests. Only XIP is supported for cpuflpr since
RAM memory for this cpu is too small to fit whole
counter basic test code and data.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-12-01 12:26:09 -05:00
Alexander Svensen
f6cbd2f3a8 tests: bluetooth: tester: Start stream from connected_cb
- When we are a peripheral we want to be able to start a stream
  from the stream_connected_cb, given that we are in an enabling state
  and the stream is in the sink direction

Signed-off-by: Alexander Svensen <alexander.svensen@nordicsemi.no>
2025-12-01 12:25:40 -05:00
Arnaud Pouliquen
cfe2d71e24 soc: st: stm32mp13: fix KERNEL_DIRECT_MAP config usage
Fix config dependency between MMU KERNEL_VM_SUPPORT and KERNEL_DIRECT_MAP

This fix following build issue:

warning: KERNEL_DIRECT_MAP (defined at kernel/Kconfig.vm:83) has direct
dependencies MMU && KERNEL_VM_SUPPORT with value n, but is currently
being y-selected by the following symbols:
 - SOC_SERIES_STM32MP13X (defined at soc/st/stm32/stm32mp13x/Kconfig.soc:6,
   soc/st/stm32/stm32mp13x/Kconfig:6), with value y, direct dependencies y
   (value: y), and select condition SOC_FAMILY_STM32 (value: y)

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-12-01 12:25:16 -05:00
Benjamin Cabé
d55b7be1ac doc: services: crc: add CRC doc page
Add a page for documenting CRC services

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-01 12:25:05 -05:00
Pieter De Gendt
4a52afd9c3 doc: connectivity: networking: Add MAC address configuration page
Add a page with information on how ethernet drivers can be assigned a MAC
address, using the MAC address configuration mechanism.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-01 12:24:54 -05:00
Pieter De Gendt
fb6e2c5065 drivers: ethernet: Add doxygen to net_eth_mac_load and move to public API
Add missing doxygen brief to the net_eth_mac_load helper function.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-01 12:24:54 -05:00
Ville Kujala
8883febbcf boards: nrf9280pdk: Merge cpuapp iron variant into the base variant
Replaces the legacy SDFW compatible board configuration with the
IronSide SE compatible one, thus removing support for running samples
and tests on nRF9280 devices with the old firmware.

Signed-off-by: Ville Kujala <ville.kujala@nordicsemi.no>
2025-12-01 12:24:42 -05:00
alperen sener
7ae81e6ad0 tests: bluetooth: tester: add support for wid 145 and 167
wid 145 requests handle of a UUID of a long characteristic. wid 167
requests to remove the characteristic by handle requested in wid 145.

2 new commands are added to support these wids:
- BTP_GATT_GET_HANDLE_FROM_UUID to request handle of a certain UUID
- BTP_GATT_REMOVE_HANDLE_FROM_DB to remove attribute by handle.

Signed-off-by: alperen sener <alperen.sener@nordicsemi.no>
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-12-01 12:24:20 -05:00
Simon Piriou
f186218e42 net: l2: ieee802154: add support for MLME coordinator address
There are two ways in the current implementation to join a network,
either with an association request or a via MLME-SET(macShortAddress) to
rejoin a previously associated network.

The coordinator address needs to be valid in the rejoin case. It can be
lost, for example if the device power cycles. This commit fixes that gap
with new MLME GET/SET for:
- macCoordShortAddress
- macCoordExtendedAddress

Signed-off-by: Simon Piriou <spiriou31@gmail.com>
2025-12-01 12:24:05 -05:00
Simon Piriou
9aa69e6bc1 drivers: ieee802154: nrf5: improve debug logs
This commit prefixes "0x%x" debug logs with the entity, and prints the
"set" parameter when updating a filter.

Signed-off-by: Simon Piriou <spiriou31@gmail.com>
2025-12-01 12:23:56 -05:00
Simon Piriou
b87b17502f net: l2: ieee802154: skip filter removal for unassociated values
Trying to remove filter with NOT_ASSOCIATED parameter results in noisy
warning logs in most of the radio drivers. It's safe to ignore it as
this is an invalid operation.

Signed-off-by: Simon Piriou <spiriou31@gmail.com>
2025-12-01 12:23:56 -05:00
Maksim Salau
1eaceb448f cfb: Skip non-existent font glyphs
The change ensures that returned glyph exists in the current font.

Signed-off-by: Maksim Salau <maksim.salau@gmail.com>
2025-12-01 12:23:41 -05:00
Arnaud Pouliquen
c5d7f93b0a samples: ipc: openamp_rsc_table: add support for STM32MP25F boards
Add openamp_rsc_table support for STM32MP257F EV1 and DK boards to
enable communication between the Cortex-M33 and Cortex-A35 (running Linux).

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-12-01 12:23:31 -05:00
Arnaud Pouliquen
e226124111 boards: add IPCC1 mailbox support for STM32MP257F boards.
Enable the IPCC1 for the stm32MP257F EV1 and DK boards.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-12-01 12:23:31 -05:00
Arnaud Pouliquen
166b50b91d dts: arm: stm32mp2_m33.dtsi: add IPCC1 mailbox node
Add the support of the mailbox IPCC1 for communication between
the Cortex-M33 and the Cortex-A35

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-12-01 12:23:31 -05:00
Arnaud Pouliquen
51480351ab drivers: ipm: stm32_ipcc: make clock optional
On the STM32MP2 series, the IPCC clock is managed at the system
level by the CPU responsible for system configuration.
In topologies where the Cortex-M33 acts as a companion processor, it
cannot enable the IPCC clock.

This update makes the IPCC clock optional in both the device tree
and the driver.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-12-01 12:23:31 -05:00
Qingsong Gou
6211909b78 drivers: pwm: sf32lb: add gpt based pwm driver support
Add gpt based pwm driver for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-01 12:23:17 -05:00
Qingsong Gou
03f2d0e3e1 drivers: clock_control: sf32lb: add SF32LB_CLOCK_DT_INST_PARENT_SPEC_GET
Add SF32LB_CLOCK_DT_INST_PARENT_SPEC_GET clock macro

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-01 12:23:17 -05:00
Qingsong Gou
68a9265d04 dts: arm: sifli: sf32lb52x: define gpt2 instance
Add gpt2 controller for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-01 12:23:17 -05:00
Qingsong Gou
30746de20a dts: bindings: pwm: add sifli,sf32lb-gpt-pwm
Add gpt based pwm device bindings for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-01 12:23:17 -05:00
Qingsong Gou
ef8ab28736 dts: bindings: timer: sf32lb: add sifli,sf32lb-gptim
Add GPT timer bindings for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-01 12:23:17 -05:00
Jacky Lee
a29797d264 soc: egis_et171: add customize config value of fw size info
Allows applications to customize the firmware size information
for binary header optionally.

Signed-off-by: Jacky Lee <jacky.lee@egistec.com>
2025-12-01 12:22:44 -05:00
Ivan Pankratov
4f18248b72 doc: releases: document radio binding renames in 4.4
Add migration guide and release notes entries for the radio-related
devicetree binding renames:
- generic-fem-two-ctrl-pins -> radio-fem-two-ctrl-pins
- gpio-radio-coex -> radio-gpio-coex
- tx-high-power-supported -> radio-tx-high-power-supported

Also document the new radio.yaml base binding for generic radio
hardware capabilities.

Signed-off-by: Ivan Pankratov <ivan.pankratov@silabs.com>
2025-12-01 12:22:33 -05:00
Ivan Pankratov
a44583c8f4 dts: bindings: Rename gpio-radio-coex to radio-gpio-coex
Rename GPIO coex binding to use 'radio-' prefix for consistency with
other radio bindings (radio.yaml, radio-fem-two-ctrl-pins.yaml).

Updated beacon sample overlay and coex documentation.

Signed-off-by: Ivan Pankratov <ivan.pankratov@silabs.com>
2025-12-01 12:22:33 -05:00
Ivan Pankratov
6ccc58a8f6 dts: bindings: Rename generic-fem-two-ctrl-pins to radio-fem-two-ctrl-pins
Rename generic FEM binding to use 'radio-' prefix for consistency with
other radio bindings (radio.yaml, ble-radio.yaml).

Updated 3 board files, Nordic BLE controller HAL, documentation, and
test overlays. Added missing settle-time properties to pan1783a board.

Signed-off-by: Ivan Pankratov <ivan.pankratov@silabs.com>
2025-12-01 12:22:33 -05:00
Ivan Pankratov
0aa208d51e dts: bluetooth: add base binding for BLE radio hardware capabilities
Create a shared base binding (ble-radio.yaml) for common Bluetooth LE
radio hardware capabilities to avoid duplication between vendors and
ensure consistent property naming across the ecosystem.

Properties are prefixed with 'ble-' and ordered chronologically by
Bluetooth Core Specification version (5.0, 5.1, 6.0). Each property
indicates a hardware capability, not current enablement state.

Signed-off-by: Ivan Pankratov <ivan.pankratov@silabs.com>
2025-12-01 12:22:33 -05:00
Ivan Pankratov
675e6e05cd drivers: bluetooth: efr32: move Silabs Kconfig settings
Vendor specific configuration is moved to a separate file.

Signed-off-by: Ivan Pankratov <ivan.pankratov@silabs.com>
2025-12-01 12:22:33 -05:00
Emil Gydesen
f537b770e2 tests: Bluetooth: CAP: Unit tests: Delete group after creation
Some of the CAP initiator unit tests did not delete the group
after creation, even if they easily could.

Especially for test_initiator_unicast_group_add_streams it was
a problem, as the stream added was stack allocated, and by the
end of the test it was deallocated, causing issues when the
group was finally deleted in
cap_initiator_test_unicast_group_after.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-01 12:22:13 -05:00
Emil Gydesen
bfe66fc548 tests: Bluetooth: CAP: Modify initiator unittests to native_sim
Modify the unit tests to use the native_sim board instead of the
unit_testing board.
The native_sim board allows us to use the kernel in a more
regular way, while still being able to treat the tests as
unittest.

To support mocking we cannot rely on the default
Kconfig options and values. The required Kconfig options
to satisfy dependencies are overridden in the Kconfig
file and the necessary Kconfig files are sourced.
We cannot enable e.g. CONFIG_BT as that would attempt
to pull in a lot of files we do not want in this test.

This commit also removes unused includes in the CMakelists

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-01 12:22:13 -05:00
Kevin Zeng
ada3aad811 assert: Add an option for a custom assert header
Similar to logging and shell, allow application to override and
extend the ASSERT macros globally. This enables intercepting log strings
at the macro level for things like string tokenizations.

Signed-off-by: Kevin Zeng <zengk@google.com>
2025-12-01 12:22:03 -05:00
Pieter De Gendt
d9be161571 nvmem: Verify device readiness before read/write
Verify the NVMEM controller device state before reads/writes.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-01 12:21:52 -05:00
Martin Hoff
d02cdc734e drivers: i2s: siwx91x: ensure device runtime is released
Removed conditional checks for device runtime put in DMA RX and
TX callbacks, ensuring that device runtime is always released
asynchronously.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-01 11:11:23 +01:00
Martin Hoff
8f4f1efc86 drivers: dma: siwx91x: fix interrupt flag reset
This patch fix a reg write that needs to be done before calling the
callback. Since the user can start a new dma transfer in the callback,
it can miss the interrupt from the new transfer if the new transfer is
done before the interrupt bit is cleared.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-01 11:11:23 +01:00
Martin Hoff
aa315948dc drivers: dma: siwx91x: replace pm_state with pm_device (udma and gpdma)
Removed unnecessary power management state lock calls since the DMA is
on a power domain that already handles state locking.
It will now managed directly pm_device which will active power_domain
and then block pm_state.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-01 11:11:23 +01:00
Martin Hoff
d5c45b10e5 drivers: spi: siwx91x: ensure device runtime is released on error
Added calls to pm_device_runtime_put() to ensure proper device runtime
management when configuration or DMA transceive operations fail.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-01 11:11:23 +01:00
Martin Hoff
b78fe9f1aa drivers: power_domain: siwx91x: fix the link between pd and cpu state
This patch is needed to block the pm_state "PM_STATE_SUSPEND_TO_IDLE"
when a device on the power domain (actually all the peripherals) is
active. Without this patch, cpu can decide to go to deep sleep while
a peripheral is active.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-01 11:11:23 +01:00
Aksel Skauge Mellbye
a83b19b3f9 soc: silabs: Fix clock control dependency declarations
Most drivers for Series 2 depend on clock control, but didn't
declare it. Enable clock control by default for Series 2 SoCs.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-12-01 11:11:14 +01:00
Sai Santhosh Malae
a80855354c tests: watchdog: wdt_basic_api: Enable PM
Add a new test for enabling device runtime PM
for siwx917_rb4338a

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-01 11:10:39 +01:00
Sai Santhosh Malae
d83740f2d8 drivers: watchdog: siwx91x: Fix pause in sleep
The watchdog timer on SiWx91x devices is designed to
pause during deep-sleep and resume after wakeup.
However, an incorrect check in`wdt_setup` was
preventing this intended behavior. This patch removes
the check, restoring the correct pause-in-sleep
functionality.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-01 11:10:39 +01:00
Tim Pambor
9f35dd41ad tests: drivers: regulator: add test for STM32 vrefbuf regulator
Add build test for vrefbuf regulator found on STM32H5 and STM32U5 series.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-01 11:10:25 +01:00
Tim Pambor
291ae703d9 tests: drivers: regulator: move app.overlay to board-specific file
Relocate the contents of app.overlay into a board-specific overlay for
native_sim. This change prepares the codebase for adding regulator tests
for other boards.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-01 11:10:25 +01:00
Tim Pambor
19423fab21 dts: arm: st: stm32u5: Add support for vrefbuf
Add a node for the VREFBUF peripheral in the STM32U5.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-01 11:10:25 +01:00
Tim Pambor
e6cefe2a58 dts: arm: st: stm32h5: Add support for vrefbuf
Add a node for the VREFBUF peripheral in the STM32H5.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-01 11:10:25 +01:00
Tim Pambor
cec1861cae drivers: regulator: add stm32 vrefbuf driver
Add driver for the VREFBUF regulator found on STM32 microcontrollers.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-01 11:10:25 +01:00
cyliang tw
333d1160a3 tests: drivers: watchdog: wdt_basic_api: Support numaker_m3334ki
Add support for Nuvoton numaker board numaker_m3334ki.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-12-01 11:10:18 +01:00
cyliang tw
780f260efd drivers: watchdog: Fix Numaker driver bug in test suite
NuMaker watchdog control register is write-once after power-on
or reset. Thus, the control registeris written in the setup
function and the disable function only disables IRQ.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-12-01 11:10:18 +01:00
Adrian Warecki
6cd7cfa104 xtensa: mmu: ptables: Set PPN in region_map_update to fix memory mapping
Set PPN (Physical Page Number) in L2 entry in the region_map_update
function to ensure correct mapping for memory that was not previously
mapped based on xtensa_soc_mmu_ranges.

When a new memory domain is created, the arch_mem_domain_init function
allocates new ptables using the dup_table function. This function only
copies original L2 entries created from xtensa_soc_mmu_ranges with
OPTION_SAVE_ATTRS. Entries added later by arch_mem_map are replaced with
XTENSA_MMU_PTE_L2_ILLEGAL and have PPN (Physical Page Number) set to zero.

When adding a new partition to a memory domain, the update_region function
is used. It sets new access attributes in the L2 table without setting the
PPN value. As a result, it does not work correctly for memory that was not
previously mapped based on xtensa_soc_mmu_ranges.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2025-12-01 11:09:09 +01:00
Adrian Warecki
942b1e8571 xtensa: mmu: ptables: Introduce PTE_PPN_SET macro
Add macro PTE_PPN_SET to simplify setting the physical page
number assigned in the page table entry.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2025-12-01 11:09:09 +01:00
Adrian Warecki
f5f56113fe xtensa: mmu: ptables: Introduce PTE_PPN_GET macro
Add macro PTE_PPN_GET to simplify retrieval of the physical page
number assigned to a page table entry.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2025-12-01 11:09:09 +01:00
Yangbo Lu
001d889ab7 samples: net: gptp: add mimxrt1180_evk_mimxrt1189_cm33 support
Added mimxrt1180_evk_mimxrt1189_cm33 support.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
3461123ce9 boards: nxp: mimxrt1180_evk: enable ptp clock
Enabled ptp clock.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
9229383f8a dts: arm: nxp_rt118x: add ptp clock node
Added ptp clock node.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
92decb6273 drivers: eth_nxp_imx_netc: support PTP timestamping for no-tag switch
Added PTP timestamping support in NETC ENETC host driver for no-tag
supported NETC switch.

On RX path, extended descriptor is used on host (pseudo MAC) to get
timestamp writeback.

On TX path, TX timestamp response should be enabled on host (pseudo MAC).
After TX, writeback TX timestamp ID should be updated to tx pkt fifo.
Once RX path received TX timestamp response, match TX timestamp to tx
pkt in fifo with the timestamp ID.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
b2b0c9d4e1 drivers: dsa_nxp_imx_netc: support PTP timestamping for no-tag switch
For NETC switch with tag support, PTP timestamping had already been
supported in tag driver.

This patch is to add PTP timestamping support for no-tag supported switch.
Timestamp functions are implemented and exported for host driver to
handle.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
b693f3ca2d drivers: eth_nxp_imx_netc: improve PTP timestamping enablement
Converted to use NETC_PTP_TIMESTAMPING_SUPPORT for PTP timestamping.
PTP timestamping is needed only when NET_L2_PTP and PTP_CLOCK_NXP_NETC
are selected.

Used default 16 bytes for ETH_NXP_IMX_RX_RING_LEN for PTP timestamping
because RX extended descriptor would be used.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
5b8af91236 drivers: dsa_nxp_imx_netc: improve PTP timestamping enablement
PTP timestamping should be enabled only when NET_L2_PTP and
PTP_CLOCK_NXP_NETC are selected. And NET_PKT_CONTROL_BLOCK
is required for PTP timestamping code.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
0b9f25335b drivers: ptp_clock: support clock division for platforms
Supported clock division for platforms as it may vary from
platforms.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Martin Hoff
29fb893bab soc: silabs: siwx91x: removed sscanf for nwp firmware version check
This patch removes the use of sscanf to maintain compatibility with
tests that use the minimal cpp library. The expected version is now
defined using multiple individual values rather than a single
formatted string.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-01 11:08:51 +01:00
Andrea Gilardoni
53eaf0f71e llext: llext_priv: INSTR_FETCHABLE missing parentheses in definition
C macro INSTR_FETCHABLE is missing parentheses in its definition,
this could lead to incorrect expansion when combined with logical
operators

Signed-off-by: Andrea Gilardoni <a.gilardoni@arduino.cc>
2025-12-01 08:32:11 +01:00
Fin Maaß
8fd4f987b3 drivers: ethernet: renesas: implement get_phy
implement get_phy for the renesas ethernet
driver.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-01 08:32:00 +01:00
Anas Nashif
d31def38bb doc: usermode: correct header where k_objects is defined
Fix location of where k_objects is defined.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-12-01 08:31:46 +01:00
Lyle Zhu
05dc860f11 Bluetooth: Classic: A2DP: Fix out of bounds issue
This is a negative detection. The conn index should be never out of
bounds of the array `connection`. Because the size of the array is
`CONFIG_BT_MAX_CONN`.

To improve the readability, add a `__ASSERT` checking to check if the
conn index is out of bounds.

CID 487769

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-01 08:31:26 +01:00
Lyle Zhu
e586213417 Bluetooth: Classic: SDP: Fix out of bounds issue
This is a negative detection. The conn index should be never out of
bounds of the array `bt_sdp_client_pool`. Because the size of the
array is `CONFIG_BT_MAX_CONN`.

To improve the readability, add a `__ASSERT` checking here. Check
whether the conn index is out of bounds.

Fix #99985

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-01 08:31:19 +01:00
Lyle Zhu
2b827d31fc Bluetooth: Classic: conn: Fix br conn cannot be found issue
There is a corner case that the connect complete event is notified
before the function `bt_hci_cmd_send_sync()` returns. Because the
created conn object is in the state of `BT_CONN_DISCONNECTED`, it
cannot be found in the connect complete event. As a result, the
connect can not established normally.

Fix the issue by setting the connect state and role before calling
the function `bt_hci_cmd_send_sync()`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-01 08:30:53 +01:00
Muhammed Asif
1fb4d82ef1 boards: microchip: Add minimal support for sam_e54_cult board
- Adds the basic board support
- Tested with blinky and hello world
- Product page : https://www.microchip.com/en-us/development-tool/EV66Z56A

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-12-01 08:30:44 +01:00
Ryan McClelland
cde2107308 tests: drivers: build_all: i3c: add build for no ibis
Add a test case to build without CONFIG_I3C_USE_IBI

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-12-01 08:30:37 +01:00
Ryan McClelland
bb6d7f470a drivers: i3c: cdns: fix warning when building without i3c_use_ibi
Add a conditional compile around data in `cdns_i3c_irq_handler` to
prevent a warning when building controller only and without ibi.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-12-01 08:30:37 +01:00
Ryan McClelland
54af134088 drivers: i3c: fix unused function warning
Fix unused function warning when building without
CONFIG_I3C_USE_IBI.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-12-01 08:30:37 +01:00
Benjamin Cabé
da95e8499a doc: services: storage: sort ToC entries alphabetically
Sort entries alphabetically instead of the current somewhat random order.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-01 08:27:52 +01:00
Benjamin Cabé
4ee5499f67 doc: storage: nvmem: move nvmem docs under storage
This moves nvmem docs to a better suited home since we already have
a section for all things storage.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-01 08:27:52 +01:00
Benjamin Cabé
bd62f24893 doc: storage: fs: move file system docs under storage
This moves fs docs to a better suited home since we already have
a section for all things storage.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-01 08:27:52 +01:00
Benjamin Cabé
8c6c350138 doc: storage: retention: move retention docs under storage
This moves retention into a better suited home since we already have
a section for all things storage.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-01 08:27:52 +01:00
Bogdan Ivanus
7117baf15c LED PINS: Corrected arduino_portenta_c33.dts file definitions.
Changed ACTIVE_HIGH to ACTIVE_LOW, for LEDs green and blue in c33.dts file
These appear to have been cofigured wrong from the beginning.

Signed-off-by: Bogdan Ivanus <b.ivanus@arduino.cc>
2025-12-01 08:27:37 +01:00
Jordan Yates
685e5bf0e6 boards: arm: mps2: enable QEMU for AN386
Enable QEMU emulation for the AN386, which gives a QEMU platform for the
cortex-m4 architecture. This allows testing of hardware floating point
operations.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-12-01 08:27:23 +01:00
Mark Wang
44b194b41a libsbc: replace zephyr_compile_definitions
Replace zephyr_compile_definitions with zephyr_library_compile_definitions
to avoid setting options globally.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-12-01 08:27:14 +01:00
Maureen Helm
5f33d75bce tests: lib: devicetree: Add hwspinlock dt spec test
Extends the devicetree library test to exercise the hwspinlock dt spec
macros and detect the context initializer build warning that was fixed
in commit 8b208b0d5a. Previously the build
warning wasn't reproducible in-tree.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-12-01 08:27:04 +01:00
Ryan McClelland
cdfecb6354 drivers: serial: cdns: fix race conditon under heavy uart load
There can be a race conditon where another interrupt fires while it
is in the callback, but then the interrupt is cleared towards the
end of the interrupt. Clear the interrupts it intends to service
at the beginning of the ISR.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-12-01 08:26:56 +01:00
Jisheng Zhang
ed12482c38 tests: lib: mpsc_pbuf: use DCB instead of CoreDebug
commit a763207962 ("arch: arm: dwt: use the cmsis_6 macro
unconditionally") use cmsis_6 macro unconditionally, we can use DCB
instead of CoreDebug macro unconditionally.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
2025-12-01 08:26:46 +01:00
Jisheng Zhang
0ac6d10ea5 samples: debugmon: use DCB instead of CoreDebug
commit a763207962 ("arch: arm: dwt: use the cmsis_6 macro
unconditionally") use cmsis_6 macro unconditionally, we can use DCB
instead of CoreDebug macro unconditionally.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
2025-12-01 08:26:46 +01:00
Jisheng Zhang
30c5c7c8a8 logging: backend: swo: use DCB instead of CoreDebug
commit a763207962 ("arch: arm: dwt: use the cmsis_6 macro
unconditionally") use cmsis_6 macro unconditionally, we can use DCB
instead of CoreDebug macro unconditionally.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
2025-12-01 08:26:46 +01:00
Jisheng Zhang
2c1e1ad7c9 arch: arm: dwt: use DCB instead of CoreDebug
commit a763207962 ("arch: arm: dwt: use the cmsis_6 macro
unconditionally") use cmsis_6 macro unconditionally, we can use DCB
instead of CoreDebug macro unconditionally.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
2025-12-01 08:26:46 +01:00
Valerio Setti
b7d0e1293c tests: net: ieee802154: remove cipher selection in mbedtls-shim driver
Cipher support is already implied by default so there is no need to
select it explicitly.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-01 08:26:29 +01:00
Valerio Setti
1969f493e3 net: lib: midi2: remove unnecessary cipher selection in mbedtls-shim driver
Cipher support is already implied by default so there is no need to
select it explicitly.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-01 08:26:29 +01:00
Valerio Setti
3a6f0879c4 mgmt: osdp: remove unnecessary cipher selection in mbedtls-shim driver
Cipher support is already implied by default so there is no need to
select it explicitly.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-01 08:26:29 +01:00
Valerio Setti
e94d975111 tests: crypto: crypto_hash: remove unnecessary Kconfig
Cipher related Kconfigs are unnecessary for this test since it's only
evaluating Hash algorithms.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-01 08:26:29 +01:00
Valerio Setti
711f13fff6 drivers: crypto: mbedtls_shim: improve session handling
Add a new function to free an mbedtls_shim session:
'mbedtls_free_session()'. Together with 'mbedtls_get_unused_session()',
these will be the only entry points to acquire/release sessions.
In this way it's easier to ensure that the mutex is properly held while
setting the 'in_use' parameter.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-01 08:26:29 +01:00
Valerio Setti
cc65c9543b drivers: crypto: mbedtls_shim: replace legacy cipher API with PSA API
Replace legacy crypto API for cipher (ECB, CBC) and AEAD (CCM, GCM) with
PSA API.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-01 08:26:29 +01:00
Valerio Setti
678542d899 drivers: crypto: mbedtls_shim: replace legacy hash API with PSA API
Replace usage of legacy crypto hash functions from Mbed TLS with PSA API.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-01 08:26:29 +01:00
Valerio Setti
91dbaf5c45 drivers: crypto: mbedtls_shim: move mbedtls_get_unused_session_index()
Move mbedtls_get_unused_session_index() at the top of the file and leave
cipher and hash functions below.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-01 08:26:29 +01:00
Valerio Setti
0cee013a3f drivers: crypto: mbedtls_shim: add _cipher_ to cipher ops
Another small renaming for cipher ops that just adds "_cipher_" in the
function's name.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-01 08:26:29 +01:00
Valerio Setti
37197f869a drivers: crypto: mbedtls_shim: general renaming
This commit just implements some renaming:
* mbedTLS -> Mbed TLS
* MbedTLS -> Mbed TLS
* MTLS_ -> MBEDTLS_
* mtls_ -> mbedtls_
* mtls_ccm -> ccm_ctx
* mtls_gcm -> gcm_ctx
* mtls_aes -> aes_ctx
* mtls_sha256 -> sha256_ctx
* mtls_sha512 -> sha512_ctx

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-01 08:26:29 +01:00
Valerio Setti
5eb2f46e0d drivers: crypto: mbedtls_shim: rename module
Use full name for the module so "mtls" -> "mbedtls"

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-12-01 08:26:29 +01:00
Dmitrii Sharshakov
e3ef835ffe soc: raspberrypi: rp2350: imply XIP
Imply XIP from the SoC config to make XIP the default to match the
behaviour between Cortex-M33 and Hazard3 variants.

This fixes cbe6a716d3, which stopped
selecting XIP at the SoC level.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-11-28 20:58:32 -05:00
Mark Wang
6cf0829d7d drivers: usb: uhc: mcux: Improve setup noncache buffer allocation
Only allocate nocache setup packet buffer for control endpoint (EP0).

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-11-28 20:58:16 -05:00
Mark Wang
7ea8992d47 drivers: usb: uhc: mcux: Fix nocache buffer allocation for IN/OUT transfer
Use net_buf_tail() instead of __buf for proper buffer positioning.
Add null check and error handling for nocache buffer allocation.
Only copy data for OUT transfers during buffer setup.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-11-28 20:58:16 -05:00
Mark Wang
d5a509583b drivers: usb: uhc: mcux: add data to buf only for IN transfer
After the transfer callback, add the received data to buf only for IN.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-11-28 20:58:16 -05:00
Mark Wang
d12279b694 drivers: usb: uhc: mcux: Fix buffer setup for IN/OUT transfers
Differentiating between IN and OUT transfers for proper buffer setup.
For OUT transfers: use existing data from buf->data with buf->len.
For IN transfers: use available space from net_buf_tail() with tailroom.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-11-28 20:58:16 -05:00
Sudan Landge
9962bc12cf 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>
2025-11-28 20:57:53 -05:00
Aurelien Jarno
78a3890acb net: mqtt_sn: udp: enforce maximum address size at build time
Introduce BUILD_ASSERT checks in the UDP transport implementation to
ensure the configured maximum address size is large enough for the
enabled IP families.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2025-11-28 22:10:40 +00:00
Aurelien Jarno
05b9ffb390 net: mqtt_sn: document address size and add support for IPv6
Add guidelines in Kconfig explaining the minimum required
MQTT_SN_LIB_MAX_ADDR_SIZE for UDP transport and IPv4 and or IPv6. Also
explain when this value might need to be changed.

Use these values to provide a sane default for IPv4 and IPv6.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2025-11-28 22:10:40 +00:00
Sylvio Alves
3d77a766c3 west.yml: hal_espressif: update rom reentrant calls as weak
This update modify some ROM reentrant calls to weak in order
to use the one provided in libc.

This also remove the usage of logging that requires locking
handling before scheduler is running.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-11-28 22:10:31 +00:00
Benjamin Cabé
efa9e1dfdd doc: index: redesign landing page with persona-based navigation
Completely overhaul the documentation landing page to improve user
experience and navigability.

Key changes:
- Replace the static grid list with a modern, responsive HTML/CSS layout.
- Introduce "Persona" cards (App Developer, Hardware Engineer, Product
  Maker) to guide users to relevant sections faster.
- Highlight key reference resources (API, Kconfig, DeviceTree, ...) in a
  dedicated reference section.
- Call out "How to contribute" with a dedicated card.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-28 22:10:24 +00:00
Pieter De Gendt
09eeb734ca drivers: ethernet: eth_virtio_net: Support MAC address config
Update the virtio ethernet driver to use a MAC address configuration
struct.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-28 17:28:00 +00:00
Jukka Rissanen
5a0fb5c011 tests: net: all: Increase CONFIG_MAX_THREAD_BYTES to 5
This is done to avoid this error

  Too many thread objects (38)
  Increase CONFIG_MAX_THREAD_BYTES to 5

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-28 17:27:52 +00:00
Jukka Rissanen
e39c6c56fb tests: net: all: Make sure OpenThread tests are run
The platform_allow line in common: overrides the setting in
individual tests, so add the platform_allow line to each test
separately so that OpenThread tests are run with proper platform.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-28 17:27:52 +00:00
Jukka Rissanen
9d3f4a7073 modules: openthread: Fix network namespace API usage
Some of the socket calls still used POSIX symbols, replace these
by native Zephyr network API calls.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-28 17:27:52 +00:00
Aleksandr Khromykh
3576e6b156 MAINTAINERS: add alxelax as bt qualification collaborator
Add myself (alxelax) as Bluetooth Qualification
collaborator. The main reason is as Bluetooth Mesh
collaborator would like to follow up qualification tool
updates since it impacts Mesh qualification too.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-11-28 17:26:26 +00:00
Lyle Zhu
57b99f5846 Bluetooth: Classic: RFCOMM: Fix unchecked returned value issue
Check the return code of the function `bt_l2cap_br_server_register()`.

Fix #100016

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-28 17:26:21 +00:00
Marek Slowinski
b545d584a2 tests: arch: interrupt: Exclude mpfs_icicle SMP platform from LTO test
Other variants of arch.interrupt test pass on this platform,
but arch.shared_interrupt.lto asserts in test_isr_offload_job_identi.

The issue was reported in #98658.

Signed-off-by: Marek Slowinski <mslowinski@antmicro.com>
2025-11-28 17:25:58 +00:00
Vinayak Kariappa Chettimada
06cd4f5849 Bluetooth: Controller: Remove redundant Sync ISO must expire
Remove redundant Sync ISO must expire code that is not
planned to be implemented.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-11-28 17:25:50 +00:00
Marek Matej
a00bec83c3 snippets: espressif: update flash size snippets
Update Espressif flash related snippets:

* add support for ESP32-H2
* add 2M,64M and 128M flash support
* change included overlays structure

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-11-28 17:25:40 +00:00
Marek Matej
97d74795da dts: vendor: Add Espressif partition tables
Add support for bigger flash sizes.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-11-28 17:25:40 +00:00
Haoran Jiang
40accad696 soc: sifli: sf32: Add SF32LB52 platform ftab generation
Using the `gen_ftab.py` script, we can retrieve the current image
distribution information from the device tree and generate the
corresponding `ftab.bin` file. This eliminates the need to burn an
additional `ftab.bin` externally before running the device

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-11-28 17:25:27 +00:00
Haoran Jiang
8454f91e39 scripts: west_commands: runners: sftool: Add flash_files param
In addition to Zephyr's default build artifacts, other build processes
may generate additional images. Therefore, we have added the
`--flash-file` parameter to flash these supplementary images


Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-11-28 17:25:27 +00:00
Vinayak Kariappa Chettimada
2ab41387a4 Bluetooth: Controller: nRF54Lx: Fix Radio Tx Power set
Fix incorrectly high Radio Tx Power being set as default.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-11-28 17:25:02 +00:00
James Torres
d30d7c29f3 drivers: watchdog: stm32 wwdg: remove floats to reduce footprint
On STM boards without an FPU (like nucleo_f091rc) the WWDG driver
requires 4K more of flash than the IWDG due to the use of floating
point math. Fixed it by refactoring to use integer math.
Reduced sample build ROM size from 24848 B to 21620 B on
nucleo_f091rc.

Signed-off-by: James Torres <jamesktorres2022@gmail.com>
2025-11-28 17:24:26 +00:00
Vinayak Kariappa Chettimada
6692264d22 Bluetooth: Controller: In-system profiling and CPU overhead assertions
Updated in-system profiling for CPU usage with on target
measurements and added assertion checks.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-11-28 17:24:09 +00:00
Vinayak Kariappa Chettimada
d82c1dcaec Bluetooth: Controller: In-system ticker_start and ticker_stop tests
Add in-system ticker_start and ticker_stop tests.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-11-28 17:24:09 +00:00
Aaron Ye
1a49b418f5 samples: Bluetooth: peripheral_past: fix the uninitialized parameter
The past_param.options is uninitialized and causes
bt_le_per_adv_sync_transfer_subscribe() returning error.

Signed-off-by: Aaron Ye <aye@ambiq.com>
2025-11-28 10:12:07 +00:00
Thomas Decker
2fbefdbc53 soc: st: stm32: h7rsxx: Fix MPU region for read-only id flash region
Set correct MPU memory type and size for the uniqe device id, package code
and ADC VREF/TS calibration read-only flash region.

REGION_IO_ATTR configures the MPU region to device-memory with RW access,
which is also used for the PERIPH region. To avoid complicating things
unnecessarily, we use this type instead of defining a new device-RO.

The size is reduced to 512 bytes, because RM0477 table 28 and chapter
5.3.12 state that this read-only flash area has a size of 512 bytes.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-11-28 10:11:57 +00:00
Kyle Bonnici
787bc17711 devicetree: format after rebase
Applying dts-linter results files after rebase

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2025-11-28 10:09:39 +00:00
Kyle Bonnici
589be43e2e devicetree: remaining files
Applying dts-linter results for remaining format files

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2025-11-28 10:09:39 +00:00
Kyle Bonnici
a510704ed2 devicetree: format files in tests
Applying dts-linter results for files in

tests

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2025-11-28 10:09:39 +00:00
Kyle Bonnici
70806c585f devicetree: format files in samples
Applying dts-linter results for format files in

samples

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2025-11-28 10:09:39 +00:00
Kyle Bonnici
b3f756e800 devicetree: format files in dts
Applying dts-linter results for files in

dts

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2025-11-28 10:09:39 +00:00
Kyle Bonnici
f06b35e698 devicetree: format files in boards
Applying dts-linter results for format files in

boards

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2025-11-28 10:09:39 +00:00
Pieter De Gendt
b72da97eec doc: services: nvmem: Mention flash configuration
Add an entry to the configuration section for flash related Kconfig
symbols.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-28 09:50:47 +00:00
Xianglong Zhang
ad641f8ebb boards: shields: m5stack_cardputer: Correct the display parameter
Refer to the M5Stack official code, it need to correct
the value of x-offset of st7789v display driver from 53 to 52,
or the leftmost column of the LCD shows an anomaly.

Signed-off-by: Xianglong Zhang <zhangxianglong@cvte.com>
2025-11-28 09:50:38 +00:00
Benjamin Cabé
4ff7102ed9 doc: services: serialization: add cbor doc page
Add a doc page for CBOR as part of Serialization services

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-28 09:50:28 +00:00
Benjamin Cabé
9fa197cf2e samples: doc: add "json" as relevant_api to a few samples
This ensure people browsing the JSON doc page will see a few more
options in terms of code samples exercising JSON API

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-28 09:50:28 +00:00
Benjamin Cabé
fe2357072e doc: services: serialization: add json doc page
Move the mostly empty doc section from misc to serialization.
Also add basic code snippets.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-28 09:50:28 +00:00
Carles Cufi
84a85ed9d8 tests: Add LTO tests variants with LTO_SINGLE_THREADED
Add variants of existing tests to cover this new Kconfig option.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-11-28 09:50:04 +00:00
Carles Cufi
d0547b67cd toolchain: gcc: Add a new LTO_SINGLE_THREADED option for LTO
As described in this issue:
https://github.com/zephyrproject-rtos/sdk-ng/issues/1038
`-flto=auto` fails on some (slower) Windows machines due to an issue with
the Zephyr SDK's GCC toolchain for Windows.
In order to allow users to work around this issue, introduce a new
CONFIG_LTO_SINGLE_THREADED option that switches to `-flto=1`, which
enforces a single thread when processing LTO.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-11-28 09:50:04 +00:00
Kate Wang
027d77168b drivers: mipi_dbi: Fix typo in NXP DCnano driver
Fix typo in NXP DCnano driver

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-11-28 09:49:59 +00:00
Kate Wang
1e86329fe9 drivers: display: display_rm67162: Check reset pin configuration return
Check the return value of reset pin gpio configuration operation.

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2025-11-28 09:49:59 +00:00
Firas Sammoura
f7e2b8daf7 tests: riscv Add tests for unlocked PMP entries
Adds four new test cases to validate the PMP stack guard protection when
`CONFIG_PMP_NO_LOCK_GLOBAL` is enabled (i.e., when PMP entries are not
globally locked).

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-28 09:49:50 +00:00
Firas Sammoura
e0f2b4e354 riscv: pmp: Add support for unlocked global PMP entries
Adds the Kconfig option PMP_NO_LOCK_GLOBAL to remove the PMP Lock bit
usage. The global entry is an internal detail of the driver
implementation and should not be reflected in the user interface. This
allows the application to dynamically reconfigure the PMP entries
without requiring hard reset. This is essential for firmware that
performs an RO-to-RW jump. By keeping these system entries unlocked,
higher-privileged M-mode code can dynamically reconfigure memory
permissions during the secure handover process, which is not possible if
the entries are permanently locked during early boot.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-28 09:49:50 +00:00
Robert Lubos
f908d0b5f2 net: shell: Verify array index during dynamic iface completion
Verify that the interface index, converted to array index,
 does not exceed the preallocated string array for dynamic index
completion.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-27 21:56:37 +01:00
Robert Lubos
852a1e8104 net: sockets: getnameinfo: Cast to sockaddr_in6 instead of sockaddr_in
As explained in the comment in the code, both structs have the same
offsets for it's fields, but sockaddr_in is smaller, hence it can
confuse static analyzer, giving warnings about potential out-of-bound
access. Therefore, cast to sockaddr_in6 instead to avoid the warning.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-27 21:55:12 +01:00
Felipe Neves
487386e9df boards: witte: linum: fix CAN controller settings.
To match the fixed RCC/Clock settings.

Signed-off-by: Felipe Neves <ryukokki.felipe@gmail.com>
2025-11-27 21:54:51 +01:00
Felipe Neves
cc64b17b5e boards: witte: linum: fix clock settings.
to make the ethernet, USB and FDCAN usable.

Signed-off-by: Felipe Neves <ryukokki.felipe@gmail.com>
2025-11-27 21:54:51 +01:00
Mario Paja
88f50fabcb drivers: audio: wm8904: fix sample rate
This change aligns sample rates to the datasheet and removes
non existing values for 11.025kHz, 22.05kHz, & 44.1kHz

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-11-27 21:54:39 +01:00
Guillaume Gautier
7d63600c3c dts: arm: st: f7: fix indentation for ci compliance check
Fix indentation for CI compliance check.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-11-27 21:54:24 +01:00
Guillaume Gautier
3c27e6f1ec tests: drivers: counter: basic_api: complete stm32 board overlays
Completes the STM32 overlays:
- Adds missing timers
- Adds copyright notice
- Adds okay to timer instances so that shared interrupts can be enabled
  if needed
- Adds an overlay for STM32H7R/S
- Removes the conf file for N6 that is useless now that userspace works.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-11-27 21:54:24 +01:00
Guillaume Gautier
85e6b867fe dts: arm: st: l1: add missing timers and fix timers5
Adds timers 6 and 7 that were missing to L1 series.
Fixes timer 5 interrupt line.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-11-27 21:54:24 +01:00
Guillaume Gautier
4f278aa9c0 dts: arm: st: h7rs: add missing timers 12/13/14
Timers 12, 13 and 14 were missing in the STM32H7R/S device tree.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-11-27 21:54:24 +01:00
Guillaume Gautier
3f5aa82f3e dts: arm: st: add counter support for all stm32 timers
For all existing STM32 timer nodes, add the counter node if it was missing.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-11-27 21:54:24 +01:00
Guillaume Gautier
3206d73994 soc: st: stm32: add timer shared interrupts
For some STM32 series, some interrupts are shared between different timer
instances. Use the SHARED_INTERRUPTS for these series so that all timers
can be used at the same time.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-11-27 21:54:24 +01:00
Guillaume Gautier
2fb9eb0fee drivers: counter: stm32: timer: fix counter for stm32 advanced timers
Counter driver was not functional with STM32 advanced timers (like
TIMER1/8) due to them having more than one interrupt line.
This commit defines the proper interrupts for the advanced timers so that
they can be used as counters.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-11-27 21:54:24 +01:00
Benjamin Cabé
c962977da8 boards: arm: fix full_name for fvp_baser_aemv8r
Ensure the board's full name shows up correctly in the docs.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-27 21:54:13 +01:00
Benjamin Cabé
8e687fc0dd ci: Switch to CI image v0.28.7
This commit updates the CI workflows to use the CI image v0.28.7, which
updates versions of the following components:
- Doxygen 1.15.0.
- Renode 1.16.0.
- BSIM 3.0.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-27 11:25:47 -05:00
Benjamin Cabé
89292a29b9 doc: update references to RFCs using :rfc: role across multiple files
Sphinx has a built-in `:rfc:` role for referencing RFC documents.
This commit updates documentation pages referencing RFCs to use this role.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-27 16:05:19 +01:00
Mathieu Choplain
7defeda8bd soc: st: stm32: wkup_pins: break after configuring I/O retention on pin
After we found the target GPIO port and configured I/O retention on target
wake-up pin, break from the search loop.

Applies only to STM32WBA series.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-27 16:02:47 +01:00
Aksel Skauge Mellbye
2602b707b1 boards: silabs: xg24_dk2601b: Enable commander runner
Enable the use of Simplicity Commander as a runner on the
xg24_dk2601b dev kit.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-11-27 16:02:41 +01:00
Fabian Blatz
0f07faa14b drivers: input: gt911: Add touchscreen common config
Adds the touchscreen common config to the gt911 controller.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-11-27 16:02:13 +01:00
Emil Gydesen
4bd0c33cdd Bluetooth: CSIP: Only allow rank changes with set size changes
The rank cannot be notified and the function allowed for
just updated to the rank. The CSIS spec does not mention
the usecase, nor support, for changing the rank of a device.
The spec only seems to allow for dynamic changes to the set
size (and only during that can the rank be set).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-27 16:01:36 +01:00
Sudan Landge
3c66b7e205 tests: fix ci for fvp_baser_aemv8r
Disable cache modeling in FVP and skip a few tests that have not been
working for a while to unblock the running ci on this board.
The tests will be tracked by an issue and fixed later.

Related issue #97602

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-11-27 16:01:27 +01:00
Sudan Landge
04fb068463 sample: net: fix the board config and overlay name
Rename the board config to fix ci issue while running samples for
fvp_baser_aemv8r:
```
INFO    - 1) sample.net.zperf.async_tx.stm32 on
fvp_baser_aemv8r/fvp_aemv8r_aarch32 error (CMake build failure - CMake
Error at cmake/modules/extensions.cmake:2905 (message):   Board
fvp_baser_aemv8r defines multiple SoCs.)
```

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-11-27 16:01:27 +01:00
Sudan Landge
1f030c303a boards: fvp_aemv8r_aarch32: fix sample.bindesc
Make sure bindesc are placed right after the vector table and fix ci
failure with sample.bindesc for fvp_baser_aemv8r/fvp_aemv8r_aarch32.
Without this change the bindesc are placed at a location that is not
mapped leading to a data abort while running the sample.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-11-27 16:01:27 +01:00
Sudan Landge
c1ded6b9b6 arch: arm64: fix definition of ARCH_HAS_STACKWALK
Move ARCH_HAS_STACKWALK under CPU_CORTEX_A section since only Cortex-A
implements arch_stack_walk(), while Cortex-R does not.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-11-27 16:01:27 +01:00
Sudan Landge
c8688926c0 tests: MPS2: skip running wdt_basic_api on fvp for an385
Skip running the test scenario `drivers.watchdog` on Arm FVP for the
board `mps2/an385`.

Since the test runs by default on qemu, this issue was missed earlier
when the test was excluded for the other MPS2 variants that use FVP.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-11-27 16:01:27 +01:00
Arunmani Alagarsamy
1814b902a9 soc: silabs: siwg917: Add configurable boot features via DTS and Kconfig
Add support for configuring hardware-specific boot feature bitmaps
through Devicetree and software-specific boot configurations through
Kconfig options.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-11-27 14:48:35 +01:00
Arunmani Alagarsamy
e21df1fab1 dts: silabs: Add NWP boot configuration properties
Add new Devicetree properties under the SiWx91x NWP node to describe
hardware-specific boot configuration options.

The properties are documented in the SiWx91x NWP YAML binding.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-11-27 14:48:35 +01:00
Tomasz Moń
6f0a40090f drivers: udc_dwc2: Avoid endpoint disable timeouts on bus reset
DWC2 core automatically clears USBActEP (for all endpoints other than
endpoint 0) on bus reset. While core is deactivating the endpoint, it
does not disarm it.

On bus reset USB stack first calls ep_disable API and then ep_dequeue.
This was leading to endpoint is not active warning followed by endpoint
disable timeout. Disable timeout was effectively caused by waiting for
EPDisbld interrupt on endpoint with disabled interrupts.

Solve the issue by unconditionally disarming endpoint in ep_disable API
handler. Remove the false warning because USBActEP cannot really be used
for sanity checking as it is not only the driver that clears it.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-11-27 13:48:18 +00:00
Thorsten Klein
69536a6811 scripts: zephyr_module: ignore empty paths in extra modules env variables
Ignore empty paths in environment variables ZEPHYR_EXTRA_MODULES or
EXTRA_ZEPHYR_MODULES.

Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
2025-11-27 14:48:13 +01:00
Sebastian Bøe
a053b97144 soc: ironside: counter_service: 2 compilation errors fixed
2 compilation errors fixed in counter service.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-11-27 13:47:58 +00:00
Benjamin Klaric
e83f36f934 boards: stm32h7s78_dk: add FDCAN1 support
Add FDCAN1 configuration to the board's .dtsi file and
comments explaining how to enable it, since fdcan1 and i2c1
share the pb9 pin. Updated documentation to explain CAN usage.

Signed-off-by: Benjamin Klaric <benjamin.klaric01@gmail.com>
2025-11-27 14:47:01 +01:00
Benjamin Cabé
8349a01b13 cmake: extensions: remove invalid add_dependencies
The `add_dependencies` command in CMake is used to specify dependencies
between targets - here it was used to specify a dependency on a folder,
which is not valid (and causes failures on CMake 4.2 when using
the cmake-file-api).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-27 14:46:50 +01:00
Jamie McCrae
33a5c301a1 dfu: kconfig: Raise limit of MCUboot images to 8
This update was seemingly forgotten when additional image support
was added to supporting MCUboot files

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-11-27 14:46:40 +01:00
Jamie McCrae
5c713cd7d4 dfu: kconfig: Fix styling
Fixes this styling to be valid

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-11-27 14:46:40 +01:00
Jamie McCrae
6950bf2b42 dfu: boot: cmake: Fix styling
Fixes this styling to be valid

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-11-27 14:46:40 +01:00
Jamie McCrae
a12e21fe8e dfu: boot: mcuboot: Use Kconfig for log level
Prevents this module from just trampling over your logging with
debug logs no matter the configuration

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-11-27 14:46:40 +01:00
Remi Buisson
f4170e255f modules: hal_tdk: Update icm42x7x driver version 3.3.0
Update icm42x7x driver to version 3.3.0.

Signed-off-by: Remi Buisson <remi.buisson@tdk.com>
2025-11-27 14:46:23 +01:00
Tim Lin
8c00b5359b drivers: i2c: i2c_ite_enhance: refactor pio isr handling
This commit refactors the pio isr handling to avoid losing i2c
transactions that occur back-to-back. It also removes the
compile-time check for target buffer mode config, as both pio
and dma modes are now supported.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-11-27 14:46:14 +01:00
Aksel Skauge Mellbye
eabde5b278 soc: silabs: Add xg24 variants
Add support for more SoC variants for xG24.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-11-27 14:45:47 +01:00
Robert Lubos
a00fefc5a9 net: sockets: tls: Specify a separate Kconfig option for TLS timeout
It's been periodically reported that the default connect timeout shared
with regular TCP sockets (3 seconds) is not enough for the TLS handshake
to complete. Therefore, it'd make sense to increase the default value
for TLS sockets specifically. However currently the option is used by
both TCP and TLS connections, which makes this impractical.

Therefore, introduce a separate CONFIG_NET_SOCKETS_TLS_CONNECT_TIMEOUT
Kconfig option for TLS sockets specifically, and set the default to 10
seconds. For samples/tests that modified the old option for TLS-specific
purpose, update the new option value as well.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-27 14:45:32 +01:00
Robert Lubos
996a0f445c net: sockets: tls: Fix timeout error code for blocking accept()
In case a handshake timed out on a blocking accept() call, the TLS
socket would return EAGAIN error which is ambiguous and not intuitive.
Report ETIMEDOUT instead.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-27 14:45:32 +01:00
Nikodem Kastelik
ad1e5ac253 nordic: update and align to nrfx 4.0.1
New nrfx release contains major rework of nrfx drivers
instantiation making it easier to integrate with dts nodes.
Now, nrfx driver instances can no longer be `const`
because they contain driver runtime state.
Additionally, all nrfx drivers return `errno` error codes
instead of deprecated `nrfx_err_t`.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-11-27 14:45:17 +01:00
Sylvio Alves
8ae38804ac tests: board: espressif: update net struct usage
Fix net struct naming convention.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-11-27 11:37:26 +01:00
Aurelien Jarno
5f5db5bf3c net: mqtt_sn: udp: use correct get/setsockopt parameters for IPv6
On IPv6, IPPROTO_IPV6 needs to be replaced by IPPROTO_IP and
IP_MULTICAST_TTL by IPV6_MULTICAST_HOPS.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2025-11-27 11:35:03 +01:00
Aurelien Jarno
5e3bf02e50 net: mqtt_sn: udp: ignore EALREADY when adding multicast addresses
On IPv6, the host is subscribed to a few multicast addresses by default.
Reusing such an address for MQTT-SN leads to an EALREADY error. Ignore
this error instead of returning. Do the same for IPv4 for consistency,
and because it could happen if the multicast address has already been
added manually from another part of the code, although this is really a
corner case.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2025-11-27 11:35:03 +01:00
Aurelien Jarno
e3013fe5c2 net: mqtt_sn: udp: reserve enough space to hold an IPv6 address
The current allocated buffer for storing the IP address is not always
large enough to hold an IPv6 address.  Instead of using a hard-coded
value, use NET_INET6_ADDRSTRLEN, which covers all cases, including
possible mapped IPv4 addresses.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2025-11-27 11:35:03 +01:00
Aurelien Jarno
05dd10c3f1 net: mqtt_sn: udp: fix return value in case of error
errno returns a positive value, while the API specifies that a negative
value is returned in case of error. Therefore replaces "return errno" by
"return -errno".

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2025-11-27 11:35:03 +01:00
Simon Piriou
25f667a6a0 net: l2: ieee802154: don't use net_context->local for AF_PACKET sockets
There is an issue with AF_PACKET sockets bound to ieee802154 l2 iface.
The socket keeps track of the iface link_addr with a sockaddr_ll_ptr
structure, with sll_addr pointing to the iface link_addr address, and
sll_halen being a copy of the iface link_addr length.

The iface link address for ieee802154 can change during association
between extended address (8 bytes) and short address (2 bytes). The
iface link_addr s correctly updated, but the sll_halen of already bound
sockets is not, as it's a out of sync local copy.

This commit fixes #99711 by replacing all the sll_halen usage for
AF_PACKET socket with the iface link_addr length directly on recv and
send paths.

Signed-off-by: Simon Piriou <spiriou31@gmail.com>
2025-11-27 11:34:54 +01:00
Lyle Zhu
57b7899e3a Bluetooth: att: Fix NULL pointer access issue
If the connect type is not `LE`, the return value of function
`bt_conn_get_dst()` is a NULL pointer. In function `bt_addr_le_str()`,
 the NULL pointer will be accessed without any checking. It will cause
the issue `Segmentation fault` in the platform `native_sim`.

Fix the issue by checking the conn type at the beginning of the
function `eatt_auto_connect()`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-27 11:34:39 +01:00
Kiara Navarro
ee7792c343 lora: remove EXPERIMENTAL from already unstable api
Based on api lifecycle documentation, the lora driver has been recently
moved to unstable. This means that the state of this driver is no longer
experimental. Due this new state, the change should be updated on
Kconfig.

This commit remove the `EXPERIMENTAL` symbol selection from the driver
itself. It also remove the word `experimental` from the lora basic
modem backend since the api lifecycle documentation only describes the
state of the api based upon the api itself and not any particular
backend implementation.

Signed-off-by: Kiara Navarro <knavarro@paltatech.com>
2025-11-27 11:33:59 +01:00
Fabio Baltieri
0d64686ef5 include: ec_host_cmd: add an extra _ on handler structs
Add an extra _ on the handler struct name generated bu the
EC_HOST_CMD_HANDLER macros, this makes them a bit easier to list as they
now look something like

__cmd_EC_CMD_GET_VERSION

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-11-27 11:33:51 +01:00
Fabio Baltieri
0b63777843 include: ec_host_cmd: add a request and response only handler macros
Add two macro variants for registering handlers that have either only a
request structure or only a response structure.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-11-27 11:33:51 +01:00
Francois Ramu
b4cdb239c8 soc: st: stm32u5 set backup sram retention if regulator is LDO
On the stm32u5 series, this commit will enable backup sram regulator
when the regulator is LDO, during SOC init. Then stm32_backup_sram_init
does not change the backup SRAM retention anymore.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-11-27 11:33:40 +01:00
Hau Ho
75e0bea1c9 tests: drivers: spi: Add overlay file for spi_loopback test
Add overlay file for EK-RX261 and FPB-RX261 boards

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2025-11-27 11:33:28 +01:00
Hau Ho
00a209e304 boards: renesas: Add SPI support for FPB-RX261 board
Add SPI support for FPB-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2025-11-27 11:33:28 +01:00
Hau Ho
9082bb78bb boards: renesas: Add SPI support for EK-RX261 board
Add SPI support for EK-RX261 board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2025-11-27 11:33:28 +01:00
Hau Ho
51f3e6702d dts: renesas: rx: Add dts property node for SPI support on RX261
Add dts property node for SPI support on RX261

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2025-11-27 11:33:28 +01:00
Jordan Yates
325c354913 scripts: build: ruff compliance
Update scripts in the build folder to pass all enabled `ruff` checks.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-27 11:33:18 +01:00
Jordan Yates
b9a3f42d18 scripts: build: apply ruff format
Apply `ruff` formatting rules to all scripts in the build folder.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-27 11:33:18 +01:00
Qingsong Gou
e968b69db8 drivers: adc: sf32lb: add adc driver support
Add adc driver for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-27 11:32:59 +01:00
Qingsong Gou
7fa0c99e4d dts: arm: sifli: add adc node
Add adc controller for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-27 11:32:59 +01:00
Qingsong Gou
a5cd2966d3 dts: bindings: adc: add sifli,sf32lb-gpadc
Add adc controller for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-27 11:32:59 +01:00
McAtee Maxwell
80ab57446f boards: add spi support for kit_pse84_eval_m33
- add spi to supported in board yaml file
- add spi_loopback test overlay

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-11-27 11:32:46 +01:00
McAtee Maxwell
32a75ec537 boards: update kit_pse84_eval/m33 to use cached address for flash
- update address for flash to cached address

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-11-27 11:32:46 +01:00
Benjamin Cabé
4d5b5d6575 doc: conf.py: add glossary link to sidebar
Add a link to the glossary in the "Reference" section of the sidebar.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-27 11:32:30 +01:00
Rico van Dongen
e55bf93d5d cmake: allow spaces in install path of GNU Arm Embedded linker
This commit fixes bug #95402. When the GNU toolchain is installed
in its default path the library include dir will contain spaces.
By encasulating the library path in quotes the linker works again.

Signed-off-by: Rico van Dongen <rdongen@ziggo.nl>
2025-11-27 11:32:19 +01:00
Lyle Zhu
741afc85af Bluetooth: Classic: HFP_AG: Optimize audio connect management
In current implementation, the call will be terminated, or rejected if
the audio connect cannot be established. But from the application
view, if the sco connect cannot be established, the audio paths can be
routed towards the AG. So force routeing the audio towards the HF is
not reasonable and it is not the mandatory.

The changes aim to keep the sequence that creating SCO connect in the
right time. And ignore the result whether the SCO connect has been
created or can be established.

If the audio connect cannot be established, the application can try to
change the audio route paths according to the audio connection
procedure.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-27 11:31:36 +01:00
Khoa Tran
940ae75941 tests: boards: renesas: Add ELC test support for mck_ra4t1
Add ELC test support for Renesas mck_ra4t1

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
26b7d8efec tests: drivers: flash: Add tests support for Renesas mck_ra4t1
Add support for test app on Renesas mck_ra4t1:
- tests/drivers/flash/common

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
da7f81d2ad tests: drivers: dma: Add tests support for Renesas mck_ra4t1
Add support for test app on Renesas mck_ra4t1:
- tests/drivers/dma/chan_blen_transfer
- tests/drivers/dma/chan_blen_transfer

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
d373a46a59 tests: drivers: dac: Add tests support for Renesas mck_ra4t1
Add support for test app on Renesas mck_ra4t1:
- tests/drivers/dac/dac_api
- tests/drivers/dac/dac_loopback

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
56c4611f6f tests: drivers: adc: Add tests support for Renesas mck_ra4t1
Add support for test app on Renesas mck_ra4t1:
- tests/drivers/adc/adc_accuracy_test
- tests/drivers/adc/adc_api

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
f267689288 tests: drivers: counter: Add test support for Renesas mck_ra4t1
Add support for test app on Renesas mck_ra4t1:
- tests/drivers/counter/counter_basic_api

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
7087edd517 tests: drivers: pwm: Add test support for Renesas mck_ra4t1
Add support for test app on Renesas mck_ra4t1:
- tests/drivers/i2c/i2c_api

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
9119b57834 tests: drivers: spi: Add test support for mck_ra4t1
Add support for test app Renesas mck_ra4t1:
- tests/drivers/spi/spi_loopback

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
798a81b7e7 tests: drivers: uart: Add test support for mck_ra4t1
Add support for test app on Renesas mck_ra4t1:
- tests/drivers/uart/uart_async_api

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
8e33cdb13f samples: boards: renesas: Add ELC sample support for mck_ra4t1
Add ELC sample support for Renesas mck_ra4t1

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
e7f3c41175 samples: drivers: adc: Add sample support for Renesas mck_ra4t1
Add support for sample apps on Renesas mck_ra4t1 board:
- samples/drivers/adc/adc_dt
- samples/drivers/adc/adc_sequence

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
a764f7b7cd samples: drivers: dac: Add sample support for Renesas mck_ra4t1
Add support for sample app on Renesas mck_ra4t1:
- samples/drivers/dac

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
4d61652415 samples: drivers: counter: Add sample support for Renesas mck_ra4t1
Add support for sample app on Renesas mck_ra4t1:
- samples/drivers/counter/alarm

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
8fbfe4fad5 boards: renesas: Add board support for Renesas mck_ra4t1
Add board layer support for Renesas mck_ra4t1 board

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
70eaa271f6 dts: arm: renesas: Add dts support for Renesas RA4T1 SoC series
Add dts support for Renesas RA4T1 SoC series

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
60fccde40e dt-bindings: misc: Add ELC enum dts bindings for RA4T1 SoC
Add RA4T1 SoC's ELC signal enums for devicetree bindings

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
8a86e9bbf9 soc: renesas: ra: Add support for Renesas RA4T1 SoC series
Add support for Renesas RA4T1 SoC series

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Khoa Tran
e1689f7fe7 manifest: update revision of hal_renesas to latest
Update revision of hal_renesas to get RA4T1 support

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-27 11:30:12 +01:00
Johann Fischer
0d515e777f drivers: udc_dwc2: avoid register read on disabled controller
The VBUS bounces when the USB connector is plugged in. This can lead to
events VBUS removed and Suspended occurring in that order. With
hibernation support enabled, hibernation request, as result of the
suspend interrupt, will be delegated to the driver thread. Once the
driver thread is scheduled to process hibernation request, the
controller may be already disabled and controller/phy clocks be off. On
nRF54LM20 this leads to CPU crash and a hang.

To avoid this happening, cancel the possible hibernation request after
interrupts are disabled. Although the thread could be still waked up
because of USBSUSP interrupt raised and event posted, this is considered
to be harmless, as there would be a second check in the thread whether
the event is still valid or is cleared in between.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-11-27 11:29:43 +01:00
Qiang Zhao
413414a550 tests: arm_irq_advanced_features: Use first-level IRQ for direct ISR test
CONFIG_NUM_IRQS - 1 may be a second-level interrupt number on platforms
with multi-level interrupt support. Second-level interrupts cannot be
used for direct ISR testing.

Use CONFIG_2ND_LVL_ISR_TBL_OFFSET - 1 when available to ensure we test
with a first-level interrupt that supports direct ISR functionality.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-11-27 11:29:34 +01:00
Camille BAUD
a92b122c4a boards: bflb: Add SPI tests support to some boards
Adds SPI tests running

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-27 11:27:45 +01:00
Camille BAUD
2c8912e223 drivers: spi: Introduce Basic BFLB SPI driver
Introduce spi driver with basic features

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-27 11:27:45 +01:00
Camille BAUD
ba2a602ff9 dts: bflb: Add spi nodes
Adds Node for SPI driver to bl61x and bl70x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-27 11:27:45 +01:00
Camille BAUD
b46ce633dd drivers: clock_control: bflb: Add SPI elements
Add clock elements to enable using SPI

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-27 11:27:45 +01:00
Camille BAUD
b257655da3 west.yml: Update hal_bouffalolab to latest
Updates hal version to have spi defines fixes.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-27 11:27:45 +01:00
Vinayak Kariappa Chettimada
61a8648c2c Bluetooth: Controller: Replace Kconfig select with depends
Replace use of `select` with `depends on` in the LL_SW_SPLIT
Kconfig options.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-11-26 12:17:47 -05:00
Qingsong Gou
6e2b729cad samples: subsys: fs: fs_sample: add board sf32lb52_devkit_lcd support
Add board sf32lb52_devkit_lcd support

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-26 12:17:32 -05:00
Qingsong Gou
9874f7c451 boards: sifli: sf32lb52_devkit_lcd: enable spi1
Enable spi1 on sf32lb52_devkit_lcd board

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-26 12:17:32 -05:00
Qingsong Gou
d3037c6361 drivers: spi: add spi driver for sf32lb platform
Add spi driver for sifli sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-26 12:17:32 -05:00
Qingsong Gou
615c35549e dts: arm: sifli: sf32lb: add spi definition
Add spi for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-26 12:17:32 -05:00
Qingsong Gou
26c0acb7c4 dts: bingdings: spi: sf32lb: add spi bingdings
Add spi controller bingdings

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-26 12:17:32 -05:00
Aleksander Wasaznik
04b8dbae4b Bluetooth: Host: Disable bt_hci_cmd_send_sync workaround
The workaround in bt_cmd_send_sync should no longer by needed when
tx_processor is not on the system work queue.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2025-11-26 12:16:43 -05:00
Aleksander Wasaznik
f101976e31 Bluetooth: Host: Run tx processor on its own thread
When thread that TX processor is used to send commands and data to
Controller is also used for sync commands sending and command buffer
allocation, a deadlock happens.

This thread is used to avoid such deadlocks by moving TX processor to
its own dedicated thread exclusively used by tx processor only.

Co-authored-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2025-11-26 12:16:43 -05:00
Aleksander Wasaznik
0ee5d70f38 Bluetooth: Samples: Reduce RAM requirement of peripheral_identity
Reduce BT_MAX_CONN from 62 to 61 to make it build on integration
platform qemu_cortex_m3/ti_lm3s6965 when we add bt_taskq in subsequent
commit.

The number 62 seems arbitrary here, so reducing it by one should not
have any practical impact.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2025-11-26 12:16:43 -05:00
Aleksander Wasaznik
6889042d96 Bluetooth: Host: Don't call user callback from TX thread
ATT is invoking user callbacks in its net_buf destroy function. It is
common practice that these callbacks can block on bt_hci_cmd_alloc().
This is a deadlock when the net_buf_unref() happens inside the HCI
driver, invoked from tx_processor.

Blocking callbacks like this appear in our own samples. See further down
about how this problem was detected.

tx_processor not protect against blocking callbacks so it is de-facto
forbidden. The Host should not equip net_bufs with dangerous destroy
callbacks.

This commit makes ATT defer its net_buf destruction and user callback
invocation to the system workqueue, so that net_buf_unref is safe to
call from non-blocking threads. In the case of the deadlock, the
net_buf_unref() was below the tx_processor in the call stack, which (at
the time of this commit) is on the system work queue, so defering it to
the system work queue is preserving the existing behavior.

Future improvement may be to allow the user to provide their own
workqueue for ATT callbacks.

This deadlock was detected because the following test was failing while
moving tx_processor to the bt_taskq:

    tests/bsim/bluetooth/ll/throughput/tests_scripts/gatt_write.sh

The above test has an ATT callback `write_cmd_cb` invokes
`bt_conn_le_param_update` can block waiting for `tx_processor`.

The reason it was not failing while tx_processor was on the system work
queue is that the GATT API has a special non-blocking behavior when
called from the system work queue.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2025-11-26 12:16:43 -05:00
Pieter De Gendt
8439d0d917 doc: releases: 4.4: Add NVMEM entry for flash device support
Add an entry with Kconfig options for NVMEM on flash devices.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-26 12:16:08 -05:00
Pieter De Gendt
f704a832ff tests: nvmem: Add flash testcase
Add an overlay/config to test the NVMEM subsystem with a flash driver.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-26 12:16:08 -05:00
Pieter De Gendt
a85f73386d nvmem: Add flash support
Allow flash devices to be accessed using the NVMEM API. Note that it simply
uses the read/write API functions. Erasing should be handled by the
application.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-26 12:16:08 -05:00
Mathieu Choplain
e784a030f2 scripts: runners: stlink_gdbserver: add support for --no-load
Add support for the --load/--no-load argument from the base runner class.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-26 12:15:53 -05:00
Mathieu Choplain
2240f10f16 scripts: runners: generalize --no-load argument
Move the existing "--no-load" argument from the OpenOCD and Intel Cyclone V
runners into an argument in the runners base class such that it can be used
by all runners. Also update the existing runners to work with the common
option instead of their own.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-26 12:15:53 -05:00
Zhaoxiang Jin
bcb1813f5c drivers: systick: Add prompt for CORTEX_M_SYSTICK_RESET_BY_LPM
This commit adds a prompt to the Kconfig file to make
CORTEX_M_SYSTICK_RESET_BY_LPM option more visible to users
configuring the driver.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-26 12:15:26 -05:00
Zhaoxiang Jin
3e5320192b drivers: cortex_m_systick: add stub callback for idle timer alarm
When low-power mode timer is enabled, a counter alarm is set on the
idle timer before entering low-power mode. The counter API requires
a non-NULL callback function for the alarm. This commit adds a stub
callback function to satisfy the API requirement.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-26 12:15:26 -05:00
Ilan Costa
26316742f0 boards: heltec: add support for heltec_wireless_tracker
Add support for heltec_wireless_tracker

Signed-off-by: Ilan Costa <ilan.costa@gmail.com>
2025-11-26 12:14:06 -05:00
John Batch
2ec1a8d734 tests: spi: Removing references to infineon,cat1-spi-pdl
Removing references to infineon,cat1-spi-pdl.  Differentiation between
PDL and HAL drivers have been changed to use Kconfig options.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-26 12:13:48 -05:00
John Batch
5c2332c7d4 drivers: spi: Removing devicetree references to cat1-spi-pdl
Removing references to infineon,cat1-spi-pdl from the device tree files.
Updates the driver bindings and driver file to look at the
infineon,cat1-spi binding and uses a Kconfig option to select Legacy HAL
implementation instead.

See https://github.com/zephyrproject-rtos/zephyr/pull/98035 for context.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-26 12:13:48 -05:00
Tomasz Moń
152844a7e0 usb: device_next: msc: Do not leak SCSI buffer on dequeue
Multiple submitted requests are getting merged to single cancelled
net_buf on endpoint dequeue. While MSC class was correctly decrementing
the usage counters, it was not freeing SCSI buffer pointed to by frags.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-11-26 12:11:59 -05:00
Erwan Gouriou
6b6018e969 drivers: interrupt_controller: stm32: Fix discontinuous index in n6/mp1x
Similarly to what was present on L0, GPIO port indexes are not continuous
in EXTI configuration register and a dedicated treatment is required.
Deal with it case by case.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-11-26 12:11:48 -05:00
Qingsong Gou
0278e67afa drivers: rtc: sf32lb: fix nsec error
Fix nsec set and get

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-26 12:11:39 -05:00
Anas Nashif
d1170f668a doc: various fixes for include path
Many include paths missing the zephyr namespace.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-26 12:11:27 -05:00
Anas Nashif
5f91f5fb38 doc: fix reference to kernel.h
Fix reference to kernel.h and add zephyr namespace where it was missing.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-26 12:11:27 -05:00
Aksel Skauge Mellbye
ad867a1264 drivers: entropy: gecko_trng: Fix blocking behavior
entropy_get_entropy() is allowed to block while waiting for
entropy. Don't exit with an error if entropy is exhausted,
wait instead. Move clock enable out of the inner loop to avoid
unnecessarily calling it multiple times.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-11-26 11:09:19 +00:00
Sebastian Bøe
e0ad51e375 soc: nordic: gen_uicr: Enable IS_GEN_UICR_IMAGE by default
Enable IS_GEN_UICR_IMAGE by default for the gen_uicr image.

A recent change accidentally made this default n, and broke a bunch of
users.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-11-26 11:08:09 +00:00
Andrew Kontra
c47de21db3 net: Using const char * in net_hostname_set()
When calling net_hostname_set() from C++, you will hit compile
errors if you attempt to use a const char *. Since the internals
of net_hostname_set() just uses memcpy(), we should pass in the
new hostname as a const char * to better support C++.

Tested using samples/cpp/hello_world, with an added call to
net_hostname_set().

Signed-off-by: Andrew Kontra <andrew@legatoxp.com>
2025-11-26 11:06:34 +00:00
Andrzej Głąbek
15dabaa595 drivers: uart_nrfx_uarte: Fix runtime device PM for interrupt driven API
Add missing getting/putting of the device when the RX interrupt is
enabled/disabled. Also fix enabling and disabling of the TX interrupt
so that the device is got/put only if the interrupt wasn't already
enabled/disabled and device PM reference counting is done correctly.

This fixes `console_getchar()` that would hang when used with
`CONFIG_PM_DEVICE_RUNTIME=y`.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-11-26 11:06:18 +00:00
Matthias Alleman
1feafdbef7 tests: drivers: build_all: ethernet: add testing of ethernet-phy
Add build test for ethernet-phy compatible

Signed-off-by: Matthias Alleman <matthias.alleman@basalte.be>
2025-11-26 11:05:52 +00:00
Matthias Alleman
60fd112806 drivers: ethernet: phy: phy_mii: add gpio reset
Add support for hardware reset to the phy_mii driver

Signed-off-by: Matthias Alleman <matthias.alleman@basalte.be>
2025-11-26 11:05:52 +00:00
Etienne Carriere
6b2e014292 tests: drivers: memc: test full SDRAM on a few stm32 boards
Add an overlay for some STM32 boards that embed an SDRAM connected
through FMC interface to better cover their accessibility. Despite
each SDRAM is a few MByte large test are not too long lasting:
- stm32f429i_disc1 .... 8MByte: <1s
- stm32f469i_disco ... 16MByte: <1.5s
- stm32f746g_disco .... 8MByte: <1s
- stm32f7508_dk ......  8MByte: not tested
- stm32f769i_disco ... 16MByte: ~2s
- stm32h745i_disco .... 8MByte: <0.2s
- stm32h747i_disco ... 32MByte: <0.6s
- stm32h750b_dk ....... 8Mbyte: <0.2s
- stm32h757i_eval .... 32MByte: not tested
- stm32h7b31i_dk ..... 16MByte: not tested

Adding these test ensures non-regression on SDRAM support.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:05:35 +00:00
Etienne Carriere
b88d259b5c tests: drivers: memc: fix minor inconsistencies in offsets
Correct memc driver test application to allocated only the required
size for the tests and print valid information instead of byte
offset that was actually a 32bit cell pointer offset.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:05:35 +00:00
Etienne Carriere
2b858a4c6b boards: st: stm32f7508_dk: Fix sdram available size
According to UM2470 Rev 2 section 4.13 "SDRAM memory" [1], the
available SDRAM size is only 8MB since only the lowest 64-Mbit
are accessible despite the SDRAM capacity is 16MByte (128MBit).

Link: https://www.st.com/resource/en/user_manual/um2470-discovery-kit-for-stm32f7-series-with-stm32f750n8-mcu-stmicroelectronics.pdf [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:05:35 +00:00
Etienne Carriere
6240bdcbe5 boards: st: stm32f746g_disco: Fix sdram available size
According to UM1907 Rev 6 section 5.13 "SDRAM Memory" [1], the
available SDRAM size is only 8MByte since only the lowest 64Mbit are
accessible despite the SDRAM capacity is 16MByte (128MBit).

Link: https://www.st.com/resource/en/user_manual/um1907-discovery-kit-for-stm32f7-series-with-stm32f746ng-mcu-stmicroelectronics.pdf [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:05:35 +00:00
Etienne Carriere
c4df2dbcc4 boards: st: stm32h750b_dk: increase FMC SDRAM clock period
Testing full SDRAM access on stm32h750b_disco showed instabilities
and corrupted accessed. Increasing the FMC SDRAM clock period fixes
the issue.

This change ensures stability of transactions with the SDRAM but
may be sub-optimized regarding performances. An alternate correction
would need further investigations in the FMC interface timings
and clocks configuration.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:05:35 +00:00
Etienne Carriere
68cd3ad30d boards: st: stm32h745i_disco: increase FMC SDRAM clock period
Testing full SDRAM access on stm32h745i_disco showed instabilities
and corrupted accessed. Increasing the FMC SDRAM clock period fixes
the issue.

This change ensures stability of transactions with the SDRAM but
may be sub-optimized regarding performances. An alternate correction
would need further investigations in the FMC interface timings
and clocks configuration.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:05:35 +00:00
Omkar Kulkarni
d8ed0f8e3d tests: Bluetooth: Tester: Audio: Adds BRS
This commit adds API to tester to allow exposing of Broadcast Receive
State.

Signed-off-by: Omkar Kulkarni <omkar.kulkarni@nordicsemi.no>
2025-11-26 11:05:19 +00:00
Omkar Kulkarni
b6e5d03ff4 bluetooth: audio: Update encrypt state value
Fixes a bug where encrypt state value was not updated based on given
parameters.

Signed-off-by: Omkar Kulkarni <omkar.kulkarni@nordicsemi.no>
2025-11-26 11:05:19 +00:00
Benjamin Cabé
9a3a6dacf2 doc: hardware: porting: clarify board porting recommendations
This commit introduces some clarifications to the "General
Recommendations" in the board porting documentation, in particular it
makes it clearer that DT nodes for key peripherals should be configured
AND enabled. It also makes it easier to see the set of recommendations
at a glance by adding a short summary for each item.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Co-authored-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-11-26 11:05:11 +00:00
Chaitanya Tata
e797874fbb manifest: hostap: Pull fix for SAE
Fix build failure in case a different SAE implementation is used (e.g.,
PSA).

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-11-26 11:04:34 +00:00
Lyle Zhu
25d2c50ca3 Bluetooth: Classic: HFP_HF: Correct definition of supported features
In current implementation, there are two issues found,

Issue 1, the feature defined in the SDP HFP HF record are used in
combination as HFP HF supported features reported via `+BRSF`.

Issue 2, the macro `BT_HFP_HF_FEATURE_CODEC_NEG_ENABLE` is not
aligned with macro name of other features. The other macros are named
with prefix `BT_HFP_HF_FEATURE_`.

Use `BT_HFP_HF_FEATURE_VOLUME_ENABLE` to set the volume feature
instead of `BT_HFP_HF_SDP_FEATURE_VOLUME_ENABLE`.

Rename `BT_HFP_HF_CODEC_NEG_ENABLE` with new name
`BT_HFP_HF_FEATURE_CODEC_NEG_ENABLE`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-26 11:04:23 +00:00
Joel Schaller
8f6b216ec0 shell: backend: telnet: No Error ENETDOWN
Set Log Level to Info when the Telnet socket reports ENETDOWN,
instead of logging an error each time the network is down.

Signed-off-by: Joel Schaller <joel.schaller16@gmail.com>
2025-11-26 11:04:13 +00:00
Etienne Carriere
ca9d5e8190 drivers: ipm: stm32_hsem: clean indentation in instance init macros
Clean indentation in macros used to define instances in STM32
HSEM hardware semaphore drivers.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:03:50 +00:00
Etienne Carriere
a2a9541cea drivers: serial: stm32: simplify ISR handlers definition
Simplify interrupt handler helper macros by removing
STM32_UART_IRQ_HANDLER_DECL(), using STM32_UART_IRQ_HANDLER() only
renamed STM32_UART_IRQ_HANDLER_DEFINE() and aggregating where the
macro and STM32_UART_IRQ_HANDLER_FUNC() macro are defined.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:03:50 +00:00
Etienne Carriere
8001b3c343 drivers: serial: stm32: clean indentation in instance init macros
Clean indentation in local macros used to define UART instances.
Remove extra line escape ending CONFIG_UART_ASYNC_API() macro value.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:03:50 +00:00
Etienne Carriere
2f4962fa0a drivers: pwm: stm32: clean indentation in instance init macros
Clean indentation in IRQ_CONNECT_AND_ENABLE_BY_NAME(), IRQ_CONFIG_FUNC()
and IRQ_CONNECT_AND_ENABLE_DEFAULT() macros of STM32 PWM driver.
Remove a useless trailing semi column character in the interrupt function
defined with IRQ_CONFIG_FUNC() macro.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:03:50 +00:00
Etienne Carriere
b69361f88b drivers: i3c: stm32: clean indentation in instance init macros
Clean indentation in STM32_I3C_DMA_CHANNEL_INIT() and
STM32_I3C_DMA_CHANNEL() macros of STM32 I3C driver.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:03:50 +00:00
Etienne Carriere
f98f568275 drivers: i2c: stm32: clean indentation in instance init macros
Clean indentation in I2C_DMA_DATA_INIT() and I2C_STM32_INIT() macros.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:03:50 +00:00
Etienne Carriere
9dfd35115b drivers: sdmmc: stm32: clean indentation in instance init macros
Clean indentation in SDMMC_DMA_CHANNEL() macro and fix an extra line
escape at last line of SDMMC_DMA_CHANNEL_INIT() macro value.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:03:50 +00:00
Etienne Carriere
2ea6435bb7 drivers: clock_control: stm32: clean indentation in instance init macros
Clean indentation in STM32_MCO_INIT() and STM32_MUX_CLK_INIT() macros.
Add after coma pclken field value in stm32_clk_mux_cfg_##id to ease
possible later changes.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-26 11:03:50 +00:00
Pieter De Gendt
dbdd5e91e7 doc: releases: migration-guide-4.4: Keep device drivers titles sorted
Add zephyr-keep-sorted tags to force sorted titles in the "Device Drivers
and Devicetree" section.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-26 07:10:50 +00:00
Pieter De Gendt
d1bcedea9f doc: releases: migration-guide-4.4: Fix QSPI title
Add missing = for the QSPI title.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-26 07:10:50 +00:00
Jiafei Pan
0ec9360cf4 scripts: requirements: update pyocd version
Update pyocd version to be greater than or equal to 0.36.0 to fix
the potential hang issue when execute "west packages pip --install"

This PR is to fix the issue #99115.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-11-26 07:10:39 +00:00
Mihira Madhava Bollapragada
adf1c8c693 drivers: intc: change the VIM kconfig to TI_VIM
VIM is a vector interrupt manager that TI devices have and is used a
interrupt controller. the driver's Kconfig selection is created as "VIM"
and is resulting in the confusion with a Text Editor name.

Make the VIM Kconfig option to indicate the vendor TI name in it.

Signed-off-by: Mihira Madhava Bollapragada <madhava@ti.com>
2025-11-26 07:10:13 +00:00
Yongxu Wang
38751613f6 dts: arm: nxp: disable gpio node for imx95 m7
Disable gpio node in imx95 m7 which not owner gpio privilege
in default system manager config, the status should be set as okay
in specific case test instead of nxp_imx95_m7.dtsi

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-11-26 07:09:57 +00:00
Fabin V Martin
5818719c96 boards: sam_e54_xpro: add entropy support
Add zephyr,entropy to chosen node and
entropy in supported list

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-11-26 07:09:41 +00:00
Fabin V Martin
876eb94234 drivers: entropy: microchip: add entropy g1 driver
Add entropy g1 driver for Microchip TRNG

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-11-26 07:09:41 +00:00
Fabin V Martin
8f23bd31e7 dts: arm: microchip: add entropy node and bindings
Add entropy node and binding parameters for microchip
TRNG entropy g1 driver

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-11-26 07:09:41 +00:00
David Leach
9045474411 maintainer: hal_openisa: Add zejiang0jason as collaborator
Adding Zejiang0jason as collaborator to the openisa HAL. He was the
developer of the original SDK.

Signed-off-by: David Leach <david.leach@nxp.com>
2025-11-25 20:25:42 -05:00
Dmitrii Sharshakov
4cc737f9a5 settings: its: do not rely on TFM settings override
Use config from TF-M instead, not necessitating an override.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-11-25 20:23:56 -05:00
Dmitrii Sharshakov
36ee86d3dc tests: settings: its: enable functional tests for TF-M ITS
Run on mps2/an521/cpu0/ns.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-11-25 20:23:56 -05:00
Dmitrii Sharshakov
db904d1511 settings: its: move structure to a header
This private header can be used by tests for information on UID ranges
that should be cleaned for testing.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-11-25 20:23:56 -05:00
Dmitrii Sharshakov
2a46964794 samples: settings: run integration on QEMU with TF-M
Make sure ITS backend is tested in the CI.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-11-25 20:23:56 -05:00
Dmitrii Sharshakov
f73eae4757 tests: settings: its: run on mps2/an521/cpu0/ns
Run on QEMU to make sure this is tested in the CI.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-11-25 20:23:56 -05:00
Dmitrii Sharshakov
d5905de2db settings: its: enable TF-M PSA headers
Avoid missing headers on some platforms like mps2/an521/cpu0/ns.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-11-25 20:23:56 -05:00
Sreeram Tatapudi
0efab13217 tests: subsys: logging: Add overlay for PSE84
Add required overlay files to enable log_backend_fs test
for kit_pse84_eval board

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-11-25 20:23:14 -05:00
Sreeram Tatapudi
59801cf6a7 tests: drivers: flash: kit_pse84_eval: Add support for flash testing
Enabling test application for PSE84

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-11-25 20:23:14 -05:00
Sreeram Tatapudi
a039b94f48 drivers: flash: Infineon: Add QSPI Flash driver for PSE84
Add QSPI Flash driver for PSE84 (based on the serial-memory asset)

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-11-25 20:23:14 -05:00
Daniel Leung
a6fe6a8f7d xtensa: fix unused func warning on l2_page_tables_counter_inc
xt-clang complains about l2_page_tables_counter_inc() being
unused but not GCC. So fix that by using it somewhere else.

Fixes #99753

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-25 20:22:54 -05:00
Bill Waters
e787380ec8 soc: infineon: edge: pse84: slot size
Increase the slot size for secure applications to
support testing applications that require more than
the default size of 0x20000

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-11-25 20:22:45 -05:00
Pisit Sawangvonganan
7aa052e7f1 drivers: can: sja1000: consolidate SFF/EFF payload loops
Utilize `data_reg` to select the appropriate SFF/EFF data register
base and use a single read/write loop for frame data access.
This replaces the separate SFF/EFF loops, streamlining the code
and reducing its footprint.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-11-25 20:22:33 -05:00
Benjamin Cabé
9d23d32814 drivers: input: gt911: prefix all macros
macros with very generic name like DEVICE_ID are really not ideal so
prefix them all with GT911_.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-25 20:22:20 -05:00
David Leach
4a2fca31c0 maintainers: hal_nxp: update maintainers and collaborators.
Expanding responsibilities for hal_nxp:

- Add ZhaoxiangJin to the maintainers list to allow merge rights on HAL
- Add zejiang0jason and Holt-Sun to the collaborators list for review

Signed-off-by: David Leach <david.leach@nxp.com>
2025-11-25 20:21:42 -05:00
Chris Wilson
5220936bbc soc: st: stm32: add '-align' flag for signing tool v2.21.0+
Starting in v2.21.0, the STM32 signing tool ('STM32_SigningTool_CLI')
stopped automatically adding padding bytes at the beginning of the
payload to align it to the 0x400 offset. To restore this behavior, the
'-align' flag must be passed to the signing tool post-build command.

This commit checks for signing tool version v2.21.0 or higher and
appends the '-align' flag to the post-build signing command. It also
changes local CMake variable names to lower case and corrects some
indentation issues.

Fixes zephyrproject-rtos/zephyr#99456

Signed-off-by: Chris Wilson <chris@binho.io>
2025-11-25 21:13:29 +00:00
Peter Mitsis
599e3bba04 tests: Stack safety for thread analyzer
Adds stack safety to thread analyzer test case.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-11-25 19:25:44 +00:00
Peter Mitsis
70347cec76 debug: Integrate stack safety into thread analzyer
This updates the thread analyzer to optionally leverage the kernel's
thread runtime stack safety infrastructure to act upon threads whose
unused stack space has fallen below their configured thresholds.

By default, the thread analyzer merely reports what it has found.
However, a developer can override this behavior with a custom handler
using thread_analyzer_stack_safety_handler_set().

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-11-25 19:25:44 +00:00
Peter Mitsis
c08905ecc9 kernel: Add thread runtime stack safety
Adds support for thread runtime stack safety. This kernel feature
allows a developer to run enhanced stack usage checks on threads
such that if the amount of unused stack space drops below a thread's
configured threshold, it will invoke a custom handler/callback.

This can be used by monitoring software to log warnings, suspend
or abort threads, or even reboot the system.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-11-25 19:25:44 +00:00
Benjamin Cabé
962a4cadec doc: net: ensure PTP docs appears in only one table of contents
PTP docs are already included in the TSN section, so removing from
protocols.rst to avoid duplication and Sphinx warnings.

Fixes zephyrproject-rtos/zephyr#95438.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-25 19:25:12 +00:00
Robert Lubos
0f9131e351 net: tcp: Fix out-of-bound warnings in debugging code
A few debug logs in TCP code relied on a fact that IP address offset is
the same in struct sockaddr_in and sockaddr_in6. However, the logs
casted the address to struct sockaddr_in, which is smaller than
sockaddr_in6, causing theoretical out-of-bounds access warnings in IPv6
case. Fix this by casting to struct sockaddr_in6 instead.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-25 19:25:05 +00:00
Marek Matej
b4ee630506 soc: espressif: esp32c6: set early init stack
Early init stack pointer can interfere with bss segments if grown
enought, therefore stack pointer is set to safe area before starting
init.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-11-25 19:24:57 +00:00
Humphrey Chiramba
960586509b drivers: wifi: esp32: Enable WiFi connection by specifying BSSID
Added a method for users to connect to a given access point
by specifying its MAC address.

Signed-off-by: Humphrey Chiramba <humphrey@plentify.co.za>
2025-11-25 19:24:26 +00:00
Mathieu Choplain
c1d16c0555 drivers: usb: udc: stm32: instance-aware clock configuration handling
Instead of using globals, save the clock configuration from DTS in each
instance's configuration block, from which it is consumed by the driver's
clock configuration functions.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-25 17:39:37 +00:00
Mathieu Choplain
172aa3658a drivers: usb: udc: stm32: use direct function calls for clock on/off
To enable/disable clocks, the UDC driver used function pointers stored in
the instance private data(!), which *could* be NULL... but in practice,
they were always initialized. Furthermore, the clock configuration is
done through Clock Control API calls so the code can be shared by all
instances.

Replace indirect calls through function pointers with direct calls to the
"priv_clock_(dis|en)able" function, which are renamed to "udc_stm32_..."
for consistency with the rest of the driver. The now-unused function
pointers are also removed from the instance data structure.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-25 17:39:37 +00:00
Mathieu Choplain
e5fdd46a39 drivers: usb: udc: stm32: expand USB_RAM_SIZE in place where it's consumed
Instead of using global macro "USB_RAM_SIZE", replace it by its content
(i.e., DT_INST_PROP()) in the only place where it was used.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-25 17:39:37 +00:00
Martin Hoff
87ab3e337a soc: silabs: siwx91x: introduce zero latency irq
The HAL used by the SiWx91x SoC implements a mechanism to protect
atomic sections. Since this HAL also supports a zero-latency
interrupt (ZLI) mechanism, we need to ensure the same number of
bits are used for ZLI interrupts.
The interrupt priority level (2) depends on a hardcoded value in the
Simplicity SDK (CORE_ATOMIC_BASE_PRIORITY_LEVEL).
Without this fix, arch_irq_lock (which sets the BASEPRI register to
0x4 when zero-latency interrupts are not enabled) is overridden by
CORE_EnterAtomic in the HAL, which sets BASEPRI to 0xC since the HAL
does not use the BASEPRI_MAX function. IRQ might then fires since it's
register with a lowest priority in Zephyr.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-11-25 17:39:13 +00:00
Peter Mitsis
ce6c26a927 kernel: Simplify move_current_to_end_of_prio_q()
It is now more obvious that the move_current_to_end_or_prio_q() logic
is supposed to match that of k_yield() (without the schedule point).

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-11-25 17:37:52 +00:00
Peter Mitsis
77ad7111e1 kernel: Rename move_thread_to_end_of_prio_q()
All instances of the internal routine move_thread_to_end_of_prio_q()
use the current thread. Renaming it to move_current_to_end_of_prio_q()
to reflect that.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-11-25 17:37:52 +00:00
Peter Mitsis
ffc6c8839b kernel: Rename z_move_thread_to_end_of_prio_q()
The routine z_move_thread_to_end_of_prio_q() has been renamed to
z_yield_testing_only() as it was only both only used for test code
and always operated on the current thread.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-11-25 17:37:52 +00:00
Beleswar Prasad Padhi
7e6215e140 scripts: west_commands: Log a hint for rate-limit failure during install
`west sdk install` may fail with a GitHub API rate-limit (HTTP 403)
error. This typically occurs when the command is run multiple times
after previous failures, which is common for new users setting up
the project. Currently, the thrown exception only links to a generic
GitHub rate-limit documentation page, which may be confusing to users.

Users can bypass the rate limit by authenticating with GitHub using a
Personal Access Token. The install script supports this via the
`--personal-access-token` argument. Therefore, detect rate-limit related
failures and print a helpful message suggesting the use of this
argument or netrc based authentication.

Signed-off-by: Beleswar Prasad Padhi <b-padhi@ti.com>
2025-11-25 17:37:19 +00:00
Qingsong Gou
25318f9623 tests: drivers: rtc: Add tests support on sf32lb52_devkit_lcd board
Add tests support on sf32lb52_devkit_lcd board

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-25 17:36:45 +00:00
Qingsong Gou
23e8e3bb3f drivers: rtc: sf32lb: add rtc alarm support
Add rtc alarm support for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-25 17:36:45 +00:00
Qingsong Gou
f730c7cdf9 dts: bindings: rtc: sf32lb: fix alarms-count missing
Add alarms-count to rtc node

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-25 17:36:45 +00:00
Daniel Leung
29c478361a tests: kernel/smp: rework signals in stress test
The k_poll signal and event code is reworked a bit such that
signal is raised and event is processed only when appropriate.
We want to avoid changing the internal of event and signal
objects at the same time we try to raise the signal (which
changes the internal states too).

In addition, print out some information on how many signals
raised and received to indicate we are actually switching
all related threads.

Fixes #98136

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-25 17:36:16 +00:00
Bjarki Arge Andreasen
034d3d3325 nordic: nrf54h: bicr: allow for custom bicr.json in application
Allow placing a custom bicr.json file in the application source
folder which will be used instead of the default one in the
boards folder. Also allows setting a custom name to use for the
file so multiple files can be placed in either boards or app dirs
and selected with Kconfig (prj.conf or <board>.conf)

The following will take precedence over the bicr.json file in the
board folder:

- <app>/bicr.json
- <app>/bicr_foo.json + CONFIG_SOC_NRF54H20_BICR_NAME="bicr_foo.json"

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-11-25 17:35:23 +00:00
Pieter De Gendt
5421bfc9c7 doc: releases: 4.4: Add entries for Ethernet MAC address configuration
Add an entry with the symbols introduced for Ethernet MAC address
configuration.
Add removed symbols to the migration guide.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-25 16:21:30 +00:00
Pieter De Gendt
cf0d1b877e drivers: ethernet: sam_gmac: Use ethernet MAC configuration
Rework the Atmel SAM GMAC driver to read a MAC address from the provided
NVMEM cell instead of using I2C commands directly.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-25 16:21:30 +00:00
Pieter De Gendt
9445d5dc32 tests: drivers: ethernet: Add MAC address configuration tests
Add a test suite for validating MAC address configuration variations.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-25 16:21:30 +00:00
Pieter De Gendt
604efc4e0f drivers: ethernet: eth_test: Add MAC configuration support
Add structs to the vnd,ethernet test driver for MAC address configuration
support.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-25 16:21:30 +00:00
Pieter De Gendt
509b2c4688 dts: bindings: ethernet: Add nvmem-consumer to ethernet-contoller
Turn ethernet controller devicetree nodes into NVMEM consumers. Allow
passing mac-address cells.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-25 16:21:30 +00:00
Pieter De Gendt
7bc538a8ee drivers: ethernet: Add Helper function to load MAC address
Given an ethernet MAC configuration struct, load a MAC address into a
provided array.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-25 16:21:30 +00:00
Pieter De Gendt
d513f8e3b5 include: zephyr: net: ethernet.h: Add MAC address configuration
Add MAC address configuration struct and macros.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-25 16:21:30 +00:00
Saravanan Sekar
d837c9531e net: lib: ocpp: cleanup outdated code from initial design
Cleanup outdated code from initial design.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-11-25 16:07:44 +00:00
Peter van der Perk
5f95facee0 include: zephyr: arch: add GCC/Clang check for CFI support
Add a preprocessor check to ensure that DWARF Control Flow Integrity (CFI)
headers are only included when building with GCC or Clang toolchains, as
CFI support is currently limited to these compilers. This prevents
unsupported compilers from including architecture-specific CFI headers.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-11-25 16:07:29 +00:00
Jukka Rissanen
5e4aa5e75e tests: net: all: Compile test network packet filter code
Add pkt_filter library to be compile tested by network all tests.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-25 16:06:56 +00:00
Jukka Rissanen
2d7d56964c net: shell: filter: Convert to use Zephyr APIs
The filter shell used POSIX symbols so replaced them by
Zephyr APIs.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-25 16:06:56 +00:00
Jukka Rissanen
f53e6041b7 tests: net: all: Compile test tftp library code
Add tftp library to be compile tested by network all tests.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-25 16:06:56 +00:00
Jukka Rissanen
7a84027de2 net: tftp: Replace POSIX symbols by Zephyr network API symbols
Replace "struct sockaddr" by "struct net_sockaddr" as that is
the remaining of the POSIX symbols found in the tftp library.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-25 16:06:56 +00:00
Jukka Rissanen
016b2f2237 tests: net: all: Compile test PTP library code
Add PTP library to be compile tested by network all tests.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-25 16:06:56 +00:00
Jukka Rissanen
e458197499 net: ptp: Convert to use Zephyr network APIs
Couple of POSIX API leftovers replaced by Zephyr network APIs.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-25 16:06:56 +00:00
Jukka Rissanen
afedd24451 drivers: ethernet: net: Replace POSIX symbols by Zephyr ones
The native_sim Ethernet driver was still using POSIX symbols,
so convert these to use Zephyr ones.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-25 16:06:56 +00:00
Jukka Rissanen
a01256a233 samples: net: Replace POSIX symbols by Zephyr ones
These samples were still using POSIX symbols without enabling
POSIX APIs, so convert these to use Zephyr ones.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-25 16:06:56 +00:00
Jukka Rissanen
34a1e5411e samples: net: Convert to use POSIX APIs
Convert coap_download and coap_upload to use POSIX APIs just to be
consistent with other samples in sockets directory.

Replace non-POSIX network symbols by POSIX ones in the network
samples. We do not want to have network samples that mix both
Zephyr network API with the relevant POSIX API like
zsock_socket() and socket() etc.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-25 16:06:56 +00:00
Chris Friedt
94e07d235b tests: posix: headers: remove testsuite
Remove the tests/posix/headers testsuite.

A large part of this testsuite was originally feeling-out what types,
functions, and other declarations were expected in POSIX headers when
CONFIG_POSIX_API was not selected.

Really, libraries and applications should generally not expect to be able
to use POSIX headers in particularly meaningful ways when POSIX APIs are
not enabled.

The portions of the testsuite that check for the existence of declarations
and symbols when POSIX APIs are configured also effectively duplicates
the implicit tests of simply compiling code and testsuites.

Also, given that CONFIG_POSIX_API is effectively deprecated, it does not
make a lot of sense to maintain the testsuite.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-25 16:06:46 +00:00
Mathieu Choplain
3db76f0373 samples: st: power_mgmt: wkup_pins: correct overlay for Nucleo-F103RB
The overlay indicated the pin was active-low with a pull-up resistor, but
the hardware forces a pull-DOWN which makes the pin active-HIGH instead.
Also add a comment indicating that the pin is not wired to a button and
a short (to Vdd!) must be applied via a jumper wire.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-25 16:06:35 +00:00
Jamie McCrae
ae2b4a44dc mgmt: mcumgr: grp: img_mgmt: Fix detecting where a slot resides
Fixes an issue introduced in commit
32615695ad which wrongly did not
check what the residing device was on before determining if a
slot was part of a partition area

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-25 16:06:23 +00:00
Sebastian Bøe
f324a1540f soc: nordic: ironside: Add counter service
Add counter service.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-11-25 16:06:00 +00:00
Haoran Jiang
d70234fa2a boards: sifli: sf32lb52_devkit_lcd: Add sys-clk-src
Add sys-clk-src.

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-11-25 16:05:46 +00:00
Haoran Jiang
8321842d72 drivers: clock_control: sf32lb_rcc: Add RCC configuration driver
Add RCC configuration driver.

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-11-25 16:05:46 +00:00
Haoran Jiang
5eb9d202d6 dts: arm: sifli: sf32lb52x: Improve the RCC definition for sf32lb
Add the RCC configuration
binding on the sf32lb52 platform.
- sys-clk-src
- peri-clk-src
- mpi1/2-clk-src
- A
- usb-div

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-11-25 16:05:46 +00:00
Gang He
562afb6279 driver: bluetooth: hci: sifli: Add SF32LB Bluetooth HCI driver
Add Bluetooth driver for SF32LB chipsets.

Signed-off-by: Gang He <ganghe@sifli.com>
2025-11-25 16:05:02 +00:00
Gang He
0b28125aae module: hal_sifli: Add IPC zephyr porting header file
Add SF32LB IPC zephyr porting header file.

Signed-off-by: Gang He <ganghe@sifli.com>
2025-11-25 16:05:02 +00:00
Gang He
8dbfa3daf3 module: hal_sifli: Overwrite SiFli HAL delay function with k_sleep
SiFli HAL is using HAL_Delay_us to delay for certain microseconds.
This is a weak function. I overwrites this function with Zephyr k_sleep.

Signed-off-by: Gang He <ganghe@sifli.com>
2025-11-25 16:05:02 +00:00
Gang He
d3e2e3d077 module: hal_sifli: Add CMakefile script for bluetooth HCI driver
Add CMakefile script needed for Bluetooth HCI driver.

Signed-off-by: Gang He <ganghe@sifli.com>
2025-11-25 16:05:02 +00:00
Gang He
2565b99fcf board: sifli: sf32lb52_devkit_lcd: Add mailbox in board device tree
Add mailbox in board devicetree, used in Bluetooth HCI driver.

Signed-off-by: Gang He <ganghe@sifli.com>
2025-11-25 16:05:02 +00:00
Gang He
6305063de2 driver: bluetooth: hci: sifli: Add configuration for SF32LB HCI driver
Add configuration for SiFli SF32LB chipset Bluetooth HCI driver.

Signed-off-by: Gang He <ganghe@sifli.com>
2025-11-25 16:05:02 +00:00
Gang He
6437340bf3 soc: sifli: sf32: Add configuration for Bluetooth HCI driver support
Add configuration support for Bluetooth HCI driver.

Signed-off-by: Gang He <ganghe@sifli.com>
2025-11-25 16:05:02 +00:00
Gang He
289d999c38 module: sifli: kconfig: Add Bluetooth HCI driver configuration
Add SiFli Bluetooth HCI driver configurations.

Signed-off-by: Gang He <ganghe@sifli.com>
2025-11-25 16:05:02 +00:00
Gang He
4451cfc89d dts: arm: sifli: add definition for memory non-cachable
Memory used by Bluetooth LCPU should be no-cachable.

Signed-off-by: Gang He <ganghe@sifli.com>
2025-11-25 16:05:02 +00:00
Gang He
062e223c49 dts: arm: sifli: sf32lb52x: define mailbox
Mbox is hardware interface between Application HCPU and Bluetooth LCPU.

Signed-off-by: Gang He <ganghe@sifli.com>
2025-11-25 16:05:02 +00:00
Gang He
44b4ae6d76 west.yml: hal_sifli: Update to latest revision
- Add Bluetooth HCI driver support for SF32LB chipsets

Signed-off-by: Gang He <ganghe@sifli.com>
2025-11-25 16:05:02 +00:00
Jisheng Zhang
55856d130a boards: st: stm32h750b-dk: Fix sdram available size
According to UM2488 section 6.12[1], the available SDRAM size is only 8MB
by hardware design, though 128Bit SDRAM is connected.

Link: https://www.st.com/resource/en/user_manual/um2488-discovery-kits-with-stm32h745xi-and-stm32h750xb-mcus-stmicroelectronics.pdf [1]
Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
2025-11-25 13:07:44 +01:00
Jisheng Zhang
c6cb9b6543 boards: st: stm32h745i_disco: m7: Fix sdram available size
According to UM2488 section 6.12[1], the available SDRAM size is only 8MB
by hardware design, though 128Bit SDRAM is connected.

Link: https://www.st.com/resource/en/user_manual/um2488-discovery-kits-with-stm32h745xi-and-stm32h750xb-mcus-stmicroelectronics.pdf [1]
Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
2025-11-25 13:07:44 +01:00
Robert Lubos
741ce37f28 net: config: sntp: Asynchronous resynchronization
Make SNTP resynchronization asynchronous, so that it doesn't block the
system work queue while waiting for response.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-25 13:07:13 +01:00
Robert Lubos
550e0b866c net: config: sntp: Add helper symbols for resync timeouts
For more concise code.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-25 13:07:13 +01:00
Robert Lubos
a1e4047e38 net: config: sntp: Add helper function to set clocks
Move the code responsible for setting clocks into a helper function,
as it'll be reused with asynchronous resynchronization.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-25 13:07:13 +01:00
Thorsten Klein
d7829271bb doc: develop: west: add documentation for west blobs caches
Documentation for west blobs `--cache-dirs` and `--auto-cache`,
respectively config options `blobs.cache-dirs` and `blobs.auto-cache`.

Signed-off-by: Thorsten Klein <Thorsten.Klein@bshg.com>
2025-11-25 13:06:06 +01:00
Thorsten Klein
bdbdbcbe8d scripts: west_commands: blobs: support blobs cache
An auto-cache directory can be provided via the `west blobs fetch
--auto-cache` argument or the `blobs.auto-cache-dir` config option.
When enabled, the auto-cache is automatically filled whenever a blob is
missing and must be downloaded.

One or more additional cache directories can be specified via argument
`west blobs fetch --cache-dirs` or the `blobs.cache-dir` config option
(multiple paths separated by `;`).

`west blobs fetch` searches all configured cache directories (including
the auto-cache) for a matching blob filename. Cached files may be stored
either under their original filename or with a SHA-256 suffix
(`<filename>.<sha>`).
If found, the blob is copied from the cache to the blob path; otherwise
it is downloaded from its url to the blob path.

Signed-off-by: Thorsten Klein <Thorsten.Klein@bshg.com>
2025-11-25 13:06:06 +01:00
Thorsten Klein
92a9a7eb00 .ruff-excludes: remove scripts/west_commands/blobs.py
Regarding documentation, when changing an excluded file, contributors
are encouraged to remove it from the list and format it in a separate
commit.

Signed-off-by: Thorsten Klein <Thorsten.Klein@bshg.com>
2025-11-25 13:06:06 +01:00
Thorsten Klein
8fab89e521 scripts: west_commands: format blobs.py
blobs.py is formatted with `ruff format`

Signed-off-by: Thorsten Klein <Thorsten.Klein@bshg.com>
2025-11-25 13:06:06 +01:00
Emil Gydesen
b8e71e6098 tests: Bluetooth: Tester: Allow connecting CIS in QoS state
Add support for connecting the CIS in QoS state.
To support this some checks were added to check the CIS
state while entering the enabling state, as well as the
ASE state when the CIS was connected to determine when to
send the ASE start opcode.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-25 13:04:46 +01:00
Emil Gydesen
29f4f24019 tests: Bluetooth: Add ASCS CIS connection events
Add support for the ASCS CIS connection state events.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-25 13:04:46 +01:00
Nakul Chauhan
0172845b3d ci/compliance: update requirements of check_compliance.py script
add missing modules to requirements-compliance.txt to run compliance script

Signed-off-by: Nakul Chauhan <nakulchauhan111@gmail.com>
2025-11-25 13:04:34 +01:00
Felix Wang
5d48b0718a samples: drivers: led: pwm: Add fallback blink delay calculation
When CONFIG_BLINK_DELAY_SHORT or CONFIG_BLINK_DELAY_LONG exceed the
timer's range, automatically calculate blink delays from the LED's
PWM period defined in devicetree using configurable divisors.

Add led_periods_ns array to store PWM periods for each LED and new
Kconfig options BLINK_DELAY_SHORT_LED_PERIOD_DIV and
BLINK_DELAY_LONG_LED_PERIOD_DIV to control the calculation.

This ensures the LED PWM sample works on platforms with timer
limitations by providing hardware-appropriate fallback delays.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-11-25 13:04:27 +01:00
Pascal Linder
f1e1d91e72 drivers: dma: stm32u5: Configure burst lengths
The source and destination burst lengths can be configured with a value
from 1 to 64. As the appropriate values are available in the DMA
configuration structure provided by Zephyr, these can be set during driver
configuration. Unfortunately, the STM32 DMA LL API does currently not
provide the minimum and maximum values.

Signed-off-by: Pascal Linder <pascal.linder@zuehlke.com>
2025-11-25 13:04:10 +01:00
Camille BAUD
eaf743e48b tests: drivers: build_all: add BFLB dbi test via boards/ai_m62_12f
Adds a BFLB DBI test

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-25 13:04:02 +01:00
Camille BAUD
660f3a1976 drivers: mipi-dbi: Introduce BFLB dbi driver
Introduces a driver for the BL61x DBI peripheral

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-25 13:04:02 +01:00
Camille BAUD
f361d5888a dts: Add BFLB dbi nodes
Adds nodes for the DBI peripheral

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-25 13:04:02 +01:00
Camille BAUD
8209c59329 drivers: dma: bflb: Update DMA to properly support device usage
Make it so you can set both address and peripheral via dma_slot

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-25 13:04:02 +01:00
Camille BAUD
a3c5e72904 drivers: clock_control: bflb: Add DBI elements
Add clock elements to enable using DBI

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-25 13:04:02 +01:00
Camille BAUD
cadd0ecfe5 west.yml: Update hal_bouffalolab revision
Update to latest hal_bouffalolab revision for DBI.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-25 13:04:02 +01:00
Albort Xue
8885c708bf soc: nxp: mcx: mcxw7xx: Update power management in case of NBU is used.
Added conditional compilication for 'power_state_set' function. The
changes ensure that mode of NBU domain is manually set only when
the NBU is not used. If NBU is enabled, the mode of NBU domain is
auto updated by software run on NBU.

Change include:
- Conditional checks around the NBU mode in sleep and deep sleep mode.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2025-11-25 13:03:49 +01:00
Mario Paja
3c930a7760 drivers: i2s: stm32 sai enable dma priority configuration
This change enables the user to configure SAI DMA priority.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-11-25 13:03:41 +01:00
Anas Nashif
16fecc0276 manifest: optional: move lz4 to external
Move lz4 to become external module. It is not in the default manifest
anymore (through submanifests) and will need to be added if application
requires it per the docs.

Samples will be moved to the module itself.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-25 13:01:12 +01:00
Anas Nashif
015bf2ed49 manifest: move zscilib to be an external module
Remove from manifest and make it an external module.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-25 13:01:12 +01:00
Anas Nashif
13bf9895d8 ci: twister: pull testing group in manifest
We need the tests in CI to be able to run them on supported platforms.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-25 13:01:12 +01:00
Anas Nashif
a7c53391d5 manifest: move psa-arch-tests to main manifest
Tests needed to verify tf-a module.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-25 13:01:12 +01:00
Anas Nashif
a2ccf506bd manifest: move tf-m-tests to main manifest
Those tests are needed for verifying and testing tf-m. While not needed
directly by zephyr, they are needed for testing and CI.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-25 13:01:12 +01:00
Fabian Blatz
8c264d30ea drivers: input: chsc5x: Add INPUT_TOUCH_STRUCT_CHECK for config
Adds the missing INPUT_TOUCH_STRUCT_CHECK for the config struct, to harden
against member reordering.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-11-24 15:27:41 -05:00
Fabian Blatz
421a4232ee drivers: input: Add input-touch assert for inversion without dimensions
Adds an assert to inform the user of possible coordinate wrap around
due to missing screen dimension configurations.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-11-24 15:27:41 -05:00
S Swetha
e891ca601e drivers: gpio: intel: Fix Pad IO Termination values
Swap PAD_CFG1_IOSTERM_PU and PAD_CFG1_IOSTERM_PD values.

Signed-off-by: S Swetha <s.swetha@intel.com>
2025-11-24 21:15:21 +01:00
S Swetha
dc34b3c40b tests: drivers: Add overlays for intel wcl boards
This commit introduces overlay files for intel
Wildcat lake boards

Signed-off-by: S Swetha <s.swetha@intel.com>
2025-11-24 21:15:21 +01:00
S Swetha
9271e65058 boards: intel: wcl: Add board definition
This commit introduces board defintion for Wildcat Lake.

Signed-off-by: S Swetha <s.swetha@intel.com>
2025-11-24 21:15:21 +01:00
S Swetha
9c5f675e37 dts: x86: intel: Add wildcat lake dtsi
This commit introduces device treee source for
Wildcat Lake platform

Signed-off-by: S Swetha <s.swetha@intel.com>
2025-11-24 21:15:21 +01:00
S Swetha
78a67404f0 dts: bindings: timer: Fix HPET clock frequency property
Fix HPET Clock-frequency property in yaml file

Signed-off-by: S Swetha <s.swetha@intel.com>
2025-11-24 21:15:21 +01:00
S Swetha
d7cede7b20 dts: bindings: cpu: Add wildcat lake yaml
Add wildcat lake yaml

Signed-off-by: S Swetha <s.swetha@intel.com>
2025-11-24 21:15:21 +01:00
S Swetha
bf093f939e soc: intel: wildcat_lake: Add soc support for WCL
This commit introduces SOC support for
Wildcat Lake.

Signed-off-by: S Swetha <s.swetha@intel.com>
2025-11-24 21:15:21 +01:00
Declan Snyder
cd4c027fce MAINTAINERS: Consolidate NXP areas using file-groups
Use the new file-groups feature to consolidate the NXP areas, and have
more specific collaborators/reviewers over certain areas.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-11-24 15:13:52 -05:00
Adrian Bonislawski
b33fc9a7b2 drivers: dai: intel: ssp: Fix SSP blob v3.0 TLV parsing
Fix incorrect TLV (Type-Length-Value) data length calculation for
SSP configuration blob version 3.0. The blob30->size field does not
include auxiliary TLV data appended after the main structure, leading
to incorrect parsing boundaries.

Changes:
- Use the total 'size' parameter instead of blob30->size for v3.0
- Pass size parameter through dai_ssp_parse_aux_data() chain
- Ensures correct parsing of auxiliary data (clocks, sync, DMA controls)

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-11-24 20:59:20 +01:00
Adrian Bonislawski
b038ee72fa drivers: dai: Add size parameter to dai_config_set API
Add explicit bespoke_cfg_size parameter to the dai_config_set()
function and its underlying driver API to improve configuration
validation and security.

Changes:
- Add 'size_t size' parameter to dai_driver_api.config_set callback
- Update dai_config_set() inline wrapper to pass size parameter
- Update all DAI driver implementations:
  - Intel: SSP, DMIC, HDA, ALH
  - NXP: SAI, ESAI, MICFIL
- Add documentation for new size parameter

This change enables drivers to validate the size of bespoke
configuration data, preventing buffer overruns and improving
robustness of the DAI configuration interface.

All existing callers must be updated to pass the size of their
bespoke configuration structures.

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-11-24 20:59:20 +01:00
Adrian Bonislawski
552c1514a6 drivers: dai: intel: ssp: Add support for SSP_GTW_DMA_CONFIG_ID TLV type
Add handling for SSP_GTW_DMA_CONFIG_ID (0x1000) TLV type in SSP driver's
auxiliary data parsing functions. This TLV type is explicitly ignored as
it does not require any processing by the driver.

Changes:
- Define SSP_GTW_DMA_CONFIG_ID constant (0x1000) in dai-params-intel-ipc4.h
- Add case handling in dai_ssp_check_aux_data() to validate this TLV
- Add case handling in dai_ssp_parse_tlv() to skip processing of this TLV

This allows SSP configuration blobs containing SSP_GTW_DMA_CONFIG_ID
entries to be parsed successfully without triggering errors
for undefined TLV types.

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-11-24 20:59:20 +01:00
Saravanan Sekar
c7bd062171 tests: drivers: build_all: fuel_gauge: Add hy4245 device to build test
Add build tests for the hycon,hy4245 device.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-11-24 14:58:39 -05:00
Saravanan Sekar
89df5f55ed drivers: fuelgauge: Add Hycon Technology HY4245 driver
Add a support for Hycon Technology HY4245 fuel gauge driver.

The HY4245 operates with Single and Two Cells Li+ battery cells as a
stand–along battery gauge. The device uses GaugePackTM algorithm, which
mixes Coulomb–Counting and Open–Circuit–Voltage (OCV) measurements with
battery cell characteristics to manage battery gauge, to maintain accurate
battery capacity estimates with compensation for rate, temperature, age
and self–discharge effects.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-11-24 14:58:39 -05:00
Saravanan Sekar
bcb83d5dda dts: fuel-gauge: hy4245: Add HY4245 fuel gauge
Add dts bindings for Hycon Technology HY4245 fuel gauge.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-11-24 14:58:39 -05:00
Adrian Bonislawski
af974c3074 soc: intel_adsp: ace: add IMR info registers
Adds devicetree nodes for IMR (Isolated Memory Regions)
information registers across all ACE platforms.
These registers provide information about the IMR memory region,
such as whether it is in use and its size.

Implements structures and utility functions to access
these registers and retrieve IMR information programmatically.
This allows dynamic detection of IMR availability and its size at runtime,
instead of relying on hardcoded values.

Removes the hardcoded IMR_L3_HEAP_SIZE definition since the size can now be
determined dynamically using the newly added ace_imr_get_mem_size() func.

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-11-24 14:58:27 -05:00
Adrian Bonislawski
35a1e62035 soc: intel_adsp: ace40: 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-11-24 14:58:27 -05:00
Paul Luse
80c14d8a37 testsuite: ztest: fix bug in host only mock func
Change the mock for snprintf() to call the correct variadic function.

Signed-off-by: Paul Luse <paul.e.luse@intel.com>
2025-11-24 14:58:02 -05:00
Marco Domingo
42d0611ce0 doc: tfm: fix broken reference to mps3 board
Replace the outdated :ref:`mps3_board` reference with the proper
:zephyr:board:`mps3` role to align with current board documentation.

Signed-off-by: Marco Domingo <marco.domingo2@arm.com>
2025-11-24 14:57:46 -05:00
Marco Domingo
d13353115d boards: mps3/mps4: improve board searchability and naming
Update board YAML full_name to improve searchability and make it
easier to find Corstone FVP platforms in the supported boards list.

Update the mps3 .rst file to align the title and zephyr:board
directive with the YAML full_name, consistent with the mps4 board
documentation.

- mps3_an547 -> "MPS3 FPGA/Corstone FVP"
- mps4 -> "MPS4 Corstone FVP"

Signed-off-by: Marco Domingo <marco.domingo2@arm.com>
2025-11-24 14:57:46 -05:00
Appana Durga Kedareswara rao
4e8cafe641 arch: arm64: mmu: Call k_panic() when translation tables exhausted
When CONFIG_MAX_XLAT_TABLES is too small and new_table() cannot allocate
a translation table, the system must halt rather than continue with
undefined behavior.

This change ensures k_panic() is called after reporting the error,
preventing the system from proceeding when it runs out of translation
tables. Additionally, adds printk() fallback for configurations where
CONFIG_LOG is disabled to ensure the error is always visible.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-11-24 14:57:25 -05:00
Ayush Singh
64eefc709e drivers: gpio: cc13xx_cc26xx: Remove multi functions
- It seems that the mask variants of GPIO functions are not present in
  the latest sdk, so replace those with direct register access.
- This was already done in [0], but was reverted due to some hal
  problems.
- I am working on a hal update, but since this change does not require a
  hal update to work, it would be best to merge this first.

[0]: https://github.com/zephyrproject-rtos/zephyr/pull/83402

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-11-24 14:57:16 -05:00
Mathieu Choplain
0aa9877d9b drivers: usb: udc: fix OTGHS on STM32F7 SoCs with USBPHYC
From testing on STM32F723E-DISCO, it seems necessary to enable OTGHSULPI
clock in addition to USBPHYC when the internal USBPHYC HS PHY is used.
(USBPHYC is found on STM32F723xx, STM32F730Z8 and STM32F730I8 SoCs)

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-24 14:56:45 -05:00
Morten Kristensen
4f2ad9a53d scripts: ci: use vermin 1.8.0
Update workflow to use the new version of Vermin to enrich the Python
minimum version checks in the CI pipelines.

Signed-off-by: Morten Kristensen <me@mortens.dev>
2025-11-24 14:56:36 -05:00
Vladislav Kulikov
cde7195a57 MAINTAINERS: update SMF maintainers
Sam Burke has agreed to step down as maintainer of the State Machine
Framework (SMF), per discussion with Keith Short. Update the SMF
MAINTAINERS entry to reflect this by removing Sam.

Signed-off-by: Vladislav Kulikov <vlad_kulikov_c@pm.me>
2025-11-24 14:56:24 -05:00
Stoyan Bogdanov
79793542e1 MAINTAINERS: Add collaborator for TI SimpleLink Platforms
Add jpanisbl as collaborator for TI SimpleLink

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-11-24 14:56:14 -05:00
Andrew Kontra
7a65336edc net: C++ support for mdns_responder.h
mdns_responder.h did not include header guards for C++, causing
it to fail if used in a C++ file. This change adds the header
guards.

Tested using samples/cpp/hello_world, with an added call to
mdns_responder_set_ext_records().

Signed-off-by: Andrew Kontra <andrew@legatoxp.com>
2025-11-24 17:36:32 +01:00
Nik Schewtschuk
d36c0bec85 net: l2: ppp: Add support for LCP MRU negotiation
Previously, the LCP MRU option sent by the peer was ignored.
This could result in the interface MTU remaining at the default (1500),
even if the peer requested a smaller MRU, potentially leading to packet
loss. This commit adds parsing for the peer's MRU option and updates the
network interface MTU accordingly.

Signed-off-by: Nik Schewtschuk <nik@schew.dev>
2025-11-24 17:36:18 +01:00
Tomasz Moń
614dd5738e drivers: usb: dwc2: Do cache operations on ownership change
Perform cache operations in thread context when the buffer ownership
changes between USB stack and UDC driver. This offers clearly measurable
throughput increase on Mass Storage when double buffering is enabled.
When endpoint operations are not double buffered the difference is
negligible. The positive side effect is reducing number of operations
performed in interrupt context.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-11-24 17:35:58 +01:00
Erwan Gouriou
47650a46bd dts: arm: st: wba6: Add missing i2c nodes
i2c2 and i2c4 were missing from soc description.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-11-24 17:35:31 +01:00
Håvard Reierstad
6bb0e982ad Bluetooth: Host: Add legacy pairing test config
Adds the `CONFIG_BT_SMP_LEGACY_PAIR_ONLY` Kconfig option to force
devices to use legacy pairing. This has a dependency on
`CONFIG_BT_TESTING` as it is only intended for testing purposes, and use
of legacy pairing is discouraged.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-11-24 17:35:19 +01:00
Liu Qian
a2ca8b9b0a device: remove duplicate code
API z_device_state_init has already defined in init.c

Signed-off-by: Liu Qian <liuqian.andy@picoheart.com>
2025-11-24 17:33:13 +01:00
Chen Xingyu
b6e79199b5 boards: m5stack: cores3: Correct touchscreen axis
X and Y are swapped

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-24 17:32:58 +01:00
Torsten Rasmussen
18594c217c cmake: remove quotes around SUBALIGN
Quotes around `"SUBALIGN ${SUBALIGN}"` results in the parameters to
become a text string with a space, and therefore will give the warning

> CMake Warning at /.../extensions.cmake:5197 (message):
>  zephyr_linker_section(NAME ...) given unknown arguments: SUBALIGN 4
> Call Stack (most recent call first):
>   /.../extensions.cmake:5333 (zephyr_linker_section)
>   /.../CMakeLists.txt:x (zephyr_iterable_section)

Remove the quotes so that `SUBALIGN` and the value are correctly treated
as argument name and value.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-11-24 17:31:51 +01:00
Robert Lubos
8b91d3abc3 net: websocket: Fix truncated string warning on copying
WS_MAGIC is a constant string and when calculating lengths for copying
we always exclude the NULL terminator. In result, using strncpy() for
copying can generate a warning about truncated string, as WS_MAGIC will
always be truncated from the NULL terminator. Therefore replace
strncpy() with memcpy() as it seems more appropriate for this case.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-24 17:30:22 +01:00
Jordan Yates
dda100cb28 tests: zbus: publish_stats: update thresholds
`zbus_chan_pub_stats_msg_age` returns milliseconds, while `clock_window`
is in clock ticks. Update the thresholds to refer to the same 50ms
window as `clock_window`.

Fixes #99500.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-24 17:30:13 +01:00
Mathieu Choplain
0ee6ec0617 soc: st: stm32: wkup_pins: enable retention for STM32WBA wake-up pins
In order for wake-up pins to behave properly in Standby mode on STM32WBA,
the I/O Standby Retention must be enabled. (It only comes in effect when
the SoC does enter Standby mode, and has no effect otherwise).

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-24 17:30:03 +01:00
Muhammed Asif
c3e7e55bb4 boards: microchip: pic32cx_sg41_cult: Add clock support
- Updates the clock from 48MHz to 120MHz
- Adds the xosc related nodes to board file.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-11-24 17:29:54 +01:00
Ayush Singh
a9fa2ef116 drivers: adc: cc13x2_cc26x2: Fix PM
- Currently, ADC driver does not implement any PM related constraints.
  Due to this, when using it with PM enabled (example ieee802154, which
  enabled PM by default), it will stall the system.
- Similar to pwm driver, disable standby when ADC is sampling. The
  variable standby_disabled is just a flag to ensure that we disable (or
  enable) standby only when ADC driver selects it. Otherwise, it is
  possible to have a condition where ADC enabled PM and ieee802154
  disables it.
- This follows what TI SDK ADC driver does [0].

[0]: 507c93efc8/source/ti/drivers/adc/ADCCC26XX.c (L186)

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-11-24 17:29:44 +01:00
Emil Gydesen
4c54eef0d0 Bluetooth: BAP: Fix bad check for ASE state for CIS connect
A CIS may be connected in either the QoS Configured state
or the enabling state. The QoS Configured state is the
earliest state it is allowed, due to it being the first
state where the CIS_ID and ASE_ID are paired.
The enabling state is the "last" state it is allowed,
as if the ASE is in the streaming, disabling or releasing
state we should not allow/expect a CIS connection to happen.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-24 17:28:58 +01:00
Henrik Brix Andersen
0b06f2751f dts: bindings: i2c: gpio: add description for SDA/SCL pin configuration
Add recommendations for how to configure the GPIOs used as SDA/SCL pins.

Fixes: #95903

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-11-24 17:26:49 +01:00
Krzysztof Chruściński
84ccc54fda drivers: cache: nrf: Allow execution of sys_cache_instr_invd_all
Driver did not allow to execute any invalidate all operation.
This operation should not be allowed for data cache as it will lead to
undefined behavior but it is ok to invalidate instruction cache.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-11-24 17:26:35 +01:00
Allen Zhang
d83f249e20 doc: boards: nxp: mcxw23_evk: Updated the index.rst
Added the links to MCXW23-EVK website, user manual and design files

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-11-24 17:25:43 +01:00
Ayush Singh
239e5a6b2f drivers: adc: cc13xx_cc26xx: Fix includes
- Include device specific headers even if the header files end up being
  the same.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-11-24 17:25:24 +01:00
Lucien Zhao
e1bf67139d dts: arm: nxp: add missed sub-parts dtsi files
add back missed sub-parts dtsi files for mcxe31x

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-11-24 17:23:56 +01:00
Hui Bai
d073ae1bf5 drivers: wifi: Update debug level of wakeup source dump function
Update wakeup source dump function to DBG level. This function will
print and clear wakeup source registers of NXP wifi chips with
CONFIG_WIFI_LOG_LEVEL_DBG enabled. By changing debug level of this file,
user can avoid wakeup source clear.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-11-24 17:23:43 +01:00
Hui Bai
c0715601b2 west.yml: Sync hal_nxp repo
Sync hal_nxp repo

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-11-24 17:23:43 +01:00
Hui Bai
0f8228f410 drivers: wifi: Add new config CONFIG_NXP_WIFI_WAKE_TIMER_ENABLE
Added new config CONFIG_NXP_WIFI_WAKE_TIMER_ENABLE and enable it for NXP
wifi chips.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-11-24 17:23:43 +01:00
Haoran Jiang
eb8d8a50b2 boards: sifli: sf32lb52_devkit_lcd: enable crc
Enable CRC device

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-11-24 17:23:13 +01:00
Haoran Jiang
2e7c1d1816 drivers: crc: add crc driver for sf32lb platform
Add crc driver for sf32lb platform

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-11-24 17:23:13 +01:00
Haoran Jiang
e25f29560a dts: arm: sifli: sf32lb52x: define crc instances
Add crc device bindings for sf32lb platform

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-11-24 17:23:13 +01:00
Haoran Jiang
1a67d5753c dts: bindings: crc: sf32lb: add sifli,sf32lb-crc
Add crc device bindings for sf32lb platform

Signed-off-by: Haoran Jiang <halfsweet@halfsweet.cn>
2025-11-24 17:23:13 +01:00
Eemil Visakorpi
1d70b705b0 twister: Fix serial open for UART devices that do not immediately appear
Testing on linux, --flash-before argument did not work to wait for jlink
upload to complete. Instead Serial port opening throws file not found. The
fix ensures that the code waits for the serial port to appear before
attempting to connect. Tested on a proprietary platform with virtual UART
through usb.

Signed-off-by: Eemil Visakorpi <eemil@doublepoint.com>
2025-11-24 17:22:22 +01:00
Ayush Singh
0b173063fe soc: ti: simplelink: cc13x2x7_cc26x2x7: Add poweroff support
- Tested on BeagleConnect Freedom with
  samples/boards/ti/cc13x2_cc26x2/system_off

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-11-24 17:22:06 +01:00
Make Shi
f88eb16d7c Bluetooth: AVRCP: enable full browsing commands
This change implements full AVRCP Browsing support on both CT/TG,
and included all public APIs and callbacks, and add shell commands
for testing.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-11-24 17:21:27 +01:00
Make Shi
497d3bba43 Bluetooth: AVRCP: Add alloc_buf callback and browsing RX pool
Introduce an optional alloc_buf() callback into AVCTP so that each
session can decide which RX buffer pool to use. Provided a dedicated
RX pool for the AVRCP browsing channel.
Also provided BT_AVRCP_BROWSING_L2CAP_MTU for configure.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-11-24 17:21:27 +01:00
Make Shi
3d57125247 bluetooth: avrcp: align enums and response struct naming
Drop the 'U' suffix from enum hex literals keep style consistent
and rename `bt_avrcp_list_app_setting_attr_rsp` to the clearer.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-11-24 17:21:27 +01:00
Bartlomiej Buczek
1a5180d350 samples: drivers: jesd216: add nrf54l15dk cases.
Extend jesd216 sample with nrf54l15dk cases. These platforms have
jesd216 compatible flash memories on board.

Signed-off-by: Bartlomiej Buczek <bartlomiej.buczek@nordicsemi.no>
2025-11-24 17:21:13 +01:00
Bartlomiej Buczek
bbf2695915 test: drivers: flash: common: Add sfdp case for nrf54l15 tests.
Add case for using flash with some parameters read with runtime sfdp
instead of dt declarations.

Signed-off-by: Bartlomiej Buczek <bartlomiej.buczek@nordicsemi.no>
2025-11-24 17:21:13 +01:00
Bartlomiej Buczek
1028fc27b3 tests: drivers: adc: Enable tests for nrf54h20 PPR.
Fill in necessary config files with test data.

Signed-off-by: Bartlomiej Buczek <bartlomiej.buczek@nordicsemi.no>
2025-11-24 17:20:35 +01:00
Dave Joseph
3474deee3d drivers: firmware: Clock control TISCI driver support
Support added for clock control using TISCI for devices using the binding
ti,k2g-sci-clk. This driver relies on the TISCI layer to make calls to the
DMSC core to set and get the clock rate and retrieve clock status.

Signed-off-by: Dave Joseph <d-joseph@ti.com>
2025-11-24 17:20:24 +01:00
Lyle Zhu
e7cb176018 Bluetooth: tester: Add command to send connectionless data
Add command `BTP_L2CAP_CONNLESS_SEND` to send connectionless data with
specific PSM.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-24 17:19:20 +01:00
Lyle Zhu
efcbb1f060 Bluetooth: tester: Classic: change L2CAP server count to 2
If CONFIG_BT_CLASSIC is enabled, change the count of L2CAP server to 2.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-24 17:19:20 +01:00
Lyle Zhu
4450c9b96c Bluetooth: tester: Classic: L2CAP: Support local busy
If the option BTP_L2CAP_CONNECT_V2_OPT_HOLD_CREDIT or
BTP_L2CAP_LISTEN_V2_OPT_HOLD_CREDIT is set, set the local flag
`hold_credit`. When the data received, holds the buffer and returns
the error code `-EINPROGRESS`.

The held buffers will be released if the L2CAP channel disconnect
callback is triggered. Or only of the held buffers will be released
if the L2CAP BTP command `credits` is received.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-24 17:19:20 +01:00
Lyle Zhu
1e9493393d Bluetooth: tester: L2CAP: Set TX data buffer count to windows size
If `CONFIG_BT_CLASSIC` and `CONFIG_BT_L2CAP_MAX_WINDOW_SIZE` are
defined, set the TX data buffer count to
CONFIG_BT_L2CAP_MAX_WINDOW_SIZE. Or, set the TX data buffer count to
CHANNELS.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-24 17:19:20 +01:00
Lyle Zhu
b9e1f53b1f Bluetooth: tester: Add BTP command BTP_L2CAP_LISTEN_V2
Add a new BTP L2CAP command BTP_L2CAP_LISTEN_V2 to extend the L2CAP
server feature.

Compared with BTP command `listen`, two fields are added, including
`mode` and `options`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-24 17:19:20 +01:00
Lyle Zhu
3588a116bc Bluetooth: tester: Add BTP command BTP_L2CAP_CONNECT_V2
Add a new BTP L2CAP command BTP_L2CAP_CONNECT_V2 to set extend the
L2CAP connect request.
Compared with BTP command `connect`, two fields are extended,
including `mode` and `options`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-24 17:19:20 +01:00
Lyle Zhu
8d97c8a4bf Bluetooth: tester: Add L2CAP ECHO REQ BTP command
Add a BTP command `BTP_L2CAP_SEND_ECHO_REQ` to send L2CAP ECHO REQ.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-24 17:19:20 +01:00
Lyle Zhu
ccb7084899 Bluetooth: tester: Support L2CAP BR ECHO req/rsp
Register ECHO callbacks in function `tester_init_l2cap()`.

Unregister ECHO callbacks in function `tester_unregister_l2cap()`.

Send ECHO response if ECHO request is received.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-24 17:19:20 +01:00
Lyle Zhu
7c3c864016 Bluetooth: tester: Support BR L2CAP channel data receiving
Add the function `br_alloc_buf_cb()` to allocate receiving buffer for
BR L2CAP channel.

Add the function `br_recv_cb()` to report the received BR L2CAP
channel data.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-24 17:19:20 +01:00
Lyle Zhu
c0f46f6371 Bluetooth: tester: Support L2CAP retransmission and flow-control mode
Configure the following configurations to support the L2CAP
retransmission and flow-control mode.
CONFIG_BT_L2CAP_RET=y
CONFIG_BT_L2CAP_FC=y
CONFIG_BT_L2CAP_ENH_RET=y
CONFIG_BT_L2CAP_STREAM=y
CONFIG_BT_L2CAP_FCS=y
CONFIG_BT_L2CAP_EXT_WIN_SIZE=y
CONFIG_BT_L2CAP_MAX_WINDOW_SIZE=5

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-24 17:19:20 +01:00
Lyle Zhu
b6f555b750 Bluetooth: tester: Support BR L2CAP send data command
If the channel id is more than ARRAY_SIZE(channels), send L2CAP data
through BR transport.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-24 17:19:20 +01:00
Anas Nashif
c9b01e8257 ci: set_assignee: remove size: XS label on updates
The script currently only adds the 'size: XS' label for small PRs (1
commit with ≤1 addition and ≤1 deletion), but it doesn't remove this
label if the PR grows larger after subsequent updates.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-24 08:47:51 +01:00
Rodrigo Peixoto
6b321eaffd doc: zbus: Adjust observer types image
Add the Async Listener type to the observer types image.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-11-24 08:47:40 +01:00
Peter van der Perk
8ba3999e66 tests: vector_table_relocation: Add DTCM and ITCM testcases
Expand vector table relocation with DTCM and ITCM veriants if
applicable

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-11-24 08:47:28 +01:00
Peter van der Perk
7d9e8923cc arch: arm: cortex_m: Allow VTOR to be relocated to TCM
Allows you to relocate the vector table from Flash to ITCM/DTCM to
minimize interrupt latency. TCM offers single-cycle access compared to
multi-cycle SRAM reads and even slower flash reads. This improves exception
handling speed for real-time workloads.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-11-24 08:47:28 +01:00
McAtee Maxwell
f587c056a7 drivers: clock_control: fix clock pathing for infineon clocks
- fix fixed_factor clock_control driver
- update pse84 dts with fixes
- update psc3 dts with fixes
- update pse84_ai dts with fixes

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-11-24 08:47:15 +01:00
Jukka Rissanen
882387eeaa drivers: ieee802154: Properly namespace AF_UNSPEC by NET_AF_UNSPEC
Couple of AF_UNSPEC need to be replaced by NET_AF_UNSPEC so that
OpenThread tests will pass.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-24 08:47:05 +01:00
Andrey Smirnov
af04b317e9 bindings: pwm-leds: Include base.yaml
Include base.yaml in order to support zephyr,deferred-init property.

Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
2025-11-23 05:31:38 -05:00
Fabian Blatz
0ec9fc42a4 modules: lvgl: Fix thread deletion in OSAL
Do not delete the thread from within the thread callback function,
secure thread_delete against trying to delete a terminated thread.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-11-23 05:31:29 -05:00
Fabian Blatz
152e48a9fb tests: lib: gui: lvgl: Add missing DYNAMIC_THREAD dependency
This patch adds a CONFIG_THREAD_STACK_INFO to properly enable
CONFIG_DYNAMIC_THREAD.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-11-23 05:31:29 -05:00
Fabian Blatz
871103d072 manifest: Update LVGL to v9.4
Update the west yaml to point to the new LVGL version.
Update CMakeLists and samples accordingly.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-11-23 05:31:29 -05:00
Alberto Escolar Piedras
4d7944037f tests zbus async_listeners: Fix bug in test
Fix a bug in the test which caused it to fail (depending on compiler,
platform and optimization level).

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-23 05:31:00 -05:00
Arkadiusz Cholewinski
1d6e0d533a Power harness: Update path for the raw data file.
Change direction for raw data file from $ZEPHYR_BASE
to <path_to>twister-out/../<test>/

Signed-off-by: Arkadiusz Cholewinski <arkadiuszx.cholewinski@intel.com>
2025-11-22 11:45:44 +01:00
Simone Orru
5f7c451671 west: spdx: Fix copyright parsing in REUSE 0.6.x
Fix broken copyright parsing. Since REUSE 6.0.0 the copyright_lines
attribute has been removed. The new attribute copyright_notices is used.
Additionally, the python package REUSE should now be at least v0.6.0.
This will require an update of REUSE for users that were using a
version earlier than 0.6.

Fixes #98378

Signed-off-by: Simone Orru <simone.orru@secomind.com>
2025-11-22 05:13:26 -05:00
Ha Duong Quang
bf16aeaf4f soc: nxp: mcux: enable driver dmamux for S32Z270
S32ZE use DMAMUX for DMA channel routing instead of TRGMUX.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2025-11-22 05:13:04 -05:00
Håvard Reierstad
627b6e4dd7 Bluetooth: Host: Legacy passkey entry 6.2 update
As of Core v6.2, the passkey entry pairing method for legacy pairing
does no longer grant authenticated MITM protection. This commit
updates `smp.c` accordingly to not grant the authenticated states when
using legacy passkey entry pairing.

Adds a check to make sure that bonds that have been stored persistently
adheres to these changes. Bonds that have been generated using the
legacy passkey entry pairing method will thus be downgraded from
authenticated to unauthenticated when restored from storage.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-11-22 05:12:56 -05:00
Mathieu Choplain
cc749290a7 include: crypto: remove experimental API note
Update top-level comment of `include/zephyr/crypto/crypto.h` as the API is
no longer experimental, as indicated by the @version 1.0.0 tag in Doxygen.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-22 05:12:47 -05:00
Benjamin Cabé
2abc94830e docs: gpio: Add GPIO docs
Add more complete documentation page for GPIO

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-22 05:12:37 -05:00
Pete Johanson
625a2c2c7c boards: adi: Ensure no flash access on MAX32657 NS
MAX32657 NS does not have access to the flash peripheral, so ensure the
placeholder flash controller node is disabled, and update the "storage"
node in the evkit board definition to properly document its use for TFM.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-11-22 05:12:27 -05:00
Fin Maaß
dee55a64f3 doc: releases: migration-guide: 4.4: mention mdio change
mention mdio change.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-22 05:12:18 -05:00
Fin Maaß
374c745e3f drivers: mdio: remove mdio_bus_enable/mdio_bus_disable
remove mdio_bus_enable/mdio_bus_disable, as they are no
longer needed and make the mdio api simpler.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-22 05:12:18 -05:00
Fin Maaß
e484f4a842 drivers: mdio: always enable mdio bus
always enable mdio bus during init.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-22 05:12:18 -05:00
John Batch
f7594383b4 drivers: i2c: Infineon: Removing references to pdl from device tree
Removes differentiation between pdl and hal based drivers from device
tree.  This differentiation is now done as a Kconfig option.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-22 05:12:02 -05:00
John Batch
8275b4fb2f drivers: i2c: infineon: Fixing build errors in i2c_ifx_cat1_pdl.c
Fixing build errors related to reference to an incorrect define.
Adds missing headers to pinctrl_soc.h for Edge platform.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-22 05:12:02 -05:00
Emil Gydesen
7bbf704f60 tests: Bluetooth: Tester: Add validation of preconfig values
Add checks for the values in btp_ascs_preconfigure_qos
to determine if they are valid. If they are invalid
we reject the command.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-22 05:11:54 -05:00
Emil Gydesen
1d28715d25 Bluetooth: ISO: Add SDU check for CIS
If both the TX and RX SDUs are 0, then we reject
the call as that is an invalid configuration
(minimum SDU size is 1, and 0 indicates that
no data in that direction is being configured).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-22 05:11:45 -05:00
Maureen Helm
3cb5e6aff8 drivers: can: Select pin control in max32 driver
Fixes the max32 can driver to follow the convention for drivers to
select pin control if they need it.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-11-22 05:11:35 -05:00
Luca Burelli
4e33ca16be boards: arduino: fix docs to remove note about BT only functionality
SDIO is now fully supported on STM32 targets, and this enabled the use
of Wi-Fi functionality on Arduino H7 boards. Remove the note in the
documentation that states only Bluetooth is supported.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-11-22 05:11:24 -05:00
Benjamin Cabé
955317160d Bluetooth: AVRCP: fix doxygen warning
fix a small typo that turns into a doxygen warning on recent doxygen
versions.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-22 05:11:12 -05:00
Rodrigo Peixoto
9463d9a51d doc: zbus: async listeners
Add documentation for async listeners.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-11-21 11:42:56 -05:00
Rodrigo Peixoto
854eda699c samples: zbus: add async linstener to the hello world sample
Add the async linstener to the hello_world sample.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-11-21 11:42:56 -05:00
Rodrigo Peixoto
52ec497937 samples: zbus: async listeners sample
Add a sample for async listeners.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-11-21 11:42:56 -05:00
Rodrigo Peixoto
804a5d68d6 tests: zbus: filter out tests that aren't SMP aware
The tests are failing in architectures that support SMP. Filtering them to
make CI happy, as done in #97827. Issue #98217 was created to address that
separately for all tests.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-11-21 11:42:56 -05:00
Rodrigo Peixoto
f4c1bdf57d tests: zbus: add async listeners tests
Add test for async listeners.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-11-21 11:42:56 -05:00
Rodrigo Peixoto
71712e2ca0 zbus: introduce async listeners
Add a new type of observer: Async Listeners. They are executed within the
system work queue context, offering distinct advantages:

- Asychrouness: obviously it gains the ability of run some urgent/light
  work load in a separate context.
- Prioritization: Async Listeners typically execute before other
  application observers, as they run within the system work queue context
  which is cooperative.
- Reliability: Ensures no message loss during execution. They use the same
  mechanism as Message Subscribers.

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-11-21 11:42:56 -05:00
Cristian Bulacu
b9542abf86 net: l2: openthread: border_router: Enhance modules deinit
This commit deinitializes platform modules when external network
interface is brought down. It also delets the multicast routes that are
added for OpenThread interface.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-21 11:42:46 -05:00
Cristian Bulacu
f1a432d8c8 openthread: platform: Correct handling of closing sockets
In this commit, `net_socket_service_register` is called when a platform
module that has sockets is deinitialized, and it's socket/sockets are
closed.
This commit also handles a case when a module tries to join a multicast
group and a subscription, from another module, is already present.

Also, covered network namespace changes done in #99169

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-21 11:42:46 -05:00
Cristian Bulacu
e888405c61 openthread: platform: trel: Handle enable/disable from CLI
OpenThread interface is initialized beform Wi-Fi interface.
`otPlatTrelEnable` is called by OpenThread stack when it's interface is
being initialized. Given this scenario, socket operation, like `bind`,
will fail. There is also no mean to get a valid pointer to backbone
interface. This is why, `trel_plat_init` was declared and called when
backbone interface reported connectivity.

This commit handles the `ot trel disable/ot trel enable` scenario that
can be initialized from CLI. `otPlatTrelEnable` will be called, but
`trel_plat_init` will not be called anymore, leaving trel socket without
any options set, and `net_socket_service_register` is not called
anymore, to handle incoming traffic.
Now, when `otPlatTrelEnable` is called, it will verify if Wi-Fi
interface is connected and will call `trel_plat_init` if needed.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-21 11:42:46 -05:00
Alberto Escolar Piedras
1329a097c1 net: ocpp: Correct way of getting strdup prototype
Zephyr subsystems' headers should not duplicate C library prototypes
(in this case strdup(), which is either ISO C23 or a POSIX extension to
the C library <string.h>).

Instead they should request those prototypes from the C library.
By now Zephyr only requires ISO C17, but many C libraries will have
strdup() and expose it also when the POSIX extensions prototypes are
requested, so let's request these prototype from the C library by
setting the feature test macro _POSIX_C_SOURCE to version 2008.09
which includes it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-21 11:42:33 -05:00
Aleksandar Stanoev
1eea6adad2 bluetooth: host: Fix bt_conn reference leak in Frame Space Update
Fix a missing unref of a bt_conn reference, leading to a ref count
mismatch, and causing the following warning to be printed:
bt_conn: Found valid connection ... in disconnected state.

Signed-off-by: Aleksandar Stanoev <aleksandar.stanoev@nordicsemi.no>
2025-11-21 11:41:24 -05:00
Johann Fischer
5137439a47 usb: device_next: use slist to store completed transfer requests
USBD_MAX_UDC_MSG configures the number of events coming from the UDC
driver that the stack can keep. This can be filled very quickly if there
would be multiple bus events for some reason, or function handlers of
those events are blocked for long time. As a consequence, subsequent
events could be dropped, and completed transfers not handled. To avoid
it, we can store completed transfer requests in a slist and check it on
every event.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-11-21 11:41:15 -05:00
Peter van der Perk
9f20e79f66 soc: nxp: s32: S32K3 use early reset to init ECC ram before using it.
SOC_RESET_HOOK is already too late because the code touches ram already
instead use the newer SOC_EARLY_RESET_HOOK so we can do ECC
initialization before using the memory

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-11-21 11:40:56 -05:00
Robert Lubos
7a9ca8e410 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>
2025-11-21 11:40:44 -05:00
Robert Lubos
7bd45cd39b 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>
2025-11-21 11:40:44 -05:00
Carles Cufi
353dadf54b scripts: test_plan: Fix issue introduced in 3f77560
The rewrite by ruff seems to wrongly pass a single argument to filter(),
as seen in the logs:

```
    f.process()
  File "/home/runner/work/zephyr/zephyr/zephyr/./scripts/ci/test_plan.py",
  line 145, in process
    self.find_boards()
  File "/home/runner/work/zephyr/zephyr/zephyr/./scripts/ci/test_plan.py",
  line 292, in find_boards
    self.resolved_files.extend(list(filter(resolved_filter)))
                                    ^^^^^^^^^^^^^^^^^^^^^^^
TypeError: filter expected 2 arguments, got 1
```

Split things up properly to avoid this.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-11-21 09:48:12 -05:00
Robert Lubos
396fcbf4f5 tests: net: socket: tcp: Add another test case for asynchronous connect
Verify that if the application triggers asynchronous connect with
non-blocking sockets, and starts to monitor the socket with poll()
immediately but with POLLIN only set, the poll() is still able to
report an error if the connection fails. As no POLLOUT is monitored, the
application won't know when the connection is done in case of success,
but it should still be notified in case of errors.

To achieve this, modify the existing test case to allow to specify what
events should be monitored by poll(). Additionally monitor the time
spent in poll() - an error should cause poll() to exit immediately,
not after the specified timeout.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-21 09:47:50 -05:00
Robert Lubos
6be292c35e net: tcp: Wake pending threads if non-blocking connect fails
If a thread was sleeping in poll(), monitoring POLLIN only, it should
still be notified if an asynchronous connection, triggered by
non-blocking connect(), failed. Currently that's not the case.
In result the application would never know whether the connection
was successful or not and would be stuck with a disconnected socket
that would not report anything with poll().

This was not an issue if POLLOUT was monitored as well, because POLLOUT
sets up a connect semaphore that was reset in case of errors. POLLIN
however only monitors the recv fifo, which was not waken up in such
case.

Fix this by canceling any pending waits on recv fifo and recv
condition variable.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-21 09:47:50 -05:00
Lyle Zhu
17384f450e samples: Bluetooth: Classic: Add guide on how to build/run samples
Add guide on how to build and run samples for the Bluetooth Classic.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-21 09:47:42 -05:00
Firas Sammoura
b433573997 tests: riscv: Remove local z_riscv_pmp_read_config() prototype in PMP test
The function prototype for `z_riscv_pmp_read_config()` was previously
declared in `tests/arch/riscv/pmp/clear-pmp-unlocked-entries/src/main.c`.

This local declaration is no longer necessary as the prototype is now
defined within the centralized PMP header, `include/arch/riscv/pmp.h`,
which is already included via `kernel_internal.h`. The prototype
is guarded by the `CONFIG_ZTEST` Kconfig option.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-21 09:47:21 -05:00
Alexander Svensen
87997afeb2 bluetooth: audio: scan_delegator: Reject remove when PA synced
- BASS mandates that a remove_source operation is not done if
  we are synced to PA or BIS. This PR fixes that
- Update BabbleSim tests to reflect this behavior
- Fixes BASS/SR/SPE/BI-05-C

Signed-off-by: Alexander Svensen <alexander.svensen@nordicsemi.no>
2025-11-21 09:47:10 -05:00
Thomas Decker
2864417de9 boards: st: nucleo_h7s3l8 & stm32h7s78_dk: Fix ext_mem MPU type
Change the zephyr,memory-attr of the ext_memory / ext_flash_mem node to
ATTR_MPU_FLASH because ATTR_MPU_IO does not allow unaligned memory access.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-11-21 09:47:01 -05:00
Thomas Decker
50268f5f02 dts: arm: st: h7rs: Remove ext_memory node
Remove the ext_memory: memory@70000000 node as the external flash memory
is part of the board design. The nucleo_h7s3l8 and stm32h7s78_dk boards
already have this node.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-11-21 09:47:01 -05:00
Pieter De Gendt
d43e592f04 drivers: ethernet: eth_sam: Fix BUF_TX_FRAME macro
Add missing n,x macro arguments.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-21 09:46:52 -05:00
Carles Cufi
d6f5aa9258 scripts: west: nrfutil: Use build dir to store generated json
Until now the code was using the path to the .hex file to select the
directory where the generated JSON file required for nrfutil would be
generated. But this has a problem: if the .hex file in a sysbuild
project is located in the tree as a precompiled binary, the runner would
place a file in there and make the tree dirty. Instead use the build_dir
folder which always corresponds (in both sysbuild and regular builds)
to the current target build directory.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-11-21 09:46:41 -05:00
Jukka Rissanen
5b5d42dd92 tests: posix: headers: Tests disable POSIX API but use POSIX symbols
This cannot possibly work, if POSIX is disabled, then the POSIX
symbols are also not found so remove the "without_posix_api" tests.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-21 09:46:14 -05:00
Guillaume Legoupil
2baee8af6d drivers: add config NXP_IEEE802154_MAC to pull up MCUX_COMPONENTs for NBU
west: update hal_nxp to integrate mcux: middleware: ieee_802_15_4 MAC: Add
      CONFIG_NXP_IEEE802154_MAC
      zephyr: blobs: add MCXW71 & MCXW72 BLE controller and Host libraries
                     (ieee-802.15.4-mac) to MCUXSDK 25.09.00 release
      This new version of the BLE controller is for ZigBee support and
      implements ieee-802.15.4 MAC interface.

Update connectivity framework for MCXW71 & MCXW72 BLE controller
(ieee-802.15.4 MAC) from MCUXSDK 25.09 release.

Signed-off-by: Guillaume Legoupil <guillaume.legoupil@nxp.com>
2025-11-21 12:02:00 +01:00
Fabrice DJIATSA
56d44d9261 drivers: flash: stm32_h7: invalidate data cache after flash write
STM32H7 platforms now enable cache management by default.
To ensure data coherency after flash writes, invalidate cache
lines to the region written.
This prevents stale data and ensures proper memory visibility.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-11-21 12:01:41 +01:00
Fabrice DJIATSA
d73f59a829 tests: drivers: flash: stm32: fix bus fault after blocking OPT/CR registers
On STM32H7 targets with cache management enabled by default, blocking
access to flash option/control registers using flash_ex_op() may cause
imprecise Bus Faults when attempting to unlock them immediately afterward.

This is due to instruction pipeline and cache effects, where the CPU might
execute a forbidden access before the lock is fully acknowledged.

Adding barrier_isync_fence_full() ensures that all prior
instructions are completed and the pipeline is flushed,preventing premature
access and avoiding the fault.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-11-21 12:01:41 +01:00
Jukka Rissanen
61d57c35ff net: Disable namespace compatibility support for tests
Do not enable network compatibility mode flag for network tests
so that we will get better coverage of the wrong network APIs
used.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-21 12:01:31 +01:00
Alberto Escolar Piedras
8ecbda3283 net: lwm2m: Remove use of fcntl.h
Use the underlaying zsock_ prefixed fcntl macros instead of the
POSIX_API fcntl renames.
After d45cd6716b and this, we do not
anymore use fcntl directly but use the underlaying Zephyr APIs.
So, let's also remove this include.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-21 12:01:31 +01:00
Jukka Rissanen
9795ce7bba tests: net: ocpp: Fix uninitialized variable warning
According to the compiler, the ret variable might be uninitialized
in the function (looks like a false positive but fix it anyway).

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-21 12:01:31 +01:00
Jukka Rissanen
a42c23e002 drivers: net: nsos: Convert to use namespaced net APIs
Use the namespaced network APIs instead of POSIX ones.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-21 12:01:31 +01:00
Jukka Rissanen
8046a24104 net: Fix network API calls that were not namespaced
Some of the networking calls were not namespaced so fix it.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-21 12:01:31 +01:00
Pieter De Gendt
506beae4bb drivers: sensor: Fix RTIO fallback scaling from sensor_value to q31
If the sensor_value only has an integer part N, this always resulted in q31
value of <N-1>.999999.
As the calculated shift value already uses 'abs(sample.val1) + 1' it is
safe to assume we can't have 100% scaling of this integer part and we can
omit the -1.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-21 12:01:21 +01:00
Etienne Carriere
06c231dcdf tests: drivers: build_all: misc: build test for stm32n6_axisram
Add a build-all test for stm32n6_axisram driver that is currentl not
default enabled in any STM32N6xx based boards.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-21 12:01:12 +01:00
Etienne Carriere
85088539a6 drivers: misc: stm32n6_axisram: fix clock config info
Correct clock config info recently modified that should use
STM32_DT_INST_CLOCK_INFO_BY_NAME() macro instead of
STM32_CLOCK_INFO_BY_NAME() macro.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-21 12:01:12 +01:00
Peter Büchler
8d01323b2f net: lib: ptp: fix BTCA grandmaster selection and related state transition
The BMCA comparator ptp_btca_ds_cmp() did not follow the IEEE1588
ranking order: priority fields handled only the “greater” case, causing
valid winners to fall through to the clockIdentity tie-breaker and
resulting in incorrect grandmaster selection. This also caused the
state transition from TIME_TRANSMITTER to GRAND_MASTER to be missed.

Fixes: #99562
Fixes: #99566

Signed-off-by: Peter Büchler <peter.buechler@gmail.com>
2025-11-21 11:59:49 +01:00
Mathieu Choplain
a7b396f9ab drivers: gpio: stm32: use FOR_EACH to instantiate devices
Use a list of ports and FOR_EACH to instantiate GPIO devices instead of
having one line to instantiate each port. This is much shorter and also
makes it easier to add support for new ports, if necessary in the future.

While at it, cover all ports from A to Z since it is now trivial to do so.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-21 11:59:40 +01:00
Christophe Dufaza
b5744c3158 doc: develop: manifests: external: add dtsh
Introduce documentation for using dtsh (a Devicetree Shell)
as an external module in Zephyr.

This module installs a West extension.

See also RFC #59863.

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-11-21 10:11:14 +02:00
Yongxu Wang
1266be59d6 soc: nxp: imx9: use SCMI generic power domain ON/OFF
Switch to SCMI_POWER_STATE_GENERIC_ON/OFF from the power protocol
header instead of local defines

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-11-21 10:10:24 +02:00
Yongxu Wang
c77b4ba46f drivers: firmware: scmi: define generic power domain ON/OFF states
Add SCMI generic power state definitions for ON and OFF as specified
by the SCMI Power Domain protocol.
These constants will be used when setting or querying power states.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-11-21 10:10:24 +02:00
Tomasz Bursztyka
bda00b3770 drivers: uart: Add configure/config_get API support for mspm0 driver
It is thus possible to enable CONFIG_UART_USE_RUNTIME_CONFIGURE for
this driver and re-configure a uart device at runtime.

Driver's init function was moved to the bottom of the file for two
reasons: to ease factorization and to follow the common device driver
source structure (usually: the init function is right before the
API structure and the instanciation macros).

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-11-21 10:10:11 +02:00
Yves Wang
fbf5cacbf3 tests: watchdog: Clear watchdog reset source for frdm_mcxe31b
Clear watchdog reset flag then device can retein memory.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-11-21 10:09:59 +02:00
Yves Wang
364c380681 dts: nxp: Add watchdog support for MCXE31x
Enable swt as watchdog instance for NXP MCXE31x.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-11-21 10:09:59 +02:00
Yves Wang
e909110dc4 boards: nxp: frdm_mcxce31b allow clear des fes reset flag
On destructive or functional reset, the soc_reset_hook will check reset
source and clear SRAM TCM.
Add support to let developer clear specify reset source to retein memory
content.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-11-21 10:09:59 +02:00
Yves Wang
9f81fcb5f1 drivers: clock_control: MC_CGM support get SIRC clock rate
Return fixed SIRC clock rate in nxp mc_cgm.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-11-21 10:09:59 +02:00
Yves Wang
ec7b99a855 drivers: watchdog: Make SWT compatible with hal_nxp
Avoid multiple declarations of SWT macros.
No need to log error for redundant watchdog disable.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-11-21 10:09:59 +02:00
Tomasz Moń
7e11bc5817 usb: device_next: msc: Reduce memory usage
MSC BOT can work with just one buffer because buffer to receive CBW is
never queued at the same time as CSW. SCSI buffer needs to be multiple
of bulk endpoint wMaxPacketSize and therefore is suitable for handling
both CBW and CSW. Take advantage of this to reduce memory usage.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-11-21 10:09:49 +02:00
Tomasz Moń
1243aba8e5 usb: device_next: msc: Implement double buffering
Double buffering make it possible to significantly increase the transfer
rates by avoiding idle states. With two SCSI buffers, one buffer can be
used by disk subsystem while the other is being used by UDC (ideally
with DMA).

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-11-21 10:09:49 +02:00
Tomasz Moń
78291d4fc2 usb: device_next: msc: stall endpoints on enqueue error
When endpoint enqueue fails the device has no reliable means of recovery
other than a reset. Implement 6.6.2 Internal Device Error handling on
failed enqueue.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-11-21 10:09:49 +02:00
Yongxu Wang
2c72fe58e8 soc: nxp: imx943: configure GPT as system timer for power management
Configure GPT timers as system tick source when PM is enabled to resolve
low power mode issues:
- Cortex-M SysTick loses state during mix power-off
- SysTick cannot maintain time during system suspend

Configuration changes:
- Disable Cortex-M SysTick when GPT timer is enabled
- Set GPT clock frequency to 32768 Hz for low power operation, 32k is
  reserved in soc level system sleep mode
- Configure system tick rate to 1024 Hz

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-11-21 10:09:40 +02:00
Yongxu Wang
923f1af2ad boards: nxp: imx943: enable GPT hardware timers for system tick
Enable GPT hardware timers on imx943_evk boards:
- gpt_hw_timer1 for M33 core
- gpt_hw_timer2 for M7_0 core
- gpt_hw_timer3 for M7_1 core

These will be used as system tick sources when PM is enabled.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-11-21 10:09:40 +02:00
Yongxu Wang
2dd1bbd159 dts: arm: imx943: add GPT timer nodes for system tick and counter
Add GPT timer nodes to support system tick and counter functionality:

- gpt_hw_timer1/2/3: System timers for M33/M7_0/M7_1 cores
- gpt4: General purpose timer/counter

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-11-21 10:09:40 +02:00
Yongxu Wang
8583ba39fd dts: arm: nxp: fix imx943 compliance ci check formatted warning
Fix Device Tree formatting issues to comply with Zephyr coding style
guidelines for i.MX943 EVK board and dts files

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-11-21 10:09:40 +02:00
Andrey Smirnov
4ef0ded130 usb: hid: Introduce HID_USAGE_PAGE16()
Introduce HID_USAGE_PAGE16() in order to be able to declare vendor
specific usage pages which require 16-bit numbers.

Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
2025-11-21 10:09:28 +02:00
Alberto Escolar Piedras
b4ff1f661c tests/posix/net: Fix check for host libc
Let's use CONFIG_NATIVE_LIBC to detect builds with the host C library
instead of pressuming that any build targetting the POSIX architecture
uses it. This has not been the case for several years now, as we can
select different C libraries when targetting the POSIX architecture.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-21 10:09:08 +02:00
Alberto Escolar Piedras
bdfb7604c0 subsys/crc/crc_shell: Fix check for host libc
Let's use CONFIG_NATIVE_LIBC to detect builds with the host C library
instead of pressuming that any build targetting the POSIX architecture
uses it. This has not been the case for several years now, as we can
select different C libraries when targetting the POSIX architecture.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-21 10:09:08 +02:00
Alberto Escolar Piedras
bc77cfafe6 shell: Fix check for host libc
Let's use CONFIG_NATIVE_LIBC to detect builds with the host C library
instead of pressuming that any build targetting the POSIX architecture
uses it. This has not been the case for several years now, as we can
select different C libraries when targetting the POSIX architecture.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-21 10:09:08 +02:00
Alberto Escolar Piedras
65b5240bd4 include posix posix_types.h: simplify libc check
Let's use CONFIG_NATIVE_LIBC to detect builds with the host C library
instead of checking for both CONFIG_ARCH_POSIX && CONFIG_EXTERNAL_LIBC
as it is just simpler since we have this option.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-21 10:09:08 +02:00
Alberto Escolar Piedras
75ac1c18fc net: include: socket_types.h simplify libc check
Let's use CONFIG_NATIVE_LIBC to detect builds with the host C library
instead of checking for both CONFIG_ARCH_POSIX && CONFIG_EXTERNAL_LIBC
as it is just simpler since we have this option.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-21 10:09:08 +02:00
Ederson de Souza
67e229fd20 dts/arm/nuvoton/npcx: Fix uart2 clock on npcx4
Commit 08fedb4a80 ("drivers: uart: npcx: add asychronous API support")
missed updating the clocks for uart2. This patch fixes it.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-11-21 10:08:59 +02:00
Jordan Yates
f8eb167619 scripts: ci: simple ruff formatting
Basic `ruff` format operations to allow CI to enforce from now on.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-21 10:08:50 +02:00
Jordan Yates
3f77560b92 scripts: ci: test_plan: fix ruff reports
Fix problems reported by `ruff` and remove exclusions from the config
file.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-21 10:08:50 +02:00
Jordan Yates
2186558f37 scripts: ci: coverage: fix ruff reports
Fix problems reported by `ruff` and remove exclusions from the config
file.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-21 10:08:50 +02:00
Jordan Yates
3a165b6f5d scripts: ci: stats: merged_prs: fix ruff reports
Fix problems reported by `ruff` and remove exclusions from the config
file.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-21 10:08:50 +02:00
Jordan Yates
764ad5562a scripts: ci: version_mgr: fix ruff reports
Fix problems reported by `ruff` and remove exclusions from the config
file.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-21 10:08:50 +02:00
Jordan Yates
dc1c23312d scripts: ci: errno: fix ruff reports
Fix problems reported by `ruff` and remove exclusions from the config
file.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-21 10:08:50 +02:00
Jordan Yates
f2af864712 scripts: ci: check_compliance: fix ruff reports
Fix problems reported by `ruff` and remove exclusions from the config
file.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-21 10:08:50 +02:00
Jordan Yates
4c6bbae9cc scripts: ci: guideline_check: fix ruff reports
Fix problems reported by `ruff` and remove exclusions from the config
file.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-21 10:08:50 +02:00
Fabian Blatz
da9aa8fcad boards: esp32s3_touch_lcd_1_28: Make cst816s use interrupt by default
Since the interrupt line is connected, there is no reason to force
polling mode for this board.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-11-20 17:15:22 +00:00
Fabian Blatz
a7659d8460 drivers: input: cst816s: Default to interrupt if irq-gpio available
Changes the default value of the INPUT_CST816S_INTERRUPT flag to default to
true if the there is a compatible with the irq-gpio property enabled.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-11-20 17:15:22 +00:00
Robert Lubos
61acbb986b tests: net: all: Ensure TLS sockets are built with CID support
Some CID-related functionalities of the DTLS sockets are conditionally
compiled, make sure that code is built with tests/net/all test suite.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-20 17:15:15 +00:00
Robert Lubos
da5c9c8630 net: sockets: tls: Prefix overlooked CID-related symbols
Some CID-related symbols were prefixed but not updated in sockets_tls.c
as that configuration was not built by the tests/net/all test suite,
hence easy to miss.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-20 17:15:15 +00:00
Kfir Bracha
c53f050e02 net: http_server: Support reason phrase for chunked encoded response
Add HTTP reason phrases in chunked transfer-encoded responses

Signed-off-by: Kfir Bracha <kfirous@gmail.com>
2025-11-20 17:15:05 +00:00
Alberto Escolar Piedras
764e21032f net: l2: wifi_shell: remove unnecessary include
Since we are using sys_getopt now we do not need to pull unistd.h
for anything amore.
Let's remove it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-20 17:14:57 +00:00
Alberto Escolar Piedras
c3cd5d1c86 subsys/net wifi/wifi_shell: Fix use of sys_getopt global status
sys_getopt has now its global status variables prefixed with sys_getopt_
Let's fix the use here. Note this worked as Zephyr's POSIX_C_LIB_EXT
keeps a replica of these variables without the prefix.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-20 17:14:57 +00:00
Alberto Escolar Piedras
24277bca8d subsys/crc: Fix getopt/sys_getopt use
sys_getopt has now its global status variables prefixed with sys_getopt_
Let's fix the use here. Note this worked as Zephyr's POSIX_C_LIB_EXT
keeps a replica of these variables without the prefix, and it is
enabled by default.
And since sys_getopt was split from POSIX_C_LIB_EXT this component
only needs to enable GETOPT and no the whole POSIX_C_LIB_EXT.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-20 17:14:57 +00:00
Alberto Escolar Piedras
4411efb5a7 samples/subsys/shell/shell_module: Fix use of sys_getopt global status
sys_getopt has now its global status variables prefixed with sys_getopt_
Let's fix the use here. Note this worked as Zephyr's POSIX_C_LIB_EXT
keeps a replica of these variables without the prefix, and it is
enabled by default.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-20 17:14:57 +00:00
Alberto Escolar Piedras
065289e27d samples/shields/npm6001_ek: Fix use of sys_getopt global status
sys_getopt has now its global status variables prefixed with sys_getopt_
Let's fix the use here. Note this worked as Zephyr's POSIX_C_LIB_EXT
keeps a replica of these variables without the prefix.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-20 17:14:57 +00:00
Alberto Escolar Piedras
68e4d0c517 doc/services/shell: Fix incorrect variable name
sys_getopt has now its global status variables prefixed.
Let's fix the docs.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-20 17:14:57 +00:00
Jamie McCrae
02e6615020 doc: services: pm: device: Fix missing #ifdef
Adds a missing #ifdef for CONFIG_DEVICE_DEINIT_SUPPORT for the
driver deinit function example

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-20 17:14:50 +00:00
Jamie McCrae
b128e51994 kernel: kconfig: Disable DEVICE_DEINIT_SUPPORT by default
This Kconfig, which it itself admits is for a "very specific case"
was set to default as yes, this includes extra code in drivers with
this functionality and increases driver struct size for cases where
this function isn't needed (i.e. all because it's enabled by
default), therefore change it to be opt-in rather than opt-out

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-20 17:14:50 +00:00
Jamie McCrae
005a292bbd tests: pm: device_driver_init: Add CONFIG_DEVICE_DEINIT_SUPPORT
Adds this Kconfig, which is needed for the test, because it will
no longer be globally enabled by default

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-20 17:14:50 +00:00
Jamie McCrae
cf08b9062f tests: kernel: device: Add CONFIG_DEVICE_DEINIT_SUPPORT
Adds this Kconfig, which is needed for the test, because it will
no longer be globally enabled by default

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-20 17:14:50 +00:00
Jamie McCrae
13b722b36f drivers: i2c: i2c_bflb: Fix not guarding deinit function
Fixes an issue with an unused function being defined if
CONFIG_DEVICE_DEINIT_SUPPORT was disabled

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-20 17:14:50 +00:00
Jamie McCrae
57263db2e2 drivers: serial: uart_bflb: Fix not guarding deinit function
Fixes an issue with an unused function being defined if
CONFIG_DEVICE_DEINIT_SUPPORT was disabled

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-20 17:14:50 +00:00
Fabrice DJIATSA
9478522b88 tests: drivers: disk: disk_access: change sdmmc bus-with on stm32n6570_dk
The test required an SD card to be plugged into the board.
the test only passes with the bus width set to 1

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-11-20 17:14:21 +00:00
Fabrice DJIATSA
2a662e7ed6 samples: drivers: spi_flash: exclude stm32n6570_dk from CI testing
Decide to remove stm32n6570_dk from this scenario since it seems to
be relevant and work when CONFIG_STM32_MEMMAP is enabled based on
how flash_stm32_xspi.c driver is implemented.

Since there is already a scenario(sample.drivers.spi.flash.stm32.memmap)
that test this mode, excluding from this scenario could also help us
avoid erasing the memory twice every day at the same address.

Note:
  test with dma/interrupt mode will succeed without enable
  CONFIG_STM32_MEMMAP if we remove dependency
  on CONFIG_STM32_APP_IN_EXT_FLASH in 'flash_stm32_xspi_read'.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-11-20 17:14:21 +00:00
Fabrice DJIATSA
a788c77a52 drivers: flash: stm32_xspi: extend HAL DMA EX support to STM32N6X
add SOC_SERIES_STM32N6X dependency with USE_STM32_HAL_DMA_EX
to enable building applications that use XSPI with DMA
configuration.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-11-20 17:14:21 +00:00
Fabrice DJIATSA
5aa0ec8053 tests: application_developement: ram_context_for_isr: exclude stm32n6570_dk
The test requires RAM-based vector table relocation
(CONFIG_SRAM_VECTOR_TABLE), which depends on CONFIG_XIP being enabled.
However, stm32n6570_dk lacks internal flash and does not support XIP,
making SRAM vector relocation unsupported.As a result, the test cannot
validate ISR execution from RAM on this platform.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-11-20 17:14:21 +00:00
Fabrice DJIATSA
6c681272e6 boards: st: reduce the size of ram and flash on stm32n6570_dk
some scenarios (libraries.cmsis_dsp.transform.cq31,
libraries.cmsis_dsp.transform.rq31.fpu) in the test
tests/lib/cmsis_dsp/transform require a minimum RAM of 1024 KB
because they deal with data needing large buffer sizes for dynamic
allocation. However, 1024KB is insufficient for the tests to succeed.

By decreasing these values, the test will no longer be performed.
The rest of the tests will try to fit within SRAM size.

Note: checks have been made to ensure that 512 KB of flash and
128 Kb of RAM are enough to perform relevant daily tests on the
stm32n6570_dk.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-11-20 17:14:21 +00:00
Fabrice DJIATSA
bcfb5bc055 samples: subsys: usb: uvc: boards: increase main stack size
Increase the size of the main stack to avoid a stack overflow error
when running some sample scenarios.
This occur by example on stm32n6570_dk,
sample.subsys.usb.uvc.encoder.jpeg scenario.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-11-20 17:14:21 +00:00
Fabrice DJIATSA
f0a0053d41 tests: drivers: gpio: api_1pin: boards: update led0 on stm32n6570_dk
Replace the green user LED 1 with the red user LED 2 from alias led0
for the test to succeed.
LED1 is connect from a circuitry that prevents GPIO state from
triggering a interrupt while LED2 is directly wired to the GPIO pin.

While we're at it, change the LED's state from GPIO_ACTIVE_HIGH to
GPIO_ACTIVE_LOW to match the circuitry.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-11-20 17:14:21 +00:00
Anas Nashif
4704c6d24d drivers: promote APIs from unstable to stable
Quite a few well established APIs are stuck in unstable status, move
them to stable.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-20 17:14:12 +00:00
Jukka Rissanen
77bdec412f net: openthread: Remove invalid assert
There is no openthread_instance so the assert will always fail so
remove it to prevent compilation issue.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-20 16:00:46 +00:00
Jukka Rissanen
f97e33eb38 tests: net: all: Verify OpenThread compilation
Try to catch various OpenThread related compilation issues.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-20 16:00:46 +00:00
Mathieu Choplain
a8349e7f10 migration-guide: 4.4: add entry about STM32 power configuration
Add an entry about the STM32 power supply configuration to the migration
guide for release 4.4 - it is now done through Devicetree instead of
Kconfig, and all existing Kconfig symbols have been deleted.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-20 16:00:39 +00:00
Mathieu Choplain
df71f6c730 soc: st: stm32: wba: replace Kconfig power supply configuration with DT
Replace the existing infrastructure to specify power supply configuration
through Kconfig with Devicetree, and update all boards according to new
mechanism.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-20 16:00:39 +00:00
Mathieu Choplain
3b55e9a219 soc: st: stm32: u5: replace Kconfig power supply configuration with DT
Replace the existing infrastructure to specify power supply configuration
through Kconfig with Devicetree.
Set the LDO as default to reduce out-of-tree breakage - most users were
relying on LDO being the default and it is harmless to use LDO if board
is designed for SMPS. (Existing SMPS users should break anyways since the
Kconfig symbol no longer exists, but this ensures they actively set the
power supply to SMPS in DT)

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-20 16:00:39 +00:00
Mathieu Choplain
a3b6347b1d dts: bindings: power: introduce STM32 PWRC for LDO+SMPS series
Introduce power controller binding for series equipped with two voltage
regulators (LDO + SMPS).

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-20 16:00:39 +00:00
Mathieu Choplain
7477212372 soc: st: stm32: h7rs: replace Kconfig power supply configuration with DT
Replace the existing infrastructure to specify power supply configuration
through Kconfig with Devicetree. Also update all boards that were defining
the Kconfig to no longer do so.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-20 16:00:39 +00:00
Mathieu Choplain
a14f0b8940 dts: arm: st: h7rs: add Power Controller node
Add node representing the Power Controller to SoC DTSI of STM32H7RS series,
and update DTS of all STM32H7RS-based boards since the new node has
required properties.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-20 16:00:39 +00:00
Mathieu Choplain
9f4d8d57c6 dts: bindings: power: introduce STM32H7R/S Power Controller
Introduce a new binding for the Power Controller of the STM32H7R/S series.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-20 16:00:39 +00:00
Mathieu Choplain
800fefa82b soc: st: stm32: h7: replace Kconfig power supply configuration with DT
Replace the existing infrastructure to specify power supply configuration
through Kconfig with Devicetree. Also update all boards that were defining
the Kconfig to no longer do so.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-20 16:00:39 +00:00
Mathieu Choplain
2af417fae1 dts: arm: st: h7: add Power Controller node
Add node representing the Power Controller to SoC DTSI of STM32H7 series,
and update DTS of all STM32H7-based boards since the new node has required
properties.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-20 16:00:39 +00:00
Mathieu Choplain
6b1aa557ca dts: bindings: power: introduce STM32H7 power controller binding
Introduce a new binding for the power controller of STM32H7 series.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-20 16:00:39 +00:00
Mathieu Choplain
5ea01d9a4c boards: ruiside: art_pi: fix DTS formatting issues
Fix some formatting issues in the board's DTS which trigger CI failures.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-20 16:00:39 +00:00
Siratul Islam
6dad32c81c drivers: display: hub12: add horizontal chaining support
- Add support for chaining multiple 32x16 panels horizontally
- Also fixed a race condition issue.

Signed-off-by: Siratul Islam <email@sirat.me>
2025-11-20 16:00:29 +00:00
Siratul Islam
62f585de7e dts: bindings: display: hub12: add horizontal chaining support
- Add support for chaining multiple 32x16 panels horizontally by
  setting width to multiples of 32 (64, 96, 128, etc).

Signed-off-by: Siratul Islam <email@sirat.me>
2025-11-20 16:00:29 +00:00
Yurii Lozynskyi
088536e547 drivers: uart: ifx_cat1: disable async API for SOC_CY8C6244LQI_S4D92
Exclude SOC_CY8C6244LQI_S4D92 from UART async API support due to
hardware limitations, similar to SOC_FAMILY_INFINEON_CAT1C.

Signed-off-by: Yurii Lozynskyi <yurii.lozynskyi@infineon.com>
2025-11-20 16:00:16 +00:00
Yurii Lozynskyi
b1fa628433 uart: async_api: add cy8ckit_062s2_ai board support
Add overlay files and sample configuration for cy8ckit_062s2_ai
to enable UART async API functionality.

Signed-off-by: Yurii Lozynskyi <yurii.lozynskyi@infineon.com>
2025-11-20 16:00:16 +00:00
Yurii Lozynskyi
2a3f708279 boards: infineon: add trade marks to board names
Update board full names to include PSOC™ trade mark symbols
for consistent branding across Infineon board definitions.

Signed-off-by: Yurii Lozynskyi <yurii.lozynskyi@infineon.com>
2025-11-20 16:00:16 +00:00
Carles Cufi
db0c34d836 c standard: Default to C17 as the minimum required C standard
C99 has been the minimum required C standard version for Zephyr since
its inception. After multiple attempts and discussions, a decision has
been made to upgrade to C17 going forward.
This commits replaces the default C standard from C99 to C17 in the
configuration and build system, and deprecates support for the older
standards.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-11-20 09:04:46 -05:00
Mykyta Poturai
f3b9d18711 xen: Add support for changing Xen Sysctl interface version
Add a new Kconfig option CONFIG_XEN_SYSCTL_INTERFACE_VERSION that allows
to change the version of the Sysctl interface used by Zephyr to issue
sysctl hypercalls.
For now versions 0x15 is supported.

Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
2025-11-20 09:01:06 -05:00
Mykyta Poturai
4f6fb8989a xen: Add support for changing Xen Domctl interface version
Add a new Kconfig option CONFIG_XEN_DOMCTL_INTERFACE_VERSION that allows
to change the version of the Domctl interface used by Zephyr to issue
domctl hypercalls. Add compile-time checks to enable or disable certain
Domctl operations based on the selected Domctl interface version.
For now versions 0x15, 0x16, and 0x17 are supported.

Also it required to correctly guard domctl call that were not supported
prior to specified version.

Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
2025-11-20 09:01:06 -05:00
Mykyta Poturai
f344dcb274 xen: domctl: Get back created domain id
If 0 is passed as domain id to the Xen createdomain hypercall, it will
allocate a new domain id and return it via the domctl structure.
Allow callers to access this new domain id via a pointer arg.
This will allow to create domains without explicitly specifying the
domain id for them.

Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
2025-11-20 09:01:06 -05:00
Mykyta Poturai
db984ae4d2 xen: domctl: add doxygen comments for domctl functions
Document all of the public functions in the domctl API with doxygen

Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
2025-11-20 09:01:06 -05:00
Mykyta Poturai
eb65bc0f43 xen: domctl: fix function parameter name in set/get_paging_mempool_size
The size is passed in bytes, not in megabytes. So rename the parameter
to avoid confusion.

Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
2025-11-20 09:01:06 -05:00
Dmytro Semenets
6a2db68fcf drivers: xen: dom0: added getvcpuinfo domctl call
Domain control call "XEN_DOMCTL_getvcpuinfo" provides information
about domain's virtual CPU(s). It can be used by Domain-0 services
for gathering statistic and vCPUs current status.

Signed-off-by: Dmytro Semenets <dmytro_semenets@epam.com>
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
2025-11-20 09:01:06 -05:00
Dmytro Semenets
f131d5f3ed drivers: xen: dom0: add Xen sysctl hypercall
This hypercall can be used get some information about physical machine
and running guests:

- sysctl hypercall "xen_sysctl_getphysinfo" allows read information about
physical machine: number CPUs, memory sizes, hardware capabilities, etc.

- sysctl hypercall "xen_sysctl_getdomaininfolist" returns array of domain
info structures that provide information about particular domain(s).

Signed-off-by: Dmytro Semenets <dmytro_semenets@epam.com>
Signed-off-by: Mykyta Poturai <mykyta_poturai@epam.com>
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
2025-11-20 09:01:06 -05:00
Dmytro Semenets
eaaa5400dc drivers: xen: add xen version hypercall
Xen API contains hypercall, which allows domains to identify Xen
version, that is currently used on the system. It can be used to check
if current version is supported by Zephyr or to change behavior of the
drivers or services.

Signed-off-by: Dmytro Semenets <dmytro_semenets@epam.com>
Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
2025-11-20 09:01:06 -05:00
Emil Gydesen
797fa99f57 Bluetooth: BAP: Shell: Refactor receive states
Refactor how receive states are handled in the BAP
shell.

The scan delegator's receive states are not available from
the broadcast sink, and the broadcast sink makes sure to
properly set the pa_sync object in the receive state
struct.
The receive states are now also using the BAP service data to
identity the receive state when using PAST.

The broadcast assistant will now cache data from a remote device,
and makes it available to e.g. CAP.
Additionally if there is a broadcast source, we cache the values
neccesary to identity if a remote receive state represents our
local broadcast source.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-20 09:00:27 -05:00
John Batch
80e3b271e7 MAINTAINERS: update Infineon Platforms collaborators
Adds jsbatch and billwatersiii as collaborators for Infineon Platform
and hal_infineon west project.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-20 09:00:17 -05:00
Emil Gydesen
be874a2aaf Bluetooth: BAP: Missing assignment to aggregated_bis_syncs
When using the add_src and mod_src APIs the
aggregated_bis_syncs variable was only ever set to 0
and never updated, thus making all calls to
bis_syncs_unique_or_no_pref to be true.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-20 08:59:49 -05:00
Peter van der Perk
819955b52c kernel: thread: mark return undefined in z_thread_entry using DWARF
Add DWARF hint to handle z_thread_entry correctly
in debuggers. This function starts a new thread and never returns.
Use `.cfi_undefined` so DWARF-based unwinding does not rely on return.
Without this, unwinding may follow a bogus return address, leading to
invalid memory reads and potential bus faults during backtrace.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-11-20 08:59:42 -05:00
Aleksandr Khromykh
f93e78b7f7 tests: bluetooth: tester: fix model rx handler
Commit fixes the model rx handler.
Model can receive maximum access payload.
Test should be able fit maximum access payload and
its own header for serial communication.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-11-20 08:59:31 -05:00
Pieter De Gendt
1384cfa83c MAINTAINERS: remove pdgendt as Atmel collaborator
Atmel related work has reduced, remove my collaborator role.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-20 08:59:10 -05:00
Emil Gydesen
318067ec6c tests: Bluetooth: tester: Removed bad guard in btp_gap.h
As per the Zephyr coding guidelines, functions declarations
in header files should not be conditionally compiled.

This fixes an issue with tester_gap_clear_adv_instance
where btp_gap.c always expect it to be available.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-20 08:58:56 -05:00
Armando Visconti
0f9932a9ae west.yml: fix build warnings in hal_st module
Fix hal_st module that broke CI.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-11-20 06:07:57 -05:00
TOKITA Hiroshi
571f5b92a0 drivers: xen: add DMOP hypercall wrappers
Add wrappers for following XEN_DMOP_* hypercalls.
These enables Xen device model control path:
dm_op provides operations to create/manage the ioreq server
so guest MMIO accesses are trapped and handled by the hypervisor.
These are guarded by CONFIG_XEN_DMOP.

- dmop
  - dmop_create_ioreq_server
    XEN_DMOP_create_ioreq_server
  - dmop_map_io_range_to_ioreq_server
    XEN_DMOP_map_io_range_to_ioreq_server
  - dmop_set_ioreq_server_state
    XEN_DMOP_set_ioreq_server_state
  - dmop_nr_vcpus
    XEN_DMOP_nr_vcpus
  - dmop_set_irq_level:
    XEN_DMOP_set_irq_level

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-11-20 06:06:43 -05:00
Anas Nashif
909373f10c scripts: set_assignee: get area object before before collabs
In the manifest case, we were operating on a str instead of the area
object.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-20 06:05:26 -05:00
Bindu S
4a0e6d48c9 samples: drivers: uart: async_api: Added support for ADL
Added support for async api application on ADL-n platform

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-11-20 06:04:09 -05:00
Jukka Rissanen
cbb56fddc3 doc: migration-guide-4.4: Add network API changes
Add information about the network API changes in 4.4 release.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-20 06:03:57 -05:00
Vit Stanicek
6a67a5570e dts: lpcxpresso55s69: Make mikrobus_i2c compliant
Remove non-compliant EOL in the mikrobus_i2c empty node declaration in
boards/nxp/lpcxpresso55s69/lpcxpresso55s69.dtsi.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-11-20 06:03:44 -05:00
Vit Stanicek
587bb77d8c samples: i2s_codec: Enable on mimxrt1170_evk@B/cm4
Add aliases to domain DT overlay and instantiate the wm8962 driver in
it. Add Kconfig fragment and a DT overlay for the sample.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-11-20 06:03:44 -05:00
Vit Stanicek
ea55b27c38 samples: i2s_codec: Enable on rd_rw612_bga
Instantiate the wm8904 driver in rd_rw612_bga's DT. Add MCLK clock
configuration to rw612's soc.c. Modify pinmux definitions to route
those. Add DT and Kconfig fragments to the sample. Document output jack
utilised.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-11-20 06:03:44 -05:00
Vit Stanicek
7341b8ad89 samples: i2s_codec: Enable on lpcxpresso55s69/cpu0
Modify board's pinctrl nodes to include the MCLK signal. Instantiate the
wm8904 driver. Add board specific Kconfig fragment and DT overlay. Set
up the MCLK signal.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-11-20 06:03:44 -05:00
Vit Stanicek
b3603a3fa5 boards: mimxrt685_evk/cm33: Update I2S sharing
Add SCK and WS signals to a shared signal set between Flexcomm #1 and
Flexcomm #3 for the mimxrt685_evk/mimxrt685s/cm33.

This enables the board to both transmit and receive audio, as the BCK
and WS signals produced by the WM8904 codec are only connected to the
Flexcomm #1 peripheral.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-11-20 06:03:44 -05:00
Vit Stanicek
f5cdf8153d dts: mimxrt685_evk: Map all pins of Flexcomm #1
Map all pins of RT685's Flexcomm #1 peripheral.

Needed for opration of Flexcomm #1 in I2S mode or Flexcomm #3 in I2S
mode with shared signals.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-11-20 06:03:44 -05:00
Vladislav Kulikov
0b3ec11762 smf: make while conditions MISRA 14.4 compliant
Replace pointer-as-condition checks, with explicit != NULL comparisons.
Which satisfies MISRA-C:2012 Rule 14.4 (controlling expressions shall be
essentially Boolean).

Signed-off-by: Vladislav Kulikov <vlad_kulikov_c@pm.me>
2025-11-20 06:03:31 -05:00
Charles Hardin
76c1d713c1 drivers: pwm: stm32: add device tree configuration for deadtime
When using an stm32 in a bridge circuit with complementary outputs,
the deadtime needs to be configurable to avoid shoot-thru current
on the circuit. So, the HAL has the configuration in the BDTR init
and use that api access to set the configuration.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-11-20 06:03:20 -05:00
Qingsong Gou
52e9064c65 boards: sifli: sf32lb52_devkit_lcd: enable trng
Enable trng on sf32lb52_devkit_lcd board

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-20 06:03:12 -05:00
Qingsong Gou
4519041538 drivers: entropy: sf32lb: add trng driver support
Add trng driver for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-20 06:03:12 -05:00
Qingsong Gou
b346fc3db4 dts: arm: sifli: sf32lb52x: add trng
Add trng for sifli sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-20 06:03:12 -05:00
Qingsong Gou
30079aa2bc dts: bindings: rng: add sifli,sf32lb-trng
Add sifli,sf32lb-trng

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-20 06:03:12 -05:00
Bartosz Miller
e638687af4 tests: driver: flash: Increase the single I/O test transfer timeout
Increase the allowed transfer timeout for the signel I/O test.

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-11-20 06:02:58 -05:00
John Batch
3c126ef124 tests: cyw920829m2evk_02: Updating tests boards for multiple socs
Updating supported tests for the cyw920829m2evk_02 board to support
multiple socs.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-20 06:02:48 -05:00
John Batch
2e1e786d61 Samples: Updating board files in samples for CYW820829
Updates all supported samples for the cyw920829m2evk_02 board to support
multiple SOC options.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-20 06:02:48 -05:00
John Batch
993196de27 Boards: Infineon: cyw920829m2evk_02: Adding new procssor variants
Adds the following processor variants and associated cards to the
cyw920829m2evk development kit:
- cyw20829b1010
- cyw20829b1340

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-20 06:02:48 -05:00
John Batch
23132b1dab Boards: Infineon: cyw920829m2evk_02: Reorganizing board hardware
Reorganizing board hardware definition in the device tree to better
reflect hardware design of separate processor board and base board.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-20 06:02:48 -05:00
John Batch
a736bb4cba Drivers: Bluetooth: Infineon: Updating CYW920829 Bluetooth for B1
- Updates Bluetooth driver to include bluetooth firmware for B1 device
  revision.
- Changes build behavior to allow building without blobs being fetched
  to allow CI to verify build.
- Adds cmake warning if blobs are not present.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-20 06:02:48 -05:00
John Batch
36ecb5a39c SOC: Infineon: CYW20829: Adding B1 devices to CYW20829 Family.
Adding B1 revision devices to CYW20829 family.
Clean up unsupported devices from SOC files.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-20 06:02:48 -05:00
John Batch
9102e8856d DTS: Infineon: CYW20829: Adding new SOC devices
Adding new MPN files for B1 part revision.
Updating existing parts to be consistent with changes made for other new
devices (PSOC Edge, PSOC Control C3).

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-20 06:02:48 -05:00
John Batch
33c49ced29 DTS: Infineon: CYW20829: Devicetree cleanup
Renames mpn device tree files to lowercase for consistency with other
devices.
Removes incorrect mpn and package devicetree files.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-20 06:02:48 -05:00
Alain Volmat
38d89c261c display: stm32-ltdc: ensure read/write rectangle fit into display
Ensure that x,y/width-height rectangle mentioned in display_read
and display_write are actually part of the framebuffer, otherwise
return an error.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-20 06:02:40 -05:00
Alain Volmat
21def020bd samples: add proper display api functions return value checks
Ensure that display api function return values are checked.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-20 06:02:40 -05:00
Cheng Chang
5959016f1b Bluetooth: classic: obex: Fix active client validation logic
Fix the active client validation in OBEX abort operations to
handle concurrent request scenarios. The check now
ensures that if there is an active client and it's different
from the current client, the operation is rejected with -EBUSY.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-11-20 06:02:24 -05:00
Lukasz Fundakowski
3a1428f957 twister: Keep pytest output formatting in log
Fixed formatting of pytest output in log by not removing
leading whitespaces.

Signed-off-by: Lukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-11-20 06:02:15 -05:00
William Tang
8e00b688b4 dts: arm: nxp: s32k146: remove CAN FD support from flexcan2
Remove the `nxp,flexcan-fd` compatible property from flexcan2 node
for S32K146, keeping only `nxp,flexcan`. The FlexCAN2 instance on
S32K146 does not support CAN FD functionality, unlike flexcan0 and
flexcan1.

Signed-off-by: William Tang <william.tang@nxp.com>
2025-11-20 06:01:45 -05:00
Peter Johanson
eace19a59e drivers: input: Support invert x/y in rel mode
Despite the datasheet stating otherwise, the Pinnacle based trackpads can
have their X/Y data inverted when operating in relative mode, so set those
configs in all modes during init.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-11-20 06:01:35 -05:00
Cheng Chang
ca1a522f93 bluetooth: classic : shell : Add test visibility for static functions
Add STATIC macro definition to conditionally expose static functions
for testing purposes. When CONFIG_ZTEST is enabled, STATIC expands
to nothing, making functions globally visible for unit tests.
Otherwise, STATIC expands to 'static' for normal builds.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-11-20 06:01:23 -05:00
Jerzy Kasenberg
7d88f4e886 smartbond_timer: Correct rounding in sys_clock_elapsed
The CYC_TO_TICK macro converts hardware cycles to
system ticks. Smartbond timers can be driven by XTAL32,
RC32K, or RCX sources. At the application level,
tests use milliseconds, which introduces rounding when
converting to hardware cycles.

Previously, CYC_TO_TICK rounded up, causing sys_clock_elapsed()
to sometimes report one extra tick. This value, propagated
through z_add_timeout() via elapsed(), was then used by tests
to determine the current time and the next wake-up point.
As a result, sleep duration was shortened by one tick,
leading to an unnecessary extra wake-up detected by the test.

With this fix, sys_clock_elapsed() no longer reports ticks
that have not fully elapsed, ensuring accurate sleep timing.

Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg.xr@bp.renesas.com>
2025-11-20 06:01:14 -05:00
Jerzy Kasenberg
3591f5cc82 tests: kernel: context: Disable PM for Smartbond
kernel context test check timing and extra interrupts
being thrown during sleep tests.

Power management is disabled because during tests
code tests sleep and with power management enabled
it could result in going to deep sleep that takes
more time than is allowed.

Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg.xr@bp.renesas.com>
2025-11-20 06:01:14 -05:00
Dylan Philpot
f1c2ce4f40 MAINTAINERS: update TI MSPM0 maintainers
Adds d-philpot as maintainer for TI MSPM0
Platform and hal-ti west project.

Signed-off-by: Dylan Philpot <d-philpot@ti.com>
2025-11-19 15:58:03 -05:00
Hardevsinh Palaniya
c784481ca0 drivers: video: Add ov5642 camera driver
Add driver to support ov5642 camera sensor

Co-developed-by: Rutvij Trivedi <rutvij.trivedi@siliconsignals.io>
Signed-off-by: Rutvij Trivedi <rutvij.trivedi@siliconsignals.io>
Signed-off-by: Hardevsinh Palaniya <hardevsinh.palaniya@siliconsignals.io>
2025-11-19 15:57:05 -05:00
Jamie McCrae
1cacdf8e43 doc: services: device_mgmt: smp_groups: Add note on single setting
Adds a note that saving single settings is supported, when the
required Kconfig is enabled

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-19 15:56:49 -05:00
Jamie McCrae
24e0515206 doc: releases: release-notes: 4.4: Add note on new settings Kconfigs
Lists new Kconfigs added to settings allowing single settings to be
saved to NVM without modifying their value

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-19 15:56:49 -05:00
Jamie McCrae
2443de2a7c tests: mgmt: mcumgr: settings_mgmt: Add test for single setting save
Expands the test to check thr functionality of the newly adding save
subtree/save single setting

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-19 15:56:49 -05:00
Jamie McCrae
1995b669a1 mgmt: mcumgr: grp: settings_mgmt: Allow saving single setting
Adds functionality that allows saving a single setting to NVM using
the newly added function in the settings subsystem. This also
replaces calling the subtree save function if it the underlying
Kconfig is enabled to reduce code paths in settings mgmt

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-19 15:56:49 -05:00
Jamie McCrae
6c43b61255 tests: settings: functional: Enable single settings check
Enables the Kconfig for the newly introduced
settings_save_subtree_or_single_without_modification() settings
function so that it is tested in CI

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-19 15:56:49 -05:00
Jamie McCrae
37677310c4 tests: settings: functional: Add test for save single function
Adds a test for the newly introduced
settings_save_subtree_or_single_without_modification() settings
function which allows saving a single value or subtree to NVM
without modifying the values

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-19 15:56:49 -05:00
Jamie McCrae
4616a8ac77 settings: Add function for saving (unchanged) single item/subtree
Adds a function that allows saving of a single setting item without
changing the value, or saving a subtree of settings, to the storage
backend

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-19 15:56:49 -05:00
Fei Wang
f1b3ee50b7 tests: lib: mpsc_pbuf:reproduces the deadlock scenario
The test creates two threads: a producer that calls mpsc_pbuf_alloc and
may block inside add_skip_item when entering k_sem_take, and a consumer
that calls mpsc_pbuf_claim when only a small amount of buffer space is
left.

In this condition mpsc_pbuf_claim attempts to reserve space even though
no data is available, preventing the producer from making progress.

Without the fix, the producer thread remains blocked indefinitely in
k_sem_take. With the fix applied, the consumer performs the required
k_sem_give, allowing the producer to resume allocation and the test to
complete.

Signed-off-by: Fei Wang <fei.wang@jaguarmicro.com>
2025-11-19 15:56:39 -05:00
Fei Wang
8af60c6239 lib: os: mpsc_pbuf: fix potential semaphore wait forever
One thread calls mpsc_pbuf_alloc to produce data, which invokes
add_skip_item and steps into k_sem_take.

Another thread calls mpsc_pbuf_claim to consume data. In this condition,
mpsc_pbuf_claim has only small remaining space and needs to call rd_idx_inc
to reserve space, but there is still no data available.

The consumer should call k_sem_give to wake mpsc_pbuf_alloc again,
so the producer can allocate space and continue producing data.

Without this wake-up, the producer thread may wait forever in
k_sem_take, leading to a deadlock situation.

Signed-off-by: Fei Wang <fei.wang@jaguarmicro.com>
2025-11-19 15:56:39 -05:00
Tomáš Juřena
598b904d7e doc: smf: Fix return type in event sample
Fix mismatch between `*_run` function return type and implementation.
The run functions return `enum smf_state_result`, but the event-driven
sample defined them as void while still returning a value.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-11-19 15:56:18 -05:00
Appana Durga Kedareswara rao
3ca21faab4 maintainers: Add Kedareswara Rao Appana as Xilinx collaborator
Add myself as a collaborator for Xilinx components. I have been actively
contributing and will continue reviewing and testing patches for the Xilinx
subsystems.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-11-19 15:55:56 -05:00
Vladislav Kulikov
51c96fc453 tests: smf: use BIT() for flat state flags
Replace manual '1 << n' flag definitions in the flat SMF test with the
common BIT(n) macro. This aligns the test with other SMF test.

Signed-off-by: Vladislav Kulikov <vlad_kulikov_c@pm.me>
2025-11-19 15:55:47 -05:00
Jerzy Kasenberg
31c05b13e7 test: scheduling: Disable works for Smartbond
Smartbond device schedules periodic calibrations work
and delayed work for xtal32 settle.
Those works can disrupt strict timing that test checks.

This change disables calibration for RCX and RC32K.
Xtal32k settle work is schedule late as not to be
executed during tests.

Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg.xr@bp.renesas.com>
2025-11-19 15:55:40 -05:00
Jerzy Kasenberg
7979dd77e9 drivers: clock_control: smartbond: Move calibration to DT
Calibration interval was specified in Kconfig now
configuration is moved to device tree.
This allows to have different values for RCX and RC32K.

While calibration is vital for correct system timing, it
periodically schedules work that measures frequency of RCX or
RC32K.

Now it's also possible to set calibration interval to 0
to prevent calibration entirely. This may be useful for
scheduling tests that are sensitive to number of active
threads.

Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg.xr@bp.renesas.com>
2025-11-19 15:55:40 -05:00
Carles Cufi
b2d65fbc46 soc: nxp: imxrt: Select missing ATOMIC_OPERATIONS_*
Follow-up to
689ba58b10.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-11-19 15:54:32 -05:00
Alexander Svensen
78729f4ff0 bluetooth: audio: scan_delegator: Fix validation
- Fixes bug where bis_sync_requests were wrongfully validated.
  - Two BISes across subgroups should not have the same bits set
- Remove use of internal->bis_syncs before it's updated in mod_src.

Signed-off-by: Alexander Svensen <alexander.svensen@nordicsemi.no>
2025-11-19 15:54:23 -05:00
Benjamin Cabé
d78a9baff9 samples: net: ocpp: add websocket path configuration option
Make the websocket path configurable since having it hardcoded in the
sample is not practical.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-19 15:54:11 -05:00
Carles Cufi
cdeddeaecc tests: mspi: flash: Use platform_allow for the no-multithreading test
Since many boards enable features that require multithreading (e.g. USB)
that conflict directly with the `CONFIG_MULTITHREADING=n` required for
the test variant, and the filter:
filter: dt_alias_exists("mspi0") and CONFIG_FLASH_MSPI_NOR
does not work since that requires Devicetree and Kconfig building
successfully, which is not the case here (Kconfig fails since
dependencies are not met).

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-11-19 15:54:02 -05:00
Mathieu Choplain
ee71b30106 drivers: usb: udc: stm32: inline priv_pcd_prepare
`priv_pcd_prepare` now only consumes per-instance information or constants.
Instead of calling it indirectly through a function pointer, it could be
called directly, but since it is very shorted and used from only one place,
inline it instead.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-19 15:53:55 -05:00
Mathieu Choplain
70efb293ce drivers: usb: udc: stm32: move base address to instance configuration
Instead of consuming the DT property directly, save the USB controller base
address in the instance configuration block and retrieve it at runtime.
This makes the driver more instance-aware.

While at it, cleanup `priv_pcd_prepare` to always consume the property
(through the instance configuration) instead of sometimes using the base
address from CMSIS.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-19 15:53:55 -05:00
Mathieu Choplain
ea07796a2d drivers: usb: udc: stm32: move IRQn to instance configuration
Move the controller's IRQn from instance data to instance configuration,
and update all consumers accordingly. One instance which used the global
UDC_STM32_IRQ is also updated to consume the per-instance field instead.

While at it, add missing comments for certain fields of the configuration.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-19 15:53:55 -05:00
Tom Burdick
0c50b929bb doc: Sensor Read and Decode no longer Experimental
The docs signaled to readers that Read and Decode was an experimental API
while Kconfig did not. These are no longer experimental APIs. We have a
solid number of implementations in the tree now showing these APIs in
use in the real world. They are still however stabilizing!

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-11-19 15:53:44 -05:00
Luca Burelli
93f65752d0 MAINTAINERS: add new Arduino Platforms collaborators
Add Ibrahim Abdelkader and Mattia Pennasilico as collaborators for the
Arduino boards area, as they have long experience on our boards and
will provide insightful reviews.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-11-19 15:53:37 -05:00
Alberto Escolar Piedras
72090b73ef lib/utils/getopt: Fix trivial issues detected by SonarCloud
Fix uncontroversional issues detected by SonarCloud, whose fixes are
trivial, and improve code readability.

This commit fixes multiple sonar cloud detected issues like:
"Give names to the parameters of this function prototype."
"Declare the variable "i"/"j" inside the loop"
"Remove this empty statement"

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-19 15:53:28 -05:00
Alberto Escolar Piedras
9fee526365 net: Fix EVENTFD kconfig selection
Since 820cd34dbb these net components
use ZVFS_EVENTFD directly instead of thru EVENTFD.
So, let's select ZVFS_EVENTFD directly instead of indirectly
thru EVENTFD.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-19 15:53:19 -05:00
Anas Nashif
a43e2a76a1 MAINTAINER: add mipi_dbi.h header to related area
Add header to corrosponding area.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-19 15:52:53 -05:00
Anas Nashif
4758cfadf5 tests: twister blackbox: filter module installation
Do not install modules we do not need for testing to save space.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-19 09:18:56 -05:00
Anas Nashif
75f69425dd ci: tags: add posix headers to posix group in tags
When posix headers change, make sure we verify the posix portability
layer.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-19 09:18:36 -05:00
Kai Vehmanen
3f6ef5043c soc: intel_adsp: ace30: allow userspace to execute cold functions
Add access to functions in cold section for XTENSA_MMU_MAP_SHARED
(used for user-space threads). This allows to call functions marked
with "__cold" from user threads.

Suggested-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2025-11-19 15:17:04 +01:00
Timothy Keys
6bfa6fa9a8 bluetooth: host: shell: Add SCI shell commands
This adds support for Shorter Connection Interval commands in the bt
shell.

Signed-off-by: Timothy Keys <timothy.keys@nordicsemi.no>
2025-11-19 09:15:18 -05:00
Timothy Keys
c14dcaf199 bluetooth: host: Change uses of interval to interval_us
Since Shorter Connection Intervals changes the unit that connection
intervals can be represented in. It is necessary to change how
they are stored and represented.

This commit deprecates interval in favour of interval_us.

Remove use of interval in internal bt_conn struct since it is no longer
needed.

Signed-off-by: Timothy Keys <timothy.keys@nordicsemi.no>
2025-11-19 09:15:18 -05:00
Timothy Keys
e2cd247ec4 bluetooth: host: Add Shorter Connection Intervals support
This commit adds support for the Shorter Connection Intervals feature to
the Bluetooth host.

Signed-off-by: Timothy Keys <timothy.keys@nordicsemi.no>
2025-11-19 09:15:18 -05:00
Lukas Gehreke
36beeec662 drivers: modem: sim7080: Added gnss bug description to doxygen.
Some modem revisions can hang up on gnss functionality. Added
a warning and a workaround to doxygen documentation.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-11-19 09:15:02 -05:00
Jamie McCrae
881584112f west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  f3cc9476e233364031e9ab842290392f260fba82

Brings following Zephyr relevant fixes:

  - f3cc9476 updates for 2.3.0-rc1 release
  - 496f74f3 zephyr: Fix BOOT_DOWNGRADE_PREVENTION_CHOICE symbol
  - 6ab9afc6 boot_serial: Use boot_state_init where intent to
    initialize
  - e6fefac2 bootutil: Temporarly drop mem cleanup from
    boot_state_clear
  - 457be0cf bootutil: Fix some debug log format specifiers
  - f9ad3ee2 bootutil: Add API to lock HW counter
  - 6e602004 boot: bootutil: bootutil_area: Add debug for adjusted
    offset
  - 9d334f9b boot: bootutil: bootutil_area: Fix swap using offset
    min scramble
  - 76036133 boot: zephyr: Remove enable from beginning of prompts
  - d14ba22d bootutil: Fix encryption context de initialization in
    boot_state_clear
  - d8c4cc69 bootutil: Remove NULL state logic from boot_state_clear
  - 8ff6b678 bootutil: Use boot_state_init instead of
    boot_state_clear
  - dd4b01f4 boot_serial: Initialize state with boot_state_init
  - a312656b bootutil: Add boot_loader_state_init
  - e9255183 bootutil: Allow using psa_key_id_t in AES crypto
    context
  - 3af40a31 boot: zephyr: sysflash: Increase number of supported
    images
  - c27bb0f4 boot_serial: Use struct enc_data in
    decrypt_region_inplace
  - 0287fd4d boot_serial: Fix double boot_loader_state init
  - f846e9e9 boot: zephyr: Allow disabling default multiple RAM
    region file
  - 0ccce2f7 bootutil: In boot_swap_image add return check from
    boot_read_enc_key
  - 32b3c18b bootutil: Refactor boot_read_enc_key

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-19 09:14:32 -05:00
David Leach
d588d45d90 maintainers: Add Holt-Sun to NXP Platform Drivers collaborators
Add Holt-Sun to the NXP drivers area.

Signed-off-by: David Leach <david.leach@nxp.com>
2025-11-19 09:14:23 -05:00
Chun-Chieh Li
7f6fc2ee4b drivers: can: support nuvoton m333x series
Add support for Nuvoton's M3331 series SoC

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-11-19 09:14:13 -05:00
Martin Hoff
94ed533c31 soc: silabs: siwg917: add dependency when PM device is enabled
This patch fixes a compilation error when CONFIG_PM_DEVICE is enabled
without CONFIG_PM_DEVICE_RUNTIME and CONFIG_POWER_DOMAIN.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-11-19 09:13:57 -05:00
Cristian Bulacu
34d215d5a9 openthread: platform: Update code to use socket services config
Updated platform code to make use of number of socket services defined
in Kconfig. In this way, hardcoded values are avoided.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-19 09:13:49 -05:00
Cristian Bulacu
ac89a2a771 openthread: Kconfig: Add config for number of socket services
This commit adds support to define number of platform socket services
using Kconfig.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-19 09:13:49 -05:00
Guillaume Gautier
7e3aa9bf8d boards: st: stm32u5g9j_dk: adjust adc prescaler
Set ADC prescaler to 2 instead of 1 for the STM32U5G9J-DK board.
A prescaler of 1 results in incorrect measurements while 2 returns the
expected values.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-11-19 09:13:39 -05:00
Zhaoxiang Jin
5a1032df59 boards nxp/frdm_mcxn236: remove unused GPIO5 configuration
The GPIO5 has no sofware configurable clock gate in the MCXN236.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-19 09:13:31 -05:00
Ruben Völl
d21f6b5ecd include: adc: add adc_read_async_dt()
Add `adc_read_async_dt()`, based on `adc_read_async()` and
`adc_read_dt()`, as static inline function.

Signed-off-by: Ruben Völl <ruben.voell@sevenlab.de>
2025-11-19 06:55:24 -05:00
Tomasz Leman
18b34bb3d2 drivers: power_domain: intel_adsp: Refactor power management initialization
This patch refactors the power management initialization for the Intel
ADSP power domain driver to align with the recommended practices
outlined in the documentation. The changes include:

1. Replacing the manual power management initialization sequence
   (`pm_device_init_suspended` + `pm_device_runtime_enable`) with a call
   to `pm_device_driver_init` in the `pd_intel_adsp_init` function.
2. Adding the `zephyr,pm-device-runtime-auto` property to the power
   domain nodes in the device tree files for ACE15, ACE20, ACE30, and
   ACE40.

These changes ensure that the power domain driver is initialized with
the appropriate power management state and that runtime power management
is automatically enabled based on the device tree configuration. The
functionality of the power management state remains unchanged, ensuring
consistent behavior.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-11-19 06:55:12 -05:00
Jiafei Pan
b69a050d82 boards: frdm_imx91: add ENET ethernet port support
Add ENET ethernet port support on FRDM_IMX91 board.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-11-19 06:54:54 -05:00
Jiafei Pan
ac1bd04c3a dts: arm64: mimx9131: add enet device nodes
Add ENET device nodes support for i.MX 9131.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-11-19 06:54:54 -05:00
Jiafei Pan
6c27ec126b drivers: clock_control_mcux_ccm_rev2: add imx91 enet support
Add ENET clock support for i.MX91.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-11-19 06:54:54 -05:00
Jamie McCrae
63883760fb tests: mgmt: mcumgr: Add os mgmt mpstat test
Adds a test to check that the memory pool statistics command works

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-11-19 06:54:40 -05:00
Jamie McCrae
d9c2bdf51a mgmt: mcumgr: grp: os_mgmt: Add memory pool statistics command support
Adds support for the memory pool statistics (mpstat) command, which
will list details on various memory heaps on the device

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-11-19 06:54:40 -05:00
Jamie McCrae
2f42addef7 mgmt: mcumgr: grp: img_mgmt: Use common reset function
Replaces the img_mgmt specific function with the common SMP
function for resetting the zcbor buffer and allowing a new response
to be sent

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-11-19 06:54:40 -05:00
Jamie McCrae
89b01d5c93 mgmt: mcumgr: transport: Add zcbor buffer reset function
Adds a common zcbor reset buffer function, this allows for the
buffer to be reset after data has been added already to add a
different response, e.g. an error response

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-11-19 06:54:40 -05:00
Felix Wang
16214ace79 dts: arm: nxp: Add lpit configuration in dts
The LPIT is missing in nxp_mcxe24x_common.dtsi,
this patch add lpit 0 address, registers, interrupts
and channel setting.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-11-19 06:53:31 -05:00
Felix Wang
5311349f63 boards: nxp: frdm_mcxe247: Enable lpit
Enable lpit0 clock according to dts setting.

Enable lpit0 and its four channels.

Verified pass with counter_basic_api test.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-11-19 06:53:31 -05:00
Felix Wang
c826167f5b drivers: counter: support multiple interrupts for LPIT
For devices like MCXE247, the LPIT instance hase multiple
interrupts, however the current  driver code just support
one interrupt. This patch has improved the code for this
requirement.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-11-19 06:53:31 -05:00
Andrzej Głąbek
68fab5fd2c drivers: flash: nrf_qspi_nor: Fix compilation with QER set to NONE
This is a follow-up to commit d1abe40fb0.

Function `qspi_wait_while_writing()` (and also `qspi_rdsr()` that is
called by it) is now always required for `qspi_erase()`, so it can no
longer be under `#if !IS_EQUAL(INST_0_QER, JESD216_DW15_QER_VAL_NONE)`.

Also definition of `dev_config` in `configure_chip()` needs to be moved,
as for QER set to NONE, it is not used and causes a compilation warning.

Add a test case that will ensure the driver can be built successfully
with `quad-enable-requirements = "NONE"`.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-11-19 06:53:20 -05:00
Elmo Lan
95aa209226 driver: gpio: Add sleep delay in gpio isr
When EC wakes by GPIO, it may fall back to SUSPEND_TO_IDLE
before the host or peripherals have a chance to take further action.

Add a lightweight delay-sleep mechanism to keep system awake
for as short period after a GPIO wake event.

Signed-off-by: Elmo Lan <elmo_lan@realtek.com>
2025-11-19 06:52:59 -05:00
Pavel Vasilyev
116d4ddb89 tests: bluetooth: qualification: Remove data signing related ICS
This commit removes data signing related ICS.

Removed ICS:
- SM 6/1: Signing Algorithm Generation
- SM 6/2: Signing Algorithm Resolving
- GATT 3/13: Signed Write Without Response
- GATT 9/10: Signed Write Command
- GATT 7/3: LE Security mode 2
- GAP 25/2: LE Security mode 2
- GAP 35/2: LE Security mode 2
- GAP 25/5: Connection data signing procedure
- GAP 35/5: Connection data signing procedure
- GAP 25/6: Authenticate signed data procedure
- GAP 35/6: Authenticate signed data procedure
- GAP 27b/8: Connection Signature Resolving Key (CSRK)
- GAP 37b/8: Connection Signature Resolving Key (CSRK)

The following tests are not supported any longer:
- GAP/SEC/CSIGN/BI-01-C
- GAP/SEC/CSIGN/BI-02-C
- GAP/SEC/CSIGN/BI-03-C
- GAP/SEC/CSIGN/BI-04-C
- GAP/SEC/CSIGN/BV-01-C
- GAP/SEC/CSIGN/BV-02-C
- GATT/CL/GAW/BV-02-C
- SM/CEN/SIGN/BV-01-C

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-11-19 06:52:38 -05:00
Pavel Vasilyev
66679c1886 tests: bluetooth: init: Remove duplicate prj_<x>.conf files
Remove duplicated prj.conf file.

prj_6, prj_7, prj_14 are identicall. Since prj_6.conf is unchanged,
keeping it.

prj_8, prj_9, prj_15 are identicall. Since prj_15.conf is
unchanged, keeping it.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-11-19 06:52:38 -05:00
Pavel Vasilyev
b7b35b89ed bluetooth: host: Deprecate CONFIG_BT_SIGNING
This commit deprecates:
- the `CONFIG_BT_SIGNING` Kconfig option
- `BT_GATT_CHRC_AUTH` property

IOW, this commit deprecates the LE Security mode 2 support.

Explanation:

Erratum ES-26047 introduced in Bluetooth Core Specification v6.2
requires SingCounter to be persistently stored to prevent replay
attacks.

Currently, the Host doesn't store SignCounter, therefore the device is
vulnerable to replay attacks after reboot.

Additionally, the current implementation doesn't assume that SignCounter
of a received message can be incremented by more than one and thus may
not validate correct message.

The Bluetooth Security and Privacy Best Practices Guide recommends to
not using Data signing and recommends to use LE Security mode 1 levels
2, 3 or 4 instead.

The Signed Write Without Response sub-procedure, which is the only user
of Data signing, is optional (see Vol 3, Part G, Table 4.1).

See also ES-18901.

The aforementioned reasons make no sense to keep this feature.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-11-19 06:52:38 -05:00
Adam Kondraciuk
127ba8d494 samples: boards: nrf: system_off: Add sample with system clock disabled
Extend the system off samples by adding an option to disable
the system clock. When the system clock is disabled additional
power savings can be observed.
After using the `sys_clock_disable()` function, the GRTC is
turned off making system time-related features unavailable.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-11-19 06:52:24 -05:00
Adam Kondraciuk
dfff593b77 drivers: timer: nrf_grtc_timer: Add system_clock_disable implementation
Add implementation of `sys_clock_disable` function for GRTC timer.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-11-19 06:52:24 -05:00
Pieter De Gendt
bb19a9bdb7 drivers: flash: shell: Use timing functions for speed tests
Use the timing functions to increase the accuracy of the flash speed
measurements.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-19 06:52:08 -05:00
Qingsong Gou
339cd882f7 drivers: clock_control: sf32lb: fix clock selection error
Fix clock selection error

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-19 06:51:54 -05:00
Stephanos Ioannidis
da53769d26 ci: assigner: Fix maintainer file check
The commit 1fe332de61 moved the maintainer
file check step from a standalone workflow to the assigner workflow, which
uses the `action-python-env` action to install the Python requirements.

The version of PyGithub package installed by the `action-python-env` action
in the assigner workflow is 2.6.1, which is older than the minimum required
version 2.7.0 (see 5a4b0ac4d7 for more
details), and this caused the maintainer file check to erroneously flag the
users with "Triage" role.

This commit updates the assigner workflow to use the
action-python-env@32e53bef090c33d53aa94f1d9a9d29c93cfdc5f7, the latest
version at the time of this change with up-to-date requirements file, in
order to ensure that PyGithub>=2.7.0 is installed.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-11-19 06:48:14 -05:00
Martin Stumpf
0c9d8b7a8e drivers: current_sense_amplifier: fix zero-current-voltage binding
It seems the new microvolt/microamp rework (#95588) simply forgot to
implement zero current voltage offsets.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-11-18 19:53:22 -05:00
Chris Friedt
27180d2fc5 arch: riscv + xtensa + x86: workaround needed for LLVM linker
Due to slight differences in the way that LLVM and GNU linkers work,
the call to `z_stack_space_get()` is not dead-stripped when linking
with `lld` but it is dead-stripped when linking with GNU `ld`.

The `z_stack_space_get()` function is only available when
`CONFIG_INIT_STACKS` and `CONFIG_THREAD_STACK_INFO` are defined.

The issue is reproducible (although requires building LLVM and
setting up some environment variables) and goes away with the proposed
workaround.

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-18 19:53:10 -05:00
Muhammad Waleed Badar
62cbf13673 samples: ocpp: add native_sim configuration
Disable DHCPv4 and use static network configuration
for native_sim board

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2025-11-18 19:52:52 -05:00
Qingsong Gou
114c9a88a9 boards: sifli: sf32lb52_devkit_lcd: enable temp sensor
enable temp sensor on sf32lb52_devkit_lcd board

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-18 19:52:37 -05:00
Qingsong Gou
7a928a3c4e drivers: sensor: sifli: add sf32lb temp sensor
Add temp sensor driver for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-18 19:52:37 -05:00
Qingsong Gou
fd3e6417d1 dts: arm: sifli: sf32lb52x: define temp sensor
add temp sensor device node

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-18 19:52:37 -05:00
Qingsong Gou
53330396b2 dts: bindings: sensor: add sifli,sf32lb-tsen
Add temperature sensor for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-18 19:52:37 -05:00
Fabio Baltieri
b71fafd48b MAINTAINERS: drop the sensor area label from few ares
Drop the "area: Sensors" label from Wurth and TDK sensor areas, the
current setup is causing the issue assigner script to pick up those
maintainers for any issue labeled as sensor as it does not know better,
if these areas wants a label for issue tracking their maintainer can
make an area specific one and use it.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-11-18 19:52:24 -05:00
Nicolas Pitre
159c0117a4 boards: arm: fvp_base_revc_2xaem: add custom atomics workaround
FVP's (ARM Fixed Virtual Platform) atomic instruction emulation appears
to not properly implement the cache coherency guarantees specified by the
ARM architecture. Atomic instructions with acquire/release semantics (LDAR,
LDAXR, LDADDAL, etc.) should ensure that loaded values reflect any prior
stores from other CPUs, but on FVP this can fail, leading to stale cached
values being read in SMP configurations.

This manifests as performance issues in lockfree data structures as
demonstrated by tests/lib/lockfree hanging with excessive retries.

This commit adds board-specific atomic operation implementations with
explicit (and, in theory, redundant) data memory barrier (DMB SY)
instructions before all operations that read from memory. These barriers
force cache invalidation before reads, working around the FVP issue by
ensuring CPUs observe the latest values written by other CPUs. This
should be temporary until this FVP situation is better understood/fixed.

Note: FVP's cache_state_modelled parameter can improve the lockfree test
outcome but this is also 10x slower or more with many tests.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
8a99e284cc boards: arm: fvp_base_revc_2xaem: Increase DRAM to 128 MB
Increase FVP Base RevC 2xAEM DRAM from 2 MB to 128 MB to match the
platform's actual capabilities and align with QEMU's configuration.

The FVP Base RevC supports ~4 GB of RAM as documented in the Linux
kernel device tree (arch/arm64/boot/dts/arm/fvp-base-revc.dts), which
defines two memory regions totaling approximately 4 GB.

The previous 2 MB limitation caused issues with demand paging tests
where the kernel VM size (8 MB) exceeded available RAM, triggering
early page faults before the page frame allocator was initialized.
With 128 MB, demand paging workloads have sufficient memory to operate
without premature paging.

This change brings FVP's memory configuration in line with QEMU
Cortex-A53 (128 MB).

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
106d3db360 arch: arm64: Increase MAX_XLAT_TABLES for userspace tests
Memory protection and userspace tests require more MMU translation
tables than the default. Without this increase, tests fail with:

  E: CONFIG_MAX_XLAT_TABLES too small
  ASSERTION FAIL [ret == 0] @ arch/arm64/core/mmu.c:1244
	privatize_page_range() returned -12

Increase defaults when both USERSPACE and TEST are enabled:
- 32 tables for SMP configurations
- 24 tables for non-SMP configurations

This fixes:
- sample.kernel.memory_protection.shared_mem (all platforms)
- rtio.api.userspace (v8a, v9a)
- rtio.api.userspace.submit_sem (v8a, v9a)
- portability.posix.common.userspace

Consequently the demand paging test needed adjustment to its
qemu_cortex_a53 configs to keep working as this test is highly
sensitive to the amount of available free memory.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
425af7ad06 arch: arm64: Increase stack sizes for userspace with FPU
Increase ARM64 stack sizes to accommodate deeper call stacks in
userspace and SMP configurations when FPU_SHARING is enabled:

- PRIVILEGED_STACK_SIZE: 1024 → 4096 bytes (with FPU_SHARING)
- TEST_EXTRA_STACK_SIZE: 2048 → 4096 bytes (with FPU_SHARING)

The default 1KB privileged stack is insufficient for ARM64 userspace
syscalls when FPU context switching is enabled.

Symptom: Userspace tests crash with Data Abort (EC 0x24) near stack
boundaries during syscalls, particularly on SMP configurations where
multiple threads exercise FPU lazy switching.

Fixes previously failing CI test on fvp_base_revc_2xaem SMP variants:
- kernel.threads.dynamic
- Multiple userspace tests with FPU_SHARING enabled

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
f5d6b9ea0e tests: arm64: Add SIMD context switch stress test
Add stress test for SIMD register save/restore during context switching.
The test validates correct FPU context handling using either ARM Neon or
SVE2 instructions depending on the build target.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
ed6d497276 tests: arm64: SVE: context switching test across different privileges
Expand the SVE context switching test to cover all thread privilege
combinations with validation of SVE state preservation across different
contexts.

Test Coverage:
- Privileged vs Privileged threads (kernel mode)
- User vs User threads (userspace with memory domains)
- User vs Privileged threads (mixed privilege levels)

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
b5d4edcbf8 tests: arm64: Add SVE context switching validation test
Add test to validate SVE (Scalable Vector Extension) context switching
implementation, ensuring proper register preservation across thread
switches in multi-threaded environments.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
ffd08f5385 arch: arm64: Implement SVE context switching for ARMv9-A
Implement Scalable Vector Extension (SVE) context switching support,
enabling threads to use SVE and SVE2 instructions with lazy context
preservation across task switches.

The implementation is incremental: if only FPU instructions are used
then only the NEON access is granted and preserved to minimize context
switching overhead. If SVE is used then the NEON context is upgraded to
SVE and then full SVE access is granted and preserved from that point
onwards.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
e1970ae56d tests: arm64: Add Arm architecture feature detection test
Add comprehensive test to validate ARM64 architectural feature detection
across ARMv8.1 through ARMv9-A implementations, providing runtime
verification of processor capabilities and security features.

Core architecture features tested:
- Exception Level (EL) support detection (EL0-EL3)
- SVE (Scalable Vector Extension) presence and capabilities
- Advanced SIMD (NEON) and Floating Point implementation levels
- Architecture version classification (ARMv8 vs ARMv9-A)

ARMv8.1-A+ features:
- LSE (Large System Extensions) atomic operations with level detection
- Pointer Authentication (PAC) with comprehensive variant analysis:
  * API/APA (Address), GPI/GPA (Generic) authentication
  * Enhanced PAC levels (1, 3, 4, 5) with FPACCOMBINE detection
  * QARMA3 algorithm support (GPA3/APA3)

ARMv8.5-A+ security and performance features:
- Branch Target Identification (BTI) for control flow integrity
- Memory Tagging Extensions (MTE) with level classification
- Random Number Generation (RNDR) hardware entropy
- Speculative Store Bypass Safe (SSBS) side-channel mitigation

ARMv8.7-A+ advanced features:
- WFxT (Wait with Timeout) enhanced synchronization
- RPRES (Reciprocal Precision) optimized math operations

ARMv8.8-A+ features:
- MOPS (Memory Copy/Set) optimized memory operations
- BC (Branch Consistency) advanced branch handling

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
80a6ead8c9 cmake: fix style conformance that makes CI fail
This fixes the following:

CMakeStyle File:cmake/gcc-m-cpu.cmake Line:7
Column:Remove space before '(' in if() statements
CMakeStyle File:cmake/gcc-m-cpu.cmake Line:22
Column:Remove space before '(' in if() statements
CMakeStyle File:cmake/gcc-m-cpu.cmake Line:28
Column:Remove space before '(' in if() statements
CMakeStyle File:cmake/gcc-m-cpu.cmake Line:38
Column:Remove space before '(' in if() statements
CMakeStyle File:cmake/gcc-m-cpu.cmake Line:48
Column:Remove space before '(' in if() statements

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
051623c808 boards: arm: fvp: Add Cortex-A320 board variant support
Add Cortex-A320 support to the unified FVP board structure with ARMv9.2-A
specific configuration parameters.

New board target:
- fvp_base_revc_2xaem/a320

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
02b4903730 boards: arm: Add unified FVP ARMv9-A board support
New board targets:
- fvp_base_revc_2xaem/v9a (basic ARMv9-A single core)
- fvp_base_revc_2xaem/v9a/smp (ARMv9-A SMP 4 cores)
- fvp_base_revc_2xaem/v9a/smp/ns (ARMv9-A SMP non-secure with TFA)

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
a479606c33 modules: trusted-firmware-a: Disable AArch32 context for ARMv9-A
ARMv9-A is AArch64-only and does not support AArch32 execution states
at EL1/EL2/EL3. Configure TF-A build to disable AArch32 register
context (CTX_INCLUDE_AARCH32_REGS=0) when building for ARMv9-A platforms.

This fixes TF-A boot failures on ARMv9-A non-secure variants where
TF-A would panic with:
  ERROR: EL1 supports AArch64-only. Please set build flag
         CTX_INCLUDE_AARCH32_REGS = 0

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
2aef4fbe5b arch: arm64: Add ARMv9-A architecture and Cortex-A510 CPU support
Add ARMv9-A architecture support with Cortex-A510 CPU as the default
processor for generic ARMv9-A targets.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
bf48b42f4a boards: Add backward compatibility for renamed FVP boards
Add deprecated.cmake mappings to redirect old board names to new
unified structure:

- fvp_base_revc_2xaemv8a
→ fvp_base_revc_2xaem/v8a

- fvp_base_revc_2xaemv8a/fvp_base_revc_2xaemv8a/smp
→ fvp_base_revc_2xaem/v8a/smp

- fvp_base_revc_2xaemv8a/fvp_base_revc_2xaemv8a/smp/ns
→ fvp_base_revc_2xaem/v8a/smp/ns

This ensures existing build commands and documentation continue to work
with deprecation warnings while transitioning to the new board structure.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
c01e0943c0 boards: arm: Create unified fvp_base_revc_2xaem board structure
Create unified board configuration to replace verbose board naming
with shorter hierarchical structure. This board works with the new
unified fvp_aem SOC series and supports the v8a architecture variant.

This enables board targets like:
- fvp_base_revc_2xaem/v8a (basic ARMv8-A)
- fvp_base_revc_2xaem/v8a/smp (ARMv8-A SMP)
- fvp_base_revc_2xaem/v8a/smp/ns (ARMv8-A SMP non-secure)

This structure replaces the existing overly verbose board designations
with a cleaner, more maintainable organization and provides a foundation
for adding v9a variants.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
934e61bb61 soc: arm: fvp_aem: Create unified SOC series structure
Reorganize fvp_aemv8a SOC into unified fvp_aem series with a v8a
architecture variants to enable cleaner board target naming. This also
sets the stage for upcoming ARMv9-A support.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
851171a8c4 boards: arm: fvp_base_revc_2xaemv8a: allow SMP on bare metal
This adds necessary configuration files to build with SMP and no trusted
firmware. Given PSCI is not available, CPU power management uses the FVP
power controller directly. This simplifies debugging, and builds faster
too!

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Nicolas Pitre
90afb8f429 drivers: pm_cpu_ops: Add Arm FVP CPU power management driver
Add a new PM CPU ops driver for Arm Fixed Virtual Platform (FVP) that
enables bare metal SMP support without Arm Trusted Firmware (ATF).

The driver provides CPU power-on and system reset operations by directly
interfacing with FVP's power controller (PWRC) and V2M system registers.

The implementation includes RVBAR_EL3 configuration to redirect
secondary CPU reset vectors to Zephyr's image header, enabling
proper SMP initialization without firmware assistance.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-18 17:49:40 -05:00
Stephano Cetola
ce2e6f6f17 boards: waveshare: Add RP2350 Zero board support
Add initial support for the Waveshare RP2350-Zero, a low-cost,
high-performance Pico-like development board based on the Raspberry
Pi RP2350A microcontroller.

This commit introduces the board definition, devicetree files, pin
control configuration, Kconfig options, and board documentation.

The RP2350-Zero’s Arm and RISC-V cores are supported with this
port. Basic peripherals (GPIO, UART, I2C) are configured and
tested. Verified by building and running the Zephyr "hello_world"
sample on the RP2350-Zero / RP2350-One boards, and manually testing
the GPIO, I2C, PIO, and RGB LED.

Signed-off-by: Stephano Cetola <stephanoc@gmail.com>
2025-11-18 17:49:27 -05:00
John Batch
1f719acbfa boards: Infineon: kit_pse84_eval: Adding DMA support
Adds support to the kit_pse84_eval board for DMA.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-18 17:49:09 -05:00
John Batch
7bd1845b1a tests: drivers: dma: Add kit_pse84_eval test overlays
Adds overlays to enable test runs for DMA on the following tests:
 -tests/drivers/dma/chan_blen_transfer
 -tests/drivers/dma/loop_transfer

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-18 17:49:09 -05:00
John Batch
1d1e2dc140 Drivers: DMA: Infineon PSE84: Adding DMA PDL based driver for pse84
Adds Infineon Cat1 PDL based driver for DMA.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-18 17:49:09 -05:00
John Batch
6ee9976698 soc: infineon: Adding legacy hal definition to soc kconfig
Adds USE_INFINEON_LEGACY_HAL kconfig option to the PSOC6, CYW920829, and
xmc7200 series SOCs.  These devices have not transitioned to newer HAL
based drivers yet.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-18 17:49:09 -05:00
John Batch
62ca912c47 modules: hal_infineon: DMA cmake lists update
Updates DMA includes from the modules needed for DMA PDL based driver
implementation.
Cleans up cmake to use only USE_INFINEON_DMA Kconfig option to select
dma files from PDL/HAL.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-18 17:49:09 -05:00
John Batch
294fa62d93 dts: infineon: pse84: Add bindings for ifx_cat1_dma_pdl driver
Adding binding file for IFX Cat1 DMA PDL based driver implementation.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-11-18 17:49:09 -05:00
JP Hutchins
43f51cd3ed doc: mcumgr: update smp/smpclient; add smpmgr
smp & smpclient have complete, well-tested, coverage
of the spec. smpmgr application is added.

Signed-off-by: JP Hutchins <jp@intercreate.io>
2025-11-18 17:48:43 -05:00
William Tang
56fde5b3ee tests: drivers: can: timing: enable full timing test on mimxrt1180_evk
Enable the full range of CAN timing tests on the NXP mimxrt1180_evk
board cm33 core.

Signed-off-by: William Tang <william.tang@nxp.com>
2025-11-18 17:45:06 -05:00
William Tang
0c4abcdd29 drivers: can: mcux: flexcan: support Enhanced CAN Bit Timing registers
Some FlexCAN devices have enhanced bit timing registers (EPRS ENCBT EDCBT)
with extended timing configuration ranges and different behavior compared
to standard bit timing registers.

This change adds proper support for these enhanced registers, utilize full
bit timing capabilities.

Key differences for enhanced bit timing registers:
- Extended timing ranges with larger maximum values for sjw, phase_seg1,
  phase_seg2, and prescaler fields
- No propagation segment configuration support, so prop_seg must be 0
- prop_seg value is used directly without the typical 'minus 1' adjustment

The implementation adds conditional compilation based on the
`FSL_FEATURE_FLEXCAN_HAS_ENHANCED_BIT_TIMING_REG` feature flag.
For Enhanced registers, use extended timing limits and prop_seg directly.

Test this commit on mimxrt1180_evk/mimxrt1189/cm33 drivers.can.timing
test case, and enable `TEST_ALL_BITRATES` Kconfig symbol.

Signed-off-by: William Tang <william.tang@nxp.com>
2025-11-18 17:45:06 -05:00
Anas Nashif
c55d2eafff scripts: get_maintainer: file group pattern inherit top area patterns
File groups inherit file patterns from their parent area. A file will only
match a file group if it first matches the parent area's patterns, and then
also matches the file group's own patterns. This allows file groups to
further filter and subdivide files that are already covered by the area.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-18 17:44:53 -05:00
Anas Nashif
19cb7f031b scripts: set_assignee: request review from maintainers of changed areas
Also request reviewes from maintainers of changes areas in the
maintainer file.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-18 17:44:53 -05:00
Anas Nashif
616e8d6602 scripts: move set_assignee.py into scripts/ci
Scripts only used by CI, so move it into that directory.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-18 17:44:53 -05:00
Anas Nashif
1fe332de61 ci: assigner: merge maintainer check into assigner workflow
Merge two workflows into one for code sharing an efficiency.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-18 17:44:53 -05:00
Anas Nashif
d22c4dfebd MAINTAINERS file: add documentation for file groups
Document file groups and how they should be used.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-18 17:44:53 -05:00
Anas Nashif
c4b9497b3d scripts: set_assignee.py: Support file groups
Deal with new section in the maintainer file defining file groups.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-18 17:44:53 -05:00
Anas Nashif
9165fb4927 scripts: get_maintainer: support file groups
This new section allows defining a group of files in an area and makes
it possible to assign collaborators to the file group being defined.

The purpose of this new section is to allow fine tuning who is added as
reviewer when files change in a group. It is especially useful in large
areas with hundreds of files, for example platform areas.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-18 17:44:53 -05:00
Lin Yu-Cheng
c6b8128ac7 drivers: spi: add spi driver for rts5912
Add spi driver for Realtek rts5912

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-11-18 17:44:43 -05:00
Pieter De Gendt
d7f8be573b manifest: nanopb: Sync with upstream
Update the nanopb module to the latest upstream version.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-18 17:44:32 -05:00
Zhaoxiang Jin
3235a4b657 tests: cpu_freq: Enable on_demand policy test on frdm_mcxn236
Enable on_demand policy test on frdm_mcxn236

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-18 17:44:23 -05:00
Zhaoxiang Jin
ddf7febe4c tests: cpu_freq: on_demand: Increase WAIT_US
A low-load period that is too short (1ms) will cause
the average load to remain almost unchanged. Increase
it to 100ms.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-18 17:44:23 -05:00
Zhaoxiang Jin
89083803fb tests: cpu_freq: Enable cpu_freq_soc test on frdm_mcxn236
Enable cpu_freq_soc test on frdm_mcxn236

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-18 17:44:23 -05:00
Zhaoxiang Jin
1c6f877c71 soc: mcxn: enable p-state driver for nxp mcxn
Enable p-state driver for nxp mcxn, currently tested
on frdm-mcxn236 but should be easily extendable to
other mcxn boards.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-18 17:44:23 -05:00
Zhaoxiang Jin
e23f4acdb5 dts: bindings: p_state: Add bindings for NXP mcxn
1. Add p-state binding for nxp mcxn series.
2. Add p-state nodes for nxp mcxn series.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-18 17:44:23 -05:00
Zhaoxiang Jin
86ace20292 boards: frdm_mcxn236: Update CLKOUT source clock
Use the primary clock source FRO12M as the clock source for
CLKOUT. Compared with the secondary clock source(main clock,
the primary clock source is more stable and will not cause
timing problems of camera PCLK, HSYNC and VSYNC due to
unexpected changes.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-18 17:44:23 -05:00
Yong Cong Sin
a028d8fafc driver: i2c: i2c_dw: clear block mode on init
Depending on the IP's `IC_TX_CMD_BLOCK_DEFAULT` parameter, we
might have to clear the `TX_CMD_BLOCK` bit on init so that
Controller mode works.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2025-11-18 17:44:10 -05:00
Declan Snyder
687935bb68 drivers: spi_mcux_flexcomm: Abbreviate ctx
I was getting real tired of typing this out, can't believe it hasn't
already been done.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-11-18 17:42:34 -05:00
Declan Snyder
7cb3fca42e drivers: spi_mcux_flexcomm: Fix length unit mixups in DMA path
This driver had a lot of regressions introduced by commits that were
clearly mixing up what values had units of bytes and what values had
units of words. Fix the issues in the DMA path of the driver.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-11-18 17:42:34 -05:00
Declan Snyder
93b766f4f8 drivers: spi_mcux_flexcomm: Remove asserts
The asserts are hard to debug and unrecoverable, they just say kernel
panicked but difficult to realize where and why, it's better to return
an error and log message clearly from spi driver.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-11-18 17:42:34 -05:00
Declan Snyder
45cade7822 drivers: spi_mcux_flexcomm: Remove wrong assert
It is not illegal to provide an RX len with no buffer.
It just means the controller should clock out that many
words but not store them in memory. So remove the assert
and just avoid null dereference.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-11-18 17:42:34 -05:00
Declan Snyder
d3818d4365 drivers: spi_mcux_flexcomm: Refactor get_last_tx_word
Refactor this function to return an error code, instead of assert.
Put the data into a pointed argument instead.
Refactor other functions to make sure to
propogate this error all the way up the call stack.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-11-18 17:42:34 -05:00
Declan Snyder
2a7f651c1f drivers: spi_mcux_flexcomm: Skip xfer if empty
If the transfer is empty we do nothing. Avoids assert in later code
paths.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-11-18 17:42:34 -05:00
Chen Xingyu
8c8a0fe6fe boards: alientek: dnesp32s3b: Add board DNESP32S3B
DNESP32S3B is a development board from Alientek, featuring a compatible
ESP32-S3-WROOM-1-N16R8 module and rich set of on-board peripherals,
providing an out-of-the-box development experience for AIoT applications.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-18 17:41:09 -05:00
Andrej Butok
9e0012b313 drivers: gpio: nxp: fix gpio_mcux_lpc_configure()
- Enables Digital mode for both input and output GPIO
  pins, in gpio_mcux_lpc_configure().
- Fixes #99255

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-11-18 17:38:58 -05:00
Siddhant Modi
1d2448e979 drivers: eeprom: mb85rsxx: Adding support for new product ID
This commit adds support for the 0x40 product ID
needed by the MB85RSMTA version of the chip.

Signed-off-by: Siddhant Modi <siddhant.modi@gmail.com>
2025-11-18 17:38:39 -05:00
Yong Cong Sin
3c5807f6ec arch: riscv: stacktrace: support stacktrace in early system init
Add support for stacktrace in dummy thread which is used to run
the early system initialization code before the kernel switches
to the main thread.

On RISC-V, the dummy thread will be running temporarily on the
interrupt stack, but currently we do not initialize the stack
info for the dummy thread, hence check the address against the
interrupt stack.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2025-11-18 17:38:22 -05:00
Yong Cong Sin
4f5f42fa69 kernel: thread: constify thread arg of read-only functions
Since these helper functions are read-only, mark the `thread`
arg as `const` so that we can pass const thread to it without
triggering warnings.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2025-11-18 17:38:22 -05:00
Pisit Sawangvonganan
489b8a386c drivers: gpio_stm32: consolidate *pincfg writes
Use a local accumulator (`cfg`) to build the pin configuration and commit
it to `*pincfg` only once. This keeps intermediate values in registers,
reduces RAM write traffic.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-11-18 17:36:49 -05:00
Stanislav Bobokalo
0786873a4c dts: ra6: fix typo in pinctrl node name
Correct a typo in the pinctrl node name to maintain consistent naming
across the RA family.

Signed-off-by: Stanislav Bobokalo <stanislav.b@embedd.it>
2025-11-18 17:36:30 -05:00
Alberto Escolar Piedras
612ae54950 boards/native nrf54lm20bsim: Remove experimental warning
This simulated board has been there for more than 5 months.
The real board (nrf54lm20dk) is properly supported and in the market.
So there is no need to have this warning anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-18 17:36:18 -05:00
Aleksandr Khromykh
613d228002 bluetooth: mesh: update max oob size till 32 bytes
Commit updates maximum OOB authentication size from 8 bytes
till 32 bytes according to specification errata ES-27446.
Since previous OOB API does not allow to expose OOB values
with such width the new API has been introduced.
The previous API was deprecated and hidden under
BT_MESH_PROV_OOB_API_LEGACY option and left for backward
compatibility with existing code base.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-11-18 10:48:18 -05:00
Aleksandr Khromykh
6bf8409e39 bluetooth: mesh: adjust adv stack dependency and size
Commit removes legacy dependancy on Host crypto.
Additionally, it adapts advertiser stack size if
provisioner feature has been enabled (tested with
mesh_shell and thread analyzer).

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-11-18 10:48:18 -05:00
Aleksandr Khromykh
8b2e37f0e2 bluetooth: mesh: prevent getting wrong authentication size
Commit moves SHA256 authentication size under SHA256 macro.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-11-18 10:48:18 -05:00
Aleksandr Khromykh
760d190723 bluetooth: mesh: zeroing not used part of auth array
Commit set zero to not used part of authentication array
to prevent garbage from the previous provisioning using.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-11-18 10:48:18 -05:00
Aleksandr Khromykh
666950efff bluetooth: mesh: improve oob size checking
Commit improves oob size checking to catch wrong size
as early as possible and prevents zero size.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-11-18 10:48:18 -05:00
Frode van der Meeren
48f82d1e34 tests: bluetooth: tester: Fix VCS tests
Zephyr automatically sets the persisted flag for VCS if the volume is
changed after the service is registered. As some of these PTS tests
require a set volume with the flag cleared, the initial volume needs to
be set before registering VCS.

Signed-off-by: Frode van der Meeren <frode.vandermeeren@nordicsemi.no>
2025-11-18 10:48:01 -05:00
Piotr Kosycarz
0d1f73b6fd boards: nordic: nrf54lm20dk: enable debugging for flpr
Use specific jlink device for app and flpr core.
This will enable flpr core debugging.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-11-18 10:47:48 -05:00
Seppo Takalo
0364ef4965 MAINTAINERS: Add Seppo Takalo as collaborator for modem area
I'm working at Nordic Semiconductor in a team that is developing the
Serial Modem application for nRF91 and I have spend significant amount
of time for studying the CMUX protocol to implement the power saving
mechanism for it and submitted it here.

I therefore have quite a good understanding of the Zephyr's modem
subsystem.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-11-18 10:47:35 -05:00
Ayush Singh
9f4a0153b8 dts: arm64: ti: ti_am62x_a53: Use GPIO Proxy
After trying out a few different approaches, I think having separate
nodes for each bank in devicetree and having a GPIO proxy node for the
controller is the best solution right now.

To be more specific, GPIO proxy solution still allows for bank level
GPIO toggling. The linux kernel GPIO davinci driver is currently limited
to single pin operations. This might not be a problem in Linux, but I
feel like embedded systems would prefer having support for bank level
operations.

This also does not pose a problem for the future implementation of
interrupts due to that fact that the interrupt router is separate device
and will require a separate driver. In fact, the GPIO interrupt router
is shared between main_gpio0 and main_gpio1.

This patch also reverts the previous bank offset related work on GPIO
davinci driver.

The patch has been tested on PocketBeagle 2.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-11-18 10:47:20 -05:00
Fin Maaß
4670a6a6ec boards: litex: add missing netif:eth to supported
add missing netif:eth to supported for litex board.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-18 10:47:12 -05:00
Jamie McCrae
2e54630612 mgmt: mcumgr: grp: img_mgmt: Add support for up to 8 images
Adds slot/image information for using up to 8 images on a device

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-18 10:46:40 -05:00
Jamie McCrae
764b61f306 dfu: boot: mcuboot: Add support for up to 8 images
Adds slot/image information for using up to 8 images on a device

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-18 10:46:40 -05:00
Jukka Rissanen
d164f8b55d lib: posix: Add shim for getopt API
Allow user to use the new sys_getopt API via the old non-Posix
compliant getopt API. This is a temporary solution and the shim
will be deprecated and eventually removed at some point.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-18 10:46:29 -05:00
Jukka Rissanen
22f9ef0a33 sys: getopt: Rename getopt to sys_getopt to avoid conflicts with Posix
Summary:

As Zephyr getopt is not really compatible with Posix getopt, rename
Zephyr getopt to sys_getopt.

Background:

Zephyr getopt module was introduced in #31356 to be used by the shell.
Zephyr's getopt is not the standard one. It has multiple APIs which make
it more suited for a system like Zephyr where different components may
want to use it for different purposes. Including APIs to init it,
get and set its internal state etc.
Several Zephyr modules (shell, net, wifi, ztest) use this getopt with
these special APIs. The getopt module is bundled in the POSIX
compatibility API subsystem (CONFIG_POSIX_C_LIB_EXT).

Problem description:

As it is not the standard getopt(), no C library can possibly provide
a Zephyr compatible version (even if such C library were to provide a
standard getopt()). As it is bundled in Zephyr's POSIX API in
CONFIG_POSIX_C_LIB_EXT), multiple components that depend on it are
selecting CONFIG_POSIX_C_LIB_EXT. Zephyr core components should not
depend on the POSIX API in this way.

Changes done in this commit:

Rename the getopt*() APIs to sys_getopt*() and move them into a module
under lib/utils with its own Kconfig option to enable it.
Zephyr's users are changed to use this new component.
The POSIX subsystem can continue providing getopt() by calling the new
sys_getopt() and in that way retain backwards compatibility for external
users.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-18 10:46:29 -05:00
Vladislav Kulikov
a2f057da97 MAINTAINERS: add vlad-kulikov as SMF maintainer
This is a follow-up to @keith-zephyr’s note that SMF is looking for a
new maintainer:
https://github.com/zephyrproject-rtos/zephyr/pull/97943#issuecomment-3439589314

I am proposing this shortly after getting collaborator only
because there is an active search and I am already working in SMF
(source-level changes, SMF-related RFCs, and improving the
sibling-transition path to make the common transition at least
~30% faster). If there were no open need, I would have waited longer
before proposing this.

Signed-off-by: Vladislav Kulikov <vlad_kulikov_c@pm.me>
2025-11-18 10:46:09 -05:00
Emil Gydesen
1c51cbfb52 tests: Bluetooth: Tester: Decrease BSIM UART poll timeout
Modify the timeout from 10ms to 100us. The reason for this
is that the UART can only hold 4 octets at a time, which
cases events larger than 4 octets to require multiple
timeout before the entire event can be sent.

This solution is mostly a workaround and has the purpose
of increasing the performance and help prevent the tests
from failing due to the low speed caused by this. A
proper solution would likely be to switch to the async UART
API instead.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-18 10:45:41 -05:00
Emil Gydesen
42ad1a3821 tests: Bluetooth: Tester: Increase ISO buffers
The ISO buffers defaults to 1, but since there are
risks that the ISO RX events cannot be sent to
the upper tester via UART before the next RX,
the RX is increased. This also allows to better
support cases where the ISO interval is larger than
the SDU interval.
The ISO TX buffers are similarly increase to help
prevent cases where a TX isn't scheduled.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-18 10:45:41 -05:00
Tahsin Mutlugun
7d58e14261 boards: adi: Add full names for MAX32 boards that were missing them
Add missing `full_name` entries for MAX32657EVKIT and MAX32658EVKIT
in their respective board.yml files.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-11-18 10:45:15 -05:00
Sebastian Głąb
87d15bb2be samples: boards: nordic: spis_wakeup: Run sample on APP+PPR
Extend sample with possibility to use PPR core instead of Radio core.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 08:17:20 -05:00
Seppo Takalo
1d9947188d drivers: modem_cellular: Update nRF91 Serial Modem PPP script
nRF91 Serial Modem application does not anymore start PPP automatically.
Update initialization script to request it.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-11-18 08:13:09 -05:00
Tomi Fontanilles
fe0c6bc773 MAINTAINERS: add tomi-font as TF-M maintainer
Upgrade from collaborator to maintainer as suggested in
https://github.com/zephyrproject-rtos/zephyr/pull/99161#issuecomment-3521814531.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-11-18 08:12:57 -05:00
Nicholas Lowell
e6d1941c30 shell / logging: shell log backend output Kconfig
Gives access to all log output format flag configurations
for shell backend.

shell log backend doesn't use log_backend_std_get_flags()
and it's debateable if it should, so give it its own fullly
configurable format set for maximum backend bandwidth control

Signed-off-by: Nicholas Lowell <Nicholas.Lowell@lexmark.com>
2025-11-18 08:12:38 -05:00
Jakub Klimczak
3c4277391a zvfs: Remove test for static initialization of stdin, stdout, stderr
This removes a function that created a new mutex and conditional variable
and used memcpy() to compare them with ones in a given fdtable entry.
Since those struct members are initialized statically, this test doesn't
serve much of a purpose anymore. Moreover, padding bytes inside structs
are technically not required to be zero, so these memcpy() calls caused
SonarQube to complain.

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-11-18 08:12:19 -05:00
Jakub Klimczak
f16f3f641e zvfs: Move fdtable into ZVFS
The file descriptor table is used in every area that expects to work on
files through descriptor indices. It can only be operated on through
functions whose names indicate a relationship with ZVFS (`zvfs_*fd*`).
The integer file descriptor mechanism shouldn't be separate from ZVFS.
This will make cooperation between different file access APIs much
simpler. This commit also makes preparations for the fdtable becoming
optional.

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-11-18 08:12:19 -05:00
Jakub Klimczak
735f0d7363 zvfs: Move file operations from POSIX into ZVFS
This commit moves all operations on single files into ZVFS and makes the
POSIX subsystem call into ZVFS to perform them. It was necessary to define
a `struct zvfs_stat` to avoid a dependency cycle. Functions used
internally for file i/o operations are publicised since they won't require
any changes between various subsystems. This allows ZVFS to actually
fulfill its purpose of facilitating cooperation of different file APIs.

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-11-18 08:12:19 -05:00
Alexander Svensen
52f2686de6 tests: bluetooth: tester: CSIS: Add more commands
- Add command for setting the set size
- Add command for setting the SIRK
- Allows the following tests to pass:
 - CSIS/SR/CN/BV-01-C
 - CSIS/SR/CN/BV-02-C
 - CSIS/SR/CN/BV-03-C
 - CSIS/SR/CN/BV-04-C

Signed-off-by: Alexander Svensen <alexander.svensen@nordicsemi.no>
2025-11-18 08:12:06 -05:00
Alexander Svensen
fa8c244313 Bluetooth: Audio: CSIS: Check all pending notifications
- When a bonded device is reconnected, check flags for pending
  notifications for:
 - Lock
 - SIRK
 - Size

Previously only lock was checked

Signed-off-by: Alexander Svensen <alexander.svensen@nordicsemi.no>
2025-11-18 08:12:06 -05:00
Jordan Yates
f8f43c411e lib: net_buf: usage helper functions
Add helper functions for querying the internal fields of
`struct net_buf_pool` when `CONFIG_NET_BUF_POOL_USAGE` is enabled.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-18 08:11:56 -05:00
Charles Dias
394b49de28 boards: st: stm32u5g9j_dk1: Enable STTS22H and add ambient-temp alias
Add STTS22H node at I2C3 with node label stts22h_temperature
and add ambient-temp alias.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-11-18 08:11:42 -05:00
Simon Maurer
c7fc608633 drivers: i2c: i2c_xilinx_axi: switch to DEVICE_MMIO API
Switch the Xilinx AXI I2C device driver to use the DEVICE_MMIO_...
macros instead of directly using the physical base address from the
device tree. This allows the driver to work on SoCs with an MMU,
such as the Zynq-7000.

Signed-off-by: Simon Maurer <mail@maurer.systems>
2025-11-18 08:11:16 -05:00
Tamas Jozsi
9ebf508e5f boards: arduino: add ADC support for the Nano Matter
Adds ADC capability to the A0-A7 pins on the board.

Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
2025-11-18 08:11:01 -05:00
Henrik Brix Andersen
3cba0beef6 logging: mark custom header inclusion as experimental
Mark the custom logging header support as experimental.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-11-18 08:10:51 -05:00
Henrik Brix Andersen
a4a173b43d shell: mark custom header inclusion as experimental
Mark the custom shell header support as experimental.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-11-18 08:10:51 -05:00
Tamas Jozsi
2accdbe9e8 boards: seeed: add ADC support for the XIAO MG24
ADC pins are now mapped to the A0-A6 pins.

Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
2025-11-18 08:10:31 -05:00
Tamas Jozsi
c008c1e5f6 boards: sparkfun: add ADC support for the ThingPlus MGM240P
ADC pins are now mapped to the A0-A7 pins.

Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
2025-11-18 08:10:31 -05:00
Abderrahmane JARMOUNI
93586972be MAINTAINERS: Add JarmouniA as Display maintainer
Take on the maintainership of the Display area that have
been unmaintained for some time now.
This will allow me to be in the right position to push
for much needed reworks & improvements in this area.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-18 08:10:21 -05:00
Muhammed Asif
11527f216b boards: microchip: add PIC32CX SG41 Curiosity Ultra Evaluation Kit support
Add initial support for the Microchip PIC32CX SG41 Curiosity Ultra board

Product page: https://www.microchip.com/en-us/development-tool/EV06X38A

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-11-18 08:10:13 -05:00
Tomi Fontanilles
ea6a99a697 MAINTAINERS: add valeriosetti and tomi-font as mbedtls maintainers
We have both been active contributors in this area for some time.
Considering the current maintainers are not very active and not always
responsive, step up to help better maintain this area.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-11-18 08:10:01 -05:00
Jamie McCrae
cebdb0d1ec cmake: modules: boards: Fix board moved check
Fixes checking for board folders that have moved by checking if
the BOARD_DIR variable is already set (i.e. loaded from cache)

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-18 08:09:49 -05:00
Peter van der Perk
7f0d2088a6 imx95: Enable FlexIO Cortex-M7 SOC
Adds FlexIO DTS definitions for imx95 cortex-m7 to use flexio driver.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-11-18 08:09:36 -05:00
Jamie McCrae
09d520cbd0 drivers: i2c: i2c_nrfx_twi: Fix not guarding deinit function
Fixes an issue with an unused function being defined if
CONFIG_DEVICE_DEINIT_SUPPORT was disabled

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-18 08:09:24 -05:00
Jamie McCrae
828183f45a drivers: spi: spi_nrfx_spim: Fix not guarding deinit function
Fixes an issue with an unused function being defined if
CONFIG_DEVICE_DEINIT_SUPPORT was disabled

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-18 08:09:24 -05:00
Jamie McCrae
6a07d96b5f drivers: serial: uart_nrfx_uarte: Fix not guarding deinit function
Fixes an issue with an unused function being defined if
CONFIG_DEVICE_DEINIT_SUPPORT was disabled

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-18 08:09:24 -05:00
Mathieu Choplain
173454802b soc: st: stm32: allow disabling ENABLE_DEBUG_SLEEP_STOP when DEBUG=y
Use an override-able 'default' for CONFIG_STM32_ENABLE_DEBUG_SLEEP_STOP
rather than forcefully 'select'ing the symbol when CONFIG_DEBUG=y, as
there are situations where one might want CONFIG_DEBUG=y without inhibiting
low-power mode entry.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-18 08:09:00 -05:00
Fabian Blatz
99a8cf59b8 shell: Fix method name typo
Fix issue where method names contained bacskpace instead of backspace.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-11-18 08:08:40 -05:00
Benjamin Cabé
d306473464 doc: build: fix typo in zephyr_cmake_package.rst
Corrected "This is means" to "This means"

Fixes zephyrproject-rtos/zephyr#98714

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-18 08:08:28 -05:00
Tomasz Moń
f22e6a8818 dts: vendor: nordic: nrf54h: add missing newline
Add missing newline found by dts-linter. The missing newline is failing
CI for any change that modifies nrf54h20.dtsi.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-11-18 08:08:08 -05:00
Martin Lampacher
dece6f91e6 doc: ztest: add a note about host restrictions for unit testing
Running unit tests on macOS or Windows is currently not supported due to
fundamental differences in the architectures. Added a note in the
"Quick start - Unit testing" section about this restriction.

Signed-off-by: Martin Lampacher <martin.lampacher@gmail.com>
2025-11-18 11:24:17 +01:00
Mathieu Choplain
acbc86a738 llext: linker: use INFO type instead of COPY
COPY and INFO are different names for the same Output Section Type,
but the latter is easier to understand in the context we are using it.

Replace COPY with INFO in the LLEXT linker script snippet.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-18 11:23:55 +01:00
Daniel Leung
2bfb7e403d x86: ruff format on gen_mmu.py
Format gen_mmu.py via ruff.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-18 11:22:46 +01:00
Daniel Leung
39ed039155 x86: fix ruff issues on gen_mmu.py
Fixes issues found by ruff on gen_mmu.py.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-18 11:22:46 +01:00
Daniel Leung
c19ff1c199 x86: ruff format on gen_idt.py
Format gen_idt.py via ruff.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-18 11:22:46 +01:00
Daniel Leung
b52b6716f6 x86: fix ruff issues on gen_idt.py
Fixes issues found by ruff on gen_idt.py.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-18 11:22:46 +01:00
Daniel Leung
6b0ac6e30b x86: ruff format on gen_gdt.py
Format gen_gdt.py via ruff.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-18 11:22:46 +01:00
Daniel Leung
9b7471277a x86: fix ruff issues on gen_gdt.py
Fixes issues found by ruff on gen_gdt.py.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-18 11:22:46 +01:00
Josh DeWitt
0dc2e0c38f soc: nordic: Gate FLASH_0 MPU region on CONFIG_XIP
Only include a flash MPU region if CONFIG_XIP is set, similar to
arm/core/mpu/arm_mpu_regions.c.

Signed-off-by: Josh DeWitt <josh.dewitt@garmin.com>
2025-11-18 11:22:36 +01:00
Pete Johanson
fbf04aa1c8 drivers: adc: shell: add support for ADI AD7124 ADCs
Include the correct compatible for the ADI AD7124 family of ADCs.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-11-18 11:22:06 +01:00
Sebastian Głąb
80a00b818d tests: drivers: watchdog: wdt_basic_api: Run test on nrf54l15 NS
Enable wdt_basic_api test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
cfe1ffa501 tests: boards: nrf: i2c: i2c_slave: Move tests DTS files
Move DTS overlay files that modify test configuration
from boards sub-directory to the main application directory.
There is no 'i2c_speed_fast' board.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
55f9d2c82c tests: boards: nrf: i2c: i2c_slave: Run test on nrf54l15 NS
Enable i2c_slave test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
5501999078 tests: boards: nrf: i2c: i2c_slave: Fix DTS formatting
Add reqired empty line as indicated by the compliance check.
Add License header.
Add information about GPIO loopbacks used by the test.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
89723c18f9 tests: drivers: counter: counter_basic_api: Fix test on nrf54l15 NS
Add DTS overlay required to pass the test.
Test filter is meet for nrf54l15 NS platform.
However, test fails due to missing node configuration.

Fix the counter test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
c359c4440a tests: drivers: spi: spi_controller_peripheral: Move test overlays
Overlay files that modify test configuration shall be stored
in the main application directory.
There is no board with f.e. '1mhz' name.

Move test overlays from boards sub-direcotry to the main
application directory.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
3a7afe31ed tests: drivers: spi: spi_controller_peripheral: Fix DTS formatting
Fix DTS overlay file formatting as requested by
the compliance check.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
399c0a9282 tests: drivers: spi: Run spi_controller_peripheral on nrf54l15 NS
Enable spi_controller_peripheral test on
nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
4689b29e85 tests: drivers: adc: Run test on nrf54l15 NS
Enable adc_api test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
e761ba1950 tests: boards: nrf: qdec: Run test on nrf54l15 NS
Enable QDEC test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
8a01e8d755 tests: drivers: sensor: temp_sensor: Run test on nrf54l15 NS
Enable temp_senor test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
2a0b1d258d tests: drivers: pwm: Run test on nrf54l15 NS
Enable pwm_gpio_loopback test on
nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
ef3a97acd7 boards: nordic: nrf54l15dk: Sort supported fetures
Sort alphabetically supported features on
- nrf54l15dk/nrf54l15/cpuapp,
- nrf54l15dk/nrf54l15/cpuapp/ns,
platforms.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
539b5b5238 tests: drivers: i2s: Run I2S tests on nrf54l15 NS
Enable I2S tests on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
69fa00dc79 tests: drivers: timer: nrf_grtc_timer: Run test on nrf54l15 NS
Enable nrf_grtc_timer test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
26562e6b73 tests: drivers: gpio: gpio_basic_api: Run test on nrf54l15 NS
Enable gpio_basic_api test on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
2e685e59d7 tests: drivers: clock_control: Enable tests on nrf54l15 NS
Enable clock control tests on nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
07d4577762 tests: drivers: comparator: Enable test on nrf54l15 NS
Add overlays required to run the gpio_loopback test on
nrf54l15dk/nrf54l15/cpuapp/ns platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Sebastian Głąb
eb41b8243c tests: drivers: uart: uart_async_api: Fix test on nrf54l15 NS
drivers.uart.async_api filter is meet on nrf54l15 NS platform.
However, overlay file is needed to configure uart peripheral.

Add overlay required to pass uart_async_api test.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-11-18 11:21:48 +01:00
Mario Paja
4727f602da drivers: i2s: stm32 sai add sai disable function
This change introduces sai disable at the end of stream or
in an event of an error. It disables SD, FS and SCK.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-11-18 11:20:42 +01:00
Alexander Kozhinov
881c5b5571 samples: drivers: opamp: output_measure
prj.conf:
	enable logging
	add log buffer size and debug options and comment them

main.c:
	show gain value at runtime as a starting
	use ADC calibration before conversion

README.rst:
	update with sample gain prints

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-11-18 11:19:59 +01:00
Alexander Kozhinov
f57d15c727 dts: bindings: opamp: opamp-controller.yaml
make functional mode required
add functional modes description with circuit examples

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-11-18 11:19:59 +01:00
Alexander Kozhinov
adeb0711ba dts: arm: nxp: opamp functional mode
set the default functional mode of OPAMP peripherals to "follower"

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-11-18 11:19:59 +01:00
Charles Dias
e396e2a180 boards: shields: st: enable the touch input on st_lcd_dsi_mb1835
Add devicetree and configuration for the touch controller on
STM32U5G9J-DK1 and st_lcd_dsi_mb1835 shield.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-11-18 11:18:41 +01:00
Armando Visconti
a920a8b966 modules/hal_st: Align to stmemsc HAL i/f v2.11.1
Align all sensor drivers that are using stmemsc (STdC) HAL i/f
to new APIs of stmemsc v2.11.1

Requires https://github.com/zephyrproject-rtos/hal_st/pull/27

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-11-18 11:17:41 +01:00
Yangbo Lu
b8e80ca42d tests: sd: sdmmc: use zephyr,sdmmc-disk as test filter
Used zephyr,sdmmc-disk as test filter instead of sdhc0
for platforms which indeed had SD card.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-11-18 11:14:36 +01:00
Mark Wang
3daddb836f drivers: usb: udc: mcux: force ehci speep as FS
When CONFIG_UDC_DRIVER_HIGH_SPEED_SUPPORT_ENABLED is disabled, force
configure ehci controller to work as FS.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-11-17 16:42:27 -05:00
Dylan Philpot
87cc32f64b soc: add soc defines for g1518/g3518
The SOC config defines were missing for these subset
devices.

Signed-off-by: Dylan Philpot <d-philpot@ti.com>
2025-11-17 16:41:36 -05:00
Anas Nashif
da73b6c30e tests: posix: xsi_realtime: add missing includes
Add missing includes to test.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-17 16:41:16 -05:00
Jukka Rissanen
1380739f25 tests: net: all: Add more compilation support
Make sure we test coap client/server, MQTT SN, telnet and
logging network backend when testing all network options.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
ddf17adc93 log: backend: net: Remove Posix dependency
The network backend needs nothing from Posix so remove the
dependency.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
55457ee4b8 net: zperf: Change old code to pass compliance checker
Compliance checker complains

   TYPO_SPELLING: 'in in' may be misspelled - perhaps 'is in'?

for code like this

   static struct net_sockaddr_in in_addr_my = {

so change the variable to ipv4_addr_my. Similar change is
done for IPv6 variables for consistency.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
b626c83d45 tests: net: socket: tls_configurations: err variable might be unused
Mark the err variable as possibly unsed depending on the enabled
config options.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
13d84b136e tests: net: Add relevant Posix headers for networking
We need certain network related Posix header files so that the
network tests using Posix symbols compiles ok.
Previously the Posix symbols were introduced by network stack
automatically, but that is no longer the case.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
ac859d0e77 samples: net: Add relevant Posix headers for networking
We need certain network related Posix header files so that the
network sample compiles ok. Previously the Posix symbols were
introduced by network stack automatically even if user had not
enabled Posix, but that is no longer the case.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
2fd14905ff lib: posix: net: Add support for namespaced network symbols
Use namespaced network symbols in order to avoid circular dependency
between Posix and network subsystems.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
6c18fd348c net: sockets: Remove Posix header file includes
Do not include Posix header files inside network stack as we should
not depend on Posix symbols in net stack.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
354e117192 net: socket: Network should not include any Posix header
Removing Posix header inclusion as networking APIs and code should
be self contained now.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
55c49cdb8f net: Convert wifi drivers to use renamed network APIs
Rename network symbols in wifi drivers to use the renamed
network APIs.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
bf5af88589 net: Convert usb drivers to use renamed network APIs
Rename network symbols in usb drivers to use the renamed network APIs.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
b5588ed684 net: Convert modem drivers to use renamed network APIs
Rename network symbols in modem drivers to use the renamed
network APIs.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
985d1c0351 net: Convert IEEE 802.15.4 drivers to use renamed network APIs
Rename network symbols in IEEE 802.15.4 drivers to use the renamed
network APIs.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
e6daacf3c9 net: Convert Ethernet drivers to use renamed network APIs
Rename network symbols in Ethernet drivers to use the renamed network APIs.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
d67611a908 net: Convert network drivers to use renamed network APIs
Rename network symbols in net drivers to use the renamed network APIs.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
d45cd6716b net: Convert network codebase to use renamed network APIs
Rename network symbols in network stack to use the renamed network APIs.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
33ac14a764 modules: openthread: Remove SOCK_NONBLOCK as it is not supported
There is no SOCK_NONBLOCK support in zephyr so remove the option.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Jukka Rissanen
a63dbfb6cc net: Namespace network symbols to avoid conflicts with Posix/libc
Rename network symbols i.e., add net_, NET_ or ZSOCK_ prefixes
to those network symbols that can be found in Posix or libc.
This way we can avoid circular dependency issues.

Add also a compatibility header file that allows user to continue
use various network APIs without adding either net_, NET_ or ZSOCK_
prefixes.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-17 14:01:32 -05:00
Mathieu Choplain
f0b8d94590 soc: st: stm32: move POWEROFF entry sequence to common code
Move the architecture-specific (but implementation dependent!) code which
performs entry in poweroff state (Shutdown/Standby without retention) to
a common implementation shared by all STM32 SoC series. This is a first
step and could be further refined at a later time; eventually, a unified
z_sys_poweroff() implementation may even be possible.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-17 13:59:31 -05:00
Sean Kyer
830bc4f13a doc: release: Add Bluetooth ANS service to 4.4 release notes
Add Alert Notification Service (ANS) and enabling Kconfig
to 4.4 release notes.

Signed-off-by: Sean Kyer <sean.actor@gmail.com>
2025-11-17 13:49:22 -05:00
Sean Kyer
05634c3d6c bluetooth: ANS: Add Alert Notification Service
Add alert notification service (ANS) to Bluetooth
subsystem and accompanying sample.

Signed-off-by: Sean Kyer <sean.actor@gmail.com>
2025-11-17 13:49:22 -05:00
Richard Skriwanek
4d6dd7c6a0 samples: basic: blinky_pwm: add nucleo_u385rg_q
The blinky_pwm test was not available for the nucleo_u385rg_q board.
Added the board overlay to the blinky_pwm sample.

Signed-off-by: Richard Skriwanek <richy@fnc.at>
2025-11-17 13:48:31 -05:00
Richard Skriwanek
b2578a2b87 tests: drivers: counter: counter_basic_api: add nucleo_u385rg_q
Counters API test were not available for the nucleo_u385rg_q board.
Added the nucleo_u385rg_q board overlay to the
counter_basic_api test.

Signed-off-by: Richard Skriwanek <richy@fnc.at>
2025-11-17 13:48:31 -05:00
Richard Skriwanek
cc24cea895 tests: drivers: pwm: pwm_api: add nucleo_u385rg_q
PWM API test were not available for the nucleo_u385rg_q board.
Added the nucleo_u385rg_q board overlay to the pwm_api test.

Signed-off-by: Richard Skriwanek <richy@fnc.at>
2025-11-17 13:48:31 -05:00
Richard Skriwanek
851a7fa1d0 boards: st: nucleo_u385rg_q: add PWM LEDs
The nucleo_u385rg_q board had no pwm-led defined.
Added the relevant led and timer definitions.
Additionally the pwm and counter are added
to supported functions.

Signed-off-by: Richard Skriwanek <richy@fnc.at>
2025-11-17 13:48:31 -05:00
Richard Skriwanek
1f84b6c651 dts: arm: st: stm32u3: define timer nodes
The dtsi file for STM32U3 was missing the timer definitions.
Fixed by adding all missing timers.

Signed-off-by: Richard Skriwanek <richy@fnc.at>
2025-11-17 13:48:31 -05:00
Richard Skriwanek
ffa8d6cacf drivers: clock_control: stm32: fix configuration for stm32u3
A change was introduced in how stm32 timers clocks are defined
to have multiple clock definitions.
This change was not handled in the stm32u3 series driver
(which had no timers defined in the dts at all).
This fix ports the required code to the stm32u3 mcu.

Signed-off-by: Richard Skriwanek <richy@fnc.at>
2025-11-17 13:48:31 -05:00
Josuah Demangeon
30950b888d style: drivers: sort Kconfig and CMake includes
Use the "zephyr-keep-sorted-start/stop" comment to have CI check
the alphabetical order of includes, to help reducing the chance
of conflicts while contributing drivers.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-11-17 13:48:03 -05:00
Josuah Demangeon
0c4ab40921 style: share: apply coding style on CMakeLists.txt files
Apply the CMake style guidelines to CMakeList.txt files in share/.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-11-17 13:48:03 -05:00
Josuah Demangeon
f1101b7c7a style: modules: apply coding style on CMakeLists.txt files
Apply the CMake style guidelines to CMakeList.txt files in modules/.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-11-17 13:48:03 -05:00
Josuah Demangeon
23662f1e5d style: soc: apply coding style on CMakeLists.txt files
Apply the CMake style guidelines to CMakeList.txt files in soc/.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-11-17 13:48:03 -05:00
Josuah Demangeon
e6e7fc549e style: tests: apply coding style on CMakeLists.txt files
Apply the CMake style guidelines to CMakeList.txt files in tests/.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-11-17 13:48:03 -05:00
Josuah Demangeon
a62dd577bd style: samples: apply coding style on CMakeLists.txt files
Apply the CMake style guidelines to CMakeList.txt files in samples/.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-11-17 13:48:03 -05:00
Josuah Demangeon
9bd94fab14 style: subsys: apply coding style on CMakeLists.txt files
Apply the CMake style guidelines to CMakeList.txt files in subsys/.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-11-17 13:48:03 -05:00
Josuah Demangeon
1b87ec87ef style: drivers: apply coding style on CMakeLists.txt files
Apply the CMake style guidelines to CMakeList.txt files in drivers/.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-11-17 13:48:03 -05:00
Josuah Demangeon
bf9c3b150d style: cmake: apply coding style on CMakeLists.txt files
Apply the CMake style guidelines to all CMakeList.txt files in cmake/.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-11-17 13:48:03 -05:00
Josuah Demangeon
42a0111133 style: arch: apply coding style on CMakeLists.txt files
Apply the CMake style guidelines to all CMakeList.txt files in arch/.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-11-17 13:48:03 -05:00
Josuah Demangeon
ccbc21bb32 style: boards: apply CMakeLists.txt coding style
Apply the CMake style guidelines to all CMakeList.txt files in boards/.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-11-17 13:48:03 -05:00
Zhijie Zhong
ad33607fbc tests: Bluetooth: Add deinit for resource cleanup in unicast tests
call unregister func, Mark TODO for additional cleanup.

Signed-off-by: Zhijie Zhong <zhongzhijie1@xiaomi.com>
2025-11-17 13:46:47 -05:00
Zhijie Zhong
c222dcff8c bluetooth: host: Add bt_gatt_cb_unregister() to unregister GATT callbacks
New API bt_gatt_cb_unregister, use _SAFE iteration for callback list.

Signed-off-by: Zhijie Zhong <zhongzhijie1@xiaomi.com>
2025-11-17 13:46:47 -05:00
Etienne Carriere
1b89002e9c boards: st: fix typos in board doc on M4 related variant
Correct build instruction targeting Cortex-M4 build in ST boards
where a 'm4' variant is needed to build a Zephyr application for the
Cortex-M4 core.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-17 13:46:11 -05:00
Etienne Carriere
7b17c7fbc4 boards: st: nucleo_n657x0_q: add missing empty line
Add missing empty line in nucleo_n657x0_q board documentation.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-17 13:46:11 -05:00
Etienne Carriere
fa0b9d164a boards: st: stm32h745i_disco: reword UM to User Manual in documentation
Reword UM to plain User Manual in stm32h745i_disco board documentation.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-17 13:46:11 -05:00
Etienne Carriere
da75727947 boards: st: stm32h7s78_dk: fix user manual link
Correct link to stm32h7s78_dk board user manual in board documentation.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-17 13:46:11 -05:00
Etienne Carriere
be2b2e71f0 boards: st: stm32h573i_dk: fix user manual link
Correct link to stm32h573i_dk board user manual in board documentation.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-17 13:46:11 -05:00
Lyle Zhu
6c83b9bc04 Bluetooth: Classic: HFP_HF: Register SCO connect callback
There is an issue that the SCO connect cannot be un-referenced by HFP
HF when the SCO connection is broken if the SCO connect is not created
by HFP HF.

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-11-17 10:59:10 -05:00
Lyle Zhu
3d8dfd7af7 Bluetooth: Classic: HFP_AG: Compatible old version HF
In current implementation, the HF with old version cannot be
supported properly.
Such as, if the AG is version 0.96, the AT command `AT+BRSF` will not
be sent. It causes the AG cannot know the features of HF.

Compatible old version with the following changes,

Discover the HF SDP record to get the profile version and HF features.
If the SDP discovery is failed, break the RFCOMM DLC connection.

If the AG version is v0.96, update the HF features according to the
discovered HF features.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-17 10:59:10 -05:00
Lyle Zhu
477b3ddd0c Bluetooth: Classic: HFP_HF: Compatible old version AG
In current implementation, the AG with old version cannot be
supported properly.
Such as, if the AG is version 0.96, the AT command `AT+BRSF` should
not be sent.
And if the AG is no newer than version 1.5, the `Codec Negotiation`
should be unsupported.

Compatible old version with the following changes,

Discover the AG SDP record to get the profile version and AG
features. If the SDP discovery is failed, break the RFCOMM DLC
connection.

If the AG version is v0.96, do not send AT command `AT+BRSF`.

Create SCO connection directly if the codec negotiation feature is
unsupported on both side in the function `bt_hfp_hf_audio_connect()`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-17 10:59:10 -05:00
Lyle Zhu
3f201d5c5f Bluetooth: Classic: shell: Add cover art shell commands
Add cover art shell commands for AVRCP controller and target.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-17 10:58:06 -05:00
Lyle Zhu
8e144a89f3 Bluetooth: Classic: AVRCP: Enable cover art feature
Add Kconfig `BT_AVRCP_TG_COVER_ART` to enable the target cover art
feature.

Add Kconfig `BT_AVRCP_CT_COVER_ART_GET_IMAGE_PROPERTIES` to enable
the controller cover art get image properties feature.

Add Kconfig `BT_AVRCP_CT_COVER_ART_GET_IMAGE` to enable the
controller cover art get image feature.

Add Kconfig `BT_AVRCP_CT_COVER_ART_GET_LINKED_THUMBNAIL` to enable
the controller cover art get linked thumbnail feature.

Add functions `bt_avrcp_cover_art_ct_cb_register()` and
`bt_avrcp_cover_art_tg_cb_register()` to register the callback.

Add function `bt_avrcp_cover_art_ct_l2cap_connect()` to create the
L2CAP connection for OBEX transport.

Add functions `bt_avrcp_cover_art_ct_l2cap_disconnect()` and
`bt_avrcp_cover_art_tg_l2cap_disconnect()` to disconnect the L2CAP
connection.

Add functions to send OBEX request/response, including connect,
disconnect, abort, get_image_properties, get_image, and
get_linked_thumbnail.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-17 10:58:06 -05:00
Peter van der Perk
3945b21b1f imx95: Enable I3C Cortex-M7 SOC
Adds I3C DTS definitions for imx95 cortex-m7 to use mcux-i3c drdiver

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-11-17 10:57:37 -05:00
Frode van der Meeren
03bfafe05e tests: bluetooth: tester: Fix CSIS/SR/SP/BV-07-C
This particular test-case requires bttester to respond with an OOB
procedure SIRK only error. To enable this response, the BTP command to
set SIRK mode has been extended with a new selection.

Signed-off-by: Frode van der Meeren <frode.vandermeeren@nordicsemi.no>
2025-11-17 10:57:28 -05:00
Benjamin Cabé
3598b6f40c modules: openthread: fix doxygen for openthread_set_nat64_receive_cb
Fix include guards and better document the kconfig dependency

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-17 10:56:56 -05:00
Benjamin Klaric
7987614b54 boards: st: stm32h7s78_dk: remove redundant CONFIG_SYS_HEAP_AUTO config
As stated, removed the unnecessary CONFIG_SYS_HEAP_AUTO=y from
both defconigs, since it is enabled per default for this board.

Signed-off-by: Benjamin Klaric <benjamin.klaric01@gmail.com>
2025-11-17 09:26:10 -05:00
Emil Gydesen
2423a41e6a tests: Bluetooth: Audio: Add RX check for each stream
Changed the generic global flag_audio_received flag to
exist for each stream. This will help verify that each
stream, if configured for RX, receives the expected
data.

One test started failing due to this, so that was disabled
until a fix is in place in the controller.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-17 09:25:12 -05:00
Firas Sammoura
f877417f0d tests: riscv: Implement unit tests for PMP memattr configuration and state
This commit implements a new unit test suite to validate the
integration of Device Tree memory attributes (`zephyr,memory-attr`)
with the RISC-V Physical Memory Protection (PMP) hardware.

The test suite includes:
1. **`test_pmp_devicetree_memattr_config`**: Verifies that the PMP
   Control and Status Registers (CSRs) are programmed correctly based
   on the memory regions defined with `zephyr,memory-attr` in the
   Device Tree. It iterates through the active PMP entries and
   asserts a match against the expected DT-defined regions.
2. **`test_riscv_mprv_mpp_config`**: Checks the initial state of the
   Machine Privilege Register Virtualization (MPRV) bit and Machine
   Previous Privilege (MPP) field in the `mstatus` CSR to ensure PMP
   is configured for correct privilege level switching during boot.
3. **`test_dt_pmp_perm_conversion`**: Validates the
   `DT_MEM_RISCV_TO_PMP_PERM` macro to ensure the conversion from
   Device Tree memory attribute flags to RISC-V PMP permission bits
   (R/W/X) is correct.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-17 09:25:01 -05:00
Firas Sammoura
80d34bbe0a riscv: pmp: Extract region address calculation to helper function
The logic to decode PMP addressing modes (**TOR**, **NA4**, **NAPOT**) into
physical start and end addresses was previously embedded in
`print_pmp_entries()`.

Extract this calculation into a new static helper function,
`pmp_decode_region()`, to significantly improve the readability and
modularity of the PMP debug printing code.

The new helper function is fully self-contained and exposes a defined API
for the PMP address decoding logic. This enables **direct reuse** in
**unit tests** (e.g., using **Ztest**) to verify the core address
calculation accuracy for all PMP modes and boundary conditions, independent
of the main PMP initialization or logging path.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-17 09:25:01 -05:00
Firas Sammoura
c011fddf95 riscv: pmp: Support custom entries from Device Tree for memory attributes
The Physical Memory Protection (PMP) initialization is updated to support
custom entries defined in the Device Tree (DT) using the `zephyr,memattr`
property, contingent on `CONFIG_MEM_ATTR` being enabled. A new function,
`set_pmp_mem_attr()`, iterates over DT-defined regions and programs PMP
entries in `z_riscv_pmp_init()`, allowing for early, flexible, and
hardware-specific R/W/X protection for critical memory areas. DT-based
entries are also installed in `z_riscv_pmp_kernelmode_prepare()` for
thread-specific configuration. The logic for the temporary PMP "catch-all"
entry is adjusted to account for new DT entries. Furthermore, the PMP
domain resync logic now masks user partition permissions against DT-defined
region permissions, preventing privilege escalation. `CONFIG_RISCV_PMP` is
updated to select `PMP_KERNEL_MODE_DYNAMIC` if `MEM_ATTR`. Finally, the
`pmp_cfg` array in `z_riscv_pmp_init()` is initialized to zero to prevent
writing uninitialized stack data to unused PMP entries.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-17 09:25:01 -05:00
Firas Sammoura
9fd456e4ab riscv: pmp: Fix pmp_addr index for per-CPU IRQ stack guards in SMP
When CONFIG_SMP is enabled, per-CPU IRQ stack guards are added. To prevent
unintended TOR (Top of Range) entry sharing, the PMP address entry
preceding each guard region in `pmp_addr` is marked with -1L.

The previously used index to access `pmp_addr` could become stale, as
additional PMP entries may be allocated after its initial calculation
but before the SMP loop for IRQ guards.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-17 09:25:01 -05:00
Firas Sammoura
c875c586b7 riscv: pmp: Separate global state for M-mode and U-mode regions
Split global PMP state variables (index and last address) into
mode-specific counterparts to correctly track the end of global PMP
ranges for both M-mode (kernel) and U-mode (userspace).

This ensures correct per-thread PMP initialization when configuring
mode-specific dynamic PMP entries.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-17 09:25:01 -05:00
Firas Sammoura
f6cec1c30f riscv: Add CONFIG_PMP_KERNEL_MODE_DYNAMIC
Introduce `CONFIG_PMP_KERNEL_MODE_DYNAMIC` to enable dynamic
configuration and activation of Machine mode PMP entries. This allows
PMP settings to be managed efficiently during transitions between
kernel and thread contexts.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-17 09:25:01 -05:00
Firas Sammoura
3b27d95f61 riscv: pmp: Rename PMP stackguard functions to kernelmode
Rename the `z_riscv_pmp_stackguard_*` functions to
`z_riscv_pmp_kernelmode_*`. This change better reflects that
these functions are used for general kernel mode PMP configuration,
not strictly limited to stack guard purposes.

Call sites in fatal.c, isr.S, and switch.S have been updated accordingly.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-17 09:25:01 -05:00
Peter van der Perk
20d8e9171e dts: arm: imx95: specify ITCM zephyr,memory-region
When using `zephyr,itcm` on a imx95 based board the linkage may fail due
to the absence of a defined ITCM region. This issue can be resolved by
specifying the ITCM region using `zephyr,memory-region`.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-11-17 09:23:53 -05:00
Jerzy Kasenberg
173cb15283 soc: smartbond: Change SYS_CLOCK_TICKS_PER_SEC
Zephyr default configuration for SYS_CLOCK_TICKS_PER_SEC
is 10000.
For smartbond this value was changed to frequency of lp_clk.
For XTAL32K SYS_CLOCK_TICKS_PER_SEC would increase to 32768
that would equal SYS_CLOCK_HW_CYCLES_PER_SEC.

One would expect SYS_CLOCK_TICKS_PER_SEC to be less then
HW clock cycles.

This restores default value for SYS_CLOCK_TICKS_PER_SEC
and changes it to 5000 only when rcx is used (that runs at
around 15kHz) and keeping it at 10000 would result in
big rounding errors.

Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg.xr@bp.renesas.com>
2025-11-17 09:23:30 -05:00
Afonso Oliveira
b9a15bf5c8 arch/riscv: Enable NMI delivery for SMRNMI hardware
Add option to enable NMI delivery on boot for SMRNMI hardware.

Changes:
- Add CONFIG_RISCV_SMRNMI_ENABLE_NMI_DELIVERY Kconfig option
- Define SMRNMI CSRs in arch/riscv/include/csr.h
- Set NMIE bit during boot to enable NMI delivery

SMRNMI hardware generates but doesn't deliver NMIs when NMIE=0 (default).
This causes twister test failures and prevents handling of critical
hardware events like watchdog NMIs and ECC errors.

Setting NMIE=1 enables NMI delivery, but note that this implementation
only sets the enable bit - it does not provide full SMRNMI support
(no mnret instruction handling, no RNMI handlers). Users must implement
proper RNMI handlers in SoC-specific code to avoid undefined behavior.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-11-17 09:23:11 -05:00
Jordan Yates
9366e4a48e modules: tfm: disable SECURE_UART when TFM_LOG_LEVEL_SILENCE
Explicitly disable the SECURE_UART TFM define when
`CONFIG_TFM_LOG_LEVEL_SILENCE=y`. The secure UART is only enabled by
default on nRF platforms to match the current TF-M defaults.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-17 09:22:58 -05:00
Matjaz Kajba
30bd32969b doc: replace getting started guide image
Replace blinky animation in getting started guide with nicer image.

Signed-off-by: Matjaz Kajba <matjaz@irnas.eu>
2025-11-17 09:22:28 -05:00
Jordan Yates
b4a8035433 llext: option to preserve EDK folder
Add an option to preserve the EDK folder, instead of deleting it after
creating the archive. This can simplify test scripting which can now
avoid immediately uncompressing the archive when compiling an
extension.

If this option is enabled, default to the much faster `.tar.Z` archive
format, since the compression ratio of the archive is not important.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-17 09:21:56 -05:00
Seppo Takalo
aee2604d37 drivers: modem: Implement support for DTR signal
DTR signal on UART extends the power saving by allowing host
to indicate the remote end that the UART is not in active state.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-11-17 09:21:45 -05:00
Fin Maaß
ffa0bbbc87 boards: litex: dts: improve formating of reg values
improve formating of reg values.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-17 09:21:15 -05:00
Yongxu Wang
e991623727 soc: nxp: imx943: support cpu mix poweroff with s2ram flow
Add S2RAM (Suspend-to-RAM) support for i.MX943 M7_0/M7_1 cores.
When entering suspend mode, the CPU mix is powered off to save
power consumption while preserving RAM data.

Implementation follows S2RAM suspend/resume workflow:
- Save CPU context (NVIC and SCB registers)
- Configure resume vector for S2RAM detection
- Suspend to RAM preserving stack and heap context
- Enter CPU suspend mode with mix poweroff
- Resume via reset_handler -> S2RAM detection -> context restore

Core registers are lost during poweroff but RAM data is preserved.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-11-17 09:20:51 -05:00
Yongxu Wang
b0627959d3 dts: arm: nxp: imx943: update power state to support S2RAM
Update power state configuration for i.MX943 M7_0 and M7_1 cores
to use suspend-to-ram instead of standby to properly support
the newly implemented S2RAM (Suspend-to-RAM) functionality.

Changes:
- M7_0: standby -> suspend-to-ram
- M7_1: standby -> suspend-to-ram

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-11-17 09:20:51 -05:00
Alberto Escolar Piedras
8d7752861d boards native_sim: Remove zephyr,native-posix-cpu binding
This binding was deprecated in a8b44fd1d1
for the 4.2 release
Let's remove it now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-17 09:20:34 -05:00
Alberto Escolar Piedras
9ce1bb356e drivers console: Remove deprecated native_posix_console.h
This header was deprecated in d881e794ba
for the 4.2 release
in favour of posix_arch_console.h
Let's remove it now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-17 09:20:34 -05:00
Alberto Escolar Piedras
8e19196b1e boards/native/native_sim: Remove deprecated cmdline_common.h
This header was deprecated in ea79fdb4dd
for v4.2.
Let's remove it now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-17 09:20:34 -05:00
Alberto Escolar Piedras
29a11ee1a4 boards/native/native_sim: Remove deprecated timer_model.h
This header was deprecated in 43b43f5408
for v4.2.
Let's remove it now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-17 09:20:34 -05:00
Alberto Escolar Piedras
04a24a5a4d boards/native/native_sim: Remove deprecated native_posix_compat.h
This header was deprecated in 543f2da251
for v4.2.
Let's remove it now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-17 09:20:34 -05:00
Alberto Escolar Piedras
8020428e2a drivers timer: native_sim_timer: Remove deprecated kconfig option
This driver was renamed in
078fef4ab5
And with it the old kconfig option was deprecated for 4.2.
Let's remove this option now

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-17 09:20:34 -05:00
Pieter De Gendt
85b578c087 drivers: syscon: Add shell commands
Add shell commands to use the SYSCON driver API with SYSCON devices.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-17 09:19:46 -05:00
Peter van der Perk
dd693ab2ab soc: nxp: imx9: add HAS_DWT to i.MX95 M7
The Cortex-M7 in IMX95 has the DWT feature but wasn't specified
in Kconfig

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-11-17 09:19:17 -05:00
Arthur Gay
68e1e50089 cmake: mcuboot: Flash encrypted image when loading to RAM
When both `SB_CONFIG_MCUBOOT_MODE_RAM_LOAD` and `SB_CONFIG_BOOT_ENCRYPTION`
are enabled, MCUBoot loads an encrypted image from flash, decrypts it,
and then executes it from RAM.

Previously, the unencrypted image was being flashed. This caused a boot
failure because MCUBoot would attempt to decrypt an unencrypted image.

This commit ensures the encrypted image is flashed when this
configuration is active, allowing the system to boot correctly.

Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
2025-11-17 09:18:54 -05:00
Chaitanya Tata
de09399fa2 drivers: nrf_wifi: Fix nRF71 build
nRF71 uses a different data structure.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-11-17 09:18:38 -05:00
Chaitanya Tata
6476790987 drivers: wifi: nrf_wifi: Implement stats type
Pass the stats type to the new API.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-11-17 09:18:38 -05:00
Chaitanya Tata
a7e6d6f686 manifest: nrf_wifi: Pull modified API
The API now takes type as input.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-11-17 09:18:38 -05:00
Lyle Zhu
3cc5c1be45 Bluetooth: Classic: HFP_AG: Get default indicator value
In current implementation, the default indicator value cannot be set
when building the SLC. And it causes the incorrect indicator value is
notified by AG.

Add a callback `get_indicator_value` to get the default indicator
value from the application.

Add shell command `indicator_value` to set the default indicator
value. The set indicator value will be passed to HFP AG when callback
`get_indicator_value` is notified.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-17 09:16:45 -05:00
Jerzy Kasenberg
843ba7149a tests: arch: arm_irq_vector_table: Update to run on smartbond
Update the custom vector table to have timer2_isr that
is used for kernel system timer.

While test passes test immediate crashes afterwards due to
missing handler for non-SysTick interrupt.

Now custom interrupt table has additional interrupt handler
to prevent crash.
timer2_isr is no longer static that should not result in
any conflict.

Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg.xr@bp.renesas.com>
2025-11-17 09:16:14 -05:00
Joel Schaller
f22899e80c net: http_server: No Error ENETDOWN
Set Log Level to Info when the HTTP socket reports ENETDOWN,
instead of logging an error each time the network is down.

Signed-off-by: Joel Schaller <joel.schaller16@gmail.com>
2025-11-17 09:15:54 -05:00
Pete Johanson
9a55353216 drivers: serial: Apply TX AE interrupt workaround on MAX32655
The workaround for missing the almost-empty interrupt when TX of very small
payloads needs to also be applied for the UART on MAX32655, so default on
that workaround symbol on that target.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-11-17 09:15:36 -05:00
Cristian Bulacu
fd7c368f69 samples: net: openthread: border_router: Update project config
Updated border router sample configuration to adapt newly added NAT64
functionality

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-17 09:15:16 -05:00
Cristian Bulacu
0a3de5b07d net: l2: openthread: Add NAT64 code for border router app
This commit enables NAT64 functionality for border router application.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-17 09:15:16 -05:00
Cristian Bulacu
6e1fd56513 openthread: platform: Add NAT64 support at platform level
This commit adds platform code for NAT64 functionality

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-17 09:15:16 -05:00
Cristian Bulacu
86d5e38699 modules: openthread: Add new receive callback for NAT64 messages
In this commit, a new callback for NAT64 messages is added.
This is done to avoid passing the received message to rx queue of
external network interface.
As cidr is set from host's IPV4 address, this packet would have been
dropped when parsed, as source address was the same with the host
address and packet was not marked as loopback.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-17 09:15:16 -05:00
Cristian Bulacu
3fc116cad3 openthread: platform: radio_spinel: Add NAT64 support
This commit enables IPV4 messages exchange between interfaces by adding
NAT64 support at platform level.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-17 09:15:16 -05:00
Robert Lubos
60c763527a MAINTAINERS: Cleanup inactive collaborators in OpenThread area
Remove collaborators in OpenThread area that haven't been active for
months. Also unify the collaborator list in "Networking: OpenThread" and
"West project: openthread" areas.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-17 09:14:14 -05:00
cyliang tw
5973b553ed drivers: hwinfo: generalize the numaker config
Modify the numaker configuration to make it more general
instead of depending on specific SoC.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-11-17 09:28:26 +02:00
Hongbo Wang
9aaa9c4440 boards: frdm_imx93: enable enet support
Enable ENET port on FRDM_IMX93 board.

Signed-off-by: Hongbo Wang <hongbo.wang@nxp.com>
Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
2025-11-17 09:28:15 +02:00
Hongbo Wang
e88a5310a4 drivers: eth: phy: add Motorcomm YT8521 PHY driver
Add PHY driver for Motorcomm YT8521 which is used on FRDM_IMX93 board.

Signed-off-by: Hongbo Wang <hongbo.wang@nxp.com>
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-11-17 09:28:15 +02:00
Badr Bacem KAABIA
20d4c758be fix(can): mcp2515: Guard TX interrupt handling for multi-buffer configs
The MCP2515 driver can be configured with 1, 2, or 3 transmit
buffers via the `MCP2515_TX_CNT` constant.

The interrupt handler checks for transmit complete interrupts for
`TXB1` and `TXB2`. However, the code for these checks was not guarded
by preprocessor conditionals. This meant the code would be compiled
even if the driver was configured to use only one transmit buffer
(`MCP2515_TX_CNT=1`), which is the default.

This change adds the appropriate `#if MCP2515_TX_CNT > 1` and
`#if MCP2515_TX_CNT > 2` guards around the interrupt handling logic
for the second and third transmit buffers, respectively. This ensures
that the code is only included when the corresponding buffers are
actually configured, improving code clarity and preventing compilation
of unused logic.

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-17 09:28:07 +02:00
Mirai SHINJO
039013f8ef scripts: west_commands: patch: treat all subprocess output as text
Pass 'encoding="utf-8"' to all 'subprocess.run()' calls.
This treats the captured stdout and stderr streams as text rather than
byte sequences.

Example without this patch:
west patch apply --roll-back
ERROR: b'error: patch failed: examples/csp_server_client.py:32\n
error: examples/csp_server_client.py: patch does not apply\n'
FATAL ERROR: failed to apply patch libcsp/test.patch

Example with this patch:
west patch apply --roll-back
ERROR: error: patch failed: examples/csp_server_client.py:32
error: examples/csp_server_client.py: patch does not apply

FATAL ERROR: failed to apply patch libcsp/test.patch

Signed-off-by: Mirai SHINJO <oss@mshinjo.com>
2025-11-17 09:27:56 +02:00
Mirai SHINJO
634b45eddd scripts: west_commands: patch: capture subprocess output in apply() method
Pass 'capture_output=True' to the 'subprocess.run()' call in the 'apply()'
method.
This ensures that stdout and stderr are captured, so 'proc.stderr'
is not 'None' when 'self.err()' is called on a failed process.

Example without this patch:
west patch apply --roll-back
error: patch failed: examples/csp_server_client.py:32
error: examples/csp_server_client.py: patch does not apply
ERROR: None
FATAL ERROR: failed to apply patch libcsp/test.patch

Example with this patch:
west patch apply --roll-back
ERROR: b'error: patch failed: examples/csp_server_client.py:32\n
error: examples/csp_server_client.py: patch does not apply\n'
FATAL ERROR: failed to apply patch libcsp/test.patch

Signed-off-by: Mirai SHINJO <oss@mshinjo.com>
2025-11-17 09:27:56 +02:00
dependabot[bot]
5e650e783b ci: github: bump the actions-deps group across 1 directory with 5 updates
Bumps the actions-deps group with 5 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [EnricoMi/publish-unit-test-result-action](https://github.com/enricomi/publish-unit-test-result-action) | `2.20.0` | `2.21.0` |
| [actions/upload-artifact](https://github.com/actions/upload-artifact) | `4.6.2` | `5.0.0` |
| [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) | `5.0.0` | `5.1.0` |
| [actions/download-artifact](https://github.com/actions/download-artifact) | `5.0.0` | `6.0.0` |
| [github/codeql-action](https://github.com/github/codeql-action) | `3.30.6` | `4.31.2` |



Updates `EnricoMi/publish-unit-test-result-action` from 2.20.0 to 2.21.0
- [Release notes](https://github.com/enricomi/publish-unit-test-result-action/releases)
- [Commits](3a74b29574...34d7c956a5)

Updates `actions/upload-artifact` from 4.6.2 to 5.0.0
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](ea165f8d65...330a01c490)

Updates `aws-actions/configure-aws-credentials` from 5.0.0 to 5.1.0
- [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](a03048d875...00943011d9)

Updates `actions/download-artifact` from 5.0.0 to 6.0.0
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](634f93cb29...018cc2cf5b)

Updates `github/codeql-action` from 3.30.6 to 4.31.2
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](64d10c1313...0499de31b9)

---
updated-dependencies:
- dependency-name: EnricoMi/publish-unit-test-result-action
  dependency-version: 2.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
- dependency-name: actions/upload-artifact
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: aws-actions/configure-aws-credentials
  dependency-version: 5.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
- dependency-name: actions/download-artifact
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: github/codeql-action
  dependency-version: 4.31.2
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 09:27:46 +02:00
Paul Jones
df2fc692b9 Drivers: Uart: Fix missing extern "C" in uart_bridge.h
uart_bridge.h is missing extern "C", causing link errors for C++ files

Signed-off-by: Paul Jones <paul@pauljones.id.au>
2025-11-17 09:27:33 +02:00
Atakan Demirtaş
20337689a1 drivers: input: vs1838b: Add noise filter for IR signals
Adds logic to shift out the first edge if the initial three edges do not
match a leading burst, improving noise resilience
in the IR input signal processing.

Signed-off-by: Atakan Demirtaş <atakan_demirtas@outlook.com>
2025-11-17 09:27:24 +02:00
Anas Nashif
5f72e95b60 MAINTAINERS file: assign loose paths to respective areas
Add many loose files to existing areas
Add new area for release with release related files, like VERSION and
such.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-17 09:27:11 +02:00
Dmytro Firsov
3cf7b20278 include: xen: events.h: fix Doxygen annotations for Xen events API
Header for Xen event channel API (events.h) previously contain
incorrect Doxygen-style annotations. Also, some functions had not
it at all.

Add proper description for all functions and fix style to make
documentation consistent.

Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
2025-11-15 12:00:01 +01:00
Dmytro Firsov
659b3d6894 drivers: xen: export missing evtchn API function
Previously clear_event_channel() function, that is a part of Xen event
channel API was missing in events.h header.

Add function declaration and documentation description for to let users
add it to external drivers.

Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
2025-11-15 12:00:01 +01:00
Dmytro Firsov
27e0445a80 drivers: xen: return hypercall results from notify_evtchn
Xen event channel notification may fail during hypervisor handling,
so it will be good for user to have a possibility to check results.

Previous implementation ignored hypervisor return code, now it will be
passed to caller.

Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
2025-11-15 12:00:01 +01:00
Etienne Carriere
c73c306a6c include: drivers: clock_control: stm32: fix STM32_CLOCK_INFO_BY_NAME()
Fix STM32_CLOCK_INFO_BY_NAME() macro that messed-up clock information.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-15 11:44:24 +01:00
Camille BAUD
6f7eeaf4d4 boards: bflb: fix ai_wb2_12f formatting
Fix bad formatting.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-15 11:43:59 +01:00
Camille BAUD
135468a67a boards: bflb: Add I2C tests support to some boards
Adds I2C tests running

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-15 11:43:59 +01:00
Camille BAUD
3da4a2a2f4 drivers: i2c: Introduce basic bflb I2C driver
Introduce synchronous i2c driver

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-15 11:43:59 +01:00
Camille BAUD
80e046f421 dts: bflb: Add I2C nodes
Adds i2c binding and nodes

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-15 11:43:59 +01:00
Paweł Pelikan
fddce23e03 tests: kernel: timer: behavior: Adjustments for NRF54H20 PPR
Adjusting CONFIG_SYS_CLOCK_TICKS_PER_SEC as core is to slow too run
the test with the default system clock frequency.

Signed-off-by: Paweł Pelikan <pawel.pelikan@nordicsemi.no>
2025-11-15 11:43:37 +01:00
Krzysztof Chruściński
395acfcf6b tests: drivers: timer: nrf_grtc_timer: Add stress test
Add stress test that randomly starts and aborts multiple timers
from various contexts. Test checks if timers do not expire prematurely.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-11-15 11:43:37 +01:00
Krzysztof Chruściński
d6fb9384eb drivers: timer: nrf_grtc_timer: Optimize to reduce register access
Speed up execution of the interrupt handler and sys_clock_set_timeout().
Sys_clock_set_timeout() can be called in two scenarios: from previous
timeout expiration handler or freely. If the former case fast path
can be used since CC value in the GRTC register just expired and it
can be used as a reference for CCADD setting. This is only a single
register write so it's much faster. In the latter a longer procedure
is applied which also happens in two variants. If value which is
set in CC is further in the future (e.g. K_FOREVER was set before) then
CC can be safely overwritten with a new value without a risk of
triggering unexpected COMPARE event. If value in CC is earlier than
the new CC value (if earlier timeout was aborted) then there is a
risk of COMPARE event happening while it is being overwritten.
That case requires long and safer procedure of setting CC.

Update hal_nordic with changes in the nrfx_grtc driver which are
needed for nrf_grtc_timer changes.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-11-15 11:43:37 +01:00
Daniel Leung
fb055ea77e logging: dictionary: format scripts with ruff
Simple formatting via ruff on dictionary logging scripts.
No manual editing was done on the scripts.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-15 11:38:48 +01:00
Tom Burdick
e37b3ca50e rtio: Add an sqe_acquire_n helper
Makes it safer/easier to obtain n many submissions for use in one go.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-11-15 11:38:37 +01:00
Jerzy Kasenberg
aea71084ec smartbond_timer: Fix tick-base behavior
When system was configured to use smartbond_timer with
tick-based kernel, timer interrupt could fire only
once and then time would not advance.

Now when tick-based kernel is chosen timer2_isr()
schedules that it should be fired at next tick.
Timer comparator calculation code was extracted
from existing sys_clock_set_timeout() function
without change so it can be used for tick-less
and tick-based kernel.

Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg.xr@bp.renesas.com>
2025-11-15 11:37:56 +01:00
Bjarki Arge Andreasen
12a9392eeb drivers: can: nrf: use CAN_DEVICE_DT_INST_DEFINE
The can_nrf.c device driver used DEVICE_DT_INST_DEFINE instead of
CAN_DEVICE_DT_INST_DEFINE, which means we are missing initialization
of some CAN structures, namely STATS.

Update driver to use CAN_DEVICE_DT_INST_DEFINE()

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-11-15 11:37:26 +01:00
Emil Gydesen
25500c61b7 samples: Bluetooth: hci_uart: Add board files for nRF5340ADK
Add board file for nrf5340_audio_dk_nrf5340_cpuapp identical
to the ones for nrf5340dk_nrf5340_cpuapp

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-15 11:35:51 +01:00
Fengming Ye
478fad83e9 net: zperf: udp upload clock compensate
When clock accuracy is 1KHz or lower, udp_upload rate has
much lower accuracy. eg. 20M rate has 60M actual throughput.
It's because any packet_duration less than 1000us will be
treated as 1 tick. In this case rate cannot control throughput.

Add clock compensate when time clock is lower than 1KHz to fix it.
In every 10 ticks or longer delta time, calculate packets sent
actual number and expected number, and then compensate ticks.
And add compensate ticks to delay ticks count.

If we cannot compensate a minus ticks as delay cannot be negative,
add it to next compensate period.
If compensate sum ticks is lower than -1000, it means current rate
is higher than low level capability. So no need to compensate
in remaining traffic.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-11-15 11:33:09 +01:00
Yangbo Lu
58edd1b4db net: select NET_PKT_TIMESTAMP_THREAD for NET_L2_PTP
NET_L2_PTP requires NET_PKT_TIMESTAMP_THREAD. So, use
select instead.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-11-15 11:32:42 +01:00
Yangbo Lu
ef4cc7c9b3 include: net_if: fix clarification of timestamp callback
The functions of timestamp callback were implemented under
CONFIG_NET_PKT_TIMESTAMP_THREAD, but were clarified under
CONFIG_NET_PKT_TIMESTAMP.

The clarification in header file may misunderstand users,
because enabling CONFIG_NET_PKT_TIMESTAMP is not enough
to use these functions.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-11-15 11:32:42 +01:00
Yangbo Lu
c1d213a86d net: net_if: remove redundant NET_PKT_TIMESTAMP_STACK_SIZE definition
Kconfig makes sure the NET_PKT_TIMESTAMP_STACK_SIZE with default value
1024 when NET_PKT_TIMESTAMP_THREAD is enabled.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-11-15 11:32:42 +01:00
Muhammad Waleed Badar
03110f1bd8 boards: esp32_cam: remove unused SD card detect pin and fix LED polarity
The ESP32-CAM board does not connect the SD card detect pin, so the
SDHC0_CD_GPIO21 pinmux configuration has been removed. This commit also
updates the status LED to use active-low for correct operation.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2025-11-15 11:31:51 +01:00
Elmo Lan
194fb3a92a dts: realtek: Add I2C SCL count offset properties
Add devicetree properties `lcnt-offset` and `hcnt-offset` to allow
board-specific tuning of SCL high/low count timing on RTS5912.

Signed-off-by: Elmo Lan <elmo_lan@realtek.com>
2025-11-15 11:31:04 +01:00
Fin Maaß
0d98a515f6 sd: speed up mmc init
speed up mmc init, when sdmmc is also
used. as sdmmc has to fail for that and
can take some long time.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-15 11:30:32 +01:00
Anas Nashif
95b48cd5ba west_commands: do not depend on CONFIG_SOF
Do not depend on SOF config, use RIMAGE_SCHEMA instead, defined in SOF.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-15 11:28:47 +01:00
Anas Nashif
71ec5df8f3 intel_adsp: remove workaround for SOF setting core count
During transition to HWMv2 this workaround was added, which should
instead be in SOF and not in Zephyr, as CORE_COUNT is a SOF Kconfig.

Remove this and instead set the CORE_COUNT in SOF to the
MP_MAX_NUM_CPUS.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-15 11:28:47 +01:00
Anas Nashif
1a780f933e manifest: optional: remove sof from optional manifest
Nothing in Zephyr uses SOF, it is the other way round, SOF uses
Zephyr, creating a cyclic dependency in some cases making it difficult
to apply changes to areas used by SOF upstream.

Part of #91061

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-15 11:28:47 +01:00
Etienne Carriere
6c87662791 boards: st: Refer to doc on OpenOCD deprecation of ST-Link HLA interface
Change the OpenOCD configuration file that mention pontential connection
issues with a reference to the documentation where a dedicated section
was recently added.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-15 11:26:49 +01:00
Etienne Carriere
8d27a5829d boards: OpenOCD deprecation of ST-Link HLA interface
This change aims to address a compatibility issue with recent OpenOCD
pre-release and what is planned in OpenOCD v1.0.0 planned end of 2025.
OpenOCD commit 34ec5536c0ba ("stlink: deprecate HLA support") [1] was
merged in December 2024 after release tag 0.12.0 and before coming
release v1.0.0. It deprecates the legacy HLA driver interface (also
called transport) in favor to the generic DAP interface that is
supported by ST-Link firmware v2.1 and later.

Since the referred commit, OpenOCD config script must source a new
config file (interface/stlink-hla.cfg) in order to select hla_swd
transport. This change breaks many ST-Link based OpenOCD config files
of Zephyr. Alternatively, already existing interface/stlink-dap.cfg
can be used with dapdirect_swd interface to use direct DAP/SWD interface.

To overcome the issue and support older and newer OpenOCD releases,
change the OpenCOD configuration files for non-ST boards that use
ST-Link to interface target debug and/or flash programming support.
Use the already existing are still maintained interface/stlink-dap.cfg
config script file together with dapdirect_swd transport interface.

One may potentially face connection issues if using both a recent
OpenOCD firmware and using a ST-Link adapter that embeds a ST-Link
firmware v1.x. This may happen with old ST-Link adapter devices.
ST-Link firmware v1.0 do not support DAP direct SWD interface. In such
a case, either upgrade the ST-Link firmware (refer to STM32CubeProgrammer
guide), or revert the change made here to explicitly use hla_swd
transport based on stlink-hla.cfg.

Link: 34ec5536c0/ [1]

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-15 11:26:49 +01:00
Etienne Carriere
c56dbff4fd doc: develop: flash_debug: info on OpenOCD deprecation of ST-Link HLA
Add a section about the old legacy HLA interface being deprecated in
OpenOCD and give some hint on how to accommodate if one faces a
communication issue with an old ST-Link adapter.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-15 11:26:49 +01:00
Philipp Miedl
b3bd157ec8 driver: clock-control: mspm0: Remove obsolete MSPM0_LFCLK_ENABLED check
LFCLK is always enabled, there is no way to gate this clock. The
codeblock that was shielded by this check simply changes LFCLK from
LFOSC to LFXT, for which the existing check for an enable LFXT DT node
is sufficient.

Signed-off-by: Philipp Miedl <phmi@bang-olufsen.dk>
2025-11-15 11:25:09 +01:00
Philipp Miedl
cd6c390608 driver: clock_control: mspm0: remove HSCLK DT node
Remove the HSCLK DT node to unify the configuration of MCLK and
simplify the configuration. MCLK is now directly routed to either

  * LFCLK
  * SYSOSC
  * SYSPLL
  * HFCLK

without any intermediate nodes.

Signed-off-by: Philipp Miedl <phmi@bang-olufsen.dk>
2025-11-15 11:25:09 +01:00
Philipp Miedl
03678f154b driver: clock_control: mspm0: Remove node syspll2x
Remove the node syspll2x refering to the output of SYSPLL CLK2X.
SYSPLLCLK2X is controlled via the clk-div2x parameter of the SYSPLL
DT node and only CLK2X or CLK0 can be activated. So there is no need
for an additional node, as routing of downstream clocks from SYSPLL
CLK0/CLK2X are defined by which of the two is active.

Signed-off-by: Philipp Miedl <phmi@bang-olufsen.dk>
2025-11-15 11:25:09 +01:00
Philipp Miedl
0745f05380 driver: clock_control: mspm0: Allow setting SYSOSC clk and restrict MDIV
According to the TI MSPM0 reference manual MDIV must not be set if
SYSOSC is not configured to 4MHz. To make use of this setting, it is
necessary to enable configuring the SYSOSC clock of either 32MHz
(default) or 4MHz with the clock-frequency parameter of the
sysosc node.
If the SYSOSC is configured to run at 4MHz, then the MCLK divider
setting is applied.

Signed-off-by: Philipp Miedl <phmi@bang-olufsen.dk>
2025-11-15 11:25:09 +01:00
Philipp Miedl
afde690c66 drivers: clock_control: mspm0: Rename pll to syspll
To conform with the TI mspm0 datasheet and reference manual, rename the
pll node to syspll. To harmonize, also rename references to the non-
existing node syspll0 to syspll.

Signed-off-by: Philipp Miedl <phmi@bang-olufsen.dk>
2025-11-15 11:25:09 +01:00
Maxmillion McLaughlin
b98304a87b drivers: sensors: bmp581: fix temperature scaling
This change fixes and issue where negative temperatures wrap and
return 250C when the sensor gets below zero. The implementation is
pulled from Boschs official BMP5_SensorAPI and has been tested to
work down to -40

Signed-off-by: Maxmillion McLaughlin <max@sorcerer.earth>
2025-11-15 11:23:54 +01:00
Eden Uhde
ac270df99a drivers: display: ls0xx: add support for serial VCOM inversion
The ls0xx series requires continuous VCOM inversion to prevent panel
damage from DC bias, this adds driver support for doing so over SPI
(without EXTCOMIN), and adds corresponding devicetree properties.

Co-authored-by: Nick Winans <nick@winans.codes>
Signed-off-by: Eden Uhde <eden@rainbowtree.house>
2025-11-15 11:23:03 +01:00
Krzysztof Chruściński
9c1fbc8a86 drivers: serial: nrfx: Remove use of UART_NRFX_UARTE_LEGACY_SHIM
Kconfig got removed.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-11-14 16:46:15 +01:00
Piotr Kosycarz
f03c105c12 tests: subsys: ipc: ipc_sessions: disable reboot test for nrf53 and nrf54
Remote core does not handle independent reboot.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-11-14 15:28:28 +02:00
Johan Hedberg
c88d9d531e github: Update security page for 4.3.0 release
Update the GitHub security page to include the recently released 4.3.0
version.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-11-14 15:27:53 +02:00
Michał Stasiak
0f3484a239 dts: nrf54lm20a: align GPIOTE IRQn to non-secure build
Use different GPIOTE interrupt number when building for
cpuapp/ns.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-11-14 15:27:43 +02:00
Ruijia Wang
d4ae43e25f drivers: xspi: fix device config failure in XIP mode
Add bus idle wait after clock rate query to ensure AHB transactions
complete before device configuration. This prevents XSPI_SetDeviceConfig
from failing due to ongoing AHB access detection in XIP environments.
The issue occurs because clock_control_get_rate() triggers AHB
transactions that complete asynchronously, causings subsequent device
configuration to fail due to its bus status checking.

Signed-off-by: Ruijia Wang <ruijia.wang@nxp.com>
2025-11-14 15:27:26 +02:00
Piotr Kosycarz
4bc8b315c7 tests: drivers: uart: uart_async_api: fix execution at lm20/ns
Add required overlay.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-11-14 15:27:11 +02:00
Piotr Kosycarz
23752d2115 tests: drivers: counter: counter_basic_api: fix execution at lm20/ns
Add required overlay.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-11-14 15:27:11 +02:00
Piotr Kosycarz
bc8c8f4b3a tests: drivers: i2s: fix execution at lm20/ns
Add required overlay.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-11-14 15:27:11 +02:00
Adam Zotow
3804d2f1d1 doc: migration-guide-4.4: Add st,stm32-qspi ssht-enable note
Add migration note for dual-flash configurations requiring ssht-enable
property to reenable sample shifting.

Signed-off-by: Adam Zotow <azo@trackunit.com>
2025-11-14 15:26:31 +02:00
Adam Zotow
40816a81a5 drivers: flash: stm32 qspi: Make delayed data sampling configurable
The QSPI delayed data sampling (SSHIFT) is enabled by default. This
feature is configurable in both XSPI and OSPI drivers. Align with
these drivers and make the feature configurable for QSPI too.

Signed-off-by: Adam Zotow <azo@trackunit.com>
2025-11-14 15:26:31 +02:00
Adam Zotow
54b0c9559c boards: stm32: set ssht-enable property on all qspi dual-flash boards
With ssht-enable property introduced in STM32 QSPI driver the delayed
data sampling (SSHIFT) got disabled for both dual and non-dual flash
configurations. Set ssht-enable property for dual flash boards
to reenable delayed data sampling.

Signed-off-by: Adam Zotow <azo@trackunit.com>
2025-11-14 15:26:31 +02:00
Adam Zotow
e545887d17 dts: bindings: stm32 qspi: add ssht-enable property
This property allows to enable QSPI delayed data sampling (SSHIFT).

Signed-off-by: Adam Zotow <azo@trackunit.com>
2025-11-14 15:26:31 +02:00
Etienne Carriere
b6784734be drivers: gpio: stm32: clean instance init macro indentation
Cleanup indentation in STM32 GPIO controllers device definition
macros. Replace some uses of COND_CODE_1() with IF_ENABLED() that
is bit more explicit.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 15:26:17 +02:00
Etienne Carriere
8690595a47 drivers: misc: stm32n6_axisram: clean instance init macro indentation
Clean indentation in STM32N6_AXISRAM_INIT() local macro to better
highlight what the macro does. To make it more readable, add a
STM32N6_AXISRAM_MAYBE_INIT() helper macro and use IF_ENABLED()
instead of COND_CODE_0().

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 15:26:17 +02:00
Etienne Carriere
b3f4439025 drivers: sensor: stm32_digi_temp: clean indentation in init macros
Clean indentation in STM32_DIGI_TEMP_INIT() macro.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 15:26:17 +02:00
Etienne Carriere
ef51b23a10 drivers: dma: stm32: clean indentation in instance init macros
Clean indentation in macros used to define DMA instances in STM32
DMA drivers.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 15:26:17 +02:00
Etienne Carriere
fcb9f195a9 drivers: can: stm32: clean indentation in instance init macros
Clean indentation in macros used to define device instances in STM32 CAN
driver.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 15:26:17 +02:00
Etienne Carriere
97fc64e812 drivers: adc: stm32: clean instance init macro indentation
Cleanup indentation in ADC_STM32_INIT() macro.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 15:26:17 +02:00
Etienne Carriere
d27e1d6f78 drivers: dac: stm32: clean indentation in instance init macros
Clean indentation in STM32_DAC_INIT() macro.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 15:26:17 +02:00
Etienne Carriere
b0ccb2295f drivers: stm32: use STM32_CLOCK_INFO_BY_NAME() and friends
Use STM32_CLOCK_INFO(), STM32_DT_INST_CLOCK_INFO(),
STM32_CLOCK_INFO_BY_NAME() and STM32_DT_INST_CLOCK_INFO_BY_NAME()
helper macros in STM32 drivers.

Using these macros ensure the clock division factor is properly
populated according to DT information. Prior these changes some
drivers only got the bus and bits position information and missed
the clock division information which is fine only when this division
factor information is 0.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 15:26:17 +02:00
Etienne Carriere
c478e7343f include: drivers: clock_control: stm32: add DT clock helper macros
Add helper macros to get clock information from the devicetree:
STM32_DT_INST_CLOCK_INFO_BY_INDEX(), STM32_DT_INST_CLOCK_INFO(),
STM32_CLOCK_INFO_BY_NAME() and STM32_DT_INST_CLOCK_INFO_BY_NAME().

Using these macros or the existing STM32_CLOCK_INFO(), STM32_DT_CLOCKS()
and STM32_DT_INST_CLOCKS() macros ensure clock consumer gets all the
required STM32 clock information that are abstracted by the
STM32 clock drivers resources.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 15:26:17 +02:00
Etienne Carriere
47717db3be include: drivers: clock_control: stm32: document clock macros
Add a bit of documentation for the existing STM32_CLOCK_INFO()
STM32_DT_CLOCKS().

While at it, fix indentation of STM32_CLOCK_INFO() macro.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 15:26:17 +02:00
Etienne Carriere
a2ea4f310d include: drivers: clock_control: stm32: remove deprecated macro
Remove STM32_DT_DEV_DOMAIN_CLOCK_SUPPORT macro that is unused and
not planned to be.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 15:26:17 +02:00
Sebastian Bøe
70f6cf7ea0 soc: nordic: uicr: Move GEN_UICR options into the main Zephyr tree
I initially added the GEN_UICR options to the gen_uicr image's Kconfig
tree only to not pollute the main tree.

But there is a lot of useful help text in the GEN_UICR option's
Kconfig file that I would like users to be able to read/reference from
the docs.

To not increase the complexity of the Kconfig doc generator, we add
the GEN_UICR options to the main tree and have them all be disabled
for builds other than the gen_uicr image.

Being in the main tree has the added benefit of being recognzied by
the compliance checker.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-11-14 15:26:06 +02:00
Ruoshan Shi
d185a9aa43 boards: imx93_evk: Document imx-atf TRDC config for M33 DDR access
Add documentation for required imx-atf TRDC configuration changes
to enable M33 core DDR memory access on i.MX93 EVK board.

Signed-off-by: Ruoshan Shi <ruoshan.shi@nxp.com>
2025-11-14 15:25:53 +02:00
Lukasz Fundakowski
03eff37921 twister: Remove unnecessary code
Removed some old code which is not used/needed any more.

Signed-off-by: Lukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-11-14 15:25:41 +02:00
Lukasz Fundakowski
bd187425f7 twister: Don't print full stack trace in readlines_until method
The readlines_until method is part of the testing framework
(pytest harness) and should not print a full stack trace
when the expected line isn't found. It should also raise
an AssertionError instead of a TwisterHarnessTimeoutException,
allowing users to know that a test failed because the expected
condition did not happen.

Signed-off-by: Lukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-11-14 15:25:41 +02:00
Fabin V Martin
c84145fe83 boards: sam_e54_xpro: Update pinctrl, DTS, and YAML files
- Update pin control, device tree and board YAML for sam_e54_xpro.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-11-14 15:25:25 +02:00
Fabin V Martin
e4e36f5f28 drivers: i2c: microchip: Add I2C g1 driver
- Add I2C driver for Microchip SERCOM g1.
- Add and update Kconfig files to support the driver.
- Update CMakeLists.txt to include the new driver.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-11-14 15:25:25 +02:00
Fabin V Martin
e8f44b49a2 dts: arm: microchip: sam: Add SERCOM I2C node and binding file.
- Add device tree binding file for Microchip g1 I2C driver

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-11-14 15:25:25 +02:00
Camille BAUD
976cd09479 fs: Add a minimal littlefs blocksize
Prevents littlefs from failing when block size is too small to work

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-14 15:25:13 +02:00
Aymen LAOUINI
ba420519af dts: nordic: update nrf9280 nodes in dtsi
- Removed cpurad_uicr and cpuapp_uicr nodes and added uicr node
  at address 0xfff8000 for nRF9280.
- Add bicr node defined in same node as uicr but at offset 800.
- Add tdd_peripherals node.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-11-14 15:25:01 +02:00
Aymen LAOUINI
8f0fbbe8aa boards: nordic: add partitions to memory map for nRF9280
- nRF9280 memory_map_iron is missing periphconf_partition, added this
  partition to mram11 at address 0xe60a000.
- Add secure_storage_partition at 0xe60c000 to memory map. This
  partition is devided in two: cpuapp_crypto_partition and
  cpuapp_its_partition, both are 4KB. Those partitions are used
  by gen_uicr.py script to generate the UICR file.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-11-14 15:25:01 +02:00
Aymen LAOUINI
d9861d77ff soc: nordic: activate uicr generation and use correct dt reg check
- Activate the UICR file generation and PeriphConf for nRF92 application.
- Add condition in reg dt check file to use the correct uicr node name
  for nRF92X.
- Generation of preriphconf entries filters on device names to match
  the first 5 characters to nrf92 or the 6 first characters to nrf54h,
  this information is also used to determine the device SOC_SERIES
  to be either SOC_SERIES_NRF54HX or SOC_SERIES_NRF92X allowing possible
  extension of usage. Still in case of an unknown device of a certain
  family it will use existing configuration while generating
  periphconf entries.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-11-14 15:25:01 +02:00
Krzysztof Chruściński
3c87faea4b tests: drivers: uart: async_dual: Optimize test data handling
Stress test is executed on CPUs with slow clock (16MHz). Handling of test
data in UART_RX_RDY event is optimized to reduce time spent in the
interrupt context. Since payload is always a decrementing sequence, fixed
array is used to compare memory which allows to use standard memcmp
instead of byte by byte comparison.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-11-14 15:24:48 +02:00
Krzysztof Chruściński
db9fa069e2 tests: drivers: uart: async_dual: Extend nrf54h20dk configuration
Add workaround timer to instances that are used for reception in the
test.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-11-14 15:24:48 +02:00
Krzysztof Chruściński
64b7cabd61 tests: drivers: uart: async_dual: Update configuration for nrf54l
Add timer property to the uart device under test.
Add zephyr,pm-device-runtime-auto to the uart device under test.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-11-14 15:24:48 +02:00
Krzysztof Chruściński
c67c3f4359 tests: drivers: uart: async_dual: Extend testing
Extend test with a mode where HWFC is off and receiver is providing
buffers on time. In that case receiver should be able to continuously
receive data without losing any byte (even without HWFC). Additionally,
TX data is chopped to verify that receiver does not loose bytes when
new TX data collides with detected RX timeout.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-11-14 15:24:48 +02:00
Krzysztof Chruściński
c5127e677b tests: drivers: uart: async_dual: Add progress report
Add reporting about the test progress. Test lasts few seconds and
progress report helps to see if test stuck or how it is progressing.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-11-14 15:24:48 +02:00
Krzysztof Chruściński
f1f0b03aea drivers: serial: nrfx_uarte: Add mode with TIMER byte counting
Add mode to be used on UARTE with frame timeout which is using a bounce
buffers and TIMER to count bytes. This mode shall be used to reliably
receive data without HWFC as frame timeout approach is not 100% reliable
because it can loose or corrupt a byte when new byte arrives after
frame timeout is detected but before it is fully handled. This mode is
similar to the one enabled with CONFIG_UART_x_NRF_HW_ASYNC but
additional bounce buffers are used and UARTE is receiving data to
internal buffers and copies data to the user buffer. Legacy apporach
cannot be used because in new SoC DMA attempts to copy data in words
so when byte is received it stays in the DMA internal buffer until
4 bytes are received or end of transfer happens then internal DMA
buffer is flushed.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-11-14 15:24:48 +02:00
Krzysztof Chruściński
9ae8c4edbc drivers: serial: nrfx_uarte: Prepare code for extension
Rearrange code to prepare for upcoming extension that adds special
receive mode.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-11-14 15:24:48 +02:00
Krzysztof Chruściński
e20a3acfeb dts: bindings: serial: nrf-uarte: Add timer property
Timer property indicates which TIMER instance should be used for
byte counting. If timer property is present then given instance
is using TIMER to count received bytes.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-11-14 15:24:48 +02:00
Jiafei Pan
e2d6af1f55 tracing: rtio: fix building error in rtio header file
This patch is to fix the following building issue:
include/zephyr/rtio/rtio.h:1773:51: error: 'rtio' undeclared
(first use in this function)

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-11-14 11:17:41 +00:00
Michał Stasiak
3ebf29329e soc: nordic: nrf54l: make SoCs select specific symbols
As future nRF54L SoCs may differ in terms of content,
general SOC_NRF54L_CPUAPP_COMMON symbol needs to cover
less symbols. These will be selected by specific SoC based
on support.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-11-14 12:20:17 +02:00
Thomas Decker
f0749b8301 boards: st: nucleo_h7s3l8 & stm32h7s78_dk: Add runner jlink
Add support for Segger J-Link debug probes connected to MIPI20 connector
on the boards nucleo_h7s3l8 and stm32h7s78_dk.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-11-14 12:20:05 +02:00
Mathieu Choplain
35a391d47c soc: st: stm32: use series-agnostic STM32 LL headers
Use the series-agnostic STM32 LL headers from the STM32Cube HAL module
instead of series-specific ones in STM32 SoC-specific code. Also remove
inclusion of `stm32XXxx.h` in a few files which already include `soc.h`
who is tasked with doing this inclusion.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-14 12:19:48 +02:00
Mathieu Choplain
19e1b2b72b samples: boards: st/pm/stop3: use series-agnostic STM32 LL headers
Use the series-agnostic STM32 LL headers from the STM32Cube HAL module
instead of series-specific ones in this sample.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-14 12:19:48 +02:00
Mathieu Choplain
21b2283fc5 drivers: *: stm32: use series-agnostic STM32 LL headers
Use the series-agnostic STM32 LL headers from the STM32Cube HAL module
instead of series-specific ones in STM32 drivers.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-14 12:19:48 +02:00
Mathieu Choplain
7fbcd494d8 boards: arduino: *: use series-agnostic STM32 LL headers
Use the series-agnostic STM32 LL headers from the STM32Cube HAL module
instead of series-specific ones in board-specific code of these platforms.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-14 12:19:48 +02:00
Jun Lin
a922813034 drivers: i2c: npcx: add more timing parameters for I2C clock frequency
I2C Fast-Plus mode (1 MHz) is limited by the source clock.
For example, with a 15 MHz I2C source clock, the max I2C frequency is
~625 kHz. To support higher I2C frequencies, the APBx source clock must
be increased. This commit adds the timing parameters for I2C operation
at higher APBx clocks.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-11-14 12:19:29 +02:00
Qingsong Gou
b0662fea5e boards: sifli: sf32lb52_devkit_lcd: enable I2C1
Enable I2C1 device

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-14 12:19:20 +02:00
Qingsong Gou
1b8e3bdaf7 drivers: i2c: add i2c driver for sf32lb platform
Add i2c driver for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-14 12:19:20 +02:00
Qingsong Gou
65cdc47bcc dts: arm: sifli: sf32lb52x: define all I2C instances
Add i2c device controller for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-14 12:19:20 +02:00
Qingsong Gou
c7b99e9613 dts: bindings: i2c: sf32lb: add sifli,sf32lb-i2c
Add i2c device bindings for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-14 12:19:20 +02:00
Qingsong Gou
6b4ced890b drivers: clock_control: sf32lb: add more helper APIs
Add sf32lb_clock_get_status_dt and sf32lb_clock_get_rate_dt

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-14 12:19:20 +02:00
Emil Dahl Juhl
ea68224424 tests: subsys: dsp: utils: include dsp.h
Commit 451afdbaaf ("dsp: utils: slim down includes") removed the
inclusion of dsp/dsp.h from dsp/utils.h.
Update the tests to explicitly include dsp/dsp.h.

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-11-14 12:19:10 +02:00
Emil Dahl Juhl
e732c973c5 dsp: utils: slim down includes
The dsp/utils.h header itself only uses dsp/types.h and doesn't need the
entire dsp/dsp.h.

This also facilitates using the dsp/utils.h in builds that don't enable a
dsp backend at all which can be convenient for sensor drivers where the
q31_t dsp type is used.

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-11-14 12:19:10 +02:00
Johan Hedberg
3ab1caa87f Bluetooth: Classic: AVRCP: Fix another Clang/LLVM build failure
subsys/bluetooth/host/classic/shell/avrcp.c:407:3: error: label followed
by a declaration is a C23 extension [-Werror,-Wc23-extensions]
  407 |                 uint64_t identifier;
      |                 ^

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-11-14 12:19:00 +02:00
Lyle Zhu
46c51cbefe Bluetooth: Classic: BIP: Ensure uncompleted request func consistent
For the uncompleted BIP request, the following BIP request function
should be same with the previous.

Keep the first request function type, and check it with the following
request function type.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
179928a147 Bluetooth: classic: BIP: Check if rsp func is consistent with req's
The response function should be consistent with the function of
request when server responses the request of client.

Check whether the BIP function in the server response function is
consistent with the client request.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
04c2b996a8 Bluetooth: shell: Support BIP SDP record register and discovery
Add command `reg` to register the BIP responder SDP record.

Add command `set_caps`, `set_features`, and `set_functions` to set the
supported capabilities, features, and functions for BIP responder.

Add command `discover` to discovery the BIP responder SDP record. And
parse the response data to get the supported features and functions.

Add command `set_feats_funcs` to set the discovered supported features
and functions.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
b8db23a892 Bluetooth: Classic: SDP: Support BIP profile
Add define `BT_SDP_SUPPORTED_CAPABILITIES` to define supported
capabilities attribute.

Add define `BT_SDP_SUPPORTED_FUNCTIONS` to define supported functions
attribute.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
631bd89dd8 Bluetooth: Classic: BIP: Check features and functions of initiator
Add function `bt_bip_set_supported_capabilities()` to set the
supported caps of responder.

Add function `bt_bip_set_supported_features()` to set the supported
features of responder.

Add function `bt_bip_set_supported_functions()` to set the supported
functions of responder.

Check the supported features of responder when sending OBEX connect
request on initiator side.

Check the supported functions of responder when sending OBEX get/put
request on initiator side.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
270a2e6584 Bluetooth: shell: Add BIP shell commands
Add commands for transport over RFCOMM, including `register-rfcomm`,
`connect-rfcomm`, and `disconnect-rfcomm`.

Add commands for transport over L2CAP, including `register-l2cap`,
`connect-l2cap`, and `disconnect-l2cap`.

Add command `alloc-buf` and `release-buf` to allocate and release TX
buffer.

Add command set `add-header` to add the OBEX headers to allocated TX
buffer.

Add command set `client` to send BIP client requests with allocated
TX buffer.

Add command set `server` to send BIP responses with allocated TX
buffer.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
89fda049bc Bluetooth: classic: Enable BIP features
Add functions to manage BIP transport connect and disconnect both for
l2cap and rfcomm.

Add functions to register and unregister primary and secondary OBEX
servers.

Add functions to send OBEX connect/disconnect request and response.

Add functions to send OBEX get/put request and response with different
type defined by BT_BIP_HDR_TYPE_*.

Add functions to send abort request and response.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
860fb0a96b Bluetooth: classic: OBEX: Fix action id type issue
The OBEX packet cannot be parsed properly if the action ID header is
included in the packet.

It is caused by the value type issue of the action ID. The action ID
type should be `uint8_t` instead of `uint32_t`.

Fix the issue by change action ID value type from `uint32_t` to
`uint8_t`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
44ef5a8857 Bluetooth: classic: OBEX: Expose function bt_obex_has_header()
The function `bt_obex_has_header()` is used to check whether the
specific header is in the buffer.

It is required by upper layer to check the header from the receiving
buffer.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
99176e86f8 Bluetooth: Classic: OBEX: Expose function bt_obex_string_is_valid()
The `bt_obex_string_is_valid()` is used to check whether the sending
or receiving UTF-16 string is valid or not.

Expose function "bt_obex_string_is_valid()" to support external
checking of UTF-16 strings.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Lyle Zhu
cf11f71848 Bluetooth: OBEX: Add function bt_obex_add_header_body_or_end_body()
A new function bt_obex_add_header_body_or_end_body() is added to help
to add the body/end body header. When the tail room of the buffer is
more than the passed body room, and the total length of buffer is not
more than the mopl if the body has been added, the header end body
will be added. Or, the header body will be added.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:31:16 +02:00
Parthiban Veerasooran
52b1e8704e drivers: ethernet: phy_microchip_t1s: use 'ret < 0' for error checks
Replace 'if (ret)' with 'if (ret < 0)' in the Microchip T1S PHY driver.
This change follows the legacy coding style commonly used in Zephyr
drivers, where error conditions are checked explicitly against negative
values. The affected functions do not return positive values, so this
modification does not change functionality. No functional change intended.

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-11-14 10:30:53 +02:00
Parthiban Veerasooran
1843b3126d drivers: ethernet: phy: configure link status control for LAN867x Rev.D0
Configure the link status in the Link Status Control register for
LAN8670/1/2 Rev.D0 PHYs, depending on whether PLCA or CSMA/CD mode
is enabled. When PLCA is enabled, the link status reflects the PLCA
status. When PLCA is disabled (CSMA/CD mode), the PHY does not support
autonegotiation, so the link status is forced active by setting
the LINK_STATUS_SEMAPHORE bit.

The link status control is configured:
- During PHY initialization, for default CSMA/CD mode.
- Whenever PLCA configuration is updated.

This ensures correct link reporting and consistent behavior for
LAN867x Rev.D0 devices.

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-11-14 10:30:53 +02:00
Parthiban Veerasooran
76034d043b drivers: ethernet: phy: add support for Microchip LAN867X Rev.D0 PHY
Add support for the LAN8670/1/2 Rev.D0 10BASE-T1S PHYs from Microchip.
The new Rev.D0 silicon requires a specific set of initialization
settings to be configured for optimal performance and compliance with
OPEN Alliance specifications, as described in Microchip Application Note
AN1699 (Revision G, DS60001699G – October 2025).
https://www.microchip.com/en-us/application-notes/an1699

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-11-14 10:30:53 +02:00
Ayush Singh
fcc2932390 boards: beagle: pocketbeagle_2: a53: Enable SPI0 and SPI2
- SPI0 and SPI1 are the default states of these header pins, so enable
  them.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-11-14 10:30:44 +02:00
Ayush Singh
2a4d964600 dts: vendor: ti: k3-am62-main: Add spi
- Add SPI peripherals of main domain.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-11-14 10:30:44 +02:00
Jani Hirsimäki
9800ff5c47 net: possibility to set custom link layer address length
This commit adds a new Kconfig option NET_LINK_ADDR_CUSTOM_LENGTH
that allows to set custom link layer address length if your link layer
technology is not supported directly. If this option is set to a value
greater than 0, that value is used as link layer address length.

Signed-off-by: Jani Hirsimäki <jani.hirsimaki@nordicsemi.no>
2025-11-14 10:30:35 +02:00
Jani Hirsimäki
f55dacf849 net: ip: new Kconfig NET_MGMT_EVENT_INFO_DEFAULT_DATA_SIZE
The NET_MGMT_EVENT_INFO_DEFAULT_DATA_SIZE is used to set the default
size of the data field in the net_mgmt_event_info structure. This
change allows the user to configure the size of the data field
according to their needs.

Signed-off-by: Jani Hirsimäki <jani.hirsimaki@nordicsemi.no>
2025-11-14 10:30:35 +02:00
Andrew Featherstone
380226b4a9 api: codec: Add support for custom channel identifiers
Follow the convention used elsewhere, e.g. in the sensor API, to allow
users to define their own channel identifiers. This is useful when a
driver's channels don't fit into the predefined set.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-11-14 10:30:19 +02:00
Zafer SEN
6fa982854f samples: modem: Add modem at client sample
This PR adds a new sample application demonstrating bidirectional UART
communication between console and cellular modem using the Zephyr modem
subsystem.

 Purpose
- Interactive AT command interface for modem testing
- Transparent bridge for firmware updates via XMODEM
- Reference implementation of uart_pipe + modem_pipe integration

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-11-14 10:30:00 +02:00
Muhammed Asif
fa31cffa0d boards: microchip: pic32cx_sg61_cult: Added clock configurations
Upgrades clock from 48MHz to 120MHz
Configure CPU clock using FDPLL, sourced from XOSC to achieve 120Mhz.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-11-14 10:29:52 +02:00
Muhammed Asif
d838034efd soc: microchip: pic32cx_sg: Add clockcontrol in soc kconfig
Selects the clock control from soc Kconfig file.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-11-14 10:29:52 +02:00
Muhammed Asif
a9878cbf53 dts: arm: microchip: Enhances the clock control capabilities
Add bindings for dfll, fdpll, gclk generator, mclk cpu, osc32k, rtc clock
and xosc for the pic32cx_sg series.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-11-14 10:29:52 +02:00
Muhammed Asif
73cc60a265 dts: arm: microchip: Basic support for clock for pic32cx_sg series
Adds the clock dts nodes and minimal set of binding parameters for using
clock_control driver. It is compatible with same5xd5x series clock.
Hence using the same driver.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-11-14 10:29:52 +02:00
Jeppe Odgaard
46adf3b1bb drivers: sensor: tach_gpio: fix rpm debug logging
`data->rpm` is a signed value and should be logged as one.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-11-14 10:29:43 +02:00
Jeppe Odgaard
97781f8b9d drivers: sensor: tach_gpio: add pulses per round
Add pulses-per-round property.

The driver only measures one pulse and uses pulses-per-round in RPM
calculation.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-11-14 10:29:43 +02:00
Lyle Zhu
d14bfb702b Bluetooth: Classic: HFP: Terminate outgoing call without alerting
If the outgoing call is not alerted, support the case to terminate the
call when receiving the AT command `AT+CHUP`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:29:26 +02:00
Lyle Zhu
e61daa9b9b Bluetooth: Classic: HFP_AG: Support Codec mSBC and LC3_SWB
Add kConfig `BT_HFP_AG_CODEC_MSBC` and `BT_HFP_AG_CODEC_LC3_SWB` for
AG to configure the optional Codec IDs.

If the kConfig `BT_HFP_AG_CODEC_MSBC` is enabled, set the feature
`WBS` bit in SDP record.

If the kConfig `BT_HFP_AG_CODEC_LC3_SWB` is enabled, set the feature
`Super WBS` bit in SDP record.

And check the selected Codec ID if it is supported when creating the
SCO connection.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:29:15 +02:00
Lyle Zhu
ebfbe2b754 Bluetooth: Classic: HFP_HF: Set SDP feature bits WBS and Super WBS
According to the HFP V1.9, the SDP feature bit `WBS` should be set if
the mBSC Codec is supported. And the SDP feature bit `Super WBS`
should be set if the LC3-SWB Codec is supported.

Set SDP feature bit `WBS` if the kConfig `BT_HFP_HF_CODEC_MSBC` is
enabled.

Set SDP feature bit `Super WBS` if the kConfig
`BT_HFP_AG_CODEC_LC3_SWB` is enabled.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:29:04 +02:00
Lyle Zhu
dacc2e0051 Bluetooth: Classic: SCO: Fix byte order issue
Change the byte order from CPU to LE16/LE32 for `accept SCO` and
`setup SCO` HCI commands.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:43 +02:00
Lyle Zhu
3a2ee4a0e9 Bluetooth: Classic: SCO: Set connect param with default value
In current implementation, the values are fixed for the field
`Max_Latency` and `Retransmission_Effort` of HCI command
`HCI_Setup_Synchronous_Connection` and
`HCI_Accept_Synchronous_Connection_Request`

It cannot work properly with these fixed value. It is better to
set it with default value. And it is determined by the controller.

Set the field `Max_Latency` and `Retransmission_Effort` of HCI
command `HCI_Setup_Synchronous_Connection` and
`HCI_Accept_Synchronous_Connection_Request` with default value.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:43 +02:00
Lyle Zhu
6c83e1a240 Bluetooth: Classic: HFP_AG: Configure voice setting
Set the voice setting according to the selected codec ID.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:43 +02:00
Lyle Zhu
a42128bf9b Bluetooth: Classic: HFP_HF: Configure voice setting
Add a filed `active_codec_id` to `struct bt_hfp_hf` to keep the
current codec ID. The default value is `BT_HFP_HF_CODEC_CVSD` when
creating the SLC.

Add a filed `neg_codec_id` to `struct bt_hfp_hf` to flag the
negotiated codec ID. When the AT+BCS command is executed without
error, update the `active_codec_id` with `neg_codec_id`.

Pass the properly voice setting with the `active_codec_id` in
function `bt_hfp_hf_sco_accept()`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:43 +02:00
Lyle Zhu
68b1e45cc5 Bluetooth: Classic: SCO: Set voice setting by upper layer
In current implementation, the voice setting of SCO is fixed value
`BT_VOICE_CVSD_16BIT`. It is not aligned with the negotiated codec
id of the HFP.

Add a filed `voice_setting` to `struct bt_sco_chan` that the voice
setting can be configured by upper layer when providing the sco
channel `struct bt_sco_chan`.

Use the `voice_setting` to setup SCO or accept SCO.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:43 +02:00
Lyle Zhu
1be50fa46f Include: Bluetooth: Add HCI voice_setting definitions
Add macro `BT_HCI_VOICE_SETTINGS` to assemble the voice_setting

Add macro `BT_HCI_VOICE_SETTING_*_PREP` to set the fields for
voice_setting.

Add macro `BT_HCI_VOICE_SETTING_*_GET` to get the value of the
field from the voice_setting.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:43 +02:00
Lyle Zhu
1edaea146e Bluetooth: Classic: HFP_AG: Update ongoing calls early post SLC setup
There is a corner case that the AT command `AT+BTRH?` is received
before processing the ongoing calls after the SLC established. In
this case the invalid response and hold status will be notified,
because the ongoing calls are not processed.

The ongoing calls should be processed as early as possible after the
SLC established.

Support the case by processing the ongoing calls in the context of
SLC established callback.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:28:32 +02:00
Arunprasath P
012d2800d5 tests: comparator: micorchip: Add board overlay file
Add board overlay file for sam_e54_xpro to enable comparator
test cases to run on this board.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-11-14 10:28:22 +02:00
Arunprasath P
055c20e676 boards: microchip: sam_e54_xpro: add Comparator to supported list
Update sam_e54_xpro.yml to include Comparator in the supported
features list.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-11-14 10:28:22 +02:00
Arunprasath P
8b53661096 drivers: comparator: microchip: Add G1 Comparator Driver
Add G1 Comparator driver for Microchip Analog Comparator Peripherals.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-11-14 10:28:22 +02:00
Arunprasath P
5ffed238ea dts: arm: microchip: add dts node and binding file for comparator g1
Add the device tree node and the binding file for
microchip comparator G1 Peripheral.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-11-14 10:28:22 +02:00
Piotr Krzyzanowski
e21ff79f64 tests: drivers: i2c: i2c_nrfx_twim: add nrf54lm20a
Add support for nrf54lm20a board in i2c_nrfx_twim tests

Signed-off-by: Piotr Krzyzanowski <piotr.krzyzanowski@nordicsemi.no>
2025-11-14 10:28:13 +02:00
Chen Xingyu
dff584177b tests: drivers: display: display_check: Add overlay for M5Stack CoreS3-SE
Add a device tree overlay to enable the MIPI-DBI bus on the M5Stack
CoreS3-SE.

The overlay removes SPIM2_MISO_GPIO35 from the pinctrl so that the MISO pin
can be used as the LCD_DC signal.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00
Chen Xingyu
e0e3612c36 samples: modules: lvgl: screen_transp: Add overlay for M5Stack CoreS3-SE
Add a device tree overlay to enable the MIPI-DBI bus on the M5Stack
CoreS3-SE.

The overlay removes SPIM2_MISO_GPIO35 from the pinctrl so that the MISO pin
can be used as the LCD_DC signal.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00
Chen Xingyu
51a53b0329 samples: modules: lvgl: demos: Add overlay for M5Stack CoreS3-SE
Add a device tree overlay to enable the MIPI-DBI bus on the M5Stack
CoreS3-SE.

The overlay removes SPIM2_MISO_GPIO35 from the pinctrl so that the MISO pin
can be used as the LCD_DC signal.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00
Chen Xingyu
479a675d1e samples: subsys: smf: smf_calculator: Add overlay for M5Stack CoreS3-SE
Add a device tree overlay to enable the MIPI-DBI bus on the M5Stack
CoreS3-SE.

The overlay removes SPIM2_MISO_GPIO35 from the pinctrl so that the MISO pin
can be used as the LCD_DC signal.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00
Chen Xingyu
1f94025f8d samples: subsys: display: lvgl: Add overlay for M5Stack CoreS3-SE
Add a device tree overlay to enable the MIPI-DBI bus on the M5Stack
CoreS3-SE.

The overlay removes SPIM2_MISO_GPIO35 from the pinctrl so that the MISO pin
can be used as the LCD_DC signal.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00
Chen Xingyu
6994e6efda samples: drivers: display: Add overlay for M5Stack CoreS3-SE
Add a device tree overlay to enable the MIPI-DBI bus on the M5Stack
CoreS3-SE.

The overlay removes SPIM2_MISO_GPIO35 from the pinctrl so that the MISO pin
can be used as the LCD_DC signal.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00
Chen Xingyu
6b0feda4f4 boards: m5stack: cores3: Add display configuration
The M5Stack CoreS3 and CoreS3-SE are equipped with an ILI9342C SPI LCD
controller. This commit adds the corresponding DTS nodes for it.

Since the display backlight is powered by the AXP2101 regulator, the
regulator driver is enabled by default, and the initialization priorities
of the mipi_dbi and display drivers have been adjusted accordingly.

Note: On the CoreS3-SE, the TF card slot and the ILI9342C display share the
same SPI bus, and the display repurposes the MISO pin as the LCD_DC signal.
In this case, the `mipi_dbi` DTS node is disabled by default. To enable it,
overlay the configuration to remove `SPIM2_MISO_GPIO35` from the pinctrl.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-11-14 10:27:55 +02:00
Pedro André
c0ba4d3ffe drivers: gnss: f9p: fix multiple rtk enabled instances
The U-blox F9P driver uses the GNSS_RTK_DATA_CALLBACK_DEFINE macro to
register a callback for when RTK data is available. This is an issue when
multiple instances of the F9P are available and RTK is enabled since this
macro leads to a naming collision. The following compilation error is
reported:

     error: redefinition of '_gnss_rtk_data_callback__f9p_rtk_data_cb'

This is because GNSS_RTK_DATA_CALLBACK_DEFINE only uses `_callback` to
identify the callback being registered. As a fix, use the recently
introduced GNSS_DT_RTK_DATA_CALLBACK_DEFINE instead, which takes into
account the `_node_id` while naming the callback.

Signed-off-by: Pedro André <pedro@sentrytechnologies.ai>
2025-11-14 10:27:46 +02:00
Pedro André
3138b54f2c drivers: gnss: introduce node based callback macros
The current GNSS_DATA_CALLBACK_DEFINE, GNSS_SATELLITES_CALLBACK_DEFINE and
GNSS_RTK_DATA_CALLBACK_DEFINE macros only utilize `_callback` when naming
the respective callback. This means that if the same callback function is
used more than once, there will be naming conflicts.

In order to allow the same callback function to be used several times for
specific gnss devices, introduce GNSS_DT_DATA_CALLBACK_DEFINE,
GNSS_DT_SATELLITES_CALLBACK_DEFINE and GNSS_DT_RTK_DATA_CALLBACK_DEFINE
macros that take a device tree node identifier instead of a device
reference. This makes it possible to name the callback using both
`_node_id` and `_callback`. Such will uniquely identify any combination of
gnss device and callback.

Signed-off-by: Pedro André <pedro@sentrytechnologies.ai>
2025-11-14 10:27:46 +02:00
Robert Lubos
7e69575614 tests: net: socket: udp: Remove tests numbering
It shouldn't be needed to execute UDP sockets tests in a fixed order
(currently enforced by embedding the test number into the test case
name). In fact, this was only needed, as two test cases worked as
prerequisites for other tests, that should've been done in the setup()
function though.

Therefore, consolidate the two test cases which pre-configured the test
interface into a proper setup() function executed before the test
suite, and get rid of the confusing test case numbering.
There also was a race in TX time test due to incorrect mutex use, so fix
that by using semaphore instead.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-14 10:27:12 +02:00
Robert Lubos
f19e9667b4 tests: net: socket: udp: Add tests for UDP socket rebinding
Verify that UDP socket rebinding works fine for both, client and server
cases.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-14 10:27:12 +02:00
Robert Lubos
4453bfd1c9 net: context: Allow datagram socket rebinding
Rebinding of UDP sockets works just fine and there's really no reason to
disallow it. Keep the restriction for stream sockets only (as our TCP
implementation doesn't support rebinding).

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-14 10:27:12 +02:00
Tony Han
f381e59807 tests: drivers: eeprom: api: enable tests for sama7d65_curiosity
Enable tests: tests/drivers/eeprom/api.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-14 10:26:50 +02:00
Tony Han
5c80e261cf boards: microchip: sam: add eeprom node to sama7d65_curiosity dts file
Add the node for on board EEPROM devices. Only the basic compatible
functions implemented. EUI-48 Node Address not added.
Add eeprom to the support list of the board.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-14 10:26:50 +02:00
Sylvio Alves
327954c3ef driver: wifi: esp32: update API interface
Add set_config to allow custom mac address.
Add statistics reset function.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-11-14 10:26:42 +02:00
Daniel Leung
65d31ea860 tests: intel_adsp/smoke: cast to signed ints before abs()
xt-clang complains about the clock ratio difference is unsigned
when being fed to abs(), though GCC does not. So type cast that
to signed integer before feeding to abs(). Clock ratio could be
big enough to overflow signed 32-bit integer. So we first cast
it to be a signed 64-bit integer before substraction.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-14 10:26:32 +02:00
Lyle Zhu
b540fde66b bluetooth: Classic: HFP: Set eSCO S4 bit if controller supports SC
The eSCO S4 settings feature should be enabled for CVSD Coding. It is
suggested by the HFP specification.

Set the eSCO S4 Settings Supported bit if the Secure connection is
supported by controller.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 09:26:21 +01:00
Lyle Zhu
1df6111c93 include: Bluetooth: Change return value of BT_FEAT_TEST() to boolean
In current implementation, the return value of `BT_FEAT_TEST()` is not
a boolean type. However, the macro `BT_FEAT_TEST()` is used as a type
with a return type value of boolean.

Change the return type of `BT_FEAT_TEST()` to boolean type to make it
easy to use.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 09:26:21 +01:00
Jordan Yates
1113d3129c disk: sdmmc_stm32: PM handling
Lock the sleep modes while SDMMC is running operations.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-14 10:26:15 +02:00
Kai Cheng
f0f2057316 Bluetooth: SMP: refactor SMP connection type checks
Replace direct conn->type comparisons with connection type helper
functions in SMP module. This includes:

- Update copyright headers to include Xiaomi Corporation
- Replace conn->type == BT_CONN_TYPE_LE with bt_conn_is_le(conn)
- Replace conn->type == BT_CONN_TYPE_BR with bt_conn_is_br(conn)
- Replace bt_conn_is_type(conn, BT_CONN_TYPE_LE | BT_CONN_TYPE_BR)
  with !bt_conn_is_br(conn) && !bt_conn_is_le(conn) for clearer logic
- Replace IS_ENABLED(CONFIG_BT_CLASSIC) && (conn->type == BT_CONN_TYPE_BR)
  with bt_conn_is_br(conn) for simplified condition

This change completes the connection type helper refactoring across
the Bluetooth host stack, improving code consistency and readability.

Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
2025-11-14 10:26:05 +02:00
Kai Cheng
b0505dbf3d Bluetooth: L2CAP: refactor L2CAP connection type checks
Replace direct conn->type comparisons with connection type helper
functions in L2CAP module. This includes:

- Update copyright headers to include Xiaomi Corporation
- Replace IS_ENABLED(CONFIG_BT_CLASSIC) && conn->type == BT_CONN_TYPE_BR
  with bt_conn_is_br(conn) for cleaner code
- Replace conn->type != BT_CONN_TYPE_LE with !bt_conn_is_le(conn)
- Replace chan->conn->type == BT_CONN_TYPE_BR with
  bt_conn_is_br(chan->conn)

This change improves code readability and maintains consistency
with the connection type helper refactoring across the Bluetooth
host stack.

Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
2025-11-14 10:26:05 +02:00
Kai Cheng
0f80444d12 Bluetooth: Core: refactor HCI core connection type checks
Replace direct conn->type comparisons with connection type helper
functions in HCI core module. This includes:

- Update copyright headers to include Xiaomi Corporation
- Replace conn->type != BT_CONN_TYPE_LE with !bt_conn_is_le(conn)
- Replace conn->type == BT_CONN_TYPE_SCO with bt_conn_is_sco(conn)
- Replace conn->type == BT_CONN_TYPE_BR with bt_conn_is_br(conn)
- Replace conn->type == BT_CONN_TYPE_LE with bt_conn_is_le(conn)

This change improves code consistency and maintains the same
refactoring pattern applied across the Bluetooth host stack.

Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
2025-11-14 10:26:05 +02:00
Lyle Zhu
1820e4ed29 Bluetooth: Classic: HFP_AG: Check semicolon character of AT CMD ATD
Check if the received AT command `ATD` is valid. When the semicolon is
missing, return the error.

Remove the semicolon from the received valid data and notify received
number or memory location value.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:25:55 +02:00
Lyle Zhu
93cc24a678 Bluetooth: Classic: HFP_HF: Force ATD cmd to end with semicolon
Only voice calls are supported by HFP specification. And the
semicolon character shall be added when the voice call is originated.

Add the semicolon character to force the ATD command to end with
semicolon character.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-14 10:25:55 +02:00
Alberto Escolar Piedras
54d2ba3433 drivers/counter/counter_native_sim: Remove deprecated
This driver was renamed in
ab7a6de5bb
while the old kconfig options and dts binding were deprecated for 4.2
Let's remove them now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-14 10:25:41 +02:00
Carles Cufi
ffe2028dcf scripts: runners: Enable reusing the core dry run logic
In order to avoid duplication of logic in runners, allow subclasses
of ZephyrBinaryRunner to set self.dry_run so that they can then reuse
the logic in core.py to log instead of execute.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-11-14 09:25:32 +01:00
Carles Cufi
48e0481746 scripts: runners: Generalize the --dry-run option
Move the argparse.add_argument() call to the abstract base class and
augment the RunnerCaps class with a dry_run parameter.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-11-14 09:25:32 +01:00
Jordan Yates
18a3838e1c tests: zbus: publish_stats: test zbus_chan_pub_stats_data_age
Test the behaviour of `zbus_chan_pub_stats_data_age`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-14 10:25:20 +02:00
Jordan Yates
a9626ff3ae zbus: helper to query channel data age
Add a helper function to query how old the data in a channel is. Output
is converted to milliseconds as `k_ticks` objects cannot be compared
directly.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-14 10:25:20 +02:00
Yongxu Wang
dfe2c262c8 drivers: firmware: scmi: add cpu info get interface
Add scmi_cpu_info_get API to query CPU information via
NXP SCMI CPU domain protocol.

Retrieves run mode, sleep mode, and reset vector addresses
for the specified CPU ID using CPU_INFO_GET command.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-11-14 09:25:10 +01:00
Yongxu Wang
28b98c9ae8 drivers: firmware: scmi: add reset vector interface
Add scmi_cpu_reset_vector API for NXP SCMI CPU domain protocol.

This API allows setting CPU reset vector addresses using the
CPU_RESET_VECTOR_SET command. The vector address must point to
the initial address of the vector table

Supports 64-bit addresses and boot/start/resume vector flags.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-11-14 09:25:10 +01:00
Johann Fischer
620b7fe02f usb: host: usbip: fix actual_length in USBIP_RET_SUBMIT handling
actual_length needs to be set also for the OUT transfers. Assume that
requested length was transferred when there are no errors.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-11-14 10:25:05 +02:00
Johann Fischer
b84b6d9e0a usb: host: usbip: check pool's buffer size USBIP_CMD_SUBMIT
Check that the pool's buffer size is large enough for the data in the
submit command.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-11-14 10:25:05 +02:00
Etienne Carriere
8bf93b26d6 drivers: i2s: stm32: clean indentation in instance init macros
Clean indentation in I2S_DMA_CHANNEL_INIT(), I2S_STM32_INIT() macros
of STM32 I2S driver, and SAI_DMA_CHANNEL_INIT() and I2S_STM32_SAI_INIT()
macros of STM32 I2S/SAI driver.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 10:24:56 +02:00
Etienne Carriere
e5aaceebe0 drivers: i2s: stm32: replace UTIL_AND() with IF_ENABLED()
Replace uses of UTIL_AND() with IF_ENABLED() that is far more
readable when initializing or not a structure instance.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-14 10:24:56 +02:00
Allen Curtis
26e9ce192d doc: version: document the required fields of VERSION file
Need to clarify what fields are required to successfully build.

Signed-off-by: Allen Curtis <allen.curtis@curtisembedded.com>
2025-11-14 10:24:47 +02:00
Johan Hedberg
445431c779 Bluetooth: Classic: AVRCP: Fix Clang/LLVM build failures
Having variable declarations after labels causes build failures with
Clang/LLVM:

subsys/bluetooth/host/classic/avrcp.c:1269:2: error: label followed by a
declaration is a C23 extension [-Werror,-Wc23-extensions]
 1269 |         uint8_t failed_evt = 0;
      |         ^

/subsys/bluetooth/host/classic/avrcp.c:3809:3: error: label followed by a
declaration is a C23 extension [-Werror,-Wc23-extensions]
 3809 |              uint64_t identifier = sys_get_be64(data->identifier);
      |              ^

Fix these by moving the declarations to the top of the function in the
first case and add braces for the second.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-11-14 10:24:38 +02:00
Jilay Pandya
c9536e65c7 drivers: stepper: tmc22xx: move to driver specific folder
tmc51xx and tmc50xx have already been placed in its dedicated folder,
however,tmc22xx is not.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-11-14 09:23:14 +01:00
Jilay Pandya
015a7c6d3f drivers: stepper: create gpio_stepper folder for h-bridge & step-dir
currently h_bridge_stepper driver is directly placed in drivers/stepper
and step_dir folder contains only gpio specific functionalities. This
commit reorganizes the h_bridge_stepper in gpio_stepper folder to organize
drivers and libs based on functionality.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-11-14 09:23:14 +01:00
Jilay Pandya
da6e98e479 drivers: stepper: tmc5xxx: move to driver specific folder
tmc51xx has already been placed in its dedicated folder, however,
tmc50xx is not. use absolute path for including tmc_rampgem_template
Kconfig.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-11-14 09:23:14 +01:00
Neil Chen
31fd167735 boards: nxp/frdm_mcxaxx6: Support trng for NXP frdm_mcxaxx6 board
Support trng for NXP frdm_mcxa366 and frdm_mcxa266 board
Verified tests/drivers/entropy/api

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-11-14 09:22:29 +01:00
Neil Chen
74d4ad70e0 dts: arm/nxp: Add trng nodes to NXP mcxaxx6 dtsi file
Add trng nodes to NXP mcxa366 and mcxa266 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-11-14 09:22:29 +01:00
Neil Chen
201393a2b3 drivers: syscon: update syscon driver to support mcxa trng clock
Add mcxa trng clock support

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-11-14 09:22:29 +01:00
Neil Chen
43ea5fe81f tests: drivers: pwm: pwm_api: enable flexio pwm test on frdm_mcxaxx6
Enable the flexio pwm test on NXP FRDM-MCXA366 and FRDM-MCXA266 board.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-11-14 09:22:29 +01:00
Neil Chen
17ee480212 boards: nxp/frdm_mcxaxx6: Support flexio for NXP frdm_mcxaxx6 board
Support flexio for NXP frdm_mcxa366 and frdm_mcxa266 board

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-11-14 09:22:29 +01:00
Neil Chen
53a04f28e6 dts: arm/nxp: Add flexio node to NXP mcxaxx6 dtsi file
Add flexio node to NXP mcxa366 and mcxa266 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-11-14 09:22:29 +01:00
Neil Chen
6a423fc6e9 drivers: syscon: update syscon driver to support mcxa flexio clock
Add mcxa flexio clock support

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-11-14 09:22:29 +01:00
Felipe Neves
01f08e184d boards: witte: linum: add display support
By enabling the LTDC controller and attaching it to
the zephyr, display node

Signed-off-by: Felipe Neves <ryukokki.felipe@gmail.com>
2025-11-14 09:22:07 +01:00
Daniel Leung
e45808b9cd xtensa: mmu: add page table usage statistics
Adds function for app to obtain page table usage statistics,
allowing fine tuning of numbers of L1 and L2 page table
array.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-14 09:21:44 +01:00
Daniel Leung
a48345fccf xtensa: mmu/ptables: conserve memory by using COW on L2 tables
When adding new memory domains, we need to start from kernel
page tables by duplicating them. However, there is no need to
duplicate all in-use page tables as some memory regions remain
unchanged. Fror example, hardware register region where only
kernel has access does not need to be duplicated across all
memory domains. The same L2 table can be used among them.
This changes the L2 page table allocation to be copy-on-write
where we only need to duplicate a L2 table if changes need to
be made on it.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-14 09:21:44 +01:00
Daniel Leung
1e41db3ddd xtensa: mmu: no need for cache ops if page tables are not cached
If the page tables are not cached, there is no need to do any
cache ops to flush or invalidate the data in cache. So skip them
if the page tables are not cached. Saves a few CPU cycles.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-14 09:21:44 +01:00
Daniel Leung
501368601d xtensa: mmu/ptables: rework TLB invalidation on L2 unmap
In l2_page_table_unmap(), invalidating TLBs should be limited to
the address and not the whole auto-refill TLBs. Also fix a bug
where the EXEC bit should be determined from the L2 PTE and not
the L1 PTE.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-14 09:21:44 +01:00
Daniel Leung
259be3d559 xtensa: mmu: remove XTENSA_ prefix for page table array macros
Some macros for the page tables array are local to the file so
there is no need to prefix them with XTENSA_. Simplify by
removing the XTENSA_ prefix, and clairfy if needed.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-14 09:21:44 +01:00
Daniel Leung
1470d9ef74 xtensa: mmu: move PTE macros into source file
Almost all page table entry (PTE) related macros are only used
in one source file. These macros are considered the internal
working of MMU. There is no need to expose them in header file
for other to reference. So move them into the source file where
it is only place they are used. Bonus is that we can shorten
the macro names as they are now local to the file. Makes it
easier to read, and few keystrokes to input.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-14 09:21:44 +01:00
Daniel Leung
b6713c0145 xtensa: mmu: skip PTE SW field redirection
This skips the redirection of backup attributes and ring via
some SW field macros, and use the PTE bits directly. Should
make it easier to decode what's going on.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-14 09:21:44 +01:00
Daniel Leung
2bfcb20258 xtensa: mmu: unify PTE macros
The fields in macro should be done with both shift and mask
values to make it clear. So amend some macros so that
the presentation are unified for them.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-14 09:21:44 +01:00
Daniel Leung
f040a738ac soc: cdns/dc233c: linker: add snippets-text-sections.ld
Adds snippets-text-sections.ld to linker scripts. So that
the mem_map test can run on qemu_xtensa/dc233c/mmu.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-14 09:21:44 +01:00
Julien Vermillard
4e54e9a806 net: lwm2m: get cache free slots
Add function to query LwM2M cache free slots on a given path.

Signed-off-by: Julien Vermillard <julien@clunkymachines.com>
2025-11-14 09:20:59 +01:00
Zhaoxiang Jin
0b93c2f8ee tests: on_demand: Add test for P-states order
Ensure that the P-states defined in devicetree for the CPU frequency
scaling on-demand policy are in decreasing order of load thresholds.
This is important because the on-demand policy relies on this order
to select the appropriate P-state based on current CPU load.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-13 20:46:01 -05:00
Zhaoxiang Jin
2194069d8d cpu_freq: Validate P-states in devicetree in build time
Validate P-states in devicetree in build time. If no
P-states are defined, a build error will be raised.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-13 20:46:01 -05:00
Zhaoxiang Jin
e5c0abb43b doc: cpu_freq: add details about on-demand policy
add details about on-demand policy

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-13 20:46:01 -05:00
Zhaoxiang Jin
26f773fb72 cpu_freq: Add fallback mechanism for on-demand policy
In current on_demand policy, if it doesn't find a P-state
with a threshold lower than the current load, it will fail
to switch state. For example, if load went from 100% -> 0%
suddenly as the chip would get stuck in a "turbo mode"
meanwhile its load is low.

This commit add fallback mechanism for on-demand policy,
that is if no P-state matches (i.e., the load is below all
thresholds), the policy will fall back to the P-state with
the lowest load_threshold (typically the lowest performance
state).

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-13 20:46:01 -05:00
Lyle Zhu
03e062219a Bluetooth: Classic: shell: hfp: Add command last_number
Add the command `last_number` to set the last dialed phone number.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-13 20:45:50 -05:00
Lyle Zhu
97b4373d9b Bluetooth: Classic: HFP_AG: Add callback redial to get number
If a phone was made during the previous SLC, AG cannot properly
process the redial request sent by HF after reconnecting.

Add a callback `redial` to get the last dial number from the upper
layer when `AT+BLDN` command is received.

If the callback is not provided or the error is returned after the
callback returned, send error response to the HF.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-13 20:45:50 -05:00
Tom Chang
1a8e7f3005 drivers: counter: npcx: add support for lct counter driver
This commit enables configuration and integration of LCT counter by
including relevant source and kconfig files.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-11-13 20:45:41 -05:00
Tom Chang
f4d258204a soc: npcx: add lct register definitions
Introduce register structures and macros for the long countdown timer to
support counter functionality in npcx and npck series.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-11-13 20:45:41 -05:00
Tom Chang
5dac45d951 dts: counter: npcx: add LCT node and bindings
Introduce bindings for the NPCX LCT hardware counter.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-11-13 20:45:41 -05:00
Ayush Singh
66877ec198 boards: beagle: play: Disable internal capacitors
- BeaglePlay has external load capacitors for the 48 MHz crystal. The
  reason for this is described in Radio_01 here [0]. So we should
  disable the internal capacitors.
- I have tested connection between play and bcf with the new play
  settings. For anyone wanting to replicate it, I have used greybus
  loopback protocol [1]. Here is my script:
```
echo 50 > /sys/class/gb_loopback/gb_loopback0/iteration_max
echo 2 > /sys/class/gb_loopback/gb_loopback0/type
sleep 10
cat /sys/class/gb_loopback/gb_loopback0/latency_avg
```
- Results:
  - Before change: 89545.880000 microsec
  - After change: 87822.620000 microsec
- Basically, no regression.

[0]: https://www.ti.com/lit/er/swrz109a/swrz109a.pdf?ts=1761755410798
[1]: https://github.com/zephyrproject-rtos/zephyr/issues/98259

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-11-13 20:45:32 -05:00
Dev Joshi
080734ce0f tracing: rtio: Add tracing hooks for rtio
This commit adds tracing support/hooks for rtio subsystem. It was
requested in #76972.

Signed-off-by: Dev Joshi <devbhave@qti.qualcomm.com>
2025-11-13 20:45:24 -05:00
cyliang tw
1f47d245cd tests: drivers: spi: spi_loopback: support numaker_m3334ki
Add support for Nuvoton numaker board numaker_m3334ki.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-11-13 20:45:15 -05:00
cyliang tw
86ed750ff8 dts: arm: nuvoton: add spi nodes for numaker m333x
Update m333x.dtsi to include spi configuration.
Also fixed warning of not correctly formatted clk-pclkdiv.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-11-13 20:45:15 -05:00
Alberto Escolar Piedras
40dc5b17a8 drivers uart_native_pty: Remove deprecated options & binding
In cb53e40ff9
the uart_native_posix driver was renamed to uart_native_pty while
deprecating the old kconfig options and bidning for the 4.2 release.

Let's remove them now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-13 20:45:05 -05:00
Alberto Escolar Piedras
62be171fc6 drivers entropy: fake_entropy_native_posix: Remove deprecated
This driver was renamed in
4338122248
while the old kconfig options and dts binding were deprecated for 4.2
Let's remove them now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-13 20:44:56 -05:00
Erwan SZYMANSKI
873dea03bc boards: st: stm32mp135f_dk: add touchscreen and lvgl pointer
STM32MP135F_DK board embeds a LCD screen with touchscreen driven by I2C5.
GT911 touchscreen already have driver support in Zephyr so just add
necessary nodes here.

Signed-off-by: Erwan SZYMANSKI <erwan.szymanski@st.com>
2025-11-13 20:44:36 -05:00
Alexander Svensen
fa7d9bf09c tests: bluetooth: tester: Fix bis_sink_sync
- Allows the tester to match on either ID or addr
- Previously required that both needed to match, but Auto-PTS is sending
  the wrong address

Signed-off-by: Alexander Svensen <alexander.svensen@nordicsemi.no>
2025-11-13 20:44:02 -05:00
Alberto Escolar Piedras
031a3adaef drivers/ethernet/eth_native_tap: Remove deprecated kconfig options
The old native_posix ethernet was renamed to native_tap in
78f800642a
and its old kconfig options deprecated at the time (in 4.2)
Let's remove them now.

Note in this commit we move the defaults into their right place.
Defaults were set in the deprecated options so we could both
have the defaults and allow users to keep using the old options.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-13 20:43:53 -05:00
Alberto Escolar Piedras
1ad92e5c79 boards native_sim: Remove NATIVE_POSIX_SLOWDOWN_TO_REAL_TIME
The kconfig option NATIVE_POSIX_SLOWDOWN_TO_REAL_TIME was deprecated
in bd42df2662 for the 4.2 release.
Let's remove it now.

Users should be using NATIVE_SIM_SLOWDOWN_TO_REAL_TIME instead.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-13 20:43:44 -05:00
Jonas Berg
a76dfca84a boards: shields: Add Adafruit MCP4728 DAC shield
The product photo is from
https://learn.adafruit.com/assets/86699

Tested with the command mentioned in the index.rst file.

Compile testing of the overlay file is done via the DAC sample.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-11-13 20:43:19 -05:00
Siddhant Modi
904e34c41a drivers: sdhc: sdhc_spi: Adding support for cd_gpio
1. This commit adds support for the cd-gpios property
   to the dts binding for the sdhc_spi driver.
2. The _init function is updated to initialize the GPIO
   pin if it is found.
3. The _get _card_present function is updated to check
   the GPIO pin state if the pin has been initialized.

Signed-off-by: Siddhant Modi <siddhant.modi@gmail.com>
2025-11-13 20:43:12 -05:00
Triveni Danda
0186d123e8 doc: wifi: Add server certificate domain validation instructions
Add instructions for verifying the authentication server’s certificate
domain using exact domain match and domain suffix match options.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-11-13 20:42:52 -05:00
Triveni Danda
b4e2cd139b net: l2: wifi: Handle domain match and suffix match parameters
Add support to handle domain match and suffix match parameters
for proper server certification validation.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-11-13 20:42:52 -05:00
Triveni Danda
b708f3d04b manifest: hostap: Enable server certificate verification
Enable hostname validation for server certificate verification.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-11-13 20:42:52 -05:00
Albort Xue
e6efe0f217 drivers: flash: Optimize mcux_flexspi_nor erase for unaligned operations
Improve erase efficiency by using a hybrid approach that combines block
and sector erase operations.
The new implementation:
- Erases unaligned sectors at the start until block-aligned
- Erases whole blocks in the middle protion
- Erases remaining sectors at the end.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2025-11-13 20:42:39 -05:00
Grzegorz Chwierut
9953f330cc doc: twister: Document extra serial port
Update documentation for using multiple serial ports
with Twister's --devise-serial option.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-11-13 20:42:31 -05:00
Grzegorz Chwierut
c542b258db samples: sysbuild: hello_world: Get second UART from Twister params
Use --device-serial command line option to specify multiple serial
ports. Split test into two separate test functions.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-11-13 20:42:31 -05:00
Grzegorz Chwierut
b33387c44a scripts: twister: Add support for passing extra serial port to pytest
Extend twister's device serial handling to support multiple serial ports
for pytest-based tests. This enables testing scenarios that require
communication with multiple UART interfaces on the same device.
This enhancement enables comprehensive testing of multi-UART devices
while maintaining backward compatibility with single serial setups.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-11-13 20:42:31 -05:00
Xavier Razavet
76a102a8bd drivers: ieee802154: mcxw_get_eui64() updated to manage MAC address
The mcxw_get_eui64() function allows to provide a persistent MAC
address if it does not exist

Signed-off-by: Xavier Razavet <xavier.razavet@nxp.com>
2025-11-13 20:42:22 -05:00
Xavier Razavet
fbadac59fe samples: openthread: shell: prj-ot-host.conf file updated
Settings configuration is removed in the
zephyr/samples/net/openthread/shell/prj-ot-host.conf file.
No more used.

Signed-off-by: Xavier Razavet <xavier.razavet@nxp.com>
2025-11-13 20:42:22 -05:00
Xavier Razavet
ec982e6408 boards: nxp: frdm_mcxw71: update flash code/hw_params/storage allocation
This commit add 1K for the hardware parameters (at the end of the flash)
and reduces the storage to 111k. It is used, first, to store the MAC
address.

Signed-off-by: Xavier Razavet <xavier.razavet@nxp.com>
2025-11-13 20:42:22 -05:00
Xavier Razavet
372341d4c5 boards: nxp: mcxw72: update flash code/hw_params/storage allocation
This commit add 1K for the hardware parameters (at the end of the
flash) and reduces the storage to 15k. It is used, first, to store
the MAC address.

Signed-off-by: Xavier Razavet <xavier.razavet@nxp.com>
2025-11-13 20:42:22 -05:00
Holt Sun
47dcc246e0 boards: nxp: frdm_mcxe247: enable rtc.
1.enable rtc_counter for frdm_mcxe247.
2.fix some format issue of mcxe247 dts.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-11-13 20:41:39 -05:00
Holt Sun
2e02d29295 boards: nxp: frdm_mcxe31b: enable rtc device.
1. enable RTC and rtc-counter alias for
frdm_mcxe31b.
2. enable sample driver counter alarm.
3. enable sample driver rtc.
4. enable counter_basic_api test.
5. fix misc mcxe31b dts format error.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-11-13 20:41:39 -05:00
Holt Sun
87f8264c65 drivers: counter: add counter driver for NXP E31B.
add counter rtc jdp driver for MCXE31B.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-11-13 20:41:39 -05:00
Holt Sun
11c9176ad6 dts: bindings: rtc: add NXP RTC JDP binding.
rtc jdp binding is for NXP E31B device RTC.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-11-13 20:41:39 -05:00
Holt Sun
9e0cfb7b25 drivers: rtc: rtc_counter driver improvement.
Existing rtc_counter driver only support
frequency equaling 1 Hz, update it to support
any frequency.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-11-13 20:41:39 -05:00
Qingsong Gou
64d0f3faf3 drivers: clock_control: sf32lb: add get_rate support
Add get_rate support for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-13 20:41:27 -05:00
Seppo Takalo
9acbcadfda modem: cmux: Define encoding and decoding functions for commands
Instead of relying non-standard compiler behavior, define
encode and decode functions for all CMUX command structures.

Final command is encoded into a shared buffer, because it is
always copied directly to TX ringbuffer.

Added also functions to validate commands.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-11-13 20:41:17 -05:00
Fin Maaß
402c66a5e1 arch: riscv: vexriscv: add VexRiscv cache driver
add driver for VexRiscv CPU cache controller.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-13 20:41:07 -05:00
Fin Maaß
a6858f6bc4 dts: bindings: vendor-prefixes: Add spinalhdl prefix
Add SpinalHDL vendor prefix.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-13 20:41:07 -05:00
Daniel Kampert
6ff7a9ec5e sensors: apds9306: Fix typos in APDS9306 macros
- Ensure consistent naming conventions for better readability

Signed-off-by: Daniel Kampert <DanielKampert@kampis-elektroecke.de>
2025-11-13 20:40:53 -05:00
Daniel Kampert
dcbdfea6e7 sensors: apds9306: Add Multi-Instance Support
- Add multi-instance support to the APDS9306 ambient light sensor driver
- Replace global worker item with instance-specific worker item

Closes #97893

Signed-off-by: Daniel Kampert <DanielKampert@kampis-elektroecke.de>
2025-11-13 20:40:53 -05:00
Siratul Islam
11dca1208a boards: xtensa: add support for DOIT ESP32 DevKit V1
This patch adds support for the DOIT ESP32 DevKit V1, an entry-level
development board based on the ESP32-WROOM-32.

Main features:
- ESP32-WROOM-32 module (4 MB Flash, 520 KB SRAM)
- Dual-core Xtensa LX6 processor up to 240 MHz
- 802.11b/g/n Wi-Fi and Bluetooth v4.2 BR/EDR + BLE
- CP2102 USB-to-UART bridge
- Onboard blue LED connected to GPIO2
- All GPIO pins exposed on 2x15 pin headers

The board has been tested with the following Zephyr samples:
- samples/basic/blinky
- samples/hello_world

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-11-13 20:40:43 -05:00
Alexandre Boeglin
23a92a6ec8 usb: device_next: cdc_acm: Trigger TX on configuration enable
When CDC ACM instance gets enabled and there is some data in TX FIFO,
the TX FIFO work will not be triggered if no UART API is used. And if TX
FIFO was full before CDC ACM instance get enabled, TX work will never be
triggered. To fix it TX FIFO should always be drained when CDC ACM gets
enabled.

Signed-off-by: Alexandre Boeglin <alexandre.boeglin@qorvo.com>
2025-11-13 20:39:13 -05:00
Yanan Yang
a3fc3f4d93 boards: frdm_imx91: add sai3_2 and edma4_2 node for i2s_mcux_sai driver
add sai3_2 and edma4_2 node for use with i2s_mcux_sai driver

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
2025-11-13 20:39:01 -05:00
Yanan Yang
bb8b6d79cb dts: arm64: imx9131: add sai3_2 and edma4_2 node for i2s_mcux_sai driver
add sai3_2 and edma4_2 node for use with i2s_mcux_sai driver

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
Fix the indent format issue.
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Yanan Yang
278a2792de boards: frdm_imx93: add sai3_2 and edma4_2 node for i2s_mcux_sai driver
add sai3_2 and edma4_2 dts node for use with i2s_mcux_sai driver

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
2025-11-13 20:39:01 -05:00
Yanan Yang
8e5956a5fb boards: imx93_evk: add sai3_2 and edma4_2 node for i2s_mcux_sai driver
add sai3_2 and edma4_2 dts node for use with i2s_mcux_sai driver

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
2025-11-13 20:39:01 -05:00
Yanan Yang
33a8b00ad1 dts: arm64: imx93: add sai3_2 and edma4_2 node for i2s_mcux_sai driver
Add sai3_2 and edma4_2 dts node for use with i2s_mcux_sai driver.

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
Fix indent format issue.
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Hou Zhiqiang
bf68a487a0 drivers: i2s: i2s_mcux_sai: add i.MX9 platform support
Rework the driver to support i.MX9 platforms.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-11-13 20:39:01 -05:00
Hou Zhiqiang
f60ab24b71 drivers: i2s: mcux_sai: set the Bit Clock Swap on the feature enabled
When the platform has the Bit Clock Swap feature, enable it.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Hou Zhiqiang
59a54b8d98 drivers: i2s: mcux_sai: fix the type of var num_of_bufs
Correct the type of num_of_bufs to uint32_t.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Yanan Yang
d3f3c2c3a1 drivers: i2s: i2s_mcux_sai: use device model MMIO mapping
Change to use device model MMIO mapping APIs.

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Fix CI failures: Clean unused code
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Hou Zhiqiang
afe524e5f9 drivers: i2s: mcux_sai: correct DMA burst length
The burst length should be initialized with 'word_size_bits'.

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Hou Zhiqiang
05b81be7b2 drivers: mcux_ccm_rev2: fix code format
Remove extra space between the '=' and rvalue.

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Yanan Yang
021afed04f drivers: mcux_ccm_rev2: add SAI clock support for i.MX9 platform
add SAI clock support for i.MX9 platform

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Fix CI failure: LEADING_SPACE: please, no spaces at the start of a line
Split code format fixing into a new patch
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Yanan Yang
928fa39911 drivers: dma: dma_mcux_edma: enable MMIO mapping
Enable MMIO mapping in dma_mcux_edma driver

Signed-off-by: Yanan Yang <yanan.yang@nxp.com>
2025-11-13 20:39:01 -05:00
Hou Zhiqiang
d3646421af boards: frdm_imx91: fix board dts and pinctrl dtsi format issue
Compliance check reports some format issue, so fix it.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-11-13 20:39:01 -05:00
Yuriy Vynnychek
a48924495e board: infineon: kit_t2g_b_h_evk: new board basic support
Add new board basic support: dts, kconfig, defconfig, openocd and doc.

Signed-off-by: Yuriy Vynnychek <Yuriy.Vynnychek-EE@infineon.com>
2025-11-13 20:38:52 -05:00
Yuriy Vynnychek
bc02c2ca12 board: infineon: kit_t2g_b_h_lite: new board basic support
Add new board basic support: dts, kconfig, defconfig, openocd and doc.

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

Signed-off-by: Yuriy Vynnychek <Yuriy.Vynnychek-EE@infineon.com>
2025-11-13 20:38:52 -05:00
Yuriy Vynnychek
a315736533 dts: infineon: xmc7200: fix wrong Flash and SRAM namings
Fix wrong case when Flash was called "data" and SRAM was called "code".
Rename Flash to "code" and SRAM to "data".

Signed-off-by: Yuriy Vynnychek <Yuriy.Vynnychek-EE@infineon.com>
2025-11-13 20:38:52 -05:00
Afonso Oliveira
0cdc464285 riscv: add Smcsrind indirect CSR access extension support
Add support for the RISC-V Smcsrind extension, which provides
indirect access to CSRs through the MISELECT and MIREG registers.

Changes:
- Added CONFIG_RISCV_ISA_EXT_SMCSRIND Kconfig option
- Implemented 4 helper functions for indirect CSR access:
  * icsr_read/write - basic access
  * icsr_read_set/clear - bit manipulation
- Defined 7 CSR registers (MISELECT, MIREG, MIREG2-6)

This is a CSR-only extension that does not require any compiler
support or march flags. The helper functions compile to standard
CSR instructions and work with any toolchain that supports Zicsr.

Primary use case: RISC-V AIA (Advanced Interrupt Architecture)
uses indirect CSRs to access IMSIC (Incoming MSI Controller)
registers.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-11-13 20:38:38 -05:00
Utsav Munendra
3b09b09609 doc: release: Note changes to flash_mspi_nor
Note that read, write and control commands can be configured
separately via devicetree now.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-11-13 20:37:44 -05:00
Utsav Munendra
c696414f8f driver: flash_mspi_nor: Allow specific read/write IO modes and frequencies
The driver currently provides no way to use Dual IO Read and Single IO
for the rest of the commands currently, and would erroneously use
Single IO PP command in Dual IO mode. This PR fixes and adds
support for that.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-11-13 20:37:44 -05:00
Utsav Munendra
eae12761e1 drivers: flash_mspi_nor: Remove bool tracking of target IO mode
Remove the Boolean tracking of MSPI IO mode as we can now rely on
tracking the entire dev config applied to the MSPI device, multiple
of which will exist in later commits.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-11-13 20:37:44 -05:00
Utsav Munendra
abd35f88a7 drivers: flash_mspi_nor: Flash control commands to use their own configs
Also in preparation for allowing control command frequency to be
different from the read/write frequency and initialization frequency.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-11-13 20:37:44 -05:00
Utsav Munendra
8bc4a92397 drivers: flash_mspi_nor: Track last applied MSPI config
Instead of just tracking in a bool whether the MSPI device is in
Standard MSPI vs. QPI/OPI config, track the entire MSPI config which was
last applied. This makes it easier later to track more than two configs
to apply based on the next command to transceive.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-11-13 20:37:44 -05:00
Utsav Munendra
41988ae62f drivers: flash_mspi_nor: Simplify perform_xfer function
Remove unnecessary function argument, makes later commits also simpler.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-11-13 20:37:44 -05:00
Cla Mattia Galliard
6044262f42 log: output: log thread priority
When logging thread names also log their priorities.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-11-13 20:37:31 -05:00
Qingsong Gou
6a66a0725e boards: sifli: sf32lb52_devkit_lcd: enable rtc
enable rtc on sf32lb52_devkit_lcd board

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-13 20:37:06 -05:00
Qingsong Gou
cbe5dabd64 drivers: rtc: add rtc driver for sf32lb
add rtc driver for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-13 20:37:06 -05:00
Qingsong Gou
b9900e6157 dts: arm: sifli: sf32lb: fix sifli,sf32lb-rtc
Add sifli,cfg for sifli,sf32lb-rtc

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-13 20:37:06 -05:00
Qingsong Gou
0a1214bc82 dts: bindings: rtc: fix sifli,sf32lb-rtc
Add sifli,cfg for sifli,sf32lb-rtc

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-13 20:37:06 -05:00
Firas Sammoura
8a23eff9f6 tests: riscv: Add unit tests for clearing unlocked PMP entries
Adds a new test suite to verify the behavior of `riscv_pmp_clear_all()`.
These tests ensure that the function correctly clears all unlocked PMP
entries while preserving any entries that are locked.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-13 20:36:55 -05:00
Firas Sammoura
9dc3906cd3 arch: riscv: Add z_riscv_pmp_clear_all() to reset PMP entries
Introduce the new function `riscv_pmp_clear_all()` to reset the Physical
Memory Protection (PMP) configuration.

This function iterates through all configured PMP slots. For each entry,
it writes 0x0 to the entry's 8-bit configuration register. This action
attempts to clear all fields, including the Address Matching Mode (A) bits
(setting the region type to OFF), the permission bits (R, W, X), and
the Lock (L) bit.

According to the RISC-V specification, any writes to the configuration
or address registers of a locked PMP entry are ignored. Thus, locked
entries will remain unchanged, while all non-locked entries will be
effectively disabled and their permissions cleared.

The function ensures it operates in Machine mode with MSTATUS.MPRV = 0
and MSTATUS.MPP = M-mode before modifying any PMP Control and Status
Registers (CSRs).

This provides a mechanism to clear all non-locked PMP regions,
returning them to a default disabled state. The function declaration is
exposed in the `include/zephyr/arch/riscv/pmp.h` header file, making it
available for inclusion and use by external modules.

It is recommended for firmware to call this function before transitioning
from a Read-Only (RO) stage to a Read-Write (RW) stage. This ensures
that any PMP settings established during the RO phase, which might no
longer be appropriate, are cleared, providing a clean and secure base
PMP configuration for the RW firmware.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-13 20:36:55 -05:00
Marcio Ribeiro
cb433ace2e samples: boards: espressif: add retained_mem api to deep_sleep sample
Adds retained_mem api to espressif deep_sleep sample and enables it for the
following platforms:
- esp32_devkitm/esp32/procpu
- esp32c3_devkitm
- esp32c6_devkitc/esp32c6/hpcore
- esp32h2_devkitm
- esp32s2_devkitc
- esp32s3_devkitm/esp32s3/procpu

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-11-13 20:36:45 -05:00
Marcio Ribeiro
7d531cb712 tests: drivers: retained_mem: enable api test for espressif platforms
Enables retained_mem api test using RTC RAM for the following platforms:
- esp32_devkitc/esp32/procpu
- esp32c3_devkitm
- esp32c6_devkitc/esp32c6/hpcore
- esp32h2_devkitm
- esp32s2_devkitc
- esp32s3_devkitm/esp32s3/procpu

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-11-13 20:36:45 -05:00
Marcio Ribeiro
378829fc69 boards: espressif: add support for retained_mem on espressif platforms
Adds support for retained_men on the following platforms:
- esp32_devkitc/esp32/procpu
- esp32_ethernet_kit/esp32/procpu
- esp32c3_devkitc
- esp32c3_devkitm
- esp32c3_rust
- esp32c6_devkitc/esp32c6/hpcore
- esp32h2_devkitm
- esp32s2_devkitc
- esp32s2_saola
- esp32s3_devkitc/esp32s3/procpu
- esp32s3_devkitm/esp32s3/procpu
- esp32s3_eye/esp32s3/procpu
- esp_wrover_kit/esp32/procpu

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-11-13 20:36:45 -05:00
Marcio Ribeiro
3d43f75701 soc: espressif: add region description for rtc ram memory
Adds separate memory regions for rtc ram memory areas and reworks linker
scripts to make use of their starting addresses and lengths

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-11-13 20:36:45 -05:00
Jordan Yates
764b0fa60f charger: bq2518x: configurable battery limits
Make the battery undervoltage and over-discharge limits configurable
from devicetree.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 20:36:35 -05:00
Jordan Yates
831c8a7e48 charger: bq2518x: more configuration options
Add configuration for the VSYS target regulation voltage.

Explicitly specify the threshold at which charging will resume, instead
of deriving it from the combination of two devicetree properties which
have no compile-time validation.

Simplify the process of initialising the chip by precomputing the
register values and explicitly writing the whole register, instead of
updating multiple fields individually.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 20:36:35 -05:00
Jordan Yates
212cabd27a charger: bq2518x: restrict precharge values in devicetree
Instead of text in the description that specifies the valid values,
add the `enum` property so values are validated at compile time.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 20:36:35 -05:00
Jordan Yates
4bc7aa312e tests: drivers: build_all: charger: bq2518x variants
Add the `ti,bq25186` and `ti,bq25188`` to the build all test.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 20:36:35 -05:00
Jordan Yates
833cbd8af8 charger: bq2518x variants
Add support for the bq25186 and bq25188 chip variants.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 20:36:35 -05:00
Jordan Yates
c881deabd8 charger: bq25180: rename to bq2518x
Rename the bq25180 implementation and files to the more generic bq2518x.
This charger family contains the bq25180, bq25186, bq25188 and the
standalone (non-I2C) bq25185.

The register maps are practically identical, so the driver should be
re-used.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 20:36:35 -05:00
Omkar Kulkarni
e6ba8a6ade Bluetooth: Mesh: Test network cache improvement
Adds a test that checks that the network message cache differentiates
between PDUs with the same SRC and SEQ but different NetKey Index.

Signed-off-by: Omkar Kulkarni <omkar.kulkarni@nordicsemi.no>
2025-11-13 20:36:24 -05:00
Omkar Kulkarni
22e37982cb Bluetooth: Mesh: Make net msg cache netkey aware
Improve the network message cache to be aware of network keys to
prevent false duplicate detection across different subnets. This
ensures that messages with the same source address and sequence
number but from different network keys are not incorrectly
identified as duplicates, as it can happen in certain cases.
See ES-26350.

Signed-off-by: Omkar Kulkarni <omkar.kulkarni@nordicsemi.no>
2025-11-13 20:36:24 -05:00
Qingsong Gou
5c52f25f5a drivers: input: add ft6146 driver
add initial driver for ft6146

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-13 20:36:08 -05:00
Arunprasath P
1f999e5609 boards: microchip: sam_e54_xpro: add DMA to supported list
Update sam_e54_xpro.yml to include DMA in the supported
features list.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-11-13 20:35:43 -05:00
Arunprasath P
aa6414f09b drivers: dma: microchip: Add G1 DMA Driver
Add G1 DMA driver for Microchip DMA Peripherals.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-11-13 20:35:43 -05:00
Arunprasath P
1c4e15df78 dts: arm: microchip: add dts node and binding file for dma g1
Add the device tree node and the binding file for
microchip dma G1 Peripheral.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-11-13 20:35:43 -05:00
Make Shi
aca9ae2814 Bluetooth: AVRCP: Implement full support vendor-dependent commands
Add full support for all remaining AVRCP vendor-dependent PDUs on both
Controller (CT) and Target (TG), including APIs, callbacks, and shell
commands for testing.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-11-13 20:35:28 -05:00
Make Shi
8572ec9cf3 Bluetooth: AVRCP: Add Player app Settings vendor-dependent commands
Implement support for AVRCP Player app Settings PDUs on both CT/TG
- Added APIs for sending and handling commands like LIST_ATTRS,
   LIST_VALS, GET_CURR_VAL, SET_VAL, and related text/inform PDUs.
- Added callbacks for TG request handling and CT response processing.
- Add shell commands for Player app Settings commands testing.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-11-13 20:35:28 -05:00
Make Shi
c0c5a25158 Bluetooth: AVRCP: Add support for notification events
This patch adds AVRCP notification event handling for both CT and
TG roles. Also add Shell command support for testing notification
registration and responses.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-11-13 20:35:28 -05:00
Make Shi
7008f0eaf3 bluetooth: avrcp: Add vendor-dependent with fragmentation support
This patch introduces support for AVRCP vendor-dependent commands and
responses, including full handling of fragmented messages.

- Adds fragmentation and reassembly logic for AVRCP vendor-dependent
- Introduces TX queue management using delayed work for TG
- Adds support for GetCapabilities PDUs
- Add new Kconfig for vendor-dependent with fragmentation support

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-11-13 20:35:28 -05:00
Make Shi
f06e977de3 Bluetooth: AVCTP: Remove redundant length check in avctp_tx_processor
Remove unnecessary checking for net_buf_tailroom(buf) < chunk_size
before sending data in avctp_tx_processor.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-11-13 20:35:28 -05:00
Arnaud Pouliquen
3c3418822a boards: st: stm32mp135f_dk: add ethernet nodes
The STM32MP135F-DK board embeds 2 ethernets. Enable the ethernet1
in RMII mode with associated PHY.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
Signed-off-by: Arif Balik <arifbalik@outlook.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
6c508cbd52 drivers: ethernet: stm32: add support of the stm32mp13
Add the support of the stm32mp13 ethernet:
- Adapt to HAL API
- Add support of a memory region in DT for descriptor and buffers
- Add support of PHY with/without crystal 50MHz

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
Signed-off-by: Arif Balik <arifbalik@outlook.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
b05a6f6344 drivers: ethernet: stm32: cleanup deprecated ETH_TxPacketConfig typedef
The typedef ETH_TxPacketConfigTypeDef is used consistently in the driver.
However, some instances of ETH_TxPacketConfig have not yet been replaced.
On the STM32MP13 series, the ETH_TxPacketConfig typedef is no longer
defined. This cleanup ensures compatibility and consistency.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
4e51327722 dts: arm :st: Add ethernet 0 node in stm32mp13
Add the Ethernet 0 MAC and MDIO nodes in the device tree.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
Signed-off-by: Arif Balik <arifbalik@outlook.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
8aacdca78b soc: st: stm32mp13: enable direct memory map
Enable dynamic configuration of region mapping with a 1:1
virtual-to-physical address mapping.
This configuration is aligned with the static declaration of the
MMU table using MMU_REGION_FLAT_ENTRY macro.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
d8e7887ba9 drivers: gpio: invert I2C config dependency for MCP23xxx
The GPIO_MCP230XX config currently depends on the I2C config. This means
that the board/SoC must enable the I2C config to support MCP23xxx devices.
Inverting this dependency allows declaring GPIO_MCP230XX directly in the
board/SoC defconfig without explicitly enabling I2C.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
Suggested-by Fin Maaß <f.maass@vogl-electronic.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
e7a7639d1f drivers: ethernet: add initial support of the LAN8742 PHY
Add basic support of the LAN8742 RMII phy. The driver is inspired
from the phy_mii generic driver, with the support of a GPIO reset.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
7243ba33e3 dts: bindings: ethernet: Add the stm32mp13 bindings
Introduce stm32mp13 bindings to support the ethernet peripherals.
The "memory-regions" property is used to reference non cacheable memory
for the ETH DMA.
The "st,ext-phyclk" property aligned Linux binding is used to specify
the PHY clock for RMII.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-11-13 20:35:09 -05:00
Ayush Singh
9c88612e67 dts: arm: ti: mspm0: l110x: Add uart1
- MSPM0L110x series SOC contain 2 UARTS. So add UART1.
- While all MSPM0L series SOC contain at least 2 UARTs, the address for
  UART1 seems to be different in L222x and L122x (0x4010A000).

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-11-13 20:34:46 -05:00
Jordan Yates
463a6fe8b9 spi: nrfx_spim: cleanup PM usage
Release the PM constraint at the end of the context in which it was
requested (`transceive`), instead of in a semi-related function
(`finalize_spi_transaction`) which is also called by other API functions
(`spi_release`). Asynchronous usage is released in the transaction
complete callback.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 20:34:37 -05:00
Nilesh Vyas
132ab06a3f drivers: display: st7796s: Add display_set_orientation API
This commit adds the implementation for the display_set_orientation API
to the ST7796S display driver.

Currently, the driver lacks support for changing the display orientation
at runtime. This change implements the API to allow for hardware-based
rotation using the MADCTL register.

The implementation was tested on an `rd_rw612_bga` board with a 320x480
display using the ST7796S controller. The API now correctly handles
rotations to 0, 90, 180, and 270 degrees by configuring the MY, MX, and
MV bits of the MADCTL register.

Signed-off-by: Nilesh Vyas <nileshvyas1112@gmail.com>
2025-11-13 20:34:06 -05:00
MA Junyi
2bf29f46df boards: embedsky: add runner bmp for TQ-H503A
Users can choose blackmagicprobe to flash or debug the device,
without needing to set up ST’s customized OpenOCD.

Signed-off-by: MA Junyi <mjysci@live.com>
2025-11-13 20:33:57 -05:00
Khoa Tran
0e0906de0f tests: drivers: disk: Add test support for sdhc on Renesas RA
Add test support for sdhc driver on Renesas ek_ra8m1 and
ek_ra8p1 board:
- tests/drivers/disk/disk_access

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
67fff480d1 samples: subsys: fs: Add sample support for sdhc on Renesas RA
Add sample support for sdhc driver on Renesas ek_ra8m1 and
ek_ra8p1 board:
- samples/subsys/fs/fs_sample

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Nguyen
42a18f3946 boards: renesas: Update supported tag for integration_platforms
Update supported spi and sdhc tag for integration_platforms for
spi and disk test: ek_ra8m1, ek_ra8p1 cm85

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
65e2c20b8b tests: drivers: disk: Add tests support for SCI B SPI driver
Add test support using SDMMC card on Renesas RA boards

Add Renesas RA board support for these tests:
- tests/drivers/disk/disk_access

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
06c223686c tests: drivers: sdhc: Add tests support for SCI B SPI driver
Add test support using SDMMC card on Renesas RA boards

Add Renesas RA board support for these tests:
- tests/drivers/sdhc

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
291ef0fccc samples: subsys: fs: Add tests support for SCI B SPI
driver using SDMMC card on Renesas RA boards

Add Renesas RA board support for these samples:
- samples/subsys/fs/fs_sample

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
ef39b92845 tests: drivers: spi: Add tests support for SCI B SPI on RA devices
Add Renesas RA board support for these tests:
- tests/drivers/spi/spi_loopback
- tests/drivers/spi/spi_controller_peripheral

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
504065c8b7 dts: arm: renesas: Add SPI device node to SCI device node
for Renesas RA family

Add SPI device node to support SCI B SPI driver on Renesas RA SoCs:
- ra8x1.dtsi
- ra8x2.dtsi

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
7c529fbd0c drivers: spi: Initial driver support for SCI B SPI on Renesas RA
Add SCI B SPI driver support for Renesas RA

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Terry Geng
cf3839f5ad drivers: spi: spi_pico_pio: Free sm resources when reconfiguring
When SPI spec is reconfigured, avoid reallocating another sm and properly
free the loaded sm programs before attempting to load new programs.

Fix #94416.

Signed-off-by: Terry Geng <terry@terriex.com>
2025-11-13 20:32:41 -05:00
Michael Smorto
20f6d716a3 drivers: video Add Himax HM0360 camera sensor driver
Adds support for the HM0360 camera.

Signed-off-by: Michael Smorto <CyberMerln@gmail.com>
2025-11-13 20:32:26 -05:00
Sanjay Vallimanalan
9c62d77e99 dts: arm: ti: mspm0: g: Add TRNG node for MSPM0 G series
Add a support for TRNG node for true random number generation.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
2025-11-13 20:31:46 -05:00
Sanjay Vallimanalan
b804a5accc drivers: entropy: mspm0: Add a support for TI MSPM0 TRNG module
TI MSPM0 has a TRNG module to generate truly random bits. Add a support
for TI MSPM0 TRNG module.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
2025-11-13 20:31:46 -05:00
Sanjay Vallimanalan
b34efddb8c dts: bindings: rng: Add bindings for TI MSPM0 TRNG Module
Add bindings for TI MSPM0 TRNG Module.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
2025-11-13 20:31:46 -05:00
Bindu S
e418352112 dts: x86: intel: Added dts changes for spi to support dma for RPL
Added dts changes to support lpss dma for SPI
driver for RPL platform

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-11-13 20:31:31 -05:00
Bindu S
fb954189ee drivers: spi: Added LPSS DMA support for SPI
Enabled intel LPSS DMA interface using dw common to support
usage of internal DMA in LPSS SPI to transfer and
receive data.

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-11-13 20:31:31 -05:00
Tony Han
ee57a95d01 boards: microchip: sam: add CAN to sama7g54_ek dts and yaml file
There's a dual CAN interfce (J17) on sama7g54-ek board.
pin 1~5 siginal: CAN0_H, CAN0_L, GND, CAN1_H, CAN1_L.
The two CAN transceivers are controlled by PIOC15 and PIOC16 GPIOs.
Add CAN to the support list.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:31:14 -05:00
Tony Han
bd15f36928 drivers: can: sam: update the can_sam driver for sama7g5 MCAN
Update the driver (supporting samx7x SOCs) to support sama7g5 MCAN.

Differences lists bellow:
          |           samx7x MCAN           |        sama7g5 MCAN        |
----------|---------------------------------|----------------------------|
CAN core  | the same                        | the same                   |
clock     | peripheral clock with a divider | generic & peripheral clock |
Msg RAM   | address configured by CCFG_CAN0 | in SRAM, configured by SFR |

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:31:14 -05:00
Tony Han
21195f2434 soc: microchip: sam: add clock initialization for sama7g5 MCAN
Initialize MCAN GCLK to 80MHz (divide SYSPLL 400MHz with 5).

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:31:14 -05:00
Tony Han
f2290d1c9c soc: microchip: sam: update MMU for sama7g5 MCAN
When the MCAN is activated in the DT, configure it's register region
with strong ordered, read and write access.
As CANx accesses the lower or upper 64K SRAM is selected by bits in
register 'SFR_CAN_SRAM_SEL', also configure SRAM and SFR region with
strong ordered, read and write access.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:31:14 -05:00
Tony Han
9c43b9d74c dts: microchip: sam: add CAN nodes to sama7g5.dtsi for SAMA7G5 MCAN
The CAN nodes are added to sama7g5.dtsi for SAMA7G5 MCAN.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:31:14 -05:00
Tony Han
3f62a7340a dts: bindings: can: update descriptions for supporting sama7g5 MCAN
Update the descriptions of properties to support sama7g5 MCAN.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:31:14 -05:00
Lukas Woodtli
b2d93b86f4 boards: silabs: Add support for efm32tg_stk3300
Support for the Silabs EFM32TG-STK3300 Starter Kit.

Board features:

* EFM32TG840F32 MCU with 32 kB flash and 4 kB RAM
* Advanced Energy Monitoring
* Real-time, accurate energy and power profiling
* Light, LC and touch sensors
* 8 x 20 LCD
* SEGGER J-Link debugger

Signed-off-by: Lukas Woodtli <woodtli.lukas@gmail.com>
2025-11-13 20:30:55 -05:00
Lukas Woodtli
c53a370c85 soc: Add support for Silabs EFM32TG
* ARM Cortex-M3 processor
* Up to 32 kB Flash and 4 kB RAM memory
* Energy efficient and autonomous peripherals
* Ultra low power Energy Modes
* Fast wake-up

Signed-off-by: Lukas Woodtli <woodtli.lukas@gmail.com>
2025-11-13 20:30:55 -05:00
Tony Han
8876d0ed0c dts: bindings: ethernet-controller: remove unused prop 'max-speed'
The 'max-speed' property in atmel,gmac-common.yaml file is not used,
remove  it.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
3c532c47f0 drivers: net: sam_gmac: add BUILD_ASSERT for checking GMAC_QUEUE_NUM
'GMAC_QUEUE_NUM' is a value of 'num-queues' for the first GMAC
instance getting from the device tree. It is used directly or
indirectly (by GMAC_PRIORITY_QUEUE_NUM) for defining and
initializing 'struct eth_sam_dev_data' with a value from Kconfig
(GMAC_ACTIVE_PRIORITY_QUEUE_NUM).

As there will be a big change for applying the corresponding
num-queues for each GMAC 'struct eth_sam_dev_data', here just
keep it as is. Adding the BUITD_ASSERT to make sure the array
queue_list[] is large enough for all GMAC instances.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
8880364901 drivers: net: sam_gmac: update random MAC addr for multi inst support
Add variable 'random_mac_addr' for 'zephyr,random-mac-address' from
device tree. Update generate_mac() to get random MAC address for each
GAMC interface with the 'zephyr,random-mac-address' property.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
7ff2f53c95 drivers: net: sam_gmac: deprecate the 'mac-eeprom' option
Deprecate the 'ETH_SAM_GMAC_MAC_I2C_EEPROM' for the 'mac-eeprom' option,
Limite it to be used when there's only one activated GMAC instance.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
8b0f8aaa2c drivers: net: sam_gmac: remove getting max_frame_size from DT
As jumbo frame size is not supported by the networking subsystem, only
max_frame_size 1518 and 1536 can be used. The Frame size 1536 would
allow for packets with a vlan tag, so enable GMAC_NCFGR_MAXFS when
NET_VLAN is configured.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
50b3028279 drivers: net: sam_gmac: remove run once check in eth_iface_init()
To allow every interface be initialized properly when there are more than
one instance, remove the static variable "init_done" which is used to make
the initialize procedure only be done once.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
317c67501e drivers: net: sam_gmac: ref_clk_source for multi instances support
Add variable "ref_clk_source" to get and set the source for the GMAC
reference clock from DT for different GMAC instances.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
62732e57e0 drivers: net: sam_gmac: update PHY connection type for multi instances
Add variable "phy_conn_type" to get and use the phy_connection_type from
DT for different GMAC instances.
Update the judgement on phy_connection_type for multi instances support.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
e61c5c0ed1 drivers: net: sam_gmac: update macros for multi GMAC instances support
Change the driver from support 1 instance to support multi instances.

Changes includes:
 - irq_config()
 - config & data definitions
 - ETH_NET_DEVICE_DT_INST_DEFINE
 - PTP content / init / DEVICE_DEFINE

Limitations:
 - generate_mac() to be updated for supporting multi instances.
 - the configurations in Kconfig.sam_gmac are used for all instances.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
fb77401b5c drivers: net: sam_gmac: add var num_queues to config, update LOG info
Changes includes:
 - add the variable for num_queues to eth_sam_dev_cfg
 - update LOG with dev->name to distinguish different instances

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
6536d0d687 drivers: net: sam_gmac: centralize the lists used for different queues
The lists optimized includes:
 - RX descriptors list
 - TX descriptors list
 - RX buffer accounting list
 - TX buffer accounting list
 - TX frames accounting list

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

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-11-13 23:21:49 +02:00
Ibrahim Abdalkader
a310e57942 llext: Fix ARMv8-M MPU memory region alignment
ARMv8-M and newer ARC MPUs use base/limit addressing with 32-byte
granularity and do not require power-of-two sizing. Only ARMv7-M
and older ARC MPUs have this restriction.

Check CONFIG_MPU_REQUIRES_POWER_OF_TWO_ALIGNMENT (set for ARMv7-M,
older ARC) instead of CONFIG_ARM_MPU to avoid wasting memory on
ARMv8-M systems.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-11-13 23:21:27 +02:00
Cristian Bulacu
4520215968 net: l2: openthread: border_router: Delete multicast route by iface
This commit makes use of #98464 and deletes a multicast route by
specified interface.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-13 23:21:04 +02:00
Daniel Leung
e63f9fb6de tests: kernel/smp: move switching stress test into its own group
This moves the switching stress test into its own group simply
to signify that there is a group for stress testing. And also
rename torture to stress.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-13 23:20:54 +02:00
Ederson de Souza
d6071319b5 kernel/userspace: Dynamically allocate privileged stack after user stack
When ARM CONFIG_BUILTIN_STACK_GUARD=y, it expects that the privileged
stack has a higher memory address than that of the normal user stack.
However, dynamically allocated stacks had the other way round:
privileged stack had a lower memory address.

This was probably not caught before because relevant tests, such as
`kernel.threads.dynamic_thread.stack.pool.alloc.user` run with no
hardware stack protection. If one were to test it on HW that has stack
protection, such as frdm_mcxn947 with CONFIG_HW_STACK_PROTECTION=y, they
would see it failing.

This patch naively assumes that ARC and RISC-V PMP will be happy with
the shuffling of user and privileged stack positions.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-11-13 23:20:45 +02:00
Ederson de Souza
1a52071392 samples/subsys/llext/edk: Add libc partition to extension memory domain
On platforms where `Z_LIBC_PARTITION_EXISTS` is true - such as Cortex-M
- it is necessary to add this partition to the memory domains of
userspace extensions, otherwise they get memory faults.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-11-13 23:20:34 +02:00
Ederson de Souza
5755081bb3 samples/subsys/llext/edk: Remove astray debug printk
It somehow got upstream...

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-11-13 23:20:34 +02:00
Raffael Rostagno
75395b86dc drivers: shdc: esp32: Remove unnecessary timeout
Remove unnecessary timeout. Queue event fetch already has
timeout control.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-11-13 23:20:08 +02:00
Raffael Rostagno
97fb97b047 drivers: sdhc: esp32: Remove pinctrl as required
Adjust driver so that pinctrl property is not required in device
tree. Remove card init functions from driver init, as set_io()
function is meant to power cycle the card (if pin is used) and
initialize card clock and bit width. If card is not inserted
while driver init runs, init() will fail unreasonably, so
card init should take place at set_io() calls.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-11-13 23:20:08 +02:00
Raffael Rostagno
12862fdd6c bindings: sdhc: esp32: Remove pinctrl as required
For ESP32 devices, not all boards are required to configure pinctrl
for signals like Chip Detect (CD) and Write Protect (WP). Remove
pinctrl property as mandatory.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-11-13 23:20:08 +02:00
Declan Snyder
b5de9fe252 tests: spi_loopback: Skip tests properly
There is a couple test cases which for whatever reason does not work on
certain platform drivers, and they are being hardcoded to be skipped in
the test if using those drivers. This decision was made a long time ago,
and I do not have great insight into why, but regardless, the proper way
to skip a ztest case is to call the proper ztest skip API instead of
just returning, because it should be marked as skipped, not passed.
Also, the problem for these couple drivers is clearly the cases where rx
is bigger than tx, so add the same skip for the other new case where rx
is bigger than tx, the same_buf_cmd case.

After analyzing the DSPI driver a bit, I have a suspicion that this is
just a software driver limitation, that could be overcome to function
properly, and not a hardware limitation. But this commit is just to skip
the test properly that is already being skipped, not fix the underlying
issues with these drivers.

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

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-13 23:19:38 +02:00
Appana Durga Kedareswara rao
639739169e twister: handlers: pass platinfo to serialPTY reorder pre-script execution
This commit makes two key improvements to the DeviceHandler:

1. Pass TWISTER_PLATFORM environment variable to serial PTY scripts
   - Enables serial PTY scripts to access platform-specific configuration
   - The platform name is now available via TWISTER_PLATFORM env variable
   - Allows board-specific serial port and baudrate configuration in
     external serial forwarding scripts

2. Reorder pre-script execution before serial PTY initialization
   - Moved pre-script execution before serial PTY setup to avoid conflicts
   - Prevents race conditions when pre-script performs board power cycling
     or reset operations that might interfere with active serial
     connections

These changes enable more flexible hardware testing scenarios where:
- Serial configuration can be automatically selected based on board type
- Board initialization (power cycling, FPGA programming) completes
  before establishing serial connections

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-11-13 23:19:28 +02:00
Jordan Yates
9251f9d814 doc: llext: document symbol groups
Add documentation for LLEXT symbol groups and the default groups created
by Zephyr.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 23:19:19 +02:00
Jordan Yates
07a791448a llext: add helper symbol for default groups
Add a symbol that controls whether the default set of LLEXT groups are
exported from the application.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 23:19:19 +02:00
Jordan Yates
6582969aa9 device: transition device exports to group symbols
Transition the Zephyr device exports to the new group symbol
abstraction.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 23:19:19 +02:00
Jordan Yates
17611885b2 llext: optional libc symbol exports
Make the export of standard library symbols optional.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 23:19:19 +02:00
Jordan Yates
5e5ac8e078 llext: optional syscall symbol exports
Make the export of syscall symbols optional.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 23:19:19 +02:00
Jordan Yates
47656f1a75 llext: symbol: custom groups
Allow symbols to be placed in custom groups, which can be included or
excluded from the build with a common Kconfig symbol.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 23:19:19 +02:00
Jordan Yates
5561d8d302 llext: symbol: group exported symbols
Group exported symbols together by subsystem/library. Groups can then
be enabled or disabled together through the existance of a Kconfig
symbol named `CONFIG_LLEXT_EXPORT_SYMBOL_GROUP_{GROUP_NAME}`.

All symbols declared with the standard `EXPORT_SYMBOL` and
`EXPORT_SYMBOL_NAMED` macros fall into the `DEFAULT` group.

Signed-off-by: Jordan Yates <jordan@embeint.com>

DEFAULT

DEFAULT
2025-11-13 23:19:19 +02:00
Pieter De Gendt
e9efa7260e include: zephyr: drivers: spi: Add SPI_DT_INST_IODEV_DEFINE
Add helper macro for SPI_DT_IODEV_DEFINE with an instance variant.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-13 23:19:06 +02:00
Pieter De Gendt
6c3048dfa6 include: zephyr: drivers: i3c: Add I3C_DT_INST_IODEV_DEFINE
Add helper macro for I3C_DT_IODEV_DEFINE with an instance variant.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-13 23:19:06 +02:00
Pieter De Gendt
5cbc79f43c include: zephyr: drivers: i2c: Add I2C_DT_INST_IODEV_DEFINE
Add helper macro for I2C_DT_IODEV_DEFINE with an instance variant.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-13 23:19:06 +02:00
Jeppe Odgaard
ab22130b6a sys: util: remove extra call in WAIT_FOR
WAIT_FOR calls `expr` after it has evaluated to true.

Store `expr` in a variable and return it instead to prevent the additional
`expr` call.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-11-13 23:18:54 +02:00
Jeppe Odgaard
ba72ff027c tests: sys_util: test wait_for number of expr calls
Test WAIT_FOR calls `expr` the expected number of times.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-11-13 23:18:54 +02:00
Sudan Landge
3cd92d2003 tests: fix test failure for smp targets
The test is expected to run on single cpu so set max number of cpus to 1
so that it doesn't fail smp targets like fvp_baser_aemv8r in ci.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-11-13 23:18:30 +02:00
Mathieu Choplain
947749abfc linker: llext: move #ifdef CONFIG_LLEXT guard inside common file
LLEXT-related sections should only be added to the linker script when the
associated CONFIG_LLEXT is enabled. This has been done by checking for this
Kconfig symbol in every linker file, but this creates a lot of boilerplate
for no good reason.

Use the much simpler solution: move the check inside the common linker file
and remove existing "#ifdef CONFIG_LLEXT" checks in all linker files.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-13 23:17:37 +02:00
Mathieu Choplain
bfc69ad935 soc: st: stm32l4: always unlock IRQs in pm_state_exit_post_ops
Interrupts would only be unlocked when resuming from suspend-to-idle.
Even though other states *should* never be entered, make sure interrupts
are unlocked anyways to conform with the expectations of the PM framework.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-13 23:17:27 +02:00
Ibrahim Abdalkader
93ecfe492f boards: arduino: portenta_h7: Add JLink runner.
Adds JLink runner configuration for both Cortex-M7 and Cortex-M4 cores
on the Arduino Portenta H7.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-11-13 23:17:19 +02:00
Seppo Takalo
c309869305 net: l2: ppp: Allow PPP to transtition ESTABLISH->DEAD
When remote peer have closed the PPP link normally, the
PPP stack on Zephyr side switches back to ESTABLISH phase
to be ready for next handshake.

When calling net_if_down() on the interface, it should not
try to initiate LCP link termination, but instead go directly
to DEAD phase.

See https://datatracker.ietf.org/doc/html/rfc1661#section-3.2

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-11-13 23:17:10 +02:00
Tim Lin
60f82e6456 it8xxx2: add support for putting switch.S in ram code section
Get better performance from executing z_riscv_switch() function.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-11-13 23:17:00 +02:00
Fabio Baltieri
00966b857e input: keymap: add a MATRIX_CODE macro
Add a MATRIX_CODE macro to extract the key code from a key value created
in DT with MATRIX_KEY. This can be handy for code other than input_keymap.c

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-11-13 23:16:52 +02:00
Tim Lin
6a340f6ef0 drivers/espi: it8xxx2: Add a config to share h2ram pool space
The h2ram is an independent 4KB section. With default settings of
CONFIG_ESPI_PERIPHERAL_HOST_CMD_PARAM_PORT_NUM and
CONFIG_ESPI_PERIPHERAL_ACPI_SHM_REGION_PORT_NUM,
There is a 2KB gap that is unused. This change was made to make
unused gap can be reused by other modules to reduce overall RAM
usage.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-11-13 23:16:43 +02:00
Qiankun Li
3b2b513be3 drivers: wifi: nxp: Raise Wi-Fi mgmt events for soft AP start/stop.
Enhanced the shim driver to raise Wi-Fi management events
when starting or stopping SoftAP, specifically in cases
where CONFIG_WIFI_NM_HOSTAPD_AP is disabled.

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-11-13 23:16:25 +02:00
Jamie McCrae
2b52c91c06 cmake: modules: version: Check that required fields are present
Will throw an error showing what the issue with the VERSION file
is if a required field is missing

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-13 23:16:02 +02:00
Torsten Rasmussen
f26d245914 sysbuild: exclude APPLICATION_SOURCE_DIR from sysbuild image cache file
APPLICATION_SOURCE_DIR is image specific and the value inside sysbuild
points to sysbuild itself.

This gives wrong results when a sample uses
`zephyr_get(APPLICATION_SOURCE_DIR)` as it will fetch the sysbuild value
and not its own value.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-11-13 23:15:45 +02:00
Alexander Svensen
c4ab06b9c4 tests: bluetooth: tester: Add ASE ID when configuring codec
- We want to add the ASE ID to a stream as early as possible
  to make sure the events coming from BTTester to Auto-PTS
  contains the correct information.
- Previously the events that came before stream_configured
  would contain ASE ID 0, regardless of actual value.

Signed-off-by: Alexander Svensen <alexander.svensen@nordicsemi.no>
2025-11-13 23:15:36 +02:00
Carles Cufi
0d18b50009 include: sys: atomic: Check for ATOMIC_OPERATIONS_BUILTIN
The code today relied on ATOMIC_OPERATIONS_BUILTIN being the default
option if the other alternatives (_C and _ARCH) were not enabled.
Instead, explicitly check for it to avoid confusion when browsing the
code and to ensure that the user can always match a particular Kconfig
option with the #ifdeffery in the header file.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-11-13 23:15:27 +02:00
Carles Cufi
689ba58b10 atomic: Select missing ATOMIC_OPERATIONS_BUILTIN
The ATOMIC_OPERATIONS_* Kconfig option is not a choice, so it does not
have a default. However, the file that determines which actual atomic
operations backend will be used does default to
ATOMIC_OPERATIONS_BUILTIN:

3e537db71e/include/zephyr/sys/atomic.h (L26-L41)

Since we want to ensure that all SoCs intentionally select the atomic
operations backend they want to use, select it at the SoC level for all
SoCs, as well as for the Cortex-M arch when the Armv8-M baseline profile
is selected.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-11-13 23:15:27 +02:00
Alberto Escolar Piedras
07b2a098ef manifest: Update bsim to version v3.0
Main changes since v2.7
* Phy-device v2.1 API introduced
* Phy updated to use internally this v2.1 API, so channel and modem IF
  are updated accordingly

Note: Like before, bsim remains fully backwards compatible

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-11-13 23:15:17 +02:00
Patryk Koscik
8b20699475 west: boards: remove arch format option
HWMv2 boards do not support this field

Signed-off-by: Patryk Koscik <pkoscik@antmicro.com>
2025-11-13 23:14:53 +02:00
Luca Burelli
56c3fd8744 fs: ext2: (trivial) only enable logging config when ext2 is enabled
Avoid polluting every build that includes this Kconfig with EXT2
logging config unless the ext2 filesystem is actually enabled.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-11-13 23:14:44 +02:00
Szymon Janc
d53a1659ef Bluetooth: ISO: Move iso dereference after assertion
Make sure assertion is true before dereferencing chan->iso. In extreme
case compiler could skip assert check (asume it is always false) if address
was already dereferenced.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-11-13 23:14:34 +02:00
Daniel Leung
c7ec8b9353 tests: kernel/pipe_api: skip zero size test if KERNEL_COHERENCE
Zero size buffer pipes are not currently supported if memory is
not coherent between CPUs (CONFIG_KERNEL_COHERENCE=y) due to
possibility of buffers being in incoherent memory. So skip
the zero size test for now.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-13 23:14:20 +02:00
Albort Xue
d9196c4714 tests: pm: power_domain: add ISR safe power management test coverage
Add a new test configuration to verify power domain functionality with
ISR safe power management enabled. The test conditionally applies
PM_DEVICE_ISR_SAFE flags to test devices based on the new
CONFIG_TEST_PM_DEVICE_ISR_SAFE configuration option.

Enhance existing test assertions to verify the PD_CLAIMED flag is
properly set when devices claim power domains and cleared when they
release them, ensuring correct power domain reference counting in
both regular and ISR safe contexts.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2025-11-13 23:13:57 +02:00
Albort Xue
3781f6bf9f pm: device_runtime: fix PD_CLAIMED flag logic in ISR_SAFE context
Fix the power domain claiming condition which was inverted, causing
domains to be claimed when they were already claimed instead of when
they weren't. Add null check for power domain before accessing its
properties to prevent potential null pointer dereference. Also ensure
the PD_CLAIMED flag is properly cleared when putting the power domain.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2025-11-13 23:13:57 +02:00
Gerhard Jörges
b7d2355dbf west: completion: change skip-rebuild to no-rebuild
the west flash --skip-rebuild option was changed to --no-rebuild in
de6b5dba60

Signed-off-by: Gerhard Jörges <joerges@metratec.com>
2025-11-13 23:13:48 +02:00
Vinicius Carvalho
6efc612e8d drivers: adc: nxp: adc reference and differential channels
Fixed regression related to adc reference and adjusted to be
compatible with NXP K and MCX series.

Signed-off-by: Vinicius Carvalho <carvalho-vinicius@outlook.com>
2025-11-13 23:13:36 +02:00
Jordan Yates
71e242556d drivers: nrf_wifi: move Kconfig validation to Kconfig
Move compile time validation of Kconfig symbols into the symbols
themselves.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 23:12:40 +02:00
Jordan Yates
7fe7beb183 drivers: nrf_wifi: buffers from Kconfig
Remove C code overrides of RX buffer counts and sizes when the TX path
is disabled. Move the reduced resource requirements into the Kconfig
default values. Default RX buffer sizes are not changed by the commit.

Fixes #92356

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 23:12:40 +02:00
Valerio Setti
032339e5fa random: add description for CONFIG_CSPRNG_ENABLED
Add a short description for CONFIG_CSPRNG_ENABLED to explain its purpose.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-11-13 23:12:29 +02:00
Valerio Setti
263d7c1dbc modules: mbedtls: use CONFIG_CSPRNG_NEEDED to simplify CSPRNG enablement
Use the newly created CONFIG_CSPRNG_NEEDED to simplify the enablement of
CSPRNG for the PSA Crypto Core.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-11-13 23:12:29 +02:00
Valerio Setti
ce4319a2fe random: introduce CONFIG_CSPRNG_NEEDED
Its goal is to use it as the "connection point" between what the hardware
support and what the application needs. All the application/module/subsys
need to do is to set this new Kconfig and then check the "return" value
on CONFIG_CSPRNG_ENABLED: if the latter is set then the entropy driver was
enabled; if not something is preventing the driver from being used.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-11-13 23:12:29 +02:00
Valerio Setti
2cb58f2332 random: improve description of CONFIG_ENTROPY_NODE_ENABLED
Replace the current description with a new one which better clarifies the
scope of this Kconfig.

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

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

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-11-13 23:12:29 +02:00
Raffael Rostagno
4f3d0e49a1 samples: openthread: shell: Remove unnecessary file
Remove unnecessary file. Node is already enabled on board's DTS.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-11-13 23:12:14 +02:00
Raffael Rostagno
9ca6920d98 drivers: ieee802154: esp32: Todo's review
Review todo items to make sure points are solved.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-11-13 23:12:14 +02:00
Raffael Rostagno
7d46b82568 drivers: ieee802154: esp32: Fix start/stop API
Fix start/stop driver API implementation. OT stack expects these
functions to only put IEEE802.15.4 in sleep mode and back in RX
mode when calling start. Fixes ifconfig down/up cycling as well
as nodes staying in leader role and not forming a network.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-11-13 23:12:14 +02:00
Jukka Rissanen
820cd34dbb net: Replace Posix eventfd by zvfs_eventfd API
No need to use Posix eventfd API in core network code as zvfs_eventfd
is compatible with it and we can now avoid using Posix headers
unnecessarily.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-13 23:12:04 +02:00
Derek Snell
6044d455e4 boards: nxp: mimxrt1180_evk: fix directory for Jlink script
Fixes path to the script file so the script is used with "west debug".

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-11-13 23:11:49 +02:00
Benjamin Cabé
4a1d4b0c19 twister: harness: display_capture: drop requirements.txt
This requirements file can be confusing and will only get stale over
time. Drop it since these dependencies are actually captured in
scripts/requirements-run-test.txt

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-13 23:11:32 +02:00
Benjamin Cabé
dc0b225919 twister: harness: display_capture: remove duplicate code
Introduce a helper function to check if an exception is expected in
headless environment.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-13 23:11:32 +02:00
Benjamin Cabé
4b67237aaa twister: harness: display_capture: remove unnecessary "noqa: B007"
Properly ignore the unused loop variable

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-13 23:11:32 +02:00
Benjamin Cabé
53649a4f76 twister: harness: display_capture: remove unused fields from UVCCamera
This removes a few unused fields from the UVCCamera class.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-13 23:11:32 +02:00
Declan Snyder
6c2410cb90 tests: spi_loopback: Fix race condition with CS testing
There is a race condition in this method of CS behavior verification,
where multiple CS signal transitions can happen during one interrupt
processing, thereby only getting one callback and marking the trigger
count as being less than what is accurate. At least we can account for
most real situations where this happens by also looking at the CS pin
logic level and comparing to how it started, to potentially realize that
there was another edge that happened when it either should or shouldn't
have happened.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-11-13 23:11:23 +02:00
Declan Snyder
2f51f06d6f drivers: flexcomm spi: Fix 0 length xfer in dma path
If rx and tx length are both 0 in dma path then do nothing.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-11-13 23:11:23 +02:00
Jiafei Pan
313d12f272 usb: fix build warning for printing format
Use zu% format for size_t type.
Use d% format for int type.
Use u% format for uint32_t type.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Jony Zhang <jony.zhang@nxp.com>
2025-11-13 23:11:09 +02:00
Yong Cong Sin
6847421188 shell: backends: select RING_BUFFER_LARGE when necessary
Depending on the ring buffer configuration, users may encounter
the "size too big" assertion in runtime. Let's enable the
RING_BUFFER_LARGE when we know that it is required.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2025-11-13 23:10:37 +02:00
Yong Cong Sin
aff6123cfd ring_buffer: update assert message when size too big
Make the runtime assertion message more obvious on why it's
failing.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2025-11-13 23:10:37 +02:00
Bjarki Arge Andreasen
2f99ebe9b0 shell: backends: uart: implement pm_device_runtime
The UART device used by the backend needs to be gotten before use,
and put after. In limited cases, device drivers call
pm_device_runtime_get() as part of the call to uart_rx_enable(),
this is not the case for polling, nor interrupt driven API calls
for most if not all drivers, nor is that expected.

Implement pm_device_runtime calls in shell uart backend similar to
the logging uart backend to support all uart drivers in all
configurations.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-11-13 23:10:27 +02:00
Furkan Akkiz
2385641f12 manifest: Update hal_adi revision
Update hal_adi revision to get HAL fix commits. One of the fix commits
addresses an issue where the MAX32650 system clock frequency value was
not set correctly, which could lead to improper operation of
time-dependent functions.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-11-13 23:10:14 +02:00
Jamie McCrae
6be751a2ed cmake: Remove HWMv1 checks
Removes checks for HWMv1 as the code for HWMv1 was removed from
Zephyr some time ago and these checks are not needed

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-13 23:09:55 +02:00
Jamie McCrae
9812e073bb modules: hal_nxp: Remove HWMv1 checks
Removes outdated checks that have not been used for a long time

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-13 23:09:55 +02:00
Jamie McCrae
d884a097cd scripts: utils: Remove hwmv1 migration script
HWMv2 was introduced in v3.7, and HWMv1 support was removed in v4.2
so this script is no longer needed

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-13 23:09:55 +02:00
Jamie McCrae
e341b0e481 sysbuild: bootloader: Remove deprecated Kconfig
Removes the previously deprecated
SB_CONFIG_MCUBOOT_MODE_SWAP_WITHOUT_SCRATCH sysbuild Kconfig

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-13 23:09:55 +02:00
Jukka Rissanen
2c0cf4ac3f net: midi2: Do not use poll from posix
As midi2 is provided by networking subsystem it should not
depend on any features provided by Posix. Convert Posix poll
API calls to zsock poll ones. There is no functionality changes,
only naming changes.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-13 23:09:47 +02:00
Abderrahmane JARMOUNI
c294fc5928 include: zephyr: fix Doxygen \retval command usage
Fix how Doxygen special commands \retval & \return are used in doc text.
\retval: Starts a description for a function's return value with name
<return value>, which needs to be attached and to not be a word that is
part of the sentence, and each return val should have its own \retval.
Otherwise \retval is replaced with \return.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-13 23:09:24 +02:00
Abderrahmane JARMOUNI
78595121ac include: fs: fix Doxygen \retval command usage
Fix how Doxygen special commands \retval & \return are used in doc text.
\retval: Starts a description for a function's return value with name
<return value>, which needs to be attached and to not be a word that is
part of the sentence, and each return val should have its own \retval.
Otherwise \retval is replaced with \return.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-13 23:09:24 +02:00
Abderrahmane JARMOUNI
55dd265032 include: kernel: fix Doxygen \retval command usage
Fix how Doxygen special commands \retval & \return are used in doc text.
\retval: Starts a description for a function's return value with name
<return value>, which needs to be attached and to not a word that is
part of the sentence, and each return val should have its own \retval.
Otherwise \retval is replaced with \return.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-13 23:09:24 +02:00
Abderrahmane JARMOUNI
7c79f4bc5f include: sys: fix Doxygen \retval command usage
Fix how Doxygen special commands \retval & \return are used in doc text.
\retval: Starts a description for a function's return value with name
<return value>, which needs to be attached and to not a word that is
part of the sentence, and each return val should have its own \retval.
Otherwise \retval is replaced with \return.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-13 23:09:24 +02:00
Abderrahmane JARMOUNI
cd3312c91f include: net: fix Doxygen \retval command usage
Fix how Doxygen special commands \retval & \return are used in doc text.
\retval: Starts a description for a function's return value with name
<return value>, which needs to be attached and to not be a word that is
part of the sentence, and each return val should have its own \retval.
Otherwise \retval is replaced with \return.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-13 23:09:24 +02:00
Abderrahmane JARMOUNI
c98c068c4c include: bluetooth: fix Doxygen \retval command usage
Fix how Doxygen special commands \retval & \return are used in doc text.
\retval: Starts a description for a function's return value with name
<return value>, which needs to be attached and to not be a word that is
part of the sentence, and each return val should have its own \retval.
Otherwise \retval is replaced with \return.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-13 23:09:24 +02:00
Abderrahmane JARMOUNI
3d78a76650 include: drivers: fix Doxygen \retval command usage
Fix how Doxygen special commands \retval & \return are used in doc text.
\retval: Starts a description for a function's return value with name
<return value>, which needs to be attached and to not be a word that is
part of the sentence, and each return val should have its own \retval.
Otherwise \retval is replaced with \return.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-13 23:09:24 +02:00
Fin Maaß
5805685c32 Kconfig: make use of configdefault
use configdefault, when we want to change
the default of a Kconfig option.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-13 11:20:20 -05:00
Fin Maaß
1f3b5570cb boards: remove redundant enabling of drivers
the drivers are already enabled by default
when they are activated in the device tree.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-13 11:20:20 -05:00
Fin Maaß
5e3cbb718c disk: remove redundant DISK_DRIVER_SDMMC
DISK_DRIVER_SDMMC is already by default y,
if it is enabled in the dt, so we shouldn't overwrite
that.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-13 11:20:20 -05:00
Fin Maaß
a351749711 boards: mdio: remove mdio enable from defconfig files
MDIO will be enabled by default by the ethernet phy, when
needed, we don't need to enable it explicitly in the defconfig files.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-13 11:20:20 -05:00
Johan Hedberg
e7c0676cee release: Update to 4.3.99
Set the version to 4.3.99

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-11-13 11:19:33 -05:00
Chris Friedt
3568e1b6d5 release: Zephyr v4.3.0
Set the version to v4.3.0

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-11-13 17:35:08 +02:00
Chris Friedt
ab4b3553c1 doc: release: 4.3: finalize release notes and migration guide
Remove working draft status from the 4.3.0 release notes and migration
guide.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-13 17:35:08 +02:00
Chris Friedt
1d1dace9a2 doc: release: Add v4.3.0 to the list of supported releases
Add v4.3.0 to the list of supported releases.

Since v4.1.0 is becoming EOL, bump TOC ranges to no longer list v4.1.0
and add (draft) v4.4.0.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-13 17:35:08 +02:00
Pieter De Gendt
6d37434699 LICENSES: Add note to README file
The files in the LICENSES directory are for the reuse tool, and not the
licenses of the Zephyr repository itself.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-13 17:34:51 +02:00
Robert Lubos
77d461c4c0 net: tcp: Reduce the log level for active close
The log level was elevated by mistake as a leftover from debugging,
should remain DBG.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-13 15:34:20 +02:00
Gerard Marull-Paretas
6ed584fc78 doc: extensions: domain: fix inventory on incremental builds
Generated objects.inv would not contain e.g. "zephyr:board" entry on
incremental builds, making it impossible to use Intersphinx on other
projects when rebuilding the Zephyr docset.

It can be verified by inspecting inventory like this:

```python
from sphinx.util.inventory import InventoryFile
InventoryFile.loads(open("objects.inv", "rb").read(), uri="")
inv.data.keys()
```

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-11-13 15:34:10 +02:00
Tomi Fontanilles
8b032af664 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>
2025-11-13 13:24:01 +02:00
Johan Hedberg
f1cd32ec42 doc: migration-guide-4.3: Remove empty Architectures section
There's no content in this section, so just remove it.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-11-13 13:23:50 +02:00
Benjamin Cabé
2a22823fe9 doc: releases: cosmetic/typo fixes to 4.3 release notes & migration guide
Fixes a few minor typos / copy-paste errors / indentation / etc.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-13 13:23:50 +02:00
Fin Maaß
037af5f324 doc: release: mention default-speeds dt prop
mention default-speeds dt prop

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-13 13:23:50 +02:00
Fin Maaß
d13c4d258e doc: migration-guide: move ethernet
move ethernet to the right place.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-13 13:23:50 +02:00
Qiang Zhao
9ef73c88f6 test: ram_context_for_isr: exclude imx95 m7
i.MX95 M7 supports multi-level interrupt.
Current ram_context_for_isr test does not cover multi-level interrupt.
So exclude i.MX95 M7.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-11-13 12:02:36 +02:00
Daniel Leung
81f5b781aa xtensa: fix Python script formatting via ruff
Uses ruff to format the gen_* python scripts.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-13 12:02:08 +02:00
Daniel Leung
36f7792ea1 xtensa: fix ruff issues in Python scripts
Fix the issues found by ruff.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-13 12:02:08 +02:00
Badr Bacem KAABIA
0719c9eca2 crypto: mbedtls_shim: Fix concurrency and deadlock issues
- **Fix session mutex handling:** Ensure the `mtls_sessions_lock` is
    always released in `mtls_get_unused_session_index` on failure
    to prevent deadlocks.
- **Protect `in_use` flag:** Added mutex protection when setting
    `in_use = false` in free functions.
- **Cleanup on setup failure:** Added calls to `mbedtls_*_free()`
    in `mtls_session_setup()` when key initialization fails.
- **Free logic fix:** Corrected `if/else` structure in
    `mtls_session_free()` to ensure the correct context is freed.

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-13 12:01:44 +02:00
Badr Bacem KAABIA
577f60dcd7 crypto: mbedtls_shim: Remove incorrect out_len calculation in AEAD decrypt
Remove erroneous calculation of `apkt->pkt->out_len` in
`mtls_ccm_decrypt_auth` and `mtls_gcm_decrypt_auth`.
The output length should be handled by the caller or the
AEAD decryption process itself.

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-13 12:01:44 +02:00
Badr Bacem KAABIA
01b0280bad crypto: mbedtls_shim: Fix typos
Corrected "encrypt" log messages to "decrypt."

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-13 12:01:44 +02:00
Ofir Shemesh
b933bf5e08 net: dhcpv4: fix incorrect RFC2131 section reference to 4.4.1
Corrected the RFC2131 section reference in DHCPv4 comments and help text.
The random delay before sending the initial DHCPDISCOVER message is
defined in Section 4.4.1 of RFC2131, not in 4.1.1 as previously stated.

Signed-off-by: Ofir Shemesh <ofirshemesh777@gmail.com>
2025-11-13 12:01:31 +02:00
Robert Lubos
9e6256e853 net: iface: Prevent iface/TCP mutexes deadlock
In rare occasions iface and TCP mutexes could cause a deadlock. As
notifying the interface readiness takes place just before the iface
mutex is released, it should be not harm to release it just before the
TCP is notified about interface going down to avoid the deadlock.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-12 19:00:20 -05:00
Robert Lubos
ba6387fcd6 net: tcp: Close the connection unconditionally on forced close
The current approach was buggy, for example the TCP context could be
unrefed twice in case of forced close. Or in case of a race, when the
application closed the socket first, the TCP context wouldn't be
dereferenced at all.

Calling the tcp_conn_close() unconditionally in case of forced close
solves all those issues.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-12 19:00:20 -05:00
Robert Lubos
7fe33a5d5a net: tcp: Fix error reporting on listening socket on iface down
A listening TCP context has no active connection therefore it has no a
second ref from the TCP stack. Thereby, when shutting down connections
when interface goes down, net_tcp_put() should not be called on a
listening socket to release the ref on the TCP stack behalf.

Instead, report the error via the registered accept_cb callback no
notify the application about the error, which should then close the
socket and release the associated TCP context.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-12 19:00:20 -05:00
Chris Friedt
c9eba65681 doc: kernel: timeutil: remove note about 64-bitness
Remove the note about time_t being 64-bit in Zephyr, since that is
generally not accurate and depends on the configuration of the C library.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-12 18:59:33 -05:00
Jukka Rissanen
25ab312dd7 doc: release-notes: Add wifi information to 4.3
Add information about native wifi stack changes in 4.3.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-12 18:58:51 -05:00
Marek Slowinski
9679395099 tests: drivers: memc: ram: Fix build error on hifive_unmatched
Fix 'RAM_SIZE_SRAM' undeclared error in function 'test_ram_test_ram0'.

Signed-off-by: Marek Slowinski <mslowinski@antmicro.com>
2025-11-12 17:57:48 +02:00
Yves Wang
4f2f391fc8 doc: contribute: Fixed missing code block new line
dts-linter command was not correctly rendered in doc site.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-11-12 09:18:39 -05:00
Laurentiu Mihalcea
6a0edac6fb doc: releases: add v4.3 release notes for firmware subsystem
Add v4.3 release notes for the firmware subsystem.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-11-12 09:09:29 -05:00
Flavio Ceolin
8757978f68 doc: release/4.3: CVE-2025-9408 left embargo
Disclose information about CVE that left embargo.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-11-12 09:09:11 -05:00
Flavio Ceolin
b886f82cad doc: security: Disclose CVE-2025-9408
Disclose information about published CVE.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-11-12 09:09:11 -05:00
Benjamin Cabé
b8bbd5047d MAINTAINERS: add instrumentation documentation path
Add path to Instrumentation documentation to the corresponding area.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-12 09:08:45 -05:00
Benjamin Cabé
5d5a907648 doc: releases: update link to instrumentation subsystem documentation
Documentation has been added for the instrumentation subsystem, link to
it in the Zephyr 4.3 release highlights instead of code sample.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-12 09:08:45 -05:00
Benjamin Cabé
dba7304c98 doc: instrumentation: add documentation for the instrumentation subsystem
Add documentation for the instrumentation subsystem as this was missing
from the initial contribution.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-12 09:08:45 -05:00
Robert Lubos
efef1f54dc doc: release-notes-4.3: Update release notes for networking
Update release notes for 4.3.0 release with networking subsystem
changes.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-12 09:06:18 -05:00
Emil Dahl Juhl
598d03c404 dts: arm: st: n6: fixup adc2 missing properties
The added stm32-adc properties in c21cdd8569 ("dts: bindings: adc:
stm32: add new properties to simplify the driver") were missing from adc2
within the stm32n6.dtsi.

Since adc1 and adc2 are almost identical, just copy the missing properties
from adc1 which was fixed up as part of 5f0c63ea35 ("dts: arm: st: fill
out adc nodes with the new properties").

This fixes compilation when using adc2:

```
devicetree error: 'st,adc-internal-regulator' is marked as required in
'properties:' in [...]/zephyr/dts/bindings/adc/st,stm32n6-adc.yaml, but
does not appear in <Node /soc/adc@50022100 in
[...]/zephyr/dts/arm/st/n6/stm32n6.dtsi:456>
```

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-11-12 09:01:53 -05:00
Valerio Setti
e0fdb87929 manifest: tf-m: align Mbed TLS header files to v3.6.5
Update manifest to align the copy of Mbed TLS header files which lives
in the TF-M repository to what's in Mbed TLS release v3.6.5.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-11-12 09:01:43 -05:00
Anas Nashif
e455e6a39b modbus: fix spdx license identifier
Fix APACHE-2.0 -> Apache 2.0

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-12 14:38:32 +02:00
Emil Gydesen
29f097b2c5 tests: Bluetooth: tester: Add info on running with native_sim
Add a few useful commands and information when running the
BT Tester with native_sim, either with or without the
Zephyr controller.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-12 14:38:23 +02:00
Robert Lubos
3e537db71e net: lwm2m: Fix SenML CBOR resource instance encoding
Consecutive resource instance name should be encoded regardless of
whether timestamp is present or not.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-12 12:57:30 +02:00
Stoyan Bogdanov
2a9f21482b tests: sensor: Fix fdc2x1x in build_all test suite
Add missing new line before channel entry for fdc2x1x
which was causing CI fail

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-11-12 11:16:59 +02:00
Flavio Ceolin
240960ebdd doc: release/4.3: Add CVE under embargo
Add information about CVE-2025-12899 under embargo.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-11-12 11:14:23 +02:00
Flavio Ceolin
80f4d8427c doc: vuln: Add CVE under embargo
Add an entry to CVE-2025-12899.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-11-12 11:14:23 +02:00
Flavio Ceolin
3cfa7c22f2 doc: security: Disclose CVE-2025-12890
Disclose information about published CVE.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-11-12 11:14:23 +02:00
Chris Friedt
13daf245a8 tests: drivers: build_all: smbus: add build-all suite for smbus drivers
To ensure that code compiles error (and warning) free, add a build-all
testsuite for smbus drivers.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-11 19:48:27 +02:00
Chris Friedt
e6fcd9e09a drivers: smbus: stm32: add cast to avoid warning
Previously, the function `smbus_stm32_pcall()` implicitly cast
`uint16_t *` to `uint8_t *`. Add an explicit cast to avoid warning.

```shell
..drivers/smbus/smbus_stm32.c:358:32: error: initialization of \
  'uint8_t *' {aka 'unsigned char *'} from incompatible pointer type \
  'uint16_t *' {aka 'short unsigned int *'} \
  [-Werror=incompatible-pointer-types]
  358 |                         .buf = &send_word,
      |                                ^
..drivers/smbus/smbus_stm32.c:358:32: note: (near initialization \
  for 'messages[1].buf')
..drivers/smbus/smbus_stm32.c:363:32: error: initialization of \
  'uint8_t *' {aka 'unsigned char *'} from incompatible pointer type \
  'uint16_t *' {aka 'short unsigned int *'} \
  [-Werror=incompatible-pointer-types]
  363 |                         .buf = recv_word,
      |                                ^~~~~~~~~
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-11 19:48:27 +02:00
Chris Friedt
07d29ec96d drivers: smbus: use correct device initialization priority
The smbus driver initialization priority was previously set to
`KERNEL_INIT_PRIORITY_DEFAULT` (which is 40). However, the default init
priority of devices is typically `KERNEL_INIT_PRIORITY_DEVICE` (which is
50).

Since the stm32 smbus driver uses a reference to the underlying i2c
device, and since this driver was not being built in CI, this led to the
discovery that the smbus driver was initialized too early.

```shell
ERROR: Device initialization priority validation failed, the sequence of \
initialization calls does not match the devicetree dependencies.
ERROR: /smbus1 <smbus_stm32_init> is initialized before its dependency \
/soc/i2c@40005400 <i2c_stm32_init> (POST_KERNEL+1 < POST_KERNEL+4)
```

By setting the initialization priority to `KERNEL_INIT_PRIORITY_DEVICE`,
both smbus1 and i2c1 have their priorities evaluated in the same group,
and it becomes possible to determine relative priorities via phandle
dependency.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-11 19:48:27 +02:00
Sudan Landge
deb8437d48 tests: fix: skip stack unwind on unsupported platforms
Add ARCH_HAS_STACKWALK as a dependency to the stack unwind test to avoid
running it on 64bit Cortex-R platforms, which do not implement the
arch_stack_walk() api.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-11-11 19:47:47 +02:00
Yves Wang
c46454781a ci: compliance: update dts-linter to 0.3.6
Update dts-linter to 0.3.6 and dts-lsp to 0.6.7

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-11-11 19:47:38 +02:00
Yves Wang
14bba90725 ci: compliance: call dts linter safely under windows
subprocess run without shell requires npx shim under windows.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-11-11 19:47:38 +02:00
Yasushi SHOJI
6d6508ae12 scripts: kconfig: gnuconfig: Ignore loc
The commit 125d0daaa1 added 'loc' to the sym.ranges tuples and fixed
kconfiglib.py but guiconfig.py is left untouched. This make menuconfig to
die with:

  Exception in Tkinter callback
  Traceback (most recent call last):
    File "/usr/lib/python3.13/tkinter/__init__.py", line 2077, in __call__
      return self.func(*args)
             ~~~~~~~~~^^^^^^^
    File ".../scripts/kconfig/guiconfig.py", line 917, in _tree_double_click
      return _tree_enter(event)
    File ".../scripts/kconfig/guiconfig.py", line 942, in _tree_enter
      _change_node(node, tree.winfo_toplevel())
      ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File ".../scripts/kconfig/guiconfig.py", line 1125, in _change_node
      s = _set_val_dialog(node, parent)
    File ".../scripts/kconfig/guiconfig.py", line 1219, in _set_val_dialog
      range_info = _range_info(sym)
    File ".../scripts/kconfig/guiconfig.py", line 1339, in _range_info
      for low, high, cond in sym.ranges:
          ^^^^^^^^^^^^^^^
  ValueError: too many values to unpack (expected 3)

This commit ignores the last element in the tuples.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2025-11-11 12:46:17 -05:00
Yasushi SHOJI
090d294ae0 scripts: kconfig: menuconfig: Ignore loc
The commit 125d0daaa1 added 'loc' to the sym.ranges tuples and fixed
kconfiglib.py but menuconfig.py is left untouched. This make menuconfig to
die with:

  Traceback (most recent call last):
    File ".../scripts/kconfig/menuconfig.py", line 3284, in <module>
      _main()
      ~~~~~^^
    File ".../scripts/kconfig/menuconfig.py", line 663, in _main
      menuconfig(standard_kconfig(__doc__))
      ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File ".../scripts/kconfig/menuconfig.py", line 732, in menuconfig
      print(curses.wrapper(_menuconfig))
            ~~~~~~~~~~~~~~^^^^^^^^^^^^^
    File "/usr/lib/python3.13/curses/__init__.py", line 94, in wrapper
      return func(stdscr, *args, **kwds)
    File ".../scripts/kconfig/menuconfig.py", line 872, in _menuconfig
      _change_node(sel_node)
      ~~~~~~~~~~~~^^^^^^^^^^
    File ".../scripts/kconfig/menuconfig.py", line 1586, in _change_node
      s, _range_info(sc))
         ~~~~~~~~~~~^^^^
    File ".../scripts/kconfig/menuconfig.py", line 3119, in _range_info
      for low, high, cond in sym.ranges:
          ^^^^^^^^^^^^^^^
  ValueError: too many values to unpack (expected 3)

This commit ignores the last element in the tuples.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2025-11-11 12:46:17 -05:00
Benjamin Cabé
8fa6a3a214 include: drivers: rtc: add missing doxygen docs
document all the RTC Alarm Time Mask macros

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-11 16:26:53 +02:00
Josuah Demangeon
f955d541a4 MAINTAINERS: USB: add @josuah as collaborator
Add a 3rd reviewer to USB area.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-11-11 14:13:30 +02:00
Geoffroy Jabouley
16840cc6bd MAINTAINERS: update hal_tdk maintainers
Add rbuisson-invn and gjabouley-invn as maintainers for hal_tdk.

Signed-off-by: Geoffroy Jabouley <geoffroy.jabouley@tdk.com>
2025-11-11 14:13:21 +02:00
Erwan Gouriou
df8b43d330 boards: st: stm32h7s78_dk: Document use of ext_flash_app variant
As stated, document use of ext_flash_app variant (build, flash and debug).

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-11-10 09:58:28 -05:00
Erwan Gouriou
da571acff4 boards: st: stm32h573i_dk: Document use of ext_flash_app variant
As stated, document use of ext_flash_app variant (build, flash and debug).

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-11-10 09:58:28 -05:00
Arnaud Pouliquen
1db02b373f MAINTAINERS: Add open-amp and libmetal maintainers
- Add Iulia Prodan as she is already a maintainer of the OpenAMP module.
- Add myself as I am maintainer of the openAMP project.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-11-10 09:57:55 -05:00
Johan Hedberg
91b1b84eee release: Zephyr 4.3.0-rc3
Update the version to 4.3.0-rc3.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-11-08 16:41:32 +02:00
Anas Nashif
a1b406d844 drivers: promote APIs to unstable status
Many APIs are stuck at experimental status although they already fullfil
the requirements to be considered unstable, i.e. they have multiple
implementations and have been in the tree for more than 2 releases.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-08 08:29:14 -05:00
Badr Bacem KAABIA
8c8d1b5166 Bluetooth: hci_nxp: Improve MAC address uniqueness using CRC-32 hash
The previous method of deriving the local MAC address from the MCU's
Unique ID (UID) by slicing the last 3 bytes had two issues:

1.  **Low Entropy:** Risk of address collision because only a small
    portion of the UID was used, and this portion may not vary much.
2.  **Offset Error:** An incorrect offset calculation could copy
    non-intended bytes.

This commit resolves both issues by replacing the slice operation
with a **CRC-32 hash** over the **entire 16-byte UID**.

The lower 3 bytes (24 bits) of the resulting CRC-32 are used as the
local part of the MAC address, maximizing randomization and ensuring
a high probability of uniqueness across all devices.

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-08 08:28:43 -05:00
Derek Snell
50e29d0e5a shields: nxp: lcd_par_s035: fix gt911 touch initialization
Defers init of GT911 touch, MIPI DBI, and display device drivers.
lcd_par_s035_init() in shield.c now initializes these to control the
GT911 INT_GPIO state during the Reset sequence.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-11-08 08:01:03 -05:00
Jerzy Kasenberg
de8cdf0b9e manifest: Update hal_renesas revision for smartbond
hal/renesas was updated with fix for the case when
watchdog was unnecessary disabled after deep sleep.

Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg.xr@bp.renesas.com>
2025-11-08 07:55:09 -05:00
BUDKE Gerson Fernando
c66f08818c tests: lib: json: fix test expectation
Update the test_json_decoding test to expect correct unescaped values
based on descriptor type semantics:

- JSON_TOK_STRING: Stores pointer to original JSON string, preserving
  escape sequences as they appear in the source. Used when the original
  escaped format needs to be maintained.

- JSON_TOK_STRING_BUF: Copies and unescapes the string into a fixed-size
  buffer, converting JSON escape sequences (\n, \t, \", etc.) to their
  actual character equivalents. Used when the processed, unescaped string
  is needed.

The test was incorrectly expecting the nested_string_buf field (which
uses JSON_TOK_STRING_BUF) to contain the escaped form "esc: \\t". With
the proper unescaping implementation, this field should contain the
unescaped version "esc: \t" (with actual tab character).

This aligns with the documented behavior where JSON_TOK_STRING_BUF
performs unescaping during the copy operation, while JSON_TOK_STRING
simply references the original escaped string.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-08 10:22:50 +02:00
BUDKE Gerson Fernando
66d13d7028 tests: lib: json: add escape handling tests
Add extensive test coverage for JSON escape sequence handling to
ensure robustness and prevent regression in string encoding/decoding
operations.

The new test suite includes:

1. **Escape Sequence Stability**: Tests multiple encode/decode cycles
   to prevent backslash duplication bugs where sequences like \n, \t
   could be duplicated with each cycle.

2. **Individual Escape Sequences**: Comprehensive testing of each JSON
   escape type:
   - \n (newline), \t (tab), \r (carriage return), \f (form feed)
   - \b (backspace), \\ (backslash), \" (quote), \/ (slash)

3. **Quote Handling**: Special focus on quote escaping/unescaping to
   ensure proper JSON syntax and data integrity.

4. **Mixed Escape Sequences**: Complex scenarios with multiple
   different escape sequences in single strings to test edge cases.

5. **Multiple Cycle Stability**: Repeated encode/decode operations to
   simulate real-world usage patterns and detect gradual corruption.

6. **Backslash Duplication Detection**: Specific tests targeting the
   common bug where backslashes accumulate during multiple processing
   cycles.

7. **Round-trip Validation**: Complete encode → decode → encode cycles
   to verify data preservation.

8. **Edge Cases**: Testing boundary conditions like strings containing
   only quotes or complex escape combinations.

These tests use a new `escape_test_data` structure with both string
value and string buffer fields to verify proper handling of both
JSON_TOK_STRING and JSON_TOK_STRING_BUF descriptor types.

The test suite ensures that:
- Escape sequences are properly encoded in JSON output
- Escape sequences are correctly unescaped during parsing
- No data corruption occurs during multiple processing cycles
- Both string pointer and string buffer fields behave correctly
- Complex escape scenarios are handled robustly

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-08 10:22:50 +02:00
BUDKE Gerson Fernando
0ddb8e40f2 lib: json: Fix escape sequence unescaping during decoding
Fix the JSON library to properly unescape sequences during decoding.
Previously, escape sequences like \n, \t, \" etc were validated but
not converted back to their actual character representations during
decoding, causing backslash duplication with each encode/decode cycle.

This fix modifies decode_string_buf() to properly handle escape
sequence unescaping and ensures strings maintain their original
content across multiple encode/decode cycles.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-08 10:22:50 +02:00
Wojciech Jablonski
70961e26be drivers: mm: Fix vm region range check
Checking virtual range is incorrect because size + 1 addresses are
considered: size + starting address (that is also part of an
allocation). Hence the last address of the range is impossible to map

Signed-off-by: Wojciech Jablonski <wojciech.jablonski@intel.com>
2025-11-08 10:22:09 +02:00
Troels Nilsson
22fe7680f8 Bluetooth: Controller: Various fixes for CIS termination handling
Handling of CIS termination had several issues, most notably:

- it depended on allocating a termination node from the general rx
  node pool, causing asserts if the pool was exhausted
- CIS established events was not always generated when required,
  potentially causing CIS Centrals to get stuck without being able
  to create any new CISes
- Cancelling a CIS Create procedure only worked correctly if the
  CIS Create was currently active and happened to belong to the
  same CIS
- CIG state handling often (always?) assumed a CIG with only one CIS

ll_conn_iso_stream now has a dedicated termination node, same as
ll_conn and ll_sync_iso_set

LLCP statemachine for Cis Create procedure has been reworked to ensure
a notification node for CIS Established is available as early as possible.
In addition, it should now always be sent when needed

Introduced ull_central_iso_all_cises_terminated() to check if all CISes
in a CIG has been terminated (or not created yet) - which is now
used for updating the CIG state

ull_cp_cc_cancel() now takes the CIS to cancel as an argument so
it doesn't end up canceling an entirely different CIS Create procedure;
In addition it now works for queued procedures as well

Flushing a (central) CIS Create procedure in LLCP will now properly
generate a CIS Established event (with an error)

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-11-08 10:22:00 +02:00
Zhaoxiang Jin
6a0ddc3ca1 west: update hal_nxp to fix I2S run issue on MCXN947
Rollback SAI driver to fix I2S issues on MCXN947 in Zephyr.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-08 10:21:48 +02:00
Jan Behrens
1ec2eae70e boards: st: OpenOCD Fix for WB55 Based Boards
Fixes the openocd configuration for nucleo_wb55rg, stm32wb55mm_dk
and stm32wb55mmg.

Signed-off-by: Jan Behrens <jan.behrens@navimatix.de>
2025-11-08 10:21:38 +02:00
Declan Snyder
92fe40405e soc: nxp: rt118x: Move container header in tree
Instead of gluing to the one in the HAL which is not very flexible to
configure, define the container header in the zephyr SOC code. This
fixes the bug of CONFIG_NXP_FLEXSPI_ROM_RAMLOADER not working.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-11-08 10:21:28 +02:00
Pieter De Gendt
96d0957378 tests: nvmem: Test _OR for missing cells
Add a test case where missing cells result in empty structs.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-08 10:21:19 +02:00
Pieter De Gendt
71a5f1d08e include: zephyr: nvmem: Fix _OR macros
Checking if a node has nvmem-cells is not sufficient, we need to check if
the idx or name exists.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-08 10:21:19 +02:00
Charles Dias
feae71600e boards: shields: st_lcd_dsi_mb1835: set LTDC pixel-format
Set zephyr_lcd_controller pixel-format to PANEL_PIXEL_FORMAT_ARGB_8888
to match the driver configuration.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-11-07 21:23:07 -05:00
Charles Dias
097f009348 samples: input: draw_touch_events: avoid avoid OOB writes
When CROSS_DIM doesn’t evenly divide the panel WIDTH/HEIGHT, the last
tile on the right/bottom edge can extend past the display bounds.

Fix by clipping the edge tiles.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-11-07 21:23:07 -05:00
Pete Johanson
112871afa4 tests/kernel/context: Properly idle on MAX32 family
Make sure MAX32_ON_ENTER_CPU_IDLE_HOOK is disabled for the context test, so
the CPU will actually idle with WFI and not return before the timer
expires for test_cpu_idle test.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-11-07 16:12:48 -05:00
Eric Ocasio
0d6e4040f5 pmci: mctp: Fix MCTP USB packet buffer deallocation pointer issue
Explicitly set rx_pkt pointer to NULL after free'ing it.

Fixes zephyrproject-rtos/zephyr#98688

Signed-off-by: Eric Ocasio <eric.ocasio@nxp.com>
2025-11-07 21:25:29 +02:00
Ruibin Chang
3bdf10308b soc/ite/it8xxx2: make ARCH_IRQ_VECTOR_TABLE_ALIGN constant
The IQR vector table changed size since a825e01 and it is
causing issues with downstream applications, for example,
data stored in bin specific field is shifted by
the ARCH_IRQ_VECTOR_TABLE_ALIGN, so I make
ARCH_IRQ_VECTOR_TABLE_ALIGN constant.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-11-07 21:25:18 +02:00
Lucien Zhao
9da1b3cba1 boards: nxp: frdm_mcxe31b: add zephyr,shell-uart node
Add missing zephyr,shell-uart device tree node to enable
shell functionality.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-11-07 19:25:29 +02:00
Szymon Janc
d660d38fca Bluetooth: MPL: Fix NULL pointer dereference in on_obj_selected
Track may not have next track and thus this must be checked before
trying to match ID.

This was affecting following qualification test cases:
GMCS/SR/MCP/BV-38-C
GMCS/SR/MCP/BV-39-C
GMCS/SR/MCP/BV-40-C

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-11-07 19:24:42 +02:00
Ali Hozhabri
85830bf48d boards: 96boards: carbon: Increase main stack size when using Bluetooth
Increase main stack size when MBEDTLS_INIT is enabled to avoid stack
overflow as it consumes 1536 bytes.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-11-07 19:23:36 +02:00
Jordan Yates
3ad0946ce7 doc: tfm: document output files
Document the useful output files that exist, which files they are
constructed from, and what they can be used for.

Update other sections that are no longer correct with changes.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-07 19:23:26 +02:00
Jordan Yates
74a23eacd5 modules: tf-m: generate tfm_merged.bin from tfm_merged.hex
Since `tfm_merged.bin` now contains BL2, it can only be used for the
same purposes as `tfm_merged.hex` (intial firmware loading). Therefore
it should be using the confirmed images that `tfm_merged.hex` does.

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

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

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

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

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-07 19:23:26 +02:00
Jordan Yates
c127388eaf scripts: build: mergehex: fix --output-bin
Stop `--output-bin` from consuming the first trailing argument that
should have been in `input_files`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-07 19:23:26 +02:00
Łukasz Stępnicki
3f90574ad3 soc: nordic: vpr: align ESF_SW_IRQ_SIZEOF when new exception debug is used
There is new exception debugging mechanism for RISC-V which needs
additional member in arch_esf structure. VPRs handle stacking
partially in hw so exact position of some stack members needs
to be at the end of arch_esf, so explicit padding is needed.
Aligned also ESF_SW_IRQ_SIZEOF when exception debug is used.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-11-07 19:22:58 +02:00
Benjamin Cabé
1078e59a13 boards: stm32n6570_dk: Remove invert-y property from LVGL pointer input
Removed the invert-y property from the LVGL pointer input configuration
as it's causing the touch events to be "flipped" vertically.

Confirmed that this gets samples/subsys/display/lvgl back to correctly
detecting touch events, and for good measure tested
samples/subsys/input/draw_touch_events which keeps working as expected
(like it should since it's not using the LVGL pointer input ;-))

Fixes zephyrproject-rtos/zephyr#98933

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-07 19:22:49 +02:00
Pieter De Gendt
be0f5b0dc7 drivers: syscon: Cleanup some doxygen return commands
Documenting return values with doxygen should use the retval tags.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-07 19:22:40 +02:00
Tomasz Chyrowicz
6a4af2486d mcumgr: img_mgmt: Fix minor issues
Fix a few typos inside img_mgmt.c file.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-11-07 19:22:29 +02:00
Julien Racki
dbcfb77ce3 boards: stm32: stm32n6570_dk: Reduce the Tx clock signal skew
Reduce the Tx clock signal skew to 1ns
as it caused around 30% packet loss during ping
on some boards.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-11-07 08:25:29 -05:00
Pavel Vasilyev
bb006dc971 bluetooth: mesh: Increase BT RX Stack Size for PB-GATT
Increase BT RX Thread Stack Size which is needed for successfull
provisioning over PB-GATT.

Output from `kernel thread stacks` shell command:
```
BT RX WQ (real size 4096): unused 1408 usage 2688 / 4096 (65 %)
```

Fixes #98521

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-11-07 08:25:22 -05:00
Etienne Carriere
bd943a0ffa checkpatch: ignore COMPARISON_TO_NULL
Ignore COMPARISON_TO_NULL since it conflicts with Zephyr coding
guidelines main rule 85:
  The controlling expression of an if statement and the
  controlling expression of an iteration-statement shall have
  essentially Boolean type

Link: https://docs.zephyrproject.org/latest/contribute/coding_guidelines
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-07 08:24:21 -05:00
Charles Hardin
5c7ce0950e drivers: ethernet: lan9250: check for errors during the init calls
During board bringup the spi interface was not working as expected
and the lna9250 driver should have errored early when the chip was
not detected and reset but ended up busy waiting on setup. So, this
will error out on the init path when the chip can not be reset at
the driver instance.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-11-07 08:22:06 -05:00
Vinayak Kariappa Chettimada
c102a8e30e Bluetooth: Controller: Add BT_HCI_VS_FATAL_ERROR_SUPPORT
Add BT_HCI_VS_FATAL_ERROR_SUPPORT Kconfig to allow
out-of-tree Controllers to control Zephyr HCI Vendor-
Specific Fatal Error event support.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-11-07 06:58:27 -05:00
farsin NASAR V A
36465ec3c4 tests: drivers: uart: Added uart test files
Added sam_e54 overlay file for uart_errors test project
Added sam_e54 platform allow in testcase.yaml

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2025-11-07 06:57:39 -05:00
Szymon Janc
184f053bca tests: Bluetooth: Tester: Fix NULL pointer dereference
PA sync can be terminated before BIG sync is stopped. This results
in ps_sync being NULL and thus crash in stop callback. Simply store
address needed by BTP events and don't rely on pa_sync.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-11-07 06:52:03 -05:00
Aksel Skauge Mellbye
28edc26cc0 modules: hal_silabs: Simplify HFRCO frequency selection
Recent versions of the HAL rely on interpreting the HFRCO frequency
selection as a plain integer in preprocessor comparisons. The
adaptation layer in Zephyr created a C expression that was not
possible to evaluate by the preprocessor. Simplify the logic to
directly passing the devicetree value to the driver.

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

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-11-07 06:51:31 -05:00
Aksel Skauge Mellbye
e6cb52e8a5 dts: arm: silabs: Remove CMU clock controller node for HFRCO
The CMU clock controller node for HFRCO was wrongly interpreted
as a PLL reference clock. This prevented configuring the HFRCO
in open-loop mode. Since the node isn't used for anything,
remove it as a minimal stopgap solution.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-11-07 06:51:31 -05:00
Lyle Zhu
27c245a44d Bluetooth: Classic: RFCOMM: Fix NULL pointer access issue
When received the DLC disconnect request, after prime the DLC
disconnect response, the DLC will be cleared and the `dlc->session`
is cleared. If the no DLC is linked in current session, the idle
timer of the session will be scheduled.

In current implementation, the `dlc->session` is used to get the
session pointer, but it is invalid in this time. And the unexpected
fault occurs.

Fix the issue by getting the session pointer from parameter of the
function `rfcomm_handle_disc()` instead of `dlc->session`.

Fix issue #99035.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-07 06:50:42 -05:00
Martin Hoff
b38054bbae devicetree: fix DT_SPI_DEV_HAS_CS_GPIOS macro
This fix ensures that the implementation matches the documented
behavior, where the macro return 1 when the cs-gpios property has
an entry matching the reg address of the child device.

This restores the behavior of the devicetree init API prior to
<a60f93d742a48660882af5785fb4352f414ecd11>, which accidentally
introduced this issue by relying on the `DT_SPI_DEV_HAS_CS_GPIOS`
macro, which has deviated from its documented behavior ever since
it was originally introduced 6 years ago.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
Co-authored-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-11-07 10:27:58 +02:00
Anas Nashif
4e9a4e385a cpu_load: rename conflicting API
We have two places defining cpu_load_get() and trying to the same thing,
one is a core kernel feature supported on all architecture, the other is
part of debug, requires tracing and supported only on a subset of
architectures. Both deliver different results and accuracy.

While we figure our how to merge those into one API and with the
advanatges of both, rename the API so there is no confusion about what
is being used.

Fixes #97845

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-07 10:27:50 +02:00
Ulrich KAMDEM
f2428c68ff boards: st: nucleo_u385rg_q: change arduino_spi to spi1
According to user manual(UM3062, table 16), arduino_spi is connected
to spi1 instead of spi3.

Enable spi1 node and affect the SPI_NSS pin with I/O function
to do the chip select.

Remove i2c3 to avoid conflict with PA7 pin.

Move the status property of dac1 node to maintain consistency
in the ordering of node properties.

NB: The SPI_NSS pin is not listed as an alternate function
for SPI1 in the user manual (UM3062, Table 17).

Signed-off-by: Ulrich KAMDEM <kamdemulricharmel@gmail.com>
2025-11-06 16:36:12 -05:00
Ulrich KAMDEM
49c15bc8d8 tests: drivers: nucleo_u385rg_q: update i2c tests drivers
Enable and add pinctrl for the I2C3 node, and disable the SPI1 node
since it is enabled by default on this board (via the Arduino connector),
which causes a conflict with the I2C3 pinctrl configuration.

Signed-off-by: Ulrich KAMDEM <kamdemulricharmel@gmail.com>
2025-11-06 16:36:12 -05:00
William Tambe
926efb8fc1 xtensa: fix error: use of undeclared identifier 'intenable2'
This is likely a miss from:
df40dff6fb arch: xtensa: clean up interrupt handling

Signed-off-by: William Tambe <williamt@cadence.com>
2025-11-06 16:30:43 -05:00
Seppo Takalo
74bea00174 modem: cmux: Don't set flow-control too easily
Only track the available buffer space, if
CONFIG_MODEM_CMUX_MSC_FC_THRESHOLD is configured.
When less than required amount fit into the ringbuffer,
indicate the RX buffer is full.

Otherwise, only mark RX buffer full when incoming data is being
dropped.

When RX buffer is detected to be full, send Modem Status Command
with flow-controll bit set.

Flow control is released once the incoming buffer has at least
MODEM_CMUX_MTU bytes free again.

Fixes #98644

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-11-06 16:30:13 -05:00
Daniel DeGrasse
5575d3b238 drivers: flash: flash_mspi_nor: indicate support for flash page layout
Flash MSPI NOR driver already has support for flash page layout, but did
not select the Kconfig symbol indicating so. Add the selection so
drivers can use the page layout api.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-11-06 16:28:58 -05:00
Abderrahmane JARMOUNI
12f5e5bd0e doc: develop: twister: fix titles underline inconsistency
Fix underline inconsistency of titles of level 4 by replacing + with -.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-06 16:25:44 -05:00
Loic Domaigne
6750f4a5d6 doc: services: logging: add limitation when using logging thread name
Add a note about a limitation when using deferred logging + thread name
together with dynamically allocated struct k_thread. This limitation has
been raised in issue #95077.

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-11-06 14:02:51 -05:00
Loic Domaigne
1b0950035e drivers: crypto: crypto_ataes132a fix missing count check
Coverity reported an untrusted loop bound caused by a missing check on
the count value in ataes132a_send_command() for the response received
from the device.  As per datasheet section 6.1, count should be at least
3 bytes (1 byte for count, and 2 bytes for the 16 bits CRC).

While I'm expecting this condition to be very rare, it doesn't hurt to
implement a proper checking and report an error if count<3.

Coverity CID: 434625

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-11-06 14:02:39 -05:00
Pavel Vasilyev
cce11a5e2b tests: bsim: bluetooth: mesh: Fix brg duplicate filtering test
Add delay to avoid missed packet by tester.

This fixes brg_subnet_duplicate_filtering test.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-11-06 14:01:29 -05:00
Pavel Vasilyev
1ab799f872 tests: bsim: bluetooth: mesh: Fix pb_cancel test
Enable retransmissions of Generic Provisioning PDUs. This should fix
pb_cancel test where provisionee fails to receive Link Open PDU due to
parallel PB-GATT advertisement, but since Link Open PDU is not
retransmitted, test fails.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-11-06 14:01:29 -05:00
Valerio Setti
f60f04d7dc doc: release-notes: notify about Mbed TLS version upgrade
Add a note about Mbed TLS version upgrade from 3.6.4 to 3.6.5.
Update also the CVE list accordingly.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-11-06 14:01:29 -05:00
Valerio Setti
f6d24f7aa4 manifest: mbedtls: bump to 3.6.5
Update Mbed TLS revision from 3.6.4 to 3.6.5.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-11-06 14:01:29 -05:00
Henrik Brix Andersen
bfbb9714ae samples: drivers: adc: sequence: use fully qualified board names
Use fully qualified boards names for boards with more than one SoC.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-11-06 13:57:22 -05:00
Fabrice DJIATSA
6dab9df6e2 samples: drivers: adc: adc_sequence: remove stm32f3 from allow list
The stm32f3_disco board requires an external AD4114 sensor for the
ADC test to pass. Since this sensor is not available by default in
CI environments, the test fails.
Removing stm32f3 from the allow list prevents false negatives during
automated testing.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-11-06 13:54:32 -05:00
Benjamin Cabé
bdb314d036 net: lib: ocpp: fix misnamed State of Charge (SoC) measurand
As per OCPP 1.6, "State of charge of charging vehicle in percentage" is
"Soc", not "SoCState".

Fixes: zephyrproject-rtos/zephyr#98870

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-06 13:53:53 -05:00
Aleksandar Stanoev
9d06fca87a Bluetooth: Decode Bluetooth 6.2 version number
Bluetooth 6.2 has version number 0x10 and was released in November 2025.
This commit ensures this version number is properly decoded.

Signed-off-by: Aleksandar Stanoev <aleksandar.stanoev@nordicsemi.no>
2025-11-06 13:53:30 -05:00
Abderrahmane JARMOUNI
5679689f90 doc: develop: test: twister: fix doc titles level issue
fix doc titles level issue reported in CI

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-06 15:49:28 +02:00
Abderrahmane JARMOUNI
acb1071b4e doc: test: twister: document DT filtering expressions
Add documentation for the DT filtering expressions in 'expr_parser.py',
used by Twister to filter boards based on their DT nodes/properties when
selecting test scenarios.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-06 15:49:28 +02:00
Abderrahmane JARMOUNI
5be6aa13b9 scripts: pylib: twister: expr_parser: some enhancements
Rename dt_node_prop_enabled filtering expression to
dt_nodelabel_prop_enabled as it takes a node label as a 1st argument.

Enhance dt_node_has_prop inline doc and param name.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-06 15:49:28 +02:00
Badr Bacem KAABIA
ae5b69c112 eeprom: fram: Fix read/write length and buffer pointer arithmetic
Fixes two critical bugs in the Fujitsu MB85RCxx I2C FRAM driver when
handling transfers that cross page boundaries:

Fixes incorrect write length: The mb85rcxx_write function was
incorrectly passing the total remaining length (len) to the
underlying I2C transfer instead of the page-limited length (len_in_page).
This resulted in I2C errors or data corruption when writing past a page
boundary.

Fixes buffer pointer update: Corrects the loop's buffer pointer
arithmetic in both mb85rcxx_read and mb85rcxx_write. The original
code used incorrect casting (*(char *)&buf += len_in_page;), leading
to a strict aliasing violation and potentially undefined behavior.
The pointer is now correctly advanced using explicit casting:

- mb85rcxx_read: buf = (char *)buf + len_in_page;
- mb85rcxx_write: buf = (const char *)buf + len_in_page;

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-06 15:49:17 +02:00
Vincent Tardy
bfdfe99e5b west.yml: update hal_stm32 revision for 802.15.4 data transmission fix
Update hal_stm32 revision to update the stm32wba link layer
802.15.4 libraries including 802.15.4 data transmission fix.

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-11-06 15:49:07 +02:00
Maureen Helm
8b208b0d5a drivers: hwspinlock: Fix context initializer build warning
Fixes a build warning in the hwspinlock context initializer macro that
occurs when struct k_spinlock has no members ("warning: excess elements
in struct initializer"). This change is consistent with other struct
k_spinlock initializers in kernel.h.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-11-06 12:31:04 +02:00
Maochen Wang
a7f4150cd9 hostap: avoid configuring region domain when SAP is enabled
Configuring the region domain while SAP is enabled may lead to instability
in SAP's state and functionality. This change ensures the region domain
is not set when SAP is active.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-11-06 12:30:46 +02:00
BUDKE Gerson Fernando
55ecc63444 drivers: modem: bg9x: Update help description
Add note about PSM/eDRX modes to make it clear that off-load driver
still important when using in baterry powered devices.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-06 12:30:29 +02:00
BUDKE Gerson Fernando
40530d6f3e Revert "drivers: modem: deprecate MODEM_QUECTEL_BG9X"
This reverts commit da5eef665a.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-06 12:30:29 +02:00
Sreeram Tatapudi
e23ef53769 dts: arm: Infineon: cyw20289: Fix incorrect bootstrap configuration
This commit fixes CYW20829 that was broken on main after the
below commit
https://github.com/zephyrproject-rtos/zephyr/pull/95333

The root cause of the issue is that, bootstrap section is located at
the end of the RAM. So the start address of the section needs to
be calculated based on the size of the section.

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-11-06 12:30:18 +02:00
Szymon Janc
0ab5005304 tests: Bluetooth: Tester: Fix GATT Notify Multiple BTP command
This fix multiple issues with command implementation:
 - lack of LE to host convertion
 - using strtoul() on non-string data
 - passing stack variable as attr data (which must be present until
   notification is sent)

This was affecting GATT/SR/GAN/BV-02-C qualification test case.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-11-06 12:29:59 +02:00
Pisit Sawangvonganan
b1cf15b9a4 dts: fix typo in (boards, dts)
Utilize a code spell-checking tool to scan for and correct spelling errors
in `.dts` and `.dtsi` files within the `boards` and `dts` directories.

Note: To pass CI compliance checks, also fix the formatting in
`/dts/arm/infineon/edge/pse84/system_clocks.dtsi`

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-11-06 12:29:48 +02:00
Daniel Leung
33b4a3fd70 kernel: add compiler barrier in k_is_pre_kernel between...
...checking whether we are in user context and accessing
a kernel mode only variable.

For some unknown reasons only knew to Cadence engineers,
the Cadence toolchain will always read z_sys_boot_kernel
at the beginning of k_is_pre_kernel() instead of after
k_is_user_context() is called. So it would always result
in access violation if this is called in user mode.
Forcing a compiler barrier seems to fix that. So force it
here.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-06 12:29:40 +02:00
Badr Bacem KAABIA
91d2dcf350 drivers: gnss: Fix snprintk return value check in gnss_dump
The snprintk function returns the number of characters that *would have
been* written if the buffer was large enough. This means if the return
value `ret` is greater than or equal to the buffer size `strsize`, the
output was truncated.

The existing check `(strsize < ret)` was incorrect as it did not
handle the case where `ret == strsize` (output fits exactly, but no
room for null terminator) and did not check for negative return values
which indicate an encoding error.

This commit corrects the check to `(ret < 0 || ret >= strsize)` to
properly detect truncation and errors, returning -ENOMEM in these
cases. This fix is applied to `gnss_dump_nav_data`, `gnss_dump_time`,
and `gnss_dump_satellite` functions.

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-06 12:29:24 +02:00
Nicolas Pitre
f5f258f0cc tests: kernel: smp_abort: add delay to ensure circular dependency
The test_smp_thread_abort_deadlock test assumes all CPUs will
simultaneously establish a circular abort dependency (each thread
aborts the next in a ring). However, on platforms with large
emulator/simulator quantum sizes, one thread's ISR may complete
and return before another thread even calls k_thread_abort() on it,
preventing the circular dependency from forming.

This manifested on ARMv8-R FVP but not on QEMU or ARMv8-A/ARMv9-A FVP
due to different timing characteristics and quantum sizes.

Add a k_busy_wait(100) after k_thread_abort() to give all CPUs time
to call abort before any ISR completes.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-06 12:29:02 +02:00
Camille BAUD
8b2c75a2fb arch: riscv: thead: Fix range size
Only partial range operation was done, fix this

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-05 15:39:02 -05:00
Camille BAUD
4b96632e54 drivers: dma: BFLB DMA flush cache also for source
also flush cache for source, not just dest

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-05 15:39:02 -05:00
Khoa Nguyen
2ffa9aca58 boards: renesas: Correct reg for ethernet-phy node on ek_ra6m3
Correct reg value for ethernet-phy node on ek_ra6m3 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-11-05 15:37:46 -05:00
Liam Ogletree
9b4cc182ae drivers: flash: Fix devicetree API typo in AT25XV021A flash driver
Fix typos in the driver instantiation macro, which leads to page_size
and timeout_erase defaulting to 0 regardless of whether the
devicetree instance has the read-only property or not.

DT_INST_NODE_PROP_OR() -> DT_INST_PROP_OR()

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
2025-11-05 15:37:04 -05:00
Imran Sajjad
3a5dad8831 drivers: i2s: stm32 i2s bit clock continuous mode
Added check for continuous or gated bit clock. Now clock does
not stop if I2S_OPT_BIT_CLK_CONT is selected.

Signed-off-by: Imran Sajjad <imransajjad89@gmail.com>
2025-11-05 15:36:46 -05:00
Daniel Leung
7a3bef480a doc: release-notes/4.3: add new kconfigs for Xtensa
There are some kconfig additions on Xtensa. Add them to
the release notes.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-05 15:35:58 -05:00
Nicolas Pitre
408da59cc4 net: lwm2m: fix format specifiers for size_t in LOG_DBG
Fix incorrect format specifiers in lwm2m_read_cached_data() where
size_t variables were printed using %u and %d instead of %zu. This
caused CI failures on ARM64 platforms where size_t is long unsigned
int, triggering -Werror=format warnings.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-05 15:35:38 -05:00
Nicolas Pitre
bd5806d828 samples: zbus: benchmark: also filter SMP from MSG_SUBSCRIBERS test
Commit d93561da68 ("samples: zbus: benchmark: Filter SMP from
benchmark_sync test") avoided the SMP race condition for the
SUBSCRIBERS variant (benchmark_sync) by filtering out SMP configurations,
but the MSG_SUBSCRIBERS variant (benchmark_async_msg_sub) has the
identical race condition and needs the same filter.

Both variants use the same threading model:
- Producer thread: priority 5 (lower priority, runs later)
- Consumer threads: priority 3 (higher priority, runs first)
- Both use asynchronous delivery via queues (msgq vs fifo)

The race condition on SMP (detailed in d93561da68):
  CPU 0 (Producer):              CPU 1-3 (Consumers):
  -----------------              ----------------------
  Publish all messages           Still processing...
  atomic_get(&count)             atomic_add() comes later
  → Reports incomplete count!

The LISTENERS variant (benchmark_async) does NOT need filtering because
listeners are synchronous callbacks. Looking at subsys/zbus/zbus.c:130,
the listener callback executes directly within zbus_chan_pub():

  case ZBUS_OBSERVER_LISTENER_TYPE: {
      obs->callback(chan);  /* Synchronous! */
      break;
  }

All atomic_add() operations complete before the producer checks the
count, so there is no race condition with LISTENERS.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-05 15:35:23 -05:00
Benjamin Cabé
cac77c31be doc: releases: add Zephyr 4.3 release highlights
Complete the section about major highlights for Zephyr 4.3.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-05 15:32:21 -05:00
Daniel Skinstad Drabitzius
bc9a5ef8c5 doc: services: device_mgmt: add mender-mcu to OTA examples
Add mender-mcu entry to `Examples of OTA` list.

Signed-off-by: Daniel Skinstad Drabitzius <daniel.drabitzius@northern.tech>
2025-11-05 15:22:21 -05:00
Benjamin Cabé
4f8e624404 doc: doxygen: add doxygen sitemap
In order to help search engines pick up _all_ our Doxygen documentation,
ensure that a sitemap.xml file is generated for it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-05 13:30:50 -05:00
Badr Bacem KAABIA
a08c691e05 drivers: crc: renesas_ra: Fix state management and locking
Fix several issues related to the incremental CRC API usage:

1. Ensure the lock is not prematurely released in crc_set_config,
   preventing semaphore double-release (over-giving).
2. Reset the flag_crc_updated state on all error paths to prevent
   incorrect seeding in subsequent attempts.

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-05 13:30:30 -05:00
Jamie McCrae
2ebd36f22c dts: vendor: nordic: Fix nRF5340 memory partition
Fixes some recently introduced issues with this file whereby
addresses were wrongly using global addresses instead of relative
to the parent node and whereby parent node names were not used
when they should have been

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-05 13:22:26 -05:00
Zhaoxiang Jin
c970afa409 boards: frdm_mcxn236: Change lpuart0 pin configuration
PR https://github.com/zephyrproject-rtos/zephyr/pull/96980/
changed the pins of lpuart0 from 'FC0_P0_PIO0_16' and
'FC0_P1_PIO0_17' to 'FC0_P2_PIO0_6' and 'FC0_P3_PIO0_7'.
This is actually unnecessary because lpuart0 is not enabled
by default, so micfil applications will not be affected.
Even if lpuart0 were enabled by default, we should disable
lpuart0 at the application layer rather than directly
modifying its default configuration, as this behavior lacks
backward compatibility.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-05 13:20:16 -05:00
Zhaoxiang Jin
1ca157ef14 samples: i2s_codec: Remove duplicate configurations
Remove duplicate configurations.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-05 13:20:16 -05:00
Robert Lubos
cc20b72ef2 doc: migration-guide-4.3: Document net_icmp_init_ctx() API change
Document that net_icmp_init_ctx() now also expects family argument.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-05 13:19:03 -05:00
Robert Lubos
486e8247c6 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>
2025-11-05 13:19:03 -05:00
Robert Lubos
587d9e6a4a net: icmp: Verify the address family before calling the callback
Check the address family of the packet before passing it to a ICMP
handler, to avoid scenarios where ICMPv4 packet is paseed to a ICMPv6
handler and vice versa.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-05 13:19:03 -05:00
BUDKE Gerson Fernando
80be486c87 docs: migration-guide-4.3: Add TF-M attestation issue
Add documentation describing a TF-M attestation issue that prevents
firmware-over-the-air (FOTA) upgrades between affected Zephyr releases.
Recommend a direct upgrade to Zephyr v4.3.0 to avoid attestation and
upgrade compatibility issues.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-05 11:36:02 +02:00
BUDKE Gerson Fernando
9a455998a4 west.yml: Bump TF-M to fix FOTA upgrade regression
Update TF-M to include fixes restoring FOTA upgrade compatibility
between Zephyr v3.7.1 and v4.3.0. This fix allow both forward and
rollback upgrades.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-05 11:36:02 +02:00
Lauren Murphy
c434ed8843 intel_adsp: select log_backend_xtensa_sim for simulator
ADSP logging backend requires winstream console,
which is turned off for simulator.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-11-05 11:35:32 +02:00
Allen Zhang
abd43ae75c boards: mcxw23: Fix the compliance check issues
Fixed the indentation issue in dtsi files

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-11-05 11:35:22 +02:00
Allen Zhang
9edb892c7d boards: mcxw23: Use SYSTICK as the default kernel timer
SYSTICK is used as the default kernel timer.
The FRO 1M clock source for OSTIMER is trimmed to ± 15%
accuracy over the entire voltage and temperature. The FRO 1M
is not accurate enough on the silicon.

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-11-05 11:35:22 +02:00
Allen Zhang
2cb7364427 tests: watchdog: retain memory for frdm_mcxw23 and mcxw23_evk
The first 32KB will be used by BOOT ROM.
Added board shared sram bypass first 32KB overlay.
The overlay configure shall bypass first 32KB memory to avoid
being clear during system startup.

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-11-05 11:35:13 +02:00
Alain Volmat
679a6c6ec6 memc: stm32_xspi_psram: avoid XSPIM_Config if running from flash
Avoid calling the HAL_XSPIM_Config function if the app is running
from flash in order to avoid locking since HAL_XSPIM_Config is once
turning off each XSPI instance when performing the configuration.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-05 11:35:04 +02:00
Alain Volmat
299e067f8f drivers: memc: stm32_xspi_psram: avoid hardcode to XSPI1
The PSRAM could well be plugged to the XSPI2 instead of XSPI1
hence allow configuration of the IOPort and avoid forcing the
ChipSelect in order to allow working on both XSPI1 or XSPI2.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-05 11:35:04 +02:00
Alain Volmat
d604af86b0 drivers: memc: stm32_xspi_psram: use XSPI_HandleTypeDef ptr at init
Avoid copying the whole XSPI_HandleTypeDef structure into the
init function and use a pointer since the structure is already part
of the _data structure.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-05 11:35:04 +02:00
Vladislav Kulikov
45e0baf74a MAINTAINERS: SMF: add @vlad-kulikov as collaborator
I nominate my self as s collaborator for the State machine framework (SMF).
Rationale: sustained contributions to SMF (performance work, tests,
reviews).

@keith-zephyr @glenn-andrews - PTAL.

Signed-off-by: Vladislav Kulikov <vlad_kulikov_c@pm.me>
2025-11-05 11:34:52 +02:00
Alain Volmat
3b0704974c video: gc2145: perform first-second switch for CSI RGB565
Correct the RGB565 format generated by the GC2145 in case of CSI based
RGB565 by setting the Page 0 BYPASS_MODE register switch bit in order
to generate RGB565_LE instead of RGB565_BE.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-05 11:34:41 +02:00
Alain Volmat
6b7ad26213 video: stm32_dcmipp: fix parallel interface RGB565 handling
On parallel interface, the DCMIPP is expecting data in what
corresponds to the RGB565_BE formats, aka

	     D7 D6 D5 D4 D3 D2 D1 D0
	     -----------------------
cycle 1:     R4 R3 R2 R1 R0 G5 G4 G3
cycle 2:     G2 G1 G0 B4 B3 B2 B1 B0

The Zephyr RGB565 video format corresponds to the RGB565_LE
hence perform a SWAPCYCLE when RGB565 is used as input format
on parallel interface.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-05 11:34:41 +02:00
Jordan Yates
431a86eb1e dts: nordic: nrf91xx: fix NS partition references
`sram0_ns_modem` and `sram0_ns_app` are child nodes of `sram0_ns`, not
`sram`. Addresses should be relative to the former, not the later.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-05 11:34:31 +02:00
Jordan Yates
faa2101d4e tests: lib: heap_min: test Z_HEAP_MIN_SIZE
Validate that `Z_HEAP_MIN_SIZE` is the minimum required size.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-05 11:34:00 +02:00
Jordan Yates
8aa10bdab7 kernel: Z_HEAP_MIN_SIZE for runtime stats
Increase `Z_HEAP_MIN_SIZE` values to successfully allocate a 1 byte
chunk when `CONFIG_SYS_HEAP_RUNTIME_STATS=y`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-05 11:34:00 +02:00
Andreas Schweigstill
869881ef21 drivers: disk: sdmmc_stm32.c: fix HAL_*_ConfigWideBusOperation
This fixes a compilation error in sdmmc_stm32.c. Depending on the
definition of CONFIG_SDMMC_STM32_EMMC now either
HAL_MMC_ConfigWideBusOperation() or HAL_SD_ConfigWideBusOperation()
gets called.

Signed-off-by: Andreas Schweigstill <andreas@schweigstill.de>
2025-11-04 19:07:52 -05:00
Mathieu Choplain
8619248629 drivers: usb: dc: stm32: fix usb_disable() deadlock on certain series
During a teardown sequence performed by the USB DC stack's "usb_disable()",
the controller is first disabled by calling "usb_dc_detach()", which turns
off the USB controller clock in the STM32 implementation. "usb_disable()"
then disables endpoints by calling "usb_dc_ep_disable()" on each of them,
which is merely forwarded to HAL_PCD_EP_Close() by the STM32 driver. This
order of operations means that the latter operation is actually operating
on the no-longer-clocks USB controller! Up until recently, memory accesses
to MMIO of unclocked peripherals in STM32 SoCs would not cause issues, even
if the resulting access was a no-op (read returns zero, write is ignored),
so everything worked fine even if the access was *technically* illegal...
However, on newer series with a different bus fabric, accesses to unclocked
peripherals will instead deadlock the SoC!

Prevent illegal accesses inside "usb_dc_stm32_ep_disable()" by checking if
the USB controller clock is enabled before calling HAL_PCD_EP_Close(), and
skipping the call if it isn't. This allows "usb_disable()" to complete on
series such as STM32N6.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-04 14:00:32 -05:00
Vlad Kulikov
8b31d2cad3 smf: simplify get_child_of() loop and rename local to 'state'
Replace the open-ended while(true) with a null-terminated parent walk.
Improves readability, behavior is unchanged.

Signed-off-by: Vlad Kulikov <vlad_kulikov_c@pm.me>
2025-11-04 13:59:52 -05:00
Firas Sammoura
2196d2a77d Revert "riscv: pmp: Add helper to write PMP configuration CSRs"
This reverts commit 9482f8df02.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-04 13:56:09 -05:00
Mathieu Choplain
f36f8d4fb9 runners: stlink_gdbserver: expose --external-init as runner argument
3cc9a843e8 added '--external-init' to the GDB
Server command line whenever an external loader is provided, but it is not
a *necessary* argument and sometimes causes issues.

Provide a new runner argument "--external-init" (for consistency) which
controls whether or not the argument is added to command line if an
external loader is used. (It is otherwise ignored)

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-04 13:50:56 -05:00
Mathieu Choplain
f890286d8e runners: stlink_gdbserver: make it possible to disable SWD mode
The "--swd" argument had both an action='store_true' and default value of
True so it wasn't possible to disable it: providing the argument would set
its value to True, and not providing it would use the default=True!

Add a new argument "--no-swd" which shares its destination variable with
"--swd", but with action='store_false', such that either can be provided
to enable/disable SWD mode. Both arguments are placed in a mutually
exclusive group and use a common help message.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-04 13:50:56 -05:00
Mario Paja
0b4819646c dts: st: l4: fix line sai feature
Fix SAI availability on STM32L4xx series

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-11-04 13:50:05 -05:00
Jérôme Pouiller
2113d56c68 soc: silabs: Fix SL_CODE_CLASSIFY conflict
SL_CODE_CLASSIFY() is a macro used by the upstream Simplicity SDK to mark
time sensitive functions (in order to relocate them in RAM). This macro
place the function in specific sections. So build scripts can identify
them.

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

Fortunately, SLI_CODE_CLASSIFICATION_DISABLE allow to disable
SL_CODE_CLASSIFY().

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

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-11-04 13:48:41 -05:00
Daniel DeGrasse
3d075c4e68 drivers: i2c: i2c_dw: make target stop callback after read/write callbacks
In target mode, issue the stop callback from the I2C DW driver after the
read/write callbacks. This mirrors the behavior of other I2C target mode
drivers, and allows target handler code to correctly service any pending
read or write requests before it handles the stop condition.

Fixes #98675

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-11-04 13:45:34 -05:00
Nicolas Pitre
af7ae5d61f kernel: sched: plug assertion race in z_get_next_switch_handle()
Commit d4d51dc062 ("kernel:  Replace redundant switch_handle assignment
with assertion") introduced an assertion check that may be triggered
as follows by tests/kernel/smp_abort:

CPU0              CPU1              CPU2
----              ----              ____
* [thread A]      * [thread B]      * [thread C]
* irq_offload()   * irq_offload()   * irq_offload()
* k_thread_abort(thread B)
                  * k_thread_abort(thread C)
                                    * k_thread_abort(thread A)
* thread_halt_spin()
* z_is_thread_halting(_current) is false
* while (z_is_thread_halting(thread B));
                  * thread_halt_spin()
                  * z_is_thread_halting(_current) is true
                  * halt_thread(_current...);
                  * z_dummy_thread_init()
                    - dummy_thread->switch_handle = NULL;
                    - _current = dummy_thread;
                  * while (z_is_thread_halting(thread C));
* z_get_next_switch_handle()
* z_arm64_context_switch()
* [thread A is dead]
                                    * thread_halt_spin()
                                    * z_is_thread_halting(_current) is true
                                    * halt_thread(_current...);
                                    * z_dummy_thread_init()
                                      - dummy_thread->switch_handle = NULL;
                                      - _current = dummy_thread;
                                    * while(z_is_thread_halting(thread A));
                  * z_get_next_switch_handle()
                    - old_thread == dummy_thread
                    - __ASSERT(old_thread->switch_handle == NULL) OK
                  * z_arm64_context_switch()
                    - str x1, [x1, #___thread_t_switch_handle_OFFSET]
                  * [thread B is dead]
                  * %%% dummy_thread->switch_handle no longer NULL %%%
                                    * z_get_next_switch_handle()
                                      - old_thread == dummy_thread
                                      - __ASSERT(old_thread->
                                             switch_handle == NULL) FAIL

This needs at least 3 CPUs and the perfect timing for the race to work as
sometimes CPUs 1 and 2 may be close enough in their execution paths for
the assertion to pass. For example, QEMU is OK while FVP is not.
Also adding sufficient debug traces can make the issue go away.

This happens because the dummy thread is shared among concurrent CPUs.
It could be argued that a per-CPU dummy thread structure would be the
proper solution to this problem. However the purpose of a dummy thread
structure is to provide a dumping ground for the scheduler code to work
while the original thread structure might already be reused and
therefore can't be clobbered as demonstrated above. But the dummy
structure _can_ be clobbered to some extent and it is not worth the
additional memory footprint implied by per-CPU instances. We just have
to ignore some validity tests when the dummy thread is concerned.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-04 13:45:24 -05:00
Nicolas Pitre
1c8f1c8647 kernel: sched: use clearly invalid value for halting thread switch_handle
When a thread halts and dummifies, set its switch_handle to (void *)1
instead of the thread pointer itself. This maintains the non-NULL value
required to prevent deadlock in k_thread_join() while making it obvious
that this value is not meant to be dereferenced or used.

The switch_handle should be an opaque architecture-specific value and
not be assumed to be a thread pointer in generic code. Using 1 makes
the intent clearer.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-04 13:45:24 -05:00
Mahesh Mahadevan
11dbae8a32 pm: Fix warning with pm_policy_priv_device_find_device_constraints
pm_policy_priv_device_find_device_constraints() function
is available only when zephyr_power_state is defined.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-11-04 13:45:14 -05:00
Henrik Brix Andersen
103370782d tests: drivers: pwm: api: remove board configurations without overlays
Remove board configurations without a proper devicetree overlay. The test
suite relies on pwm-test alias to be defined in a board overlay, which is
not set for these boards.

Fixes: #98775

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-11-04 13:45:04 -05:00
Johan Hedberg
73b6f8bd4a Bluetooth: Host: Fix build error with observer-only config
When building an observer-only build the check_pending_conn label would
result in CI warnings/errors due to this only being a C23 feature:

scan.c:692:1: error: label at end of compound statement is a C23 extension

Turns out the #ifdefs are completely unnecessary, and the code can simply
take advantage of IS_ENABLED(), which should get rid of the warning.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-11-04 12:00:35 -05:00
Szymon Janc
d054025fa3 tests: Bluetooth: Tester: Implement TBS Terminate Call BTP command
This allows upper tester to terminate existing call.
Was affecting TMAP/CG/VRC/BV-01-C qualification test case.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-11-04 16:56:28 +02:00
Erwan Gouriou
9f26a42591 MAINTAINERS: stm32 module: Add missing collaborators
For better agility add etienne-lms, mathieuchopstm and djiatsaf-st
as collaborators to STM32 module.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-11-04 16:56:14 +02:00
Erwan Gouriou
35ccb92bc6 MAINTAINERS: stm32: Add juickar as collaborator
We need juickar to take part in reviews in these areas.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-11-04 16:56:14 +02:00
Erwan Gouriou
540607f46b MAINTAINERS: stm32: Remove inactive collaborators
@marwaiehm-st and @benothmn-st are not collaborating anymore
on those area.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-11-04 16:56:14 +02:00
Zhijie Zhong
87e351f8bc Bluetooth: Host: Fix handling of adv reports when scanning for connection
In some cases, the host starts scanning internally for establishing
connections (BT_LE_SCAN_USER_CONN), such as host-based resolving or
auto-connection. In this situation, even if the application does not
start explicit scan, the host still needs to handle the advertising
reports to continue the connection process.

Previously, both bt_hci_le_adv_report() and bt_hci_le_adv_ext_report()
will break or discard all reports when explicit scan is not active.
This causes the connection to stay in SCAN_BEFORE_INITIATING and never
move forward.

This patch adds checking of BT_LE_SCAN_USER_CONN to allow advertising
reports to be processed during connection-purpose scanning. When the
scan is started explicitly by application, the behavior remains the
same, only small comments are updated to describe this behavior and keep
the original code style unchanged.

Signed-off-by: Zhijie Zhong <zhongzhijie1@xiaomi.com>
2025-11-04 16:55:45 +02:00
Cristian Bulacu
11d74f2bfe modules: openthread: platform: udp: Fix otPlatUdpClose bug
This commit fixes a bug which occurred when a socket was closed.

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

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

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

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-04 16:55:31 +02:00
MBatuhan Altun
d9999a4884 boards: st: Clean up nodes with status = "disabled"
- drop redundant board-level disables already handled in the SoC .dtsi

- document intentional disables (pin conflicts, optional peripherals

  and shared resources)

- fix DTS lint spacing warnings (stm32h747i_disco)

Signed-off-by: MBatuhan Altun <mbatuhanaltun3388@gmail.com>
2025-11-04 16:54:34 +02:00
Tim Pambor
a4d99f5de2 net: core: only set l2_processed flag for NET_CONTINUE
If verdict is NET_OK net_pkt may already be unreferenced and reutilized,
so that setting the `l2_processed` flag would be set on a different
packet, corrupting its state. Avoid this situation by only setting the
l2_processed flag for NET_CONTINUE.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-11-04 16:54:14 +02:00
Patryk Koscik
1bd934dbba drivers: uart: ambiq: enable driver for apollo4x
Enable Ambiq serial driver for the Apollo4x SoC series.

Signed-off-by: Patryk Koscik <pkoscik@antmicro.com>
2025-11-04 16:53:51 +02:00
Patryk Koscik
0b89d298a1 drivers: uart: ambiq: make driver compatible with apollo4x
This patch makes `uart_ambiq.c` compatible with the Apollo4x SoC series.

Signed-off-by: Patryk Koscik <pkoscik@antmicro.com>
2025-11-04 16:53:51 +02:00
Jamie McCrae
88176a795d 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>
2025-11-04 16:53:40 +02:00
Jamie McCrae
c060a33bb0 github: workflows: Disable getting all toolchains
This fixes an issue of CI failing due to the github runner being
out of memory when cleaning up, and speed up the build prep stage

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-04 16:53:31 +02:00
Georgios Vasilakis
6cc7bdb58a tests: secure_storage: Exclude nRF54H20 targets
Exclude the application and radio core targets for nRF54H20 since
they use Ironside as their PSA storage provider.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-11-04 07:30:53 -05:00
Nicolas Pitre
6c6f1a5e99 arch: arm64: mmu: revert useless cache handling
This reverts the following commits:

commit c9b534c4eb
("arch: arm64: mmu: avoid using of set/way cache instructions")

commit c4ffadb0b6
("arch: arm64: avoid invalidating of RO mem after mem map")

The reason for the former is about Xen not virtualizing set/way cache
operations used by sys_cache_data_invd_all() originally used prior to
enabling the MMU and data cache. But the cure is worse than the Xen
issue as:

- Cache invalidation is performed on _every_ mapping change.

- Those invalidations are completely unnecessary with a PIPT data cache.
  ARM64 implementations use Physically Indexed, Physically Tagged (PIPT)
  data caches where cache maintenance is not needed during MMU operations.

- arch_mem_map() invoked with K_MEM_MAP_UNPAGED triggers page faults
  when accessing the unmapped region for cache operations. The page
  fault handler in do_page_fault() tries to reacquire z_mm_lock which
  is already held by the caller of arch_mem_map(). This results in a
  deadlock.

And the latter commit disables cache operations for read-only mappings,
effectively rendering the workaround described in the first commit
inoperative on half the mappings, making the performance cost of the
first commit's approach unjustifiable since it doesn't actually solve
the problem it set out to fix.

Given the above, the actual "fix" should simply have been the removal of
the sys_cache_data_invd_all() as, in theory, it isn't strictly needed
and its replacement is already ineffective on read-only areas as mentioned.

So let's revert them, which fixes the deadlock-induced CI test failures
on ARM FVP SMP configurations that were triggered when demand paging or
memory mapping operations were involved.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-04 07:22:39 -05:00
Nicolas Pitre
5b43674098 arch: arm64: Fix SMP TLB invalidation on SMP systems
Use Inner Shareable (IS) TLB invalidation instructions in SMP
configurations to broadcast TLB invalidations to all CPUs.

Use TLBI VMALLE1IS instead of VMALLE1 in invalidate_tlb_all().

While at it, implement proper page-specific invalidation using TLBI VAE1IS
in invalidate_tlb_page() instead of falling back to full invalidation.

This fixes many SMP test failures with userspace enabled onArm's FVP.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-04 07:22:03 -05:00
Mario Paja
fcaf35ccb3 drivers: i2s: stm32 sai code cleanup
Replace series-specific macros with generic macros shared across
multiple STM32 series to improve readability and maintainability.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-11-04 07:19:50 -05:00
Ricardo Rivera-Matos
5cd5e152b3 MAINTAINERS: Adds Liam-Ogletree as a Haptics collaborator
Adds Liam-Ogletree as a collaborator for the haptic driver API.

Signed-off-by: Ricardo Rivera-Matos <rriveram@opensource.cirrus.com>
2025-11-04 07:13:34 -05:00
Jordan Yates
0c117869bc Revert "doc: Releases: Add notes about deprecated bt_ctlr_set_public_addr"
This reverts commit a60ed23d19.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-04 07:10:45 -05:00
Jordan Yates
3801d1d38c Revert "Bluetooth: Controller: Deprecate bt_ctlr_set_public_addr"
This reverts commit b07be641e7.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-04 07:10:45 -05:00
Martin Hoff
cd0448496a tests: uart: silabs: add board overlays to test silabs eusart peripheral
This patch introduces overlays to test the silabs eusart peripheral.
It requires 3 different boards in order to test minor differences
between peripheral chip IP versions.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-11-04 07:10:19 -05:00
Martin Hoff
730502ef62 tests: uart: silabs: add overlay files for slwrb4180b board
Introduce new overlay files for the slwrb4180b board in the UART test
suite.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-11-04 07:10:19 -05:00
David Leach
01e3b167af west: blobs: fix UnicodeDecodeError on Windows
Ensure the blobs command is trying to display the license file for
click-through approval. Ensure that special characters doesn't
cause a problem in Windows by opening the file with utf-8 encoding.

Fixes #98520

Signed-off-by: David Leach <david.leach@nxp.com>
2025-11-04 07:06:08 -05:00
Qingsong Gou
302064c9a5 drivers: i2c: fix CI CMakeStyle error
Replace CMAKE tabs with spaces

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-04 07:05:39 -05:00
Vincent Tardy
0df9c5fb1f west.yml: update hal_stm32 revision for LL 802.15.4 lib url fix
Update hal_stm32 revision to fix url vulnerability of link layer
802.15.4 libraries for stm32wba.

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-11-04 11:27:41 +02:00
Thomas Decker
eab91fe55f boards: st: nucleo_h7s3l8: Fix size of ext_memory and ram
Change size of ext_memory node to 32MB, as the board uses a Macronix
MX25UW25645GXDI00 with 256MBits.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-11-04 11:27:29 +02:00
Thomas Decker
93df422d5b dts: arm: st: h7rs: Increase memory size of sram0
The h7rs option byte default setting configures the AXI SRAM1-4 as one
contiguous memory, sram0 can therefore be increased to 456k (3x128k + 72k).
The .yaml files of the boards nucleo_h7s3l8 and stm32h7s78_dk are adjusted
accordingly.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-11-04 11:27:29 +02:00
Etienne Carriere
8510764505 boards: st: fix Bluetooth and BLE references
Add registered trademark symbol to Bluetooth where missing and
replace BLE with explicit Bluetooth Low Energy where applicable
in ST boards documentation.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-04 11:27:18 +02:00
Pete Johanson
f69f7b1b80 tests: drivers: flash: Fix for MAX32 flash1 testing
Remove the erronously added chosen node for the MAX32690EVKit, to ensure
the flash base address is correct for the build.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-11-04 11:27:08 +02:00
Arun Kumar Nagelly
4b9bbc5006 drivers: bluetooth: hci: siwx91x: add RF power config
Add vendor-specific RF power mode configuration during HCI setup
for SiLabs SiWx91x devices. This configures the BLE TX power
index in the controller's RF subsystem.

The implementation sends a vendor command (OCF 0x0006) with
protocol mode (2) and power index (RSI_BLE_PWR_INX) during the
setup phase. This ensures proper RF power configuration before
normal Bluetooth operations begin.

Technical details:
- Uses bt_hci_cmd_alloc() with manual HCI header construction
- Command opcode: 0xFC06 (OGF=0x3F, OCF=0x0006)
- Parameters: protocol_mode=2, power_index from RSI_BLE_PWR_INX
- Executed during bt_hci_setup callback

Signed-off-by: Arun Kumar Nagelly <arnagell@silabs.com>
2025-11-04 09:26:46 +00:00
Keith Packard
3e615fa533 drivers: comparator: Silence GCC 14 uninitialized variable warning.
When the renesas-rv-lvd driver is built with SDK 1.0 using GCC 14, the
compiler emits a spurious uninitialized variable warning because it can't
follow the control flow to figure out that the variable wasn't ever used
without being initialized. Work around this by simply initializing it
to one of the valid values.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-11-04 11:26:34 +02:00
Benjamin Cabé
74572a787b include: drivers: sensor: doxygen docs for max17055
Fixup doxygen documentation

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-04 11:26:14 +02:00
Benjamin Cabé
dc0993f13f include: drivers: sensor: doxygen docs for max32664c
Fixup doxygen documentation

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-04 11:26:14 +02:00
Benjamin Cabé
344caf3ec1 include: drivers: sensor: doxygen docs for mmc56x3
Fixup doxygen documentation

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-04 11:26:14 +02:00
Benjamin Cabé
0d9c76012b include: drivers: sensor: doxygen docs for sht4x
Fixup doxygen documentation

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-04 11:26:14 +02:00
Benjamin Cabé
4c4c2ea7f6 include: drivers: sensor: doxygen docs for ccs811
Fixup doxygen documentation

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-04 11:26:14 +02:00
Szymon Janc
a3aa51393b Bluetooth: tester: Fix TBS Originate Call BTP command
bt_tbs_originate() returns assigned Call ID as non-negative value.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-11-03 17:00:08 +02:00
Stuart Alldritt
8af379516d mgmt: mcumgr: grp: img_mgmt: increment data_off after reading the SHA
Fix a bug where the image's SHA would be interpreted as TLV headers due
to missing a data_off increment.

Signed-off-by: Stuart Alldritt <s.k.alldritt@gmail.com>
2025-11-03 16:59:50 +02:00
Szymon Janc
4571485e16 Bluetooth: Mesh: Fix invalid write in private beacon server
There is no guarantess enum will be packed so passing uint8_t as
node_id to bt_mesh_subnet_priv_node_id_get() could (and likely will)
result in writing past stack variable.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-11-03 16:59:32 +02:00
Zhaoxiang Jin
393f542e51 doc: cpu_freq: Improve cpu_freq documentation.
Improve cpu_freq documentation.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-03 16:59:22 +02:00
Zhaoxiang Jin
f1f39e6a9e cpu_freq: Avoid redundant cpu_freq_policy_reset()
The current code calls cpu_freq_policy_reset() once within
the SMP branch of the cpu_freq_timer_handler function, and
then calls it again at the beginning of cpu_freq_next_pstate().
This causes repeated resets of 'pstate_best' and
'num_unprocessed_cpus', which prevents the 'last core' from
being reached. The initiating core should perform a reset
before broadcasting, and other cores should not reset again.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-03 16:59:22 +02:00
Zhaoxiang Jin
c924d8ba15 cpu_freq: remove redundant XOR calculation in k_ipi_work_add
In the current code, 'target_cpus ^= (1U << _current_cpu->id)'
is first used to remove the current core. Then, k_ipi_work_add
performs 'target_cpus ^ (1U << _current_cpu->id)' again when
passing parameters. This will add the current core to the mask
again, causing the current core to receive IPI and directly call
cpu_freq_next_pstate() at the end, which may lead to duplicate
execution.

This commit changed 'target_cpus ^ (1U << _current_cpu->id)' to
'target_cpus' in k_ipi_work_add to avoid the second XOR.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-03 16:59:22 +02:00
Marcelo Cunha
1c2d7f48ee sensor: bq274xx: fix design energy calculation
In the function bq274xx_gauge_configure it was being used an hardocded
value of 3.7V instead of using the design voltage parameter defined in
the device tree.

Signed-off-by: Marcelo Cunha <mcunha@petsafe.net>
2025-11-03 16:59:14 +02:00
Khaoula Bidani
c28d779432 drivers: spi: stm32: Fix race condition causing lockup in half-duplex mode
This patch adds a check for the EOT (End Of Transfer) flag
inside the polling loop in spi_stm32_half_duplex_switch_to_receive().
If EOT is set, the transfer is already complete and the loop
is exited, preventing the lockup.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-11-03 16:59:05 +02:00
Alain Volmat
b9a15a95ec samples: video: capture: fix index increment in caps display
Since the i index is already being incremented as part of the
for loop statement, the i++ done as part of the loop body should
not be done since this lead to skip of entries of the table and
moreover might lead to invalid access outside of the table.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-03 16:58:56 +02:00
Jordan Yates
25269118b5 net: lib: sockets: add socket service fd requirement
The net socket service implementation permanently opens a file
descriptor, which should be taken into account by the build system.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-03 10:42:06 +02:00
Sergei Ovchinnikov
38f8925a91 drivers: mfd: npm13xx: add delay between timer strobing and hibernate
When using I2C clock frequency >= 250 kHz, it's been observed that the
nPM1300 would unexpectedly wake up before requested time has expired. Add
a delay between applying a new timer value and triggering hibernate to
mitigate this.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-11-03 10:41:55 +02:00
Diego Herranz
6fe24654b9 boards: imx93_evk_mimx9352_m33_ddr.yaml: remove 'flash: 0'
It was preventing this variant (imx93_evk/mimx9352/m33/ddr) to show up
in the boards documentation. Other similar boards with similar DDR variants
(e.g. imx95_evk/mimx9596/m7/ddr) don't include this 'flash: 0' line.

Signed-off-by: Diego Herranz <diegoherranz@diegoherranz.com>
2025-11-03 10:41:45 +02:00
Yuval Peress
bf0e0b3cad adc: esp32 add missing header
Without this header the logic in adc_esp32.c will never have either
ADC_CALI_SCHEME_CURVE_FITTING_SUPPORTED or
ADC_CALI_SCHEME_LINE_FITTING_SUPPORTED defined. This means
that we always see the warnings aout uncalibrated samples.

Signed-off-by: Yuval Peress <yuval.peress@gmail.com>
2025-11-02 12:34:34 -05:00
Immo Birnbaum
b6c5d91507 soc: xlnx: zynqmp: fix vectors and SRAM MPU region priority order
Place the 'vectors' region configuration behind the 'sram' and
'rom_region' configurations so that the MPU region for the
vectors takes precedence over the 'sram' region due to higher
region index = higher priority when resolving memory properties
/ permissions for overlapping regions. This is required for the
vectors to work properly if the SRAM base address is also at 0x0.

Fixes #96688.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-11-02 12:32:32 -05:00
11414 changed files with 386670 additions and 128308 deletions

View File

@@ -29,3 +29,4 @@
--ignore ENOSYS
--ignore IS_ENABLED_CONFIG
--ignore EXPORT_SYMBOL
--ignore COMPARISON_TO_NULL

6
.github/SECURITY.md vendored
View File

@@ -8,11 +8,11 @@ updates:
- The most recent release, and the release prior to that.
- Active LTS releases.
At this time, with the latest release of v4.2, the supported
At this time, with the latest release of v4.3, the supported
versions are:
- v4.2: Current release
- v4.1: Prior release
- v4.3: Current release
- v4.2: Prior release
- v3.7: Current LTS
## Reporting process

View File

@@ -5,6 +5,8 @@ updates:
directory: "/"
schedule:
interval: "weekly"
cooldown:
default-days: 7
commit-message:
prefix: "ci: github: "
labels: []
@@ -17,6 +19,8 @@ updates:
directory: "/doc"
schedule:
interval: "weekly"
cooldown:
default-days: 7
commit-message:
prefix: "ci: doc: "
labels: []

View File

@@ -28,22 +28,23 @@ jobs:
steps:
- name: Check out source code
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
persist-credentials: false
- name: Set up Python
uses: zephyrproject-rtos/action-python-env@ace91a63fd503cd618ff1eb83fbcf302dabd7d44 # main
uses: zephyrproject-rtos/action-python-env@32e53bef090c33d53aa94f1d9a9d29c93cfdc5f7 # main
with:
python-version: 3.12
- name: Fetch west.yml from pull request
- name: Fetch west.yml/Maintainer.yml from pull request
if: >
github.event_name == 'pull_request_target'
github.event_name == 'pull_request_target' && github.base_ref == 'main'
run: |
git fetch origin pull/${{ github.event.pull_request.number }}/merge
git show FETCH_HEAD:west.yml > pr_west.yml
git show FETCH_HEAD:MAINTAINERS.yml > pr_MAINTAINERS.yml
- name: west setup
if: >
@@ -62,7 +63,11 @@ jobs:
FLAGS+=" -r ${{ github.event.repository.name }}"
FLAGS+=" -M MAINTAINERS.yml"
if [ "${{ github.event_name }}" = "pull_request_target" ]; then
FLAGS+=" -P ${{ github.event.pull_request.number }} --updated-manifest pr_west.yml"
if [ "${{ github.base_ref }}" = "main" ]; then
FLAGS+=" -P ${{ github.event.pull_request.number }} --updated-manifest pr_west.yml --updated-maintainer-file pr_MAINTAINERS.yml"
else
FLAGS+=" -P ${{ github.event.pull_request.number }}"
fi
elif [ "${{ github.event_name }}" = "issues" ]; then
FLAGS+=" -I ${{ github.event.issue.number }}"
elif [ "${{ github.event_name }}" = "schedule" ]; then
@@ -71,4 +76,13 @@ jobs:
echo "Unknown event: ${{ github.event_name }}"
exit 1
fi
python3 scripts/set_assignees.py $FLAGS
python3 scripts/ci/set_assignees.py $FLAGS
- name: Check maintainer file changes
if: >
github.event_name == 'pull_request_target' && github.base_ref == 'main'
env:
GITHUB_TOKEN: ${{ secrets.ZB_PR_ASSIGNER_GITHUB_TOKEN }}
run: |
python ./scripts/ci/check_maintainer_changes.py \
--repo zephyrproject-rtos/zephyr MAINTAINERS.yml pr_MAINTAINERS.yml

View File

@@ -26,7 +26,7 @@ jobs:
steps:
- name: Check out source code
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0

View File

@@ -19,12 +19,12 @@ jobs:
steps:
- name: Download artifacts
uses: dawidd6/action-download-artifact@ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5 # v11
uses: dawidd6/action-download-artifact@0bd50d53a6d7fb5cb921e607957e9cc12b4ce392 # v12
with:
run_id: ${{ github.event.workflow_run.id }}
- name: Publish BabbleSim Test Results
uses: EnricoMi/publish-unit-test-result-action@3a74b2957438d0b6e2e61d67b05318aa25c9e6c6 # v2.20.0
uses: EnricoMi/publish-unit-test-result-action@27d65e188ec43221b20d26de30f4892fad91df2f # v2.22.0
with:
check_name: BabbleSim Test Results
comment_mode: off

View File

@@ -42,7 +42,7 @@ jobs:
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.6.20251003
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.7.20251127
options: '--entrypoint /bin/bash'
env:
ZEPHYR_TOOLCHAIN_VARIANT: zephyr
@@ -74,7 +74,7 @@ jobs:
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
@@ -102,7 +102,7 @@ jobs:
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Check common triggering files
uses: tj-actions/changed-files@24d32ffd492484c1d75e0c0b894501ddb9d30d62 # v47.0.0
uses: tj-actions/changed-files@e0021407031f5be11a464abee9a0776171c79891 # v47.0.1
id: check-common-files
with:
files: |
@@ -121,7 +121,7 @@ jobs:
modules/hal_nordic/**
- name: Check if Bluethooth files changed
uses: tj-actions/changed-files@24d32ffd492484c1d75e0c0b894501ddb9d30d62 # v47.0.0
uses: tj-actions/changed-files@e0021407031f5be11a464abee9a0776171c79891 # v47.0.1
id: check-bluetooth-files
with:
files: |
@@ -131,7 +131,7 @@ jobs:
tests/bsim/bluetooth/
- name: Check if Networking files changed
uses: tj-actions/changed-files@24d32ffd492484c1d75e0c0b894501ddb9d30d62 # v47.0.0
uses: tj-actions/changed-files@e0021407031f5be11a464abee9a0776171c79891 # v47.0.1
id: check-networking-files
with:
files: |
@@ -144,7 +144,7 @@ jobs:
include/zephyr/net/ieee802154*
- name: Check if UART files changed
uses: tj-actions/changed-files@24d32ffd492484c1d75e0c0b894501ddb9d30d62 # v47.0.0
uses: tj-actions/changed-files@e0021407031f5be11a464abee9a0776171c79891 # v47.0.1
id: check-uart-files
with:
files: |
@@ -189,7 +189,7 @@ jobs:
- name: Upload Unit Test Results in HTML
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: HTML Unit Test Results
if-no-files-found: ignore
@@ -197,7 +197,7 @@ jobs:
junit.html
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@3a74b2957438d0b6e2e61d67b05318aa25c9e6c6 # v2.20.0
uses: EnricoMi/publish-unit-test-result-action@27d65e188ec43221b20d26de30f4892fad91df2f # v2.22.0
with:
check_name: Bsim Test Results
files: "junit.xml"
@@ -205,7 +205,7 @@ jobs:
- name: Upload Event Details
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: event
path: |

View File

@@ -23,7 +23,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
@@ -51,7 +51,7 @@ jobs:
echo "BUGS_PICKLE_PATH=${BUGS_PICKLE_PATH}" >> ${GITHUB_ENV}
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
uses: aws-actions/configure-aws-credentials@61815dcd50bd041e203e49132bacad1fd04d2708 # v5.1.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 }}

View File

@@ -18,7 +18,7 @@ jobs:
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.6.20251003
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.7.20251127
options: '--entrypoint /bin/bash'
strategy:
fail-fast: false
@@ -53,7 +53,7 @@ jobs:
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
persist-credentials: false
@@ -123,7 +123,7 @@ jobs:
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: Unit Test Results (Subset ${{ matrix.subset }})
path: |
@@ -140,13 +140,13 @@ jobs:
if: (success() || failure())
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
persist-credentials: false
- name: Download Artifacts
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0
with:
path: artifacts
@@ -168,7 +168,7 @@ jobs:
- name: Upload Unit Test Results in HTML
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: HTML Unit Test Results
if-no-files-found: ignore
@@ -176,7 +176,7 @@ jobs:
junit-clang.html
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@3a74b2957438d0b6e2e61d67b05318aa25c9e6c6 # v2.20.0
uses: EnricoMi/publish-unit-test-result-action@27d65e188ec43221b20d26de30f4892fad91df2f # v2.22.0
if: always()
with:
check_name: Unit Test Results

View File

@@ -20,7 +20,7 @@ jobs:
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.6.20251003
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.7.20251127
options: '--entrypoint /bin/bash'
strategy:
fail-fast: false
@@ -67,7 +67,7 @@ jobs:
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
@@ -126,7 +126,7 @@ jobs:
- name: Upload Doxygen Coverage Results
if: matrix.platform == 'unit_testing'
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: doxygen-coverage-results
path: |
@@ -145,7 +145,7 @@ jobs:
- name: Upload Coverage Results
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: Coverage Data (Subset ${{ matrix.normalized }})
path: |
@@ -161,7 +161,7 @@ jobs:
steps:
- name: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
@@ -177,7 +177,7 @@ jobs:
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Download Artifacts
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0
with:
path: coverage/reports
@@ -242,7 +242,7 @@ jobs:
- name: Upload Merged Coverage Results and Report
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: Coverage Data and report
path: |
@@ -253,7 +253,7 @@ jobs:
- name: Upload test coverage to Codecov
if: always()
uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # v5.5.1
uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5.5.2
with:
env_vars: OS,PYTHON
fail_ci_if_error: false
@@ -264,7 +264,7 @@ jobs:
- name: Upload Doxygen coverage to Codecov
if: always()
uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # v5.5.1
uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5.5.2
with:
env_vars: OS,PYTHON
fail_ci_if_error: false

View File

@@ -36,10 +36,10 @@ jobs:
config: ./.github/codeql/codeql-js-config.yml
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Initialize CodeQL
uses: github/codeql-action/init@64d10c13136e1c5bce3e5fbde8d4906eeaafc885 # v3.30.6
uses: github/codeql-action/init@cdefb33c0f6224e58673d9004f47f7cb3e328b89 # v4.31.10
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}
@@ -53,6 +53,6 @@ jobs:
exit 0
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@64d10c13136e1c5bce3e5fbde8d4906eeaafc885 # v3.30.6
uses: github/codeql-action/analyze@cdefb33c0f6224e58673d9004f47f7cb3e328b89 # v4.31.10
with:
category: "/language:${{matrix.language}}"

View File

@@ -11,7 +11,7 @@ jobs:
name: Run coding guidelines checks on patch series (PR)
steps:
- name: Checkout the code
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0

View File

@@ -21,7 +21,7 @@ jobs:
echo "$HOME/.local/bin" >> $GITHUB_PATH
- name: Checkout the code
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -61,7 +61,7 @@ jobs:
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: Setup Node.js
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0
with:
node-version: "lts/*"
cache: npm
@@ -91,14 +91,14 @@ jobs:
./scripts/ci/check_compliance.py --annotate $excludes -c origin/${BASE_REF}..
- name: upload-results
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
continue-on-error: true
with:
name: compliance.xml
path: compliance.xml
- name: Upload dts linter patch
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
continue-on-error: true
if: hashFiles('dts_linter.patch') != ''
with:

View File

@@ -20,14 +20,14 @@ jobs:
steps:
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
uses: aws-actions/configure-aws-credentials@61815dcd50bd041e203e49132bacad1fd04d2708 # v5.1.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: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0

View File

@@ -33,7 +33,7 @@ jobs:
os: [ubuntu-22.04, macos-14, windows-2022]
steps:
- name: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0

View File

@@ -15,8 +15,8 @@ permissions:
contents: read
env:
DOXYGEN_VERSION: 1.14.0
DOXYGEN_MD5SUM: e761a5097ae20ecccfd02041925f102a
DOXYGEN_VERSION: 1.15.0
DOXYGEN_SHA256SUM: 0ec2e5b2c3cd82b7106d19cb42d8466450730b8cb7a9e85af712be38bf4523a1
JOB_COUNT: 8
jobs:
@@ -27,12 +27,12 @@ jobs:
file_check: ${{ steps.check-doc-files.outputs.any_modified }}
steps:
- name: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Check if Documentation related files changed
uses: tj-actions/changed-files@24d32ffd492484c1d75e0c0b894501ddb9d30d62 # v47.0.0
uses: tj-actions/changed-files@e0021407031f5be11a464abee9a0776171c79891 # v47.0.1
id: check-doc-files
with:
files: |
@@ -59,7 +59,7 @@ jobs:
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.6.20251003
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.7.20251127
options: '--entrypoint /bin/bash'
timeout-minutes: 60
concurrency:
@@ -92,7 +92,7 @@ jobs:
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -156,13 +156,13 @@ jobs:
tar --use-compress-program="xz -T0" -cf api-coverage.tar.xz coverage-report
- name: Upload HTML output
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: html-output
path: html-output.tar.xz
- name: Upload Doxygen coverage artifacts
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: api-coverage
path: api-coverage.tar.xz
@@ -183,7 +183,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@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
if: github.event_name == 'pull_request'
with:
name: pr_num
@@ -202,7 +202,7 @@ jobs:
steps:
- name: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: zephyr
@@ -221,7 +221,7 @@ jobs:
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
echo "${DOXYGEN_SHA256SUM} doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz" | sha256sum -c
if [ $? -ne 0 ]; then
echo "Failed to verify doxygen tarball"
exit 1
@@ -230,7 +230,7 @@ jobs:
echo "/opt/doxygen-${DOXYGEN_VERSION}/bin" >> $GITHUB_PATH
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@c125c5ebeeadbd727fa740b407f862734af1e52a # v1.0.9
uses: zephyrproject-rtos/action-zephyr-setup@360ff9b36e58499d9eb28015cdcde7ca03a5b04d # v1.0.12
with:
app-path: zephyr
toolchains: 'arm-zephyr-eabi'
@@ -259,7 +259,7 @@ jobs:
- name: upload-build
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: pdf-output
if-no-files-found: ignore

View File

@@ -25,7 +25,7 @@ jobs:
steps:
- name: Download artifacts
id: download-artifacts
uses: dawidd6/action-download-artifact@ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5 # v11
uses: dawidd6/action-download-artifact@0bd50d53a6d7fb5cb921e607957e9cc12b4ce392 # v12
with:
workflow: doc-build.yml
run_id: ${{ github.event.workflow_run.id }}
@@ -43,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@2e20fd5ee53b691e27455ce7ca3b16ea885140e8 # v0.15.0
uses: carpentries/actions/check-valid-pr@083bb9952b1414bd2b9e10ecec1717c938aba4c5 # v0.17.0
with:
pr: ${{ env.PR_NUM }}
sha: ${{ github.event.workflow_run.head_sha }}
@@ -66,7 +66,7 @@ jobs:
- name: Configure AWS Credentials
if: steps.download-artifacts.outputs.found_artifact == 'true'
uses: aws-actions/configure-aws-credentials@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
uses: aws-actions/configure-aws-credentials@61815dcd50bd041e203e49132bacad1fd04d2708 # v5.1.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

@@ -27,7 +27,7 @@ jobs:
steps:
- name: Download artifacts
uses: dawidd6/action-download-artifact@ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5 # v11
uses: dawidd6/action-download-artifact@0bd50d53a6d7fb5cb921e607957e9cc12b4ce392 # v12
with:
workflow: doc-build.yml
run_id: ${{ github.event.workflow_run.id }}
@@ -40,7 +40,7 @@ jobs:
fi
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
uses: aws-actions/configure-aws-credentials@61815dcd50bd041e203e49132bacad1fd04d2708 # v5.1.1
with:
aws-access-key-id: ${{ vars.AWS_DOCS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_DOCS_SECRET_ACCESS_KEY }}

View File

@@ -15,12 +15,12 @@ jobs:
runs-on: ubuntu-24.04
steps:
- name: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: zephyr
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@c125c5ebeeadbd727fa740b407f862734af1e52a # v1.0.9
uses: zephyrproject-rtos/action-zephyr-setup@360ff9b36e58499d9eb28015cdcde7ca03a5b04d # v1.0.12
with:
app-path: zephyr
toolchains: 'arm-zephyr-eabi'

View File

@@ -28,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.28.6.20251003
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.7.20251127
options: '--entrypoint /bin/bash'
defaults:
run:
@@ -62,7 +62,7 @@ jobs:
sudo apt-get install -y python3-venv
- name: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -89,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@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
uses: aws-actions/configure-aws-credentials@61815dcd50bd041e203e49132bacad1fd04d2708 # v5.1.1
with:
aws-access-key-id: ${{ vars.AWS_TESTING_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_TESTING_SECRET_ACCESS_KEY }}

View File

@@ -18,7 +18,7 @@ jobs:
issues: write # to comment on issues
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: zephyrproject-rtos/action-first-interaction@58853996b1ac504b8e0f6964301f369d2bb22e5c # v1.1.1+zephyr.6
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -32,7 +32,7 @@ jobs:
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: zephyr
fetch-depth: 0
@@ -59,10 +59,10 @@ jobs:
python-version: 3.12
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@c125c5ebeeadbd727fa740b407f862734af1e52a # v1.0.9
uses: zephyrproject-rtos/action-zephyr-setup@360ff9b36e58499d9eb28015cdcde7ca03a5b04d # v1.0.12
with:
app-path: zephyr
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
toolchains: arm-zephyr-eabi:riscv64-zephyr-elf
ccache-cache-key: hw-${{ matrix.os }}
- name: Build firmware
@@ -76,11 +76,19 @@ jobs:
elif [ "${{ runner.os }}-${{ runner.arch }}" == "Linux-ARM64" ]; then
EXTRA_TWISTER_FLAGS="--exclude-platform native_sim/native"
fi
west twister --runtime-artifact-cleanup --force-color --inline-logs -T samples/hello_world -T samples/cpp/hello_world -v $EXTRA_TWISTER_FLAGS
west twister \
-p native_sim -p qemu_cortex_m0 -p qemu_riscv32 -p qemu_riscv64 \
--runtime-artifact-cleanup \
--force-color \
--inline-logs \
-T samples/hello_world \
-T samples/cpp/hello_world \
-v \
$EXTRA_TWISTER_FLAGS
- name: Upload artifacts
if: failure()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
if-no-files-found: ignore
path:

View File

@@ -38,14 +38,14 @@ jobs:
token: ${{ secrets.GITHUB_TOKEN }}
- name: upload-stats
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
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@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
uses: aws-actions/configure-aws-credentials@61815dcd50bd041e203e49132bacad1fd04d2708 # v5.1.1
with:
aws-access-key-id: ${{ vars.AWS_TESTING_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_TESTING_SECRET_ACCESS_KEY }}

View File

@@ -11,7 +11,7 @@ jobs:
name: Scan code for licenses
steps:
- name: Checkout the code
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
- name: Scan the code
@@ -20,7 +20,7 @@ jobs:
with:
directory-to-scan: 'scan/'
- name: Artifact Upload
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: scancode
path: ./artifacts

View File

@@ -1,43 +0,0 @@
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@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.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 pull request
run: |
git fetch origin pull/${{ github.event.pull_request.number }}/merge
git show FETCH_HEAD:MAINTAINERS.yml > pr_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 MAINTAINERS.yml pr_MAINTAINERS.yml

View File

@@ -13,7 +13,7 @@ jobs:
name: Manifest
steps:
- name: Checkout the code
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: zephyrproject/zephyr
fetch-depth: 0

View File

@@ -14,6 +14,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Ensure SHA pinned actions
uses: zgosalvez/github-actions-ensure-sha-pinned-actions@9e9574ef04ea69da568d6249bd69539ccc704e74 # v4.0.0
uses: zgosalvez/github-actions-ensure-sha-pinned-actions@6124774845927d14c601359ab8138699fa5b70c3 # v4.0.1

View File

@@ -8,18 +8,22 @@ on:
- reopened
- labeled
- unlabeled
- edited
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true
jobs:
do-not-merge:
name: Prevent Merging
runs-on: ubuntu-24.04
timeout-minutes: 30
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0

View File

@@ -32,7 +32,7 @@ jobs:
os: [ubuntu-24.04]
steps:
- name: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0

View File

@@ -15,7 +15,7 @@ jobs:
permissions:
contents: write # to create GitHub release entry
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
@@ -31,7 +31,7 @@ jobs:
args: spdx -o zephyr-${{ steps.get_version.outputs.VERSION }}.spdx
- name: upload-results
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
continue-on-error: true
with:
name: zephyr-${{ steps.get_version.outputs.VERSION }}.spdx

View File

@@ -29,7 +29,7 @@ jobs:
steps:
- name: "Checkout code"
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
@@ -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@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
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@64d10c13136e1c5bce3e5fbde8d4906eeaafc885 # v3.30.6
uses: github/codeql-action/upload-sarif@cdefb33c0f6224e58673d9004f47f7cb3e328b89 # v4.31.10
with:
sarif_file: results.sarif

View File

@@ -32,7 +32,7 @@ jobs:
os: [ubuntu-24.04]
steps:
- name: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0

View File

@@ -16,7 +16,7 @@ jobs:
issues: write # to comment on stale issues
steps:
- uses: actions/stale@5f858e3efba33a5ca4407a664cc011ad407f2008 # v10.1.0
- uses: actions/stale@997185467fa4f803885201cee163a9f38240193d # v10.1.1
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

@@ -16,7 +16,7 @@ jobs:
runs-on: ubuntu-24.04
steps:
- name: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0

View File

@@ -23,7 +23,7 @@ jobs:
steps:
# Needed for elasticearch and upload script
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
persist-credentials: false
@@ -39,7 +39,7 @@ jobs:
- name: Download Artifacts
id: download-artifacts
uses: dawidd6/action-download-artifact@ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5 # v11
uses: dawidd6/action-download-artifact@0bd50d53a6d7fb5cb921e607957e9cc12b4ce392 # v12
with:
path: artifacts
workflow: twister.yml

View File

@@ -42,7 +42,7 @@ jobs:
steps:
- name: Checkout
if: github.event_name == 'pull_request'
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -65,10 +65,9 @@ jobs:
- name: Setup Zephyr project
if: github.event_name == 'pull_request'
uses: zephyrproject-rtos/action-zephyr-setup@c125c5ebeeadbd727fa740b407f862734af1e52a # v1.0.9
uses: zephyrproject-rtos/action-zephyr-setup@360ff9b36e58499d9eb28015cdcde7ca03a5b04d # v1.0.12
with:
app-path: zephyr
toolchains: all
enable-ccache: false
- name: Environment Setup
@@ -128,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.28.6.20251003
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.7.20251127
options: '--entrypoint /bin/bash'
strategy:
fail-fast: false
@@ -172,7 +171,7 @@ jobs:
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -193,7 +192,7 @@ jobs:
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
west init -l . || true
west config manifest.group-filter -- +ci,+optional
west config manifest.group-filter -- +ci,+optional,+testing
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'
@@ -284,7 +283,7 @@ jobs:
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: Unit Test Results (Subset ${{ matrix.subset }})
if-no-files-found: ignore
@@ -306,7 +305,7 @@ jobs:
- if: matrix.subset == 1 && github.event_name == 'push'
name: Upload the list of Python packages
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: Frozen PIP package set
path: |
@@ -324,7 +323,7 @@ jobs:
steps:
- name: Check out source code
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -342,7 +341,7 @@ jobs:
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Download Artifacts
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0
with:
path: artifacts
@@ -353,7 +352,7 @@ jobs:
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: Unit Test Results
if-no-files-found: ignore
@@ -363,12 +362,12 @@ jobs:
- name: Upload test results to Codecov
if: ${{ !cancelled() && (github.event_name == 'push') }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
uses: codecov/test-results-action@0fa95f0e1eeaafde2c782583b36b28ad0d8c77d3 # v1.2.1
with:
token: ${{ secrets.CODECOV_TOKEN }}
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@3a74b2957438d0b6e2e61d67b05318aa25c9e6c6 # v2.20.0
uses: EnricoMi/publish-unit-test-result-action@27d65e188ec43221b20d26de30f4892fad91df2f # v2.22.0
with:
check_name: Unit Test Results
files: "**/twister.xml"
@@ -385,7 +384,7 @@ jobs:
- name: Upload Twister Analysis Results
if: needs.twister-build.result == 'failure'
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: Twister Analysis Results
if-no-files-found: ignore

View File

@@ -39,7 +39,7 @@ jobs:
os: [ubuntu-24.04]
steps:
- name: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0

View File

@@ -27,12 +27,11 @@ jobs:
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']
os: [ubuntu-24.04, macos-14, windows-2022]
fail-fast: false
runs-on: ${{ matrix.os }}
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: zephyr
fetch-depth: 0
@@ -45,14 +44,15 @@ jobs:
cache-dependency-path: scripts/requirements-actions.txt
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@c125c5ebeeadbd727fa740b407f862734af1e52a # v1.0.9
uses: zephyrproject-rtos/action-zephyr-setup@360ff9b36e58499d9eb28015cdcde7ca03a5b04d # v1.0.12
with:
app-path: zephyr
toolchains: all
toolchains: 'arm-zephyr-eabi:riscv64-zephyr-elf:x86_64-zephyr-elf'
enable-ccache: false
west-group-filter: -tools,-bootloader,-babblesim,-hal
west-project-filter: -nrf_hw_models,+cmsis,+hal_xtensa,+cmsis_6
- name: Run Pytest For Twister Black Box Tests
if: ${{ runner.os == 'Linux' }}
working-directory: zephyr
shell: bash
env:
@@ -64,125 +64,3 @@ jobs:
echo "Run twister tests"
source zephyr-env.sh
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 --detailed-test-id
- 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 --detailed-test-id
- 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 --detailed-test-id
- 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 --detailed-test-id
rm log.file

View File

@@ -36,7 +36,7 @@ jobs:
os: [ubuntu-22.04, macos-14, windows-2022]
steps:
- name: checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0

1
.gitignore vendored
View File

@@ -17,6 +17,7 @@
build*/
!doc/build/
!scripts/build
!share/sysbuild/build
!tests/drivers/build_all
!scripts/pylib/build_helpers
cscope.*

View File

@@ -5,35 +5,12 @@
# remove entries for files that pass CI compliance testing.
[lint.per-file-ignores]
"./arch/x86/gen_gdt.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./arch/x86/gen_idt.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
]
"./arch/x86/gen_mmu.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
"UP034", # https://docs.astral.sh/ruff/rules/extraneous-parentheses
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./arch/x86/zefi/zefi.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
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./arch/xtensa/core/gen_vectors.py" = [
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./arch/xtensa/core/gen_zsr.py" = [
"SIM401", # https://docs.astral.sh/ruff/rules/if-else-block-instead-of-dict-get
]
"./boards/microchip/mec172xevb_assy6906/support/mec172x_remote_flasher.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
@@ -142,196 +119,8 @@
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM112", # https://docs.astral.sh/ruff/rules/uncapitalized-environment-variables
]
"./scripts/build/check_init_priorities.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"F401", # https://docs.astral.sh/ruff/rules/unused-import
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./scripts/build/check_init_priorities_test.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/build/elf_parser.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
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/build/file2hex.py" = [
"B023", # https://docs.astral.sh/ruff/rules/function-uses-loop-variable
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
]
"./scripts/build/gen_app_partitions.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP030", # https://docs.astral.sh/ruff/rules/format-literals
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/build/gen_cfb_font_header.py" = [
"E101", # https://docs.astral.sh/ruff/rules/mixed-spaces-and-tabs
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/build/gen_device_deps.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/build/gen_image_info.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
]
"./scripts/build/gen_isr_tables.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/build/gen_isr_tables_parser_carrays.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
"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/build/gen_isr_tables_parser_local.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
"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/build/gen_kobject_list.py" = [
"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
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"SIM401", # https://docs.astral.sh/ruff/rules/if-else-block-instead-of-dict-get
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
"UP032", # https://docs.astral.sh/ruff/rules/f-string
"W191", # https://docs.astral.sh/ruff/rules/tab-indentation
]
"./scripts/build/gen_kobject_placeholders.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
]
"./scripts/build/gen_offset_header.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./scripts/build/gen_relocate_app.py" = [
"E101", # https://docs.astral.sh/ruff/rules/mixed-spaces-and-tabs
]
"./scripts/build/gen_strerror_table.py" = [
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"SIM105", # https://docs.astral.sh/ruff/rules/suppressible-exception
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/build/gen_strsignal_table.py" = [
"SIM105", # https://docs.astral.sh/ruff/rules/suppressible-exception
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/build/gen_symtab.py" = [
"B007", # https://docs.astral.sh/ruff/rules/unused-loop-control-variable
"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
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./scripts/build/gen_syscalls.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"E713", # https://docs.astral.sh/ruff/rules/not-in-test
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/build/llext_inject_slids.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM113", # https://docs.astral.sh/ruff/rules/enumerate-for-loop
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./scripts/build/llext_prepare_exptab.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
"SIM113", # https://docs.astral.sh/ruff/rules/enumerate-for-loop
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./scripts/build/mergehex.py" = [
"B904", # https://docs.astral.sh/ruff/rules/raise-without-from-inside-except
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/build/parse_syscalls.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./scripts/build/process_gperf.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./scripts/build/subfolder_list.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/build/uf2conv.py" = [
"B011", # https://docs.astral.sh/ruff/rules/assert-false
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"E711", # https://docs.astral.sh/ruff/rules/none-comparison
"E722", # https://docs.astral.sh/ruff/rules/bare-except
"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
"SIM118", # https://docs.astral.sh/ruff/rules/in-dict-keys
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/ci/check_compliance.py" = [
"B904", # https://docs.astral.sh/ruff/rules/raise-without-from-inside-except
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"E741", # https://docs.astral.sh/ruff/rules/ambiguous-variable-name
"F401", # https://docs.astral.sh/ruff/rules/unused-import
"SIM112", # https://docs.astral.sh/ruff/rules/uncapitalized-environment-variables
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/ci/coverage/coverage_analysis.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/ci/errno.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/ci/guideline_check.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/ci/stats/merged_prs.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/ci/test_plan.py" = [
"B006", # https://docs.astral.sh/ruff/rules/mutable-argument-default
"E401", # https://docs.astral.sh/ruff/rules/multiple-imports-on-one-line
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"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
"SIM102", # https://docs.astral.sh/ruff/rules/collapsible-if
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/ci/upload_test_results_es.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
@@ -339,62 +128,14 @@
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/ci/version_mgr.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/coredump/coredump_gdbserver.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/coredump/coredump_parser/elf_parser.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
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./scripts/coredump/coredump_parser/log_parser.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"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/coredump/coredump_serial_log_parser.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/coredump/gdbstubs/arch/arm64.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./scripts/coredump/gdbstubs/arch/arm_cortex_m.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./scripts/coredump/gdbstubs/arch/risc_v.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./scripts/coredump/gdbstubs/arch/x86.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./scripts/coredump/gdbstubs/arch/x86_64.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./scripts/coredump/gdbstubs/arch/xtensa.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM113", # https://docs.astral.sh/ruff/rules/enumerate-for-loop
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./scripts/coredump/gdbstubs/gdbstub.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/dts/gen_defines.py" = [
"B007", # https://docs.astral.sh/ruff/rules/unused-loop-control-variable
@@ -569,32 +310,14 @@
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
"./scripts/pylib/pytest-twister-harness/src/twister_harness/device/binary_adapter.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"SIM103", # https://docs.astral.sh/ruff/rules/needless-bool
]
"./scripts/pylib/pytest-twister-harness/src/twister_harness/device/device_adapter.py" = [
"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/factory.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP006", # https://docs.astral.sh/ruff/rules/non-pep585-annotation
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
]
"./scripts/pylib/pytest-twister-harness/src/twister_harness/device/fifo_handler.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
]
"./scripts/pylib/pytest-twister-harness/src/twister_harness/device/hardware_adapter.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP024", # https://docs.astral.sh/ruff/rules/os-error-alias
]
"./scripts/pylib/pytest-twister-harness/src/twister_harness/device/qemu_adapter.py" = [
"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/fixtures.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
@@ -1150,12 +873,7 @@
[format]
exclude = [
"./arch/x86/gen_gdt.py",
"./arch/x86/gen_idt.py",
"./arch/x86/gen_mmu.py",
"./arch/x86/zefi/zefi.py",
"./arch/xtensa/core/gen_vectors.py",
"./arch/xtensa/core/gen_zsr.py",
"./boards/microchip/mec172xevb_assy6906/support/mec172x_remote_flasher.py",
"./doc/_scripts/gen_devicetree_rest.py",
"./doc/_scripts/redirects.py",
@@ -1184,52 +902,8 @@ exclude = [
"./samples/subsys/testsuite/pytest/basic/pytest/conftest.py",
"./samples/subsys/testsuite/pytest/basic/pytest/test_sample.py",
"./samples/subsys/zbus/remote_mock/remote_mock.py",
"./scripts/build/check_init_priorities.py",
"./scripts/build/check_init_priorities_test.py",
"./scripts/build/elf_parser.py",
"./scripts/build/file2hex.py",
"./scripts/build/gen_app_partitions.py",
"./scripts/build/gen_cfb_font_header.py",
"./scripts/build/gen_device_deps.py",
"./scripts/build/gen_image_info.py",
"./scripts/build/gen_isr_tables.py",
"./scripts/build/gen_isr_tables_parser_carrays.py",
"./scripts/build/gen_isr_tables_parser_local.py",
"./scripts/build/gen_kobject_list.py",
"./scripts/build/gen_kobject_placeholders.py",
"./scripts/build/gen_offset_header.py",
"./scripts/build/gen_strerror_table.py",
"./scripts/build/gen_strsignal_table.py",
"./scripts/build/gen_symtab.py",
"./scripts/build/gen_syscalls.py",
"./scripts/build/llext_inject_slids.py",
"./scripts/build/llext_prepare_exptab.py",
"./scripts/build/mergehex.py",
"./scripts/build/parse_syscalls.py",
"./scripts/build/process_gperf.py",
"./scripts/build/subfolder_list.py",
"./scripts/build/uf2conv.py",
"./scripts/check_maintainers.py",
"./scripts/ci/check_compliance.py",
"./scripts/ci/coverage/coverage_analysis.py",
"./scripts/ci/errno.py",
"./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",
"./scripts/coredump/coredump_parser/elf_parser.py",
"./scripts/coredump/coredump_parser/log_parser.py",
"./scripts/coredump/coredump_serial_log_parser.py",
"./scripts/coredump/gdbstubs/arch/arm64.py",
"./scripts/coredump/gdbstubs/arch/arm_cortex_m.py",
"./scripts/coredump/gdbstubs/arch/risc_v.py",
"./scripts/coredump/gdbstubs/arch/x86.py",
"./scripts/coredump/gdbstubs/arch/x86_64.py",
"./scripts/coredump/gdbstubs/arch/xtensa.py",
"./scripts/coredump/gdbstubs/gdbstub.py",
"./scripts/dts/gen_defines.py",
"./scripts/dts/gen_driver_kconfig_dts.py",
"./scripts/dts/gen_dts_cmake.py",
@@ -1260,24 +934,10 @@ exclude = [
"./scripts/list_boards.py",
"./scripts/list_hardware.py",
"./scripts/list_shields.py",
"./scripts/logging/dictionary/database_gen.py",
"./scripts/logging/dictionary/dictionary_parser/data_types.py",
"./scripts/logging/dictionary/dictionary_parser/log_database.py",
"./scripts/logging/dictionary/dictionary_parser/log_parser.py",
"./scripts/logging/dictionary/dictionary_parser/log_parser_v1.py",
"./scripts/logging/dictionary/dictionary_parser/log_parser_v3.py",
"./scripts/logging/dictionary/dictionary_parser/utils.py",
"./scripts/logging/dictionary/log_parser.py",
"./scripts/logging/dictionary/log_parser_uart.py",
"./scripts/make_bugs_pickle.py",
"./scripts/net/enumerate_http_status.py",
"./scripts/profiling/stackcollapse.py",
"./scripts/pylib/build_helpers/domains.py",
"./scripts/pylib/pytest-twister-harness/src/twister_harness/device/binary_adapter.py",
"./scripts/pylib/pytest-twister-harness/src/twister_harness/device/device_adapter.py",
"./scripts/pylib/pytest-twister-harness/src/twister_harness/device/fifo_handler.py",
"./scripts/pylib/pytest-twister-harness/src/twister_harness/device/hardware_adapter.py",
"./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/plugin.py",
@@ -1371,7 +1031,6 @@ exclude = [
"./scripts/utils/pinctrl_nrf_migrate.py",
"./scripts/utils/twister_to_list.py",
"./scripts/west_commands/bindesc.py",
"./scripts/west_commands/blobs.py",
"./scripts/west_commands/boards.py",
"./scripts/west_commands/build.py",
"./scripts/west_commands/build_helpers.py",
@@ -1484,6 +1143,5 @@ exclude = [
"./tests/net/socket/tls_configurations/pytest/test_app_vs_openssl.py",
"./tests/net/socket/udp/generate-c-string.py",
"./tests/subsys/debug/gdbstub/pytest/test_gdbstub.py",
"./tests/subsys/logging/dictionary/pytest/test_logging_dictionary.py",
"./tests/ztest/ztest_param/pytest/test_parameters.py",
]

View File

@@ -166,7 +166,7 @@ if(CONFIG_COMPILER_WARNINGS_AS_ERRORS)
zephyr_link_libraries($<TARGET_PROPERTY:linker,warnings_as_errors>)
endif()
if(CONFIG_DEPRECATION_TEST)
if(CONFIG_DEPRECATION_TEST OR NOT CONFIG_WARN_DEPRECATED)
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>>)
@@ -311,8 +311,15 @@ compiler_simple_options(simple_options)
toolchain_linker_add_compiler_options(${simple_options})
if(CONFIG_LTO)
zephyr_compile_options($<TARGET_PROPERTY:compiler,optimization_lto>)
add_link_options($<TARGET_PROPERTY:linker,lto_arguments>)
if(CONFIG_LTO_SINGLE_THREADED)
zephyr_compile_options($<TARGET_PROPERTY:compiler,optimization_lto_st>)
add_link_options($<TARGET_PROPERTY:linker,lto_arguments_st>)
else()
set(genex_tgt_lto "$<TARGET_PROPERTY:LTO>")
set(genex_lto "$<TARGET_PROPERTY:compiler,optimization_lto>")
zephyr_compile_options("$<$<OR:$<STREQUAL:${genex_tgt_lto},>,${genex_tgt_lto}>:${genex_lto}>")
add_link_options($<TARGET_PROPERTY:linker,lto_arguments>)
endif()
endif()
if(CONFIG_STD_C23)
@@ -468,8 +475,6 @@ zephyr_compile_options(
$<$<COMPILE_LANGUAGE:ASM>:-D_ASMLANGUAGE>
)
find_package(Deprecated COMPONENTS toolchain_ld_base)
if(DEFINED TOOLCHAIN_LD_FLAGS)
zephyr_ld_options(${TOOLCHAIN_LD_FLAGS})
endif()
@@ -500,8 +505,6 @@ toolchain_ld_force_undefined_symbols(
)
if(NOT CONFIG_NATIVE_BUILD)
find_package(Deprecated COMPONENTS toolchain_ld_baremetal)
zephyr_link_libraries(PROPERTY baremetal)
# Note that some architectures will skip this flag if set to error, even
@@ -526,10 +529,6 @@ if(NOT CONFIG_NATIVE_BUILD)
endif()
if(CONFIG_CPP)
if(NOT CONFIG_MINIMAL_LIBCPP AND NOT CONFIG_NATIVE_LIBRARY)
find_package(Deprecated COMPONENTS toolchain_ld_cpp)
endif()
zephyr_link_libraries(PROPERTY cpp_base)
endif()
@@ -821,12 +820,12 @@ set(struct_tags_json ${CMAKE_CURRENT_BINARY_DIR}/misc/generated/struct_tags.json
# The syscalls subdirs txt file is constructed by python containing a list of folders to use for
# dependency handling, including empty folders.
# Windows: The list is used to specify DIRECTORY list with CMAKE_CONFIGURE_DEPENDS attribute.
# Other OS: The list will update whenever a file is added/removed/modified and ensure a re-build.
# Other OS: The list file is updated whenever a directory is added or removed.
set(syscalls_subdirs_txt ${CMAKE_CURRENT_BINARY_DIR}/misc/generated/syscalls_subdirs.txt)
# As syscalls_subdirs_txt is updated whenever a file is modified, this file can not be used for
# monitoring of added / removed folders. A trigger file is thus used for correct dependency
# handling. The trigger file will update when a folder is added / removed.
# As syscalls_subdirs_txt is updated only on directory add or remove, this file can not be used for
# monitoring of syscall changes. A trigger file is thus used for correct dependency handling. The
# trigger file will update when syscalls change.
set(syscalls_subdirs_trigger ${CMAKE_CURRENT_BINARY_DIR}/misc/generated/syscalls_subdirs.trigger)
if(NOT (${CMAKE_HOST_SYSTEM_NAME} STREQUAL Windows))
@@ -845,14 +844,13 @@ execute_process(
)
file(STRINGS ${syscalls_subdirs_txt} PARSE_SYSCALLS_PATHS_DEPENDS ENCODING UTF-8)
# Each header file must be monitored as file modifications are not reflected on directory level.
file(GLOB_RECURSE PARSE_SYSCALLS_HEADER_DEPENDS ${ZEPHYR_BASE}/include/*.h)
if(${CMAKE_HOST_SYSTEM_NAME} STREQUAL Windows)
# On windows only adding/removing files or folders will be reflected in depends.
# Hence adding a file requires CMake to re-run to add this file to the file list.
set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${PARSE_SYSCALLS_PATHS_DEPENDS})
# Also On Windows each header file must be monitored as file modifications are not reflected
# on directory level.
file(GLOB_RECURSE PARSE_SYSCALLS_HEADER_DEPENDS ${ZEPHYR_BASE}/include/*.h)
else()
# The syscall parsing depends on the folders in order to detect add/removed/modified files.
# When a folder is removed, CMake will try to find a target that creates that dependency.
@@ -883,10 +881,10 @@ else()
file(WRITE ${syscalls_subdirs_txt} "")
endif()
# On other OS'es, modifying a file is reflected on the folder timestamp and hence detected
# On other OS'es, using git checkout is reflected on the folder timestamp and hence detected
# when using depend on directory level.
# Thus CMake only needs to re-run when sub-directories are added / removed, which is indicated
# using a trigger file.
# by syscalls_subdirs_txt being updated.
set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${syscalls_subdirs_txt})
endif()
@@ -2289,7 +2287,7 @@ endif()
add_custom_command(
TARGET ${logical_target_for_zephyr_elf}
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E echo "Generating files from ${PROJECT_BINARY_DIR}/${KERNEL_ELF_NAME} for board: ${BOARD}"
COMMAND ${CMAKE_COMMAND} -E echo "Generating files from ${PROJECT_BINARY_DIR}/${KERNEL_ELF_NAME} for board: ${BOARD}${BOARD_QUALIFIERS}"
${post_build_commands}
BYPRODUCTS
${post_build_byproducts}

View File

@@ -1,4 +1,4 @@
# Contributor Covenant Code of Conduct
# Zephyr Project Code of Conduct
## Our Pledge

View File

@@ -9,6 +9,10 @@ source "Kconfig.constants"
osource "$(APPLICATION_SOURCE_DIR)/VERSION"
# This should be sourced early since the autogen Kconfig.dts options
# and macros may get used by shields/boards/SoC defconfig or modules.
source "dts/Kconfig"
# Include Kconfig.defconfig files first so that they can override defaults and
# other symbol/choice properties by adding extra symbol/choice definitions.
# After merging all definitions for a symbol/choice, Kconfig picks the first
@@ -33,10 +37,6 @@ osource "$(TOOLCHAIN_KCONFIG_DIR)/Kconfig.defconfig"
# This loads the testsuite defconfig
source "subsys/testsuite/Kconfig.defconfig"
# This should be early since the autogen Kconfig.dts symbols may get
# used by modules
source "dts/Kconfig"
menu "Modules"
source "modules/Kconfig"
@@ -357,18 +357,19 @@ menu "Compiler Options"
config REQUIRES_STD_C99
bool
select DEPRECATED
help
Hidden option to select compiler support C99 standard or higher.
config REQUIRES_STD_C11
bool
select DEPRECATED
select REQUIRES_STD_C99
help
Hidden option to select compiler support C11 standard or higher.
config REQUIRES_STD_C17
bool
select REQUIRES_STD_C11
help
Hidden option to select compiler support C17 standard or higher.
@@ -381,27 +382,28 @@ config REQUIRES_STD_C23
choice STD_C
prompt "C Standard"
default STD_C23 if REQUIRES_STD_C23
default STD_C17 if REQUIRES_STD_C17
default STD_C11 if REQUIRES_STD_C11
default STD_C99
default STD_C17
help
C Standards.
config STD_C90
bool "C90"
bool "C90 [DEPRECATED]"
select DEPRECATED
depends on !REQUIRES_STD_C99
help
1989 C standard as completed in 1989 and ratified by ISO/IEC
as ISO/IEC 9899:1990. This version is known as "ANSI C".
config STD_C99
bool "C99"
bool "C99 [DEPRECATED]"
select DEPRECATED
depends on !REQUIRES_STD_C11
help
1999 C standard.
config STD_C11
bool "C11"
bool "C11 [DEPRECATED]"
select DEPRECATED
depends on !REQUIRES_STD_C17
help
2011 C standard.
@@ -529,6 +531,14 @@ config LTO
help
This option enables Link Time Optimization.
config LTO_SINGLE_THREADED
bool "Single-threaded LTO"
depends on LTO
help
This option instructs the linker to use a single thread to process
LTO. See the following issue for more info:
https://github.com/zephyrproject-rtos/sdk-ng/issues/1038
config COMPILER_WARNINGS_AS_ERRORS
bool "Treat warnings as errors"
help
@@ -1011,7 +1021,8 @@ config WARN_DEPRECATED
prompt "Warn on deprecated usage"
help
Print a warning when the Kconfig tree is parsed if any deprecated
features are enabled.
features are enabled, or at compile time, when deprecated macros or
symbols are used.
config EXPERIMENTAL
bool
@@ -1061,8 +1072,6 @@ menu "Boot Options"
config IS_BOOTLOADER
bool "Act as a bootloader"
depends on XIP
depends on ARM
help
This option indicates that Zephyr will act as a bootloader to execute
a separate Zephyr image payload.

10
LICENSES/README.md Normal file
View File

@@ -0,0 +1,10 @@
> [!IMPORTANT]
> The license files in this directory are maintained as per the recommendation
> of the REUSE specification (https://reuse.software/spec-3.3).
> These are licenses that may apply to some components hosted in the source tree
> but that do not end up in built binaries
> (see https://docs.zephyrproject.org/latest/LICENSING.html#zephyr-licensing).
>
> These files do _not_ define the license of the Zephyr project itself.
> Zephyr is licensed under the Apache 2.0 license, as specified in
> the [LICENSE](/LICENSE) file at the root of the repository.

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
version = 1
# Declare default license and copyright text for files that typically do not include them.
# Declare default license and copyright text for files that typically do not or cannot include them.
[[annotations]]
path = [
# zephyr-keep-sorted-start
@@ -9,6 +9,7 @@ path = [
"**/*.conf",
"**/*.ecl",
"**/*.html",
"**/*.json",
"**/*.rst",
"**/*.yaml",
"**/*.yml",

View File

@@ -1,5 +1,5 @@
VERSION_MAJOR = 4
VERSION_MINOR = 3
PATCHLEVEL = 0
PATCHLEVEL = 99
VERSION_TWEAK = 0
EXTRAVERSION = rc2
EXTRAVERSION =

View File

@@ -137,6 +137,8 @@ config XTENSA
select THREAD_STACK_INFO
select ARCH_HAS_THREAD_PRIV_STACK_SPACE_GET if USERSPACE
select ARCH_SUPPORTS_COREDUMP_STACK_PTR if !SMP
select ARCH_HAS_USERSPACE if XTENSA_MMU || XTENSA_MPU
imply ARCH_HAS_RESERVED_PAGE_FRAMES if XTENSA_MMU
help
Xtensa architecture
@@ -153,12 +155,6 @@ config ARCH_POSIX
select BARRIER_OPERATIONS_BUILTIN
# POSIX arch based targets get their memory cleared on entry by the host OS
select SKIP_BSS_CLEAR
# Override the C standard used for compilation to C 2011
# This is due to some tests using _Static_assert which is a 2011 feature, but
# otherwise relying on compilers supporting it also when set to C99.
# This was in general ok, but with some host compilers and C library versions
# it led to problems. So we override it to 2011 for the native targets.
select REQUIRES_STD_C11
help
POSIX (native) architecture
@@ -764,13 +760,6 @@ config ARCH_HAS_EXTRA_EXCEPTION_INFO
config ARCH_HAS_GDBSTUB
bool
config ARCH_HAS_COHERENCE
bool
help
When selected, the architecture supports the
arch_mem_coherent() API and can link into incoherent/cached
memory using the ".cached" linker section.
config ARCH_HAS_THREAD_LOCAL_STORAGE
bool
@@ -1089,10 +1078,22 @@ config ICACHE
help
This option enables the support for the instruction cache (i-cache).
config CACHE_HAS_MIRRORED_MEMORY_REGIONS
bool "Mirrored memory region(s) for both cached and uncached access"
depends on CPU_CACHE_INCOHERENT
help
Enable this if hardware has mirrored memory regions at different
addressed when accessing one would go through cache, but accessing
the other would go to memory directly. A pointer can be cheaply
converted to cached or uncached access.
This applies to intra-CPU multiprocessing incoherence and makes only
sense when MP_MAX_NUM_CPUS > 1.
config CACHE_DOUBLEMAP
bool "Cache double-mapping support"
depends on CPU_CACHE_INCOHERENT
default y
select CACHE_HAS_MIRRORED_MEMORY_REGIONS
select DEPRECATED
help
Double-mapping behavior where a pointer can be cheaply converted to
point to the same cached/uncached memory at different locations.
@@ -1170,6 +1171,14 @@ config ARCH_CACHE
help
Integrated on-core cache controller
config SOC_CACHE
bool "SoC specific cache controller"
depends on SOC_HAS_CACHE_FUNCTIONS
help
SoC specific cache controller.
This requires soc_cache.h file to exist in search path.
config EXTERNAL_CACHE
bool "External cache controller"
help
@@ -1177,6 +1186,14 @@ config EXTERNAL_CACHE
endchoice
config CACHE_CAN_SAY_MEM_COHERENCE
bool
help
sys_cache_is_mem_coherent() is defined when enabled. This function can be
used to determine if a pointer lies inside "coherence regions" and can be
safely used in multiprocessor code without explicit flush or invalidate
operations.
endif # CACHE_MANAGEMENT
endmenu

View File

@@ -117,9 +117,7 @@ void arch_secondary_cpu_init(int cpu_num)
irq_enable(DT_IRQN(DT_NODELABEL(ici)));
#endif
#ifdef CONFIG_SOC_PER_CORE_INIT_HOOK
soc_per_core_init_hook();
#endif /* CONFIG_SOC_PER_CORE_INIT_HOOK */
/* call the function set by arch_cpu_start */
fn = arc_cpu_init[cpu_num].fn;

View File

@@ -318,7 +318,7 @@ void arc_dsp_disable(struct k_thread *thread, unsigned int options)
k_spinlock_key_t key = k_spin_lock(&lock);
/* Disable DSP or AGU capabilities for the thread */
thread->base.user_options &= ~(uint8_t)options;
thread->base.user_options &= ~(uint16_t)options;
k_spin_unlock(&lock, key);
}
@@ -329,7 +329,7 @@ void arc_dsp_enable(struct k_thread *thread, unsigned int options)
k_spinlock_key_t key = k_spin_lock(&lock);
/* Enable dsp or agu capabilities for the thread */
thread->base.user_options |= (uint8_t)options;
thread->base.user_options |= (uint16_t)options;
k_spin_unlock(&lock, key);
}

View File

@@ -36,9 +36,7 @@ static ALWAYS_INLINE void arch_kernel_init(void)
{
z_irq_setup();
#ifdef CONFIG_SOC_PER_CORE_INIT_HOOK
soc_per_core_init_hook();
#endif /* CONFIG_SOC_PER_CORE_INIT_HOOK */
}

View File

@@ -68,7 +68,7 @@ static ALWAYS_INLINE void z_irq_setup(void)
#ifdef CONFIG_ARC_NORMAL_FIRMWARE
/* normal mode cannot write irq_ctrl, ignore it */
aux_irq_ctrl_value = aux_irq_ctrl_value;
ARG_UNUSED(aux_irq_ctrl_value);
#else
z_arc_v2_aux_reg_write(_ARC_V2_AUX_IRQ_CTRL, aux_irq_ctrl_value);
#endif

View File

@@ -190,4 +190,43 @@ config HAS_SWO
help
When enabled, indicates that SoC has an SWO output
DT_CHOSEN_Z_DTCM := zephyr,dtcm
DT_CHOSEN_Z_ITCM := zephyr,itcm
choice
prompt "Vector table memory location"
depends on SRAM_VECTOR_TABLE
default ARM_VECTOR_TABLE_SRAM
config ARM_VECTOR_TABLE_SRAM
bool "Place the vector table in DT Chosen SRAM instead of DT Chosen Flash"
help
When executing in place (XiP), selecting this option will result in the
interrupt vector table being relocated from DT 'zephyr,flash' chosen
memory to DT 'zephyr,sram' chosen memory.
config ARM_VECTOR_TABLE_DTCM
bool "Place the vector table in DT Chosen DTCM instead of DT Chosen Flash"
depends on $(dt_chosen_enabled,$(DT_CHOSEN_Z_DTCM))
help
When executing in place (XiP), selecting this option will result in the
interrupt vector table being relocated from DT 'zephyr,flash' chosen
memory to DT 'zephyr,dtcm' chosen memory. While the vector table is
instruction-fetched during exception entry, a DTCM option is provided
for systems where ITCM is unavailable. DTCM still offers low-latency,
deterministic access compared to normal RAM, but is not the optimal
location for instruction fetch performance.
config ARM_VECTOR_TABLE_ITCM
bool "Place the vector table in DT Chosen ITCM instead of DT Chosen Flash"
depends on $(dt_chosen_enabled,$(DT_CHOSEN_Z_ITCM))
help
When executing in place (XiP), selecting this option will result in the
interrupt vector table being relocated from DT 'zephyr,flash' chosen
memory to DT 'zephyr,itcm' chosen memory. ITCM provides single-cycle,
deterministic instruction fetches via the CPU instruction bus, it offers
the lowest interrupt latency and is the preferred location when available.
endchoice
endmenu

View File

@@ -98,18 +98,18 @@ void arch_cpu_start(int cpu_num, k_thread_stack_t *stack, int sz, arch_cpustart_
{
int cpu_count, i, j;
uint32_t cpu_mpid = 0;
uint32_t master_core_mpid;
uint32_t primary_core_mpid;
/* Now it is on master core */
/* Now it is on primary core */
__ASSERT(arch_curr_cpu()->id == 0, "");
master_core_mpid = MPIDR_TO_CORE(GET_MPIDR());
primary_core_mpid = MPIDR_TO_CORE(GET_MPIDR());
cpu_count = ARRAY_SIZE(cpu_node_list);
__ASSERT(cpu_count == CONFIG_MP_MAX_NUM_CPUS,
"The count of CPU Cores nodes in dts is not equal to CONFIG_MP_MAX_NUM_CPUS\n");
for (i = 0, j = 0; i < cpu_count; i++) {
if (cpu_node_list[i] == master_core_mpid) {
if (cpu_node_list[i] == primary_core_mpid) {
continue;
}
if (j == cpu_num - 1) {
@@ -199,9 +199,7 @@ void arch_secondary_cpu_init(void)
*/
#endif
#ifdef CONFIG_SOC_PER_CORE_INIT_HOOK
soc_per_core_init_hook();
#endif /* CONFIG_SOC_PER_CORE_INIT_HOOK */
fn = arm_cpu_boot_params.fn;
arg = arm_cpu_boot_params.arg;

View File

@@ -69,7 +69,7 @@ SECTION_FUNC(TEXT, z_arm_do_swap)
cps #MODE_SVC
#if defined(CONFIG_FPU_SHARING)
ldrb r0, [r2, #_thread_offset_to_user_options]
ldrh r0, [r2, #_thread_offset_to_user_options]
tst r0, #K_FP_REGS /* _current->base.user_options & K_FP_REGS */
beq out_fp_inactive
@@ -151,7 +151,7 @@ out_fp_inactive:
cps #MODE_SVC
#if defined(CONFIG_FPU_SHARING)
ldrb r0, [r2, #_thread_offset_to_user_options]
ldrh r0, [r2, #_thread_offset_to_user_options]
tst r0, #K_FP_REGS /* _current->base.user_options & K_FP_REGS */
beq in_fp_inactive

View File

@@ -107,6 +107,18 @@ 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;
@@ -144,17 +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
#endif
/*
* initial values in all other registers/thread entries are
* irrelevant.

View File

@@ -49,9 +49,9 @@ if(CONFIG_NULL_POINTER_EXCEPTION_DETECTION_DWT)
endif()
if(CONFIG_CORTEX_M_DWT)
if(CONFIG_TIMING_FUNCTIONS)
zephyr_library_sources(timing.c)
endif()
if(CONFIG_TIMING_FUNCTIONS)
zephyr_library_sources(timing.c)
endif()
endif()
if(CONFIG_SW_VECTOR_RELAY)

View File

@@ -192,6 +192,7 @@ config CPU_CORTEX_M_HAS_CMSE
config ARMV6_M_ARMV8_M_BASELINE
bool
select ATOMIC_OPERATIONS_BUILTIN if ARMV8_M_BASELINE
select ATOMIC_OPERATIONS_C if !ARMV8_M_BASELINE
select ISA_THUMB2
help

View File

@@ -28,5 +28,11 @@ SECTION_PROLOGUE(.sram_vt,,)
. += _vector_end - _vector_start;
MPU_ALIGN(_sram_vector_size);
_sram_vector_end = .;
#if defined(CONFIG_ARM_VECTOR_TABLE_ITCM)
} GROUP_DATA_LINK_IN(ITCM, ROMABLE_REGION)
#elif defined(CONFIG_ARM_VECTOR_TABLE_DTCM)
} GROUP_DATA_LINK_IN(DTCM, ROMABLE_REGION)
#else
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
#endif
_sram_vector_size = _sram_vector_end - _sram_vector_start;

View File

@@ -460,28 +460,36 @@ SECTION_FUNC(TEXT, z_arm_svc)
.L_oops:
push {r0, lr}
#if defined(CONFIG_EXTRA_EXCEPTION_INFO)
#if defined(CONFIG_ARMV7_M_ARMV8_M_MAINLINE)
/* Build _callee_saved_t. To match the struct
* definition we push the psp & then r11-r4
*/
mrs r1, PSP
push {r1, r2}
push {r1, r2} /* r2 for padding */
#if defined(CONFIG_ARMV7_M_ARMV8_M_MAINLINE)
push {r4-r11}
#elif defined(CONFIG_ARMV6_M_ARMV8_M_BASELINE)
mov r1, r10
mov r2, r11
push {r1, r2}
mov r1, r8
mov r2, r9
push {r1, r2}
push {r4-r7}
#else
#error Unknown ARM architecture
#endif
mov r1, sp /* pointer to _callee_saved_t */
#endif /* CONFIG_ARMV7_M_ARMV8_M_MAINLINE */
#endif /* CONFIG_EXTRA_EXCEPTION_INFO */
mov r2, lr /* EXC_RETURN */
bl z_do_kernel_oops
/* return from SVC exception is done here */
#if defined(CONFIG_EXTRA_EXCEPTION_INFO)
#if defined(CONFIG_ARMV7_M_ARMV8_M_MAINLINE)
/* We do not need to restore any register state here
* because we did not use any callee-saved registers
* in this routine. Therefore, we can just reset
* the MSP to its value prior to entering the function
*/
add sp, #40
#endif /* CONFIG_ARMV7_M_ARMV8_M_MAINLINE */
#endif /* CONFIG_EXTRA_EXCEPTION_INFO */
pop {r0, pc}

View File

@@ -115,6 +115,18 @@ void arch_new_thread(struct k_thread *thread, k_thread_stack_t *stack, char *sta
#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;
@@ -141,17 +153,6 @@ void arch_new_thread(struct k_thread *thread, k_thread_stack_t *stack, char *sta
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
#endif
#ifdef CONFIG_ARM_PAC_PER_THREAD
/* Generate PAC key and save it in thread context to be set later
* when the thread is actually switched in

View File

@@ -75,7 +75,7 @@ static inline uint64_t z_arm_dwt_freq_get(void)
dwt_frequency = (cyc_freq * ddwt) / dcyc;
}
return dwt_frequency;
#endif /* CONFIG_SOC_FAMILY_NORDIC_NRF */
#endif
}
void arch_timing_init(void)

View File

@@ -137,21 +137,11 @@ void z_do_kernel_oops(const struct arch_esf *esf, _callee_saved_t *callee_regs,
struct arch_esf esf_copy;
memcpy(&esf_copy, esf, offsetof(struct arch_esf, extra_info));
#if defined(CONFIG_ARMV7_M_ARMV8_M_MAINLINE)
/* extra exception info is collected in callee_reg param
* on CONFIG_ARMV7_M_ARMV8_M_MAINLINE
*/
/* extra exception info is collected in callee_reg. */
esf_copy.extra_info = (struct __extra_esf_info) {
.callee = callee_regs,
};
#else
/* extra exception info is not collected for kernel oops
* path today so we make a copy of the ESF and zero out
* that information
*/
esf_copy.extra_info = (struct __extra_esf_info) { 0 };
#endif /* CONFIG_ARMV7_M_ARMV8_M_MAINLINE */
z_arm_fatal_error(reason, &esf_copy);
#endif /* CONFIG_EXTRA_EXCEPTION_INFO */

View File

@@ -79,6 +79,12 @@ config ARM_MPU_PXN
unprivileged mode and executing such region from privileged mode will
result in a Memory Management fault.
config ARM_MPU_SRAM_WRITE_THROUGH
bool "Use Write-Through cache policy for SRAM regions"
help
When enabled, SRAM regions will use Write-Through cache policy
instead of the default Write-Back policy.
endif # ARM_MPU
endif # CPU_HAS_MPU

View File

@@ -156,6 +156,11 @@ static int mpu_configure_regions_from_dt(uint8_t *reg_index)
case DT_MEM_ARM_MPU_EXTMEM:
region_conf = _BUILD_REGION_CONF(region[idx], REGION_EXTMEM_ATTR);
break;
#endif
#ifdef REGION_RAM_WT_ATTR
case DT_MEM_ARM_MPU_RAM_WT:
region_conf = _BUILD_REGION_CONF(region[idx], REGION_RAM_WT_ATTR);
break;
#endif
default:
/* Attribute other than ARM-specific is set.
@@ -205,11 +210,11 @@ static int mpu_configure_region(const uint8_t index,
!defined(CONFIG_MPU_GAP_FILLING)
/* This internal function programs a set of given MPU regions
* over a background memory area, optionally performing a
* sanity check of the memory regions to be programmed.
* coherence check of the memory regions to be programmed.
*/
static int mpu_configure_regions(const struct z_arm_mpu_partition
regions[], uint8_t regions_num, uint8_t start_reg_index,
bool do_sanity_check)
bool do_coherence_check)
{
int i;
int reg_index = start_reg_index;
@@ -220,9 +225,9 @@ static int mpu_configure_regions(const struct z_arm_mpu_partition
}
/* Non-empty region. */
if (do_sanity_check &&
if (do_coherence_check &&
(!mpu_partition_is_valid(&regions[i]))) {
LOG_ERR("Partition %u: sanity check failed.", i);
LOG_ERR("Partition %u: coherence check failed.", i);
return -EINVAL;
}
@@ -615,7 +620,7 @@ int z_arm_mpu_init(void)
#endif
#endif /* CONFIG_NULL_POINTER_EXCEPTION_DETECTION_MPU */
/* Sanity check for number of regions in Cortex-M0+, M3, and M4. */
/* Coherence check for number of regions in Cortex-M0+, M3, and M4. */
#if defined(CONFIG_CPU_CORTEX_M0PLUS) || \
defined(CONFIG_CPU_CORTEX_M3) || \
defined(CONFIG_CPU_CORTEX_M4)

View File

@@ -9,6 +9,12 @@
#include <zephyr/arch/arm/mpu/arm_mpu_mem_cfg.h>
#ifdef CONFIG_ARM_MPU_SRAM_WRITE_THROUGH
#define ARM_MPU_SRAM_REGION_ATTR REGION_RAM_WT_ATTR
#else
#define ARM_MPU_SRAM_REGION_ATTR REGION_RAM_ATTR
#endif
static const struct arm_mpu_region mpu_regions[] = {
#ifdef CONFIG_XIP
/* Region 0 */
@@ -26,10 +32,10 @@ static const struct arm_mpu_region mpu_regions[] = {
MPU_REGION_ENTRY("SRAM_0",
CONFIG_SRAM_BASE_ADDRESS,
#if defined(CONFIG_ARMV8_M_BASELINE) || defined(CONFIG_ARMV8_M_MAINLINE)
REGION_RAM_ATTR(CONFIG_SRAM_BASE_ADDRESS, \
ARM_MPU_SRAM_REGION_ATTR(CONFIG_SRAM_BASE_ADDRESS,
CONFIG_SRAM_SIZE * 1024)),
#else
REGION_RAM_ATTR(REGION_SRAM_SIZE)),
ARM_MPU_SRAM_REGION_ATTR(REGION_SRAM_SIZE)),
#endif
};

View File

@@ -52,9 +52,9 @@ static void region_init(const uint32_t index,
#endif
}
/* @brief Partition sanity check
/* @brief Partition coherence check
*
* This internal function performs run-time sanity check for
* This internal function performs run-time coherence check for
* MPU region start address and size.
*
* @param part Pointer to the data structure holding the partition
@@ -207,7 +207,7 @@ static int mpu_configure_region(const uint8_t index,
static int mpu_configure_regions(const struct z_arm_mpu_partition
regions[], uint8_t regions_num, uint8_t start_reg_index,
bool do_sanity_check);
bool do_coherence_check);
/* This internal function programs the static MPU regions.
*

View File

@@ -184,9 +184,9 @@ static void region_init(const uint32_t index,
region_conf->attr.mair_idx, region_conf->attr.r_limit);
}
/* @brief Partition sanity check
/* @brief Partition coherence check
*
* This internal function performs run-time sanity check for
* This internal function performs run-time coherence check for
* MPU region start address and size.
*
* @param part Pointer to the data structure holding the partition
@@ -519,19 +519,19 @@ static int mpu_configure_region(const uint8_t index,
#if !defined(CONFIG_MPU_GAP_FILLING)
static int mpu_configure_regions(const struct z_arm_mpu_partition
regions[], uint8_t regions_num, uint8_t start_reg_index,
bool do_sanity_check);
bool do_coherence_check);
#endif
/* This internal function programs a set of given MPU regions
* over a background memory area, optionally performing a
* sanity check of the memory regions to be programmed.
* coherence check of the memory regions to be programmed.
*
* The function performs a full partition of the background memory
* area, effectively, leaving no space in this area uncovered by MPU.
*/
static int mpu_configure_regions_and_partition(const struct z_arm_mpu_partition
regions[], uint8_t regions_num, uint8_t start_reg_index,
bool do_sanity_check)
bool do_coherence_check)
{
int i;
int reg_index = start_reg_index;
@@ -542,9 +542,9 @@ static int mpu_configure_regions_and_partition(const struct z_arm_mpu_partition
}
/* Non-empty region. */
if (do_sanity_check &&
if (do_coherence_check &&
(!mpu_partition_is_valid(&regions[i]))) {
LOG_ERR("Partition %u: sanity check failed.", i);
LOG_ERR("Partition %u: coherence check failed.", i);
return -EINVAL;
}

View File

@@ -51,9 +51,9 @@ static inline uint8_t get_num_regions(void)
return FSL_FEATURE_SYSMPU_DESCRIPTOR_COUNT;
}
/* @brief Partition sanity check
/* @brief Partition coherence check
*
* This internal function performs run-time sanity check for
* This internal function performs run-time coherence check for
* MPU region start address and size.
*
* @param part Pointer to the data structure holding the partition
@@ -297,11 +297,11 @@ static int mpu_sram_partitioning(uint8_t index,
/* This internal function programs a set of given MPU regions
* over a background memory area, optionally performing a
* sanity check of the memory regions to be programmed.
* coherence check of the memory regions to be programmed.
*/
static int mpu_configure_regions(const struct z_arm_mpu_partition regions[],
uint8_t regions_num, uint8_t start_reg_index,
bool do_sanity_check)
bool do_coherence_check)
{
int i;
int reg_index = start_reg_index;
@@ -312,9 +312,9 @@ static int mpu_configure_regions(const struct z_arm_mpu_partition regions[],
}
/* Non-empty region. */
if (do_sanity_check &&
if (do_coherence_check &&
(!mpu_partition_is_valid(&regions[i]))) {
LOG_ERR("Partition %u: sanity check failed.", i);
LOG_ERR("Partition %u: coherence check failed.", i);
return -EINVAL;
}

View File

@@ -1,5 +1,6 @@
/*
* Copyright (c) 2019 - 2020 Nordic Semiconductor ASA
* Copyright 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -57,4 +58,8 @@ INCLUDE isr_tables_vt.ld
KEEP(*(.vectors))
#endif
#ifdef CONFIG_CPU_AARCH32_CORTEX_R
KEEP(*(._bindesc_entry.*))
#endif
_vector_end = .;

View File

@@ -31,9 +31,7 @@ extern "C" {
static ALWAYS_INLINE void arch_kernel_init(void)
{
#ifdef CONFIG_SOC_PER_CORE_INIT_HOOK
soc_per_core_init_hook();
#endif /* CONFIG_SOC_PER_CORE_INIT_HOOK */
}
#ifndef CONFIG_USE_SWITCH

View File

@@ -82,7 +82,7 @@ static inline void dwt_access(bool ena)
static inline int z_arm_dwt_init(void)
{
/* Enable tracing */
CoreDebug->DEMCR |= CoreDebug_DEMCR_TRCENA_Msk;
DCB->DEMCR |= DCB_DEMCR_TRCENA_Msk;
/* Unlock DWT access if any */
dwt_access(true);
@@ -149,7 +149,7 @@ static inline void z_arm_dwt_enable_debug_monitor(void)
* unpredictable if the DebugMonitor exception is triggered. We
* assert that the CPU is in normal mode.
*/
__ASSERT((CoreDebug->DHCSR & CoreDebug_DHCSR_C_DEBUGEN_Msk) == 0,
__ASSERT((DCB->DHCSR & DCB_DHCSR_C_DEBUGEN_Msk) == 0,
"Cannot enable DBM when CPU is in Debug mode\n");
#if defined(CONFIG_ARMV8_M_SE) && !defined(CONFIG_ARM_NONSECURE_FIRMWARE)
@@ -160,7 +160,7 @@ static inline void z_arm_dwt_enable_debug_monitor(void)
* when enabling the DebugMonitor exception, assert that
* it is not targeting the Non Secure domain.
*/
__ASSERT((CoreDebug->DEMCR & DCB_DEMCR_SDME_Msk) != 0, "DebugMonitor targets Non-Secure\n");
__ASSERT((DCB->DEMCR & DCB_DEMCR_SDME_Msk) != 0, "DebugMonitor targets Non-Secure\n");
#endif
/* The DebugMonitor handler priority is set already
@@ -169,7 +169,7 @@ static inline void z_arm_dwt_enable_debug_monitor(void)
*/
/* Enable debug monitor exception triggered on debug events */
CoreDebug->DEMCR |= CoreDebug_DEMCR_MON_EN_Msk;
DCB->DEMCR |= DCB_DEMCR_MON_EN_Msk;
}
#endif /* CONFIG_CORTEX_M_DWT */

View File

@@ -57,9 +57,7 @@ static ALWAYS_INLINE void arch_kernel_init(void)
z_arm_configure_static_mpu_regions();
#endif /* CONFIG_ARM_MPU */
#ifdef CONFIG_SOC_PER_CORE_INIT_HOOK
soc_per_core_init_hook();
#endif /* CONFIG_SOC_PER_CORE_INIT_HOOK */
}
static ALWAYS_INLINE void arch_thread_return_value_set(struct k_thread *thread, unsigned int value)

View File

@@ -79,6 +79,26 @@ config CPU_CORTEX_A78
help
This option signifies the use of a Cortex-A78 CPU
config CPU_CORTEX_A510
bool
select CPU_CORTEX_A
select ARMV9_A
help
This option signifies the use of a Cortex-A510 CPU, which is Arm's
efficiency core implementing the ARMv9-A architecture. It provides
power-efficient processing optimized for embedded applications with
ARMv9-A features.
config CPU_CORTEX_A320
bool
select CPU_CORTEX_A
select ARMV9_A
help
This option signifies the use of a Cortex-A320 CPU, which implements
the ARMv9.2-A architecture. It provides advanced features including
enhanced SVE2, improved security extensions, and specialized performance
optimizations.
config CPU_CORTEX_R82
bool
select CPU_AARCH64_CORTEX_R
@@ -101,10 +121,15 @@ config MAIN_STACK_SIZE
config IDLE_STACK_SIZE
default 4096
config PRIVILEGED_STACK_SIZE
default 4096 if FPU_SHARING
default 2048
config ISR_STACK_SIZE
default 4096
config TEST_EXTRA_STACK_SIZE
default 4096 if FPU_SHARING
default 2048
config SYSTEM_WORKQUEUE_STACK_SIZE
@@ -151,21 +176,6 @@ config ARM64_SAFE_EXCEPTION_STACK
used for user stack overflow checking, because kernel stack support
the checking work.
config ARM64_EXCEPTION_STACK_TRACE
bool
default y
depends on FRAME_POINTER
help
Internal config to enable runtime stack traces on fatal exceptions.
config ARCH_HAS_STACKWALK
bool
default y
depends on FRAME_POINTER
help
Internal config to indicate that the arch_stack_walk() API is implemented
and it can be enabled.
config ARM64_SAFE_EXCEPTION_STACK_SIZE
int "The stack size of the safe exception stack"
default 4096
@@ -196,6 +206,14 @@ config ARM64_STACK_PROTECTION
if CPU_CORTEX_A
config ARCH_HAS_STACKWALK
bool
default y
depends on FRAME_POINTER
help
Internal config to indicate that the arch_stack_walk() API is implemented
and it can be enabled.
config ARMV8_A_NS
bool "ARMv8-A Normal World (Non-Secure world of Trustzone)"
help
@@ -223,6 +241,20 @@ config ARMV8_A
so that it can support some features included in the AArch64 state.
It supports the T32 and A32 instruction sets.
config ARMV9_A
bool
select ATOMIC_OPERATIONS_BUILTIN
select CPU_HAS_MMU
select ARCH_HAS_USERSPACE if ARM_MMU
select ARCH_HAS_NOCACHE_MEMORY_SUPPORT if ARM_MMU
imply ARM64_SVE if FPU_SHARING
help
This option signifies the use of an ARMv9-A processor
implementation.
ARMv9-A builds on ARMv8-A and introduces additional security,
performance, and machine learning capabilities while maintaining
backward compatibility with ARMv8-A software.
rsource "xen/Kconfig"
endif # CPU_CORTEX_A
@@ -348,6 +380,8 @@ config ARM64_PA_BITS
config MAX_XLAT_TABLES
int "Maximum numbers of translation tables"
default 32 if USERSPACE && TEST && SMP
default 24 if USERSPACE && TEST
default 20 if USERSPACE && (ARM64_VA_BITS >= 40)
default 16 if USERSPACE
default 12 if (ARM64_VA_BITS >= 40)
@@ -380,4 +414,27 @@ config ARM64_BOOT_DISABLE_DCACHE
cache and then disable data cache, it will will be re-enabled after
MMU is configured and enabled.
config ARM64_SVE
bool "Scalable Vector Extension (SVE) support"
depends on ARMV9_A
help
Enable support for ARM64 Scalable Vector Extension (SVE).
This allows threads to use SVE/SVE2 instructions and automatically
handles context switching of SVE registers (Z0-Z31, P0-P15, FFR)
if CONFIG_FPU_SHARING is also set. Requires ARMv9-A architecture.
config ARM64_SVE_VL_MAX
int "Maximum SVE vector length in bytes"
depends on ARM64_SVE
default 16
range 16 256
help
Maximum supported SVE vector length in bytes. This determines
the SVE context size within each thread structure. Valid values
are any power of two from 16 to 256 inclusive (128 to 2048 bits).
This can be smaller than the hardware supported vector length to
save some per-thread memory in which case the hardware will be
limited to the specified length. Having a larger value than what
the hardware supports will only waste memory.
endif # CPU_CORTEX_A || CPU_AARCH64_CORTEX_R

View File

@@ -337,7 +337,7 @@ static bool z_arm64_stack_corruption_check(struct arch_esf *esf, uint64_t esr, u
* a new nested exception triggered by FPU accessing (var_args).
*/
arch_flush_local_fpu();
write_cpacr_el1(read_cpacr_el1() | CPACR_EL1_FPEN_NOTRAP);
write_cpacr_el1(read_cpacr_el1() | CPACR_EL1_FPEN);
#endif
arch_curr_cpu()->arch.corrupted_sp = 0UL;
EXCEPTION_DUMP("STACK OVERFLOW FROM KERNEL,"

View File

@@ -7,12 +7,20 @@
#include <zephyr/toolchain.h>
#include <zephyr/linker/sections.h>
#include <zephyr/offsets.h>
_ASM_FILE_PROLOGUE
GTEXT(z_arm64_fpu_save)
SECTION_FUNC(TEXT, z_arm64_fpu_save)
mrs x1, fpsr
mrs x2, fpcr
str w1, [x0, #__z_arm64_fp_context_fpsr_OFFSET]
str w2, [x0, #__z_arm64_fp_context_fpcr_OFFSET]
/* Save NEON registers */
add x0, x0, #__z_arm64_fp_context_neon_OFFSET
stp q0, q1, [x0, #(16 * 0)]
stp q2, q3, [x0, #(16 * 2)]
stp q4, q5, [x0, #(16 * 4)]
@@ -30,16 +38,18 @@ SECTION_FUNC(TEXT, z_arm64_fpu_save)
stp q28, q29, [x0, #(16 * 28)]
stp q30, q31, [x0, #(16 * 30)]
mrs x1, fpsr
mrs x2, fpcr
str w1, [x0, #(16 * 32 + 0)]
str w2, [x0, #(16 * 32 + 4)]
ret
GTEXT(z_arm64_fpu_restore)
SECTION_FUNC(TEXT, z_arm64_fpu_restore)
ldr w1, [x0, #__z_arm64_fp_context_fpsr_OFFSET]
ldr w2, [x0, #__z_arm64_fp_context_fpcr_OFFSET]
msr fpsr, x1
msr fpcr, x2
/* Restore NEON registers */
add x0, x0, #__z_arm64_fp_context_neon_OFFSET
ldp q0, q1, [x0, #(16 * 0)]
ldp q2, q3, [x0, #(16 * 2)]
ldp q4, q5, [x0, #(16 * 4)]
@@ -57,9 +67,164 @@ SECTION_FUNC(TEXT, z_arm64_fpu_restore)
ldp q28, q29, [x0, #(16 * 28)]
ldp q30, q31, [x0, #(16 * 30)]
ldr w1, [x0, #(16 * 32 + 0)]
ldr w2, [x0, #(16 * 32 + 4)]
msr fpsr, x1
msr fpcr, x2
ret
#ifdef CONFIG_ARM64_SVE
GTEXT(z_arm64_sve_save)
SECTION_FUNC(TEXT, z_arm64_sve_save)
/* Save control registers */
mrs x2, fpsr
mrs x3, fpcr
str w2, [x0, #__z_arm64_fp_context_fpsr_OFFSET]
str w3, [x0, #__z_arm64_fp_context_fpcr_OFFSET]
/* Get Z registers base address */
add x2, x0, #__z_arm64_fp_context_sve_z_regs_OFFSET
/* Save Z registers */
str z0, [x2, #0, MUL VL]
str z1, [x2, #1, MUL VL]
str z2, [x2, #2, MUL VL]
str z3, [x2, #3, MUL VL]
str z4, [x2, #4, MUL VL]
str z5, [x2, #5, MUL VL]
str z6, [x2, #6, MUL VL]
str z7, [x2, #7, MUL VL]
str z8, [x2, #8, MUL VL]
str z9, [x2, #9, MUL VL]
str z10, [x2, #10, MUL VL]
str z11, [x2, #11, MUL VL]
str z12, [x2, #12, MUL VL]
str z13, [x2, #13, MUL VL]
str z14, [x2, #14, MUL VL]
str z15, [x2, #15, MUL VL]
str z16, [x2, #16, MUL VL]
str z17, [x2, #17, MUL VL]
str z18, [x2, #18, MUL VL]
str z19, [x2, #19, MUL VL]
str z20, [x2, #20, MUL VL]
str z21, [x2, #21, MUL VL]
str z22, [x2, #22, MUL VL]
str z23, [x2, #23, MUL VL]
str z24, [x2, #24, MUL VL]
str z25, [x2, #25, MUL VL]
str z26, [x2, #26, MUL VL]
str z27, [x2, #27, MUL VL]
str z28, [x2, #28, MUL VL]
str z29, [x2, #29, MUL VL]
str z30, [x2, #30, MUL VL]
str z31, [x2, #31, MUL VL]
/* Get P registers base address */
mov x3, #__z_arm64_fp_context_sve_p_regs_OFFSET
add x3, x0, x3
/* Save P registers */
str p0, [x3, #0, MUL VL]
str p1, [x3, #1, MUL VL]
str p2, [x3, #2, MUL VL]
str p3, [x3, #3, MUL VL]
str p4, [x3, #4, MUL VL]
str p5, [x3, #5, MUL VL]
str p6, [x3, #6, MUL VL]
str p7, [x3, #7, MUL VL]
str p8, [x3, #8, MUL VL]
str p9, [x3, #9, MUL VL]
str p10, [x3, #10, MUL VL]
str p11, [x3, #11, MUL VL]
str p12, [x3, #12, MUL VL]
str p13, [x3, #13, MUL VL]
str p14, [x3, #14, MUL VL]
str p15, [x3, #15, MUL VL]
/* Get FFR base address */
mov x4, #__z_arm64_fp_context_sve_ffr_OFFSET
add x4, x0, x4
/* Save FFR */
rdffr p0.b
str p0, [x4]
ret
GTEXT(z_arm64_sve_restore)
SECTION_FUNC(TEXT, z_arm64_sve_restore)
/* Get Z registers base address */
add x2, x0, #__z_arm64_fp_context_sve_z_regs_OFFSET
/* Restore Z registers */
ldr z0, [x2, #0, MUL VL]
ldr z1, [x2, #1, MUL VL]
ldr z2, [x2, #2, MUL VL]
ldr z3, [x2, #3, MUL VL]
ldr z4, [x2, #4, MUL VL]
ldr z5, [x2, #5, MUL VL]
ldr z6, [x2, #6, MUL VL]
ldr z7, [x2, #7, MUL VL]
ldr z8, [x2, #8, MUL VL]
ldr z9, [x2, #9, MUL VL]
ldr z10, [x2, #10, MUL VL]
ldr z11, [x2, #11, MUL VL]
ldr z12, [x2, #12, MUL VL]
ldr z13, [x2, #13, MUL VL]
ldr z14, [x2, #14, MUL VL]
ldr z15, [x2, #15, MUL VL]
ldr z16, [x2, #16, MUL VL]
ldr z17, [x2, #17, MUL VL]
ldr z18, [x2, #18, MUL VL]
ldr z19, [x2, #19, MUL VL]
ldr z20, [x2, #20, MUL VL]
ldr z21, [x2, #21, MUL VL]
ldr z22, [x2, #22, MUL VL]
ldr z23, [x2, #23, MUL VL]
ldr z24, [x2, #24, MUL VL]
ldr z25, [x2, #25, MUL VL]
ldr z26, [x2, #26, MUL VL]
ldr z27, [x2, #27, MUL VL]
ldr z28, [x2, #28, MUL VL]
ldr z29, [x2, #29, MUL VL]
ldr z30, [x2, #30, MUL VL]
ldr z31, [x2, #31, MUL VL]
/* Get FFR base address */
mov x4, #__z_arm64_fp_context_sve_ffr_OFFSET
add x4, x0, x4
/* Restore FFR */
ldr p0, [x4]
wrffr p0.b
/* Get P registers base address */
mov x3, #__z_arm64_fp_context_sve_p_regs_OFFSET
add x3, x0, x3
/* Restore P registers intervals */
ldr p0, [x3, #0, MUL VL]
ldr p1, [x3, #1, MUL VL]
ldr p2, [x3, #2, MUL VL]
ldr p3, [x3, #3, MUL VL]
ldr p4, [x3, #4, MUL VL]
ldr p5, [x3, #5, MUL VL]
ldr p6, [x3, #6, MUL VL]
ldr p7, [x3, #7, MUL VL]
ldr p8, [x3, #8, MUL VL]
ldr p9, [x3, #9, MUL VL]
ldr p10, [x3, #10, MUL VL]
ldr p11, [x3, #11, MUL VL]
ldr p12, [x3, #12, MUL VL]
ldr p13, [x3, #13, MUL VL]
ldr p14, [x3, #14, MUL VL]
ldr p15, [x3, #15, MUL VL]
/* Restore control registers */
ldr w2, [x0, #__z_arm64_fp_context_fpsr_OFFSET]
ldr w3, [x0, #__z_arm64_fp_context_fpcr_OFFSET]
msr fpsr, x2
msr fpcr, x3
ret
#endif /* CONFIG_ARM64_SVE */

View File

@@ -15,6 +15,8 @@
/* to be found in fpu.S */
extern void z_arm64_fpu_save(struct z_arm64_fp_context *saved_fp_context);
extern void z_arm64_fpu_restore(struct z_arm64_fp_context *saved_fp_context);
extern void z_arm64_sve_save(struct z_arm64_fp_context *saved_fp_context);
extern void z_arm64_sve_restore(struct z_arm64_fp_context *saved_fp_context);
#define FPU_DEBUG 0
@@ -53,7 +55,7 @@ static void DBG(char *msg, struct k_thread *th)
if (th == NULL) {
th = _current;
}
v = *(unsigned char *)&th->arch.saved_fp_context;
v = *(unsigned char *)&th->arch.saved_fp_context.neon;
*p++ = ' ';
*p++ = ((v >> 4) < 10) ? ((v >> 4) + '0') : ((v >> 4) - 10 + 'a');
*p++ = ((v & 15) < 10) ? ((v & 15) + '0') : ((v & 15) - 10 + 'a');
@@ -91,6 +93,46 @@ static inline void DBG_PC(char *msg, uintptr_t pc) { }
#endif /* FPU_DEBUG */
#ifdef CONFIG_ARM64_SVE
/* Get current SVE vector length */
static inline uint32_t z_arm64_sve_get_vl(void)
{
uint32_t vl;
__asm__("rdvl %0, #1" : "=r"(vl));
return vl;
}
#define USE_SVE(t) ((t) && (t)->arch.saved_fp_context.sve.simd_mode == SIMD_SVE)
/* Convert NEON V registers to SVE Z registers in place */
static void convert_Vx_to_Zx(struct z_arm64_fp_context *context)
{
uint32_t vl = z_arm64_sve_get_vl();
if (CONFIG_ARM64_SVE_VL_MAX <= 16 || vl <= 16) {
return;
}
/*
* Since it's a union, we need to extend each 128-bit NEON register
* to the full SVE vector length, working backwards to avoid overwriting
* data we still need to copy.
*/
for (int i = 31; i >= 0; i--) {
/* Copy the 128-bit NEON value to the low 128 bits of the Z register */
*(__int128 *)&context->sve.z_regs[i * vl] = context->neon.v_regs[i];
/* Zero the upper part of the Z register (beyond 128 bits) */
memset(&context->sve.z_regs[i * vl + 16], 0, vl - 16);
}
}
#else
#define USE_SVE(t) false
#endif
/*
* Flush FPU content and disable access.
* This is called locally and also from flush_fpu_ipi_handler().
@@ -105,19 +147,30 @@ void arch_flush_local_fpu(void)
uint64_t cpacr = read_cpacr_el1();
/* turn on FPU access */
write_cpacr_el1(cpacr | CPACR_EL1_FPEN_NOTRAP);
cpacr |= CPACR_EL1_FPEN;
if (USE_SVE(owner)) {
cpacr |= CPACR_EL1_ZEN;
}
write_cpacr_el1(cpacr);
barrier_isync_fence_full();
/* save current owner's content */
z_arm64_fpu_save(&owner->arch.saved_fp_context);
if (USE_SVE(owner)) {
z_arm64_sve_save(&owner->arch.saved_fp_context);
} else {
z_arm64_fpu_save(&owner->arch.saved_fp_context);
}
/* make sure content made it to memory before releasing */
barrier_dsync_fence_full();
/* release ownership */
atomic_ptr_clear(&_current_cpu->arch.fpu_owner);
DBG("disable", owner);
/* disable FPU access */
write_cpacr_el1(cpacr & ~CPACR_EL1_FPEN_NOTRAP);
cpacr &= ~(CPACR_EL1_FPEN | CPACR_EL1_ZEN);
write_cpacr_el1(cpacr);
barrier_isync_fence_full();
}
}
@@ -173,7 +226,7 @@ void z_arm64_fpu_enter_exc(void)
__ASSERT(read_daif() & DAIF_IRQ_BIT, "must be called with IRQs disabled");
/* always deny FPU access whenever an exception is entered */
write_cpacr_el1(read_cpacr_el1() & ~CPACR_EL1_FPEN_NOTRAP);
write_cpacr_el1(read_cpacr_el1() & ~(CPACR_EL1_FPEN | CPACR_EL1_ZEN));
barrier_isync_fence_full();
}
@@ -253,29 +306,48 @@ static bool simulate_str_q_insn(struct arch_esf *esf)
* don't get interrupted that is. To ensure that we mask interrupts to
* the triggering exception context.
*/
void z_arm64_fpu_trap(struct arch_esf *esf)
void z_arm64_fpu_trap(struct arch_esf *esf, uint32_t exception_class)
{
__ASSERT(read_daif() & DAIF_IRQ_BIT, "must be called with IRQs disabled");
/* check if a quick simulation can do it */
if (simulate_str_q_insn(esf)) {
if (!(IS_ENABLED(CONFIG_ARM64_SVE) && exception_class == 0x19) &&
simulate_str_q_insn(esf)) {
return;
}
DBG_PC("trap entry", esf->elr);
struct k_thread *owner = atomic_ptr_get(&_current_cpu->arch.fpu_owner);
uint64_t cpacr = read_cpacr_el1();
/* turn on FPU access */
write_cpacr_el1(read_cpacr_el1() | CPACR_EL1_FPEN_NOTRAP);
cpacr |= CPACR_EL1_FPEN;
if (USE_SVE(owner)) {
cpacr |= CPACR_EL1_ZEN;
}
write_cpacr_el1(cpacr);
barrier_isync_fence_full();
/* save current owner's content if any */
struct k_thread *owner = atomic_ptr_get(&_current_cpu->arch.fpu_owner);
if (owner) {
z_arm64_fpu_save(&owner->arch.saved_fp_context);
if (USE_SVE(owner)) {
z_arm64_sve_save(&owner->arch.saved_fp_context);
DBG("sve_save", owner);
} else {
z_arm64_fpu_save(&owner->arch.saved_fp_context);
DBG("fpu_save", owner);
}
barrier_dsync_fence_full();
atomic_ptr_clear(&_current_cpu->arch.fpu_owner);
DBG("save", owner);
}
if (IS_ENABLED(CONFIG_ARM64_SVE) && exception_class == 0x19 &&
!(cpacr & CPACR_EL1_ZEN)) {
/* SVE trap - also enable SVE access */
cpacr |= CPACR_EL1_ZEN;
write_cpacr_el1(cpacr);
barrier_isync_fence_full();
}
if (arch_exception_depth() > 1) {
@@ -300,9 +372,45 @@ void z_arm64_fpu_trap(struct arch_esf *esf)
/* become new owner */
atomic_ptr_set(&_current_cpu->arch.fpu_owner, _current);
#ifdef CONFIG_ARM64_SVE
if (exception_class == 0x19) {
/* SVE trap */
if (_current->arch.saved_fp_context.sve.simd_mode == SIMD_NEON) {
/* upgrade from Neon to SVE before loading regs */
convert_Vx_to_Zx(&_current->arch.saved_fp_context);
}
_current->arch.saved_fp_context.sve.simd_mode = SIMD_SVE;
} else if (_current->arch.saved_fp_context.sve.simd_mode != SIMD_SVE) {
/* not SVE trap and context is not SVE either */
if ((cpacr & CPACR_EL1_ZEN) != 0) {
/* disable SVE access leaving only FP */
cpacr &= ~CPACR_EL1_ZEN;
write_cpacr_el1(cpacr);
barrier_isync_fence_full();
}
_current->arch.saved_fp_context.sve.simd_mode = SIMD_NEON;
} else if ((cpacr & CPACR_EL1_ZEN) == 0) {
/*
* Not SVE trap but context is SVE and CPACR_EL1_ZEN not set.
* This is an edge case that happens when previous owner
* didn't use SVE and we are not using SVE right now either
* although we did in the past. We're about to restore an
* SVE context so make sure SVE access is enabled.
*/
cpacr |= CPACR_EL1_ZEN;
write_cpacr_el1(cpacr);
barrier_isync_fence_full();
}
#endif
/* restore our content */
z_arm64_fpu_restore(&_current->arch.saved_fp_context);
DBG("restore", NULL);
if (USE_SVE(_current)) {
z_arm64_sve_restore(&_current->arch.saved_fp_context);
DBG("sve_restore", NULL);
} else {
z_arm64_fpu_restore(&_current->arch.saved_fp_context);
DBG("fpu_restore", NULL);
}
}
/*
@@ -323,10 +431,14 @@ static void fpu_access_update(unsigned int exc_update_level)
/* We're about to execute non-exception code */
if (atomic_ptr_get(&_current_cpu->arch.fpu_owner) == _current) {
/* turn on FPU access */
write_cpacr_el1(cpacr | CPACR_EL1_FPEN_NOTRAP);
cpacr |= CPACR_EL1_FPEN;
if (USE_SVE(_current)) {
cpacr |= CPACR_EL1_ZEN;
}
write_cpacr_el1(cpacr);
} else {
/* deny FPU access */
write_cpacr_el1(cpacr & ~CPACR_EL1_FPEN_NOTRAP);
write_cpacr_el1(cpacr & ~(CPACR_EL1_FPEN | CPACR_EL1_ZEN));
}
} else {
/*
@@ -334,7 +446,7 @@ static void fpu_access_update(unsigned int exc_update_level)
* access as we want to make sure IRQs are disabled before
* granting it access (see z_arm64_fpu_trap() documentation).
*/
write_cpacr_el1(cpacr & ~CPACR_EL1_FPEN_NOTRAP);
write_cpacr_el1(cpacr & ~(CPACR_EL1_FPEN | CPACR_EL1_ZEN));
}
barrier_isync_fence_full();
}

View File

@@ -54,7 +54,15 @@ static uint64_t *new_table(void)
}
}
LOG_ERR("CONFIG_MAX_XLAT_TABLES, too small");
#if defined(CONFIG_LOG)
LOG_ERR("CONFIG_MAX_XLAT_TABLES is too small");
#else
printk("ERROR: CONFIG_MAX_XLAT_TABLES is too small\n");
#endif
/* Unfortunately many code paths are not ready for failure */
k_panic();
return NULL;
}
@@ -778,15 +786,30 @@ static void remove_map(struct arm_mmu_ptables *ptables, const char *name,
static void invalidate_tlb_all(void)
{
#ifdef CONFIG_SMP
/* Use IS variant to broadcast to all CPUs in Inner Shareable domain */
__asm__ volatile (
"dsb ishst; tlbi vmalle1is; dsb ish; isb"
: : : "memory");
#else
__asm__ volatile (
"dsb ishst; tlbi vmalle1; dsb ish; isb"
: : : "memory");
#endif
}
static inline void invalidate_tlb_page(uintptr_t virt)
{
/* to be refined */
invalidate_tlb_all();
#ifdef CONFIG_SMP
/* Use IS variant to broadcast to all CPUs in Inner Shareable domain */
__asm__ volatile (
"dsb ishst; tlbi vae1is, %0; dsb ish; isb"
: : "r" (virt >> PAGE_SIZE_SHIFT) : "memory");
#else
__asm__ volatile (
"dsb ishst; tlbi vae1, %0; dsb ish; isb"
: : "r" (virt >> PAGE_SIZE_SHIFT) : "memory");
#endif
}
/* zephyr execution regions with appropriate attributes */
@@ -855,21 +878,6 @@ static inline void add_arm_mmu_region(struct arm_mmu_ptables *ptables,
}
}
static inline void inv_dcache_after_map_helper(void *virt, size_t size, uint32_t attrs)
{
/*
* DC IVAC instruction requires write access permission to the VA,
* otherwise it can generate a permission fault
*/
if ((attrs & MT_RW) != MT_RW) {
return;
}
if (MT_TYPE(attrs) == MT_NORMAL || MT_TYPE(attrs) == MT_NORMAL_WT) {
sys_cache_data_invd_range(virt, size);
}
}
static void setup_page_tables(struct arm_mmu_ptables *ptables)
{
unsigned int index;
@@ -909,20 +917,6 @@ static void setup_page_tables(struct arm_mmu_ptables *ptables)
}
invalidate_tlb_all();
for (index = 0U; index < ARRAY_SIZE(mmu_zephyr_ranges); index++) {
size_t size;
range = &mmu_zephyr_ranges[index];
size = POINTER_TO_UINT(range->end) - POINTER_TO_UINT(range->start);
inv_dcache_after_map_helper(range->start, size, range->attrs);
}
for (index = 0U; index < mmu_config.num_regions; index++) {
region = &mmu_config.mmu_regions[index];
inv_dcache_after_map_helper(UINT_TO_POINTER(region->base_va), region->size,
region->attrs);
}
}
/* Translation table control register settings */
@@ -1117,20 +1111,8 @@ void arch_mem_map(void *virt, uintptr_t phys, size_t size, uint32_t flags)
LOG_ERR("__arch_mem_map() returned %d", ret);
k_panic();
} else {
uint32_t mem_flags = flags & K_MEM_CACHE_MASK;
sync_domains((uintptr_t)virt, size, "mem_map");
invalidate_tlb_all();
switch (mem_flags) {
case K_MEM_CACHE_WB:
case K_MEM_CACHE_WT:
mem_flags = (mem_flags == K_MEM_CACHE_WB) ? MT_NORMAL : MT_NORMAL_WT;
mem_flags |= (flags & K_MEM_PERM_RW) ? MT_RW : 0;
inv_dcache_after_map_helper(virt, size, mem_flags);
default:
break;
}
}
}
@@ -1246,7 +1228,6 @@ static int private_map(struct arm_mmu_ptables *ptables, const char *name,
__ASSERT(ret == 0, "add_map() returned %d", ret);
invalidate_tlb_all();
inv_dcache_after_map_helper(UINT_TO_POINTER(virt), size, attrs);
return ret;
}

View File

@@ -29,6 +29,7 @@
#include <zephyr/kernel.h>
#include <kernel_arch_data.h>
#include <kernel_offsets.h>
#include <zephyr/arch/arm64/thread.h>
GEN_OFFSET_SYM(_thread_arch_t, exception_depth);
@@ -77,6 +78,20 @@ GEN_NAMED_OFFSET_SYM(arm_smccc_res_t, a6, a6_a7);
#endif /* CONFIG_HAS_ARM_SMCCC */
#ifdef CONFIG_FPU_SHARING
GEN_OFFSET_SYM(z_arm64_fp_context, fpsr);
GEN_OFFSET_SYM(z_arm64_fp_context, fpcr);
GEN_OFFSET_SYM(z_arm64_fp_context, neon);
#ifdef CONFIG_ARM64_SVE
GEN_ABSOLUTE_SYM(__z_arm64_fp_context_sve_z_regs_OFFSET,
offsetof(struct z_arm64_fp_context, sve.z_regs));
GEN_ABSOLUTE_SYM(__z_arm64_fp_context_sve_p_regs_OFFSET,
offsetof(struct z_arm64_fp_context, sve.p_regs));
GEN_ABSOLUTE_SYM(__z_arm64_fp_context_sve_ffr_OFFSET,
offsetof(struct z_arm64_fp_context, sve.ffr));
#endif
#endif
GEN_ABS_SYM_END
#endif /* _ARM_OFFSETS_INC_ */

View File

@@ -78,7 +78,22 @@ void z_arm64_el3_init(void)
reg &= ~(CPTR_TTA_BIT | /* Do not trap sysreg accesses */
CPTR_TFP_BIT | /* Do not trap SVE, SIMD and FP */
CPTR_TCPAC_BIT); /* Do not trap CPTR_EL2 / CPACR_EL1 accesses */
#ifdef CONFIG_ARM64_SVE
/* Enable SVE for EL2 and below if SVE is implemented */
if (is_sve_implemented()) {
reg |= CPTR_EZ_BIT; /* Enable SVE access for lower ELs */
write_cptr_el3(reg);
/* Initialize ZCR_EL3 for full SVE vector length */
/* ZCR_EL3.LEN = 0x1ff means full hardware vector length */
write_zcr_el3(0x1ff);
} else {
write_cptr_el3(reg);
}
#else
write_cptr_el3(reg);
#endif
reg = 0U; /* Reset */
#ifdef CONFIG_ARMV8_A_NS
@@ -156,8 +171,24 @@ void z_arm64_el2_init(void)
reg = 0U; /* RES0 */
reg |= CPTR_EL2_RES1; /* RES1 */
reg &= ~(CPTR_TFP_BIT | /* Do not trap SVE, SIMD and FP */
CPTR_TCPAC_BIT); /* Do not trap CPACR_EL1 accesses */
CPTR_TCPAC_BIT | /* Do not trap CPACR_EL1 accesses */
CPTR_EL2_TZ_BIT); /* Do not trap SVE to EL2 */
#ifdef CONFIG_ARM64_SVE
/* Enable SVE for EL1 and EL0 if SVE is implemented */
if (is_sve_implemented()) {
reg &= ~CPTR_EL2_ZEN_MASK;
reg |= (CPTR_EL2_ZEN_EL1_EN | CPTR_EL2_ZEN_EL0_EN);
write_cptr_el2(reg);
/* Initialize ZCR_EL2 for full SVE vector length */
/* ZCR_EL2.LEN = 0x1ff means full hardware vector length */
write_zcr_el2(0x1ff);
} else {
write_cptr_el2(reg);
}
#else
write_cptr_el2(reg);
#endif
zero_cntvoff_el2(); /* Set 64-bit virtual timer offset to 0 */
zero_cnthctl_el2();
@@ -191,9 +222,22 @@ void z_arm64_el1_init(void)
barrier_isync_fence_full();
reg = 0U; /* RES0 */
reg |= CPACR_EL1_FPEN_NOTRAP; /* Do not trap NEON/SIMD/FP initially */
reg |= CPACR_EL1_FPEN; /* Do not trap NEON/SIMD/FP initially */
/* TODO: CONFIG_FLOAT_*_FORBIDDEN */
#ifdef CONFIG_ARM64_SVE
/* Enable SVE access if SVE is implemented */
if (is_sve_implemented()) {
reg |= CPACR_EL1_ZEN; /* Do not trap SVE initially */
write_cpacr_el1(reg);
/* Initialize ZCR_EL1 SVE vector length */
write_zcr_el1(CONFIG_ARM64_SVE_VL_MAX/16 - 1);
} else {
write_cpacr_el1(reg);
}
#else
write_cpacr_el1(reg);
#endif
reg = read_sctlr_el1();
reg |= (SCTLR_EL1_RES1 | /* RES1 */

View File

@@ -166,9 +166,7 @@ void arch_secondary_cpu_init(int cpu_num)
#endif
#endif
#ifdef CONFIG_SOC_PER_CORE_INIT_HOOK
soc_per_core_init_hook();
#endif /* CONFIG_SOC_PER_CORE_INIT_HOOK */
fn = arm64_cpu_boot_params.fn;
arg = arm64_cpu_boot_params.arg;

View File

@@ -153,8 +153,15 @@ SECTION_FUNC(TEXT, z_arm64_sync_exc)
#ifdef CONFIG_FPU_SHARING
cmp x1, #0x07 /*Access to SIMD or floating-point */
bne 1f
mov x0, sp
beq fpu_sve_trap
#ifdef CONFIG_ARM64_SVE
cmp x1, #0x19 /*Trapped access to SVE functionality */
beq fpu_sve_trap
#endif
b 1f
fpu_sve_trap:
mov x0, sp /* ESF pointer */
/* x1 already contains exception class (EC) - pass as second argument */
bl z_arm64_fpu_trap
b z_arm64_exit_exc_fpu_done
1:

View File

@@ -33,3 +33,25 @@ config XEN_INTERFACE_VERSION
help
Xen interface version to use. This is the version of the
interface that Zephyr will use to communicate with the hypervisor.
config XEN_DOMCTL_INTERFACE_VERSION
hex "Xen Domctl interface version"
default 0x17
range 0x15 0x17
depends on XEN
help
Xen Domctl interface version to use. This is the version of the
domctl interface that Zephyr will use to communicate with
the hypervisor. The default value is the latest version supported
by the kernel.
config XEN_SYSCTL_INTERFACE_VERSION
hex "Xen Sysctl interface version"
default 0x15
range 0x15 0x15
depends on XEN
help
Xen Sysctl interface version to use. This is the version of the
domctl interface that Zephyr will use to communicate with
the hypervisor. The default value is the latest version supported
by the kernel.

View File

@@ -23,7 +23,10 @@ HYPERCALL(sched_op);
HYPERCALL(event_channel_op);
HYPERCALL(hvm_op);
HYPERCALL(memory_op);
HYPERCALL(dm_op);
HYPERCALL(xen_version);
#ifdef CONFIG_XEN_DOM0
HYPERCALL(domctl);
HYPERCALL(sysctl);
#endif

View File

@@ -32,10 +32,7 @@ extern "C" {
static ALWAYS_INLINE void arch_kernel_init(void)
{
#ifdef CONFIG_SOC_PER_CORE_INIT_HOOK
soc_per_core_init_hook();
#endif /* CONFIG_SOC_PER_CORE_INIT_HOOK */
}
static inline void arch_switch(void *switch_to, void **switched_from)

View File

@@ -55,11 +55,6 @@ void arch_bss_zero(void)
}
arch_early_memset(__bss_start, 0, __bss_end - __bss_start);
#if DT_NODE_HAS_STATUS_OKAY(DT_CHOSEN(zephyr_ccm))
arch_early_memset(&__ccm_bss_start, 0,
(uintptr_t) &__ccm_bss_end
- (uintptr_t) &__ccm_bss_start);
#endif
#if DT_NODE_HAS_STATUS_OKAY(DT_CHOSEN(zephyr_dtcm))
arch_early_memset(&__dtcm_bss_start, 0,
(uintptr_t) &__dtcm_bss_end

View File

@@ -38,10 +38,6 @@ void arch_data_copy(void)
(uintptr_t) &_nocache_load_ram_size);
#endif /* CONFIG_NOCACHE_MEMORY */
#endif /* CONFIG_ARCH_HAS_NOCACHE_MEMORY_SUPPORT */
#if DT_NODE_HAS_STATUS_OKAY(DT_CHOSEN(zephyr_ccm))
arch_early_memcpy(&__ccm_data_start, &__ccm_data_load_start,
__ccm_data_end - __ccm_data_start);
#endif
#if DT_NODE_HAS_STATUS_OKAY(DT_CHOSEN(zephyr_itcm))
arch_early_memcpy(&__itcm_start, &__itcm_load_start,
(uintptr_t) &__itcm_size);

View File

@@ -7,9 +7,9 @@
#
if(CONFIG_BIG_ENDIAN)
set_property(GLOBAL PROPERTY PROPERTY_OUTPUT_FORMAT "elf32-bigmips")
set_property(GLOBAL PROPERTY PROPERTY_OUTPUT_FORMAT "elf32-bigmips")
else()
set_property(GLOBAL PROPERTY PROPERTY_OUTPUT_FORMAT "elf32-littlemips")
set_property(GLOBAL PROPERTY PROPERTY_OUTPUT_FORMAT "elf32-littlemips")
endif()
add_subdirectory(core)

View File

@@ -28,9 +28,7 @@ extern "C" {
#ifndef _ASMLANGUAGE
static ALWAYS_INLINE void arch_kernel_init(void)
{
#ifdef CONFIG_SOC_PER_CORE_INIT_HOOK
soc_per_core_init_hook();
#endif /* CONFIG_SOC_PER_CORE_INIT_HOOK */
}
static ALWAYS_INLINE void

View File

@@ -39,38 +39,34 @@ set_property(TARGET native_simulator PROPERTY LOCALIZE_EXTRA_OPTIONS "")
set(NSI_DIR ${ZEPHYR_BASE}/scripts/native_simulator CACHE PATH "Path to the native simulator")
if(EXISTS ${CMAKE_CURRENT_LIST_DIR}/${CMAKE_HOST_SYSTEM_NAME}.${CMAKE_HOST_SYSTEM_PROCESSOR}.cmake)
# @Intent: Set necessary compiler & linker options for this specific host architecture & OS
include(${CMAKE_HOST_SYSTEM_NAME}.${CMAKE_HOST_SYSTEM_PROCESSOR}.cmake)
else() # Linux.x86_64
if(CONFIG_64BIT)
# some gcc versions fail to build without -fPIC
zephyr_compile_options(-m64 -fPIC)
zephyr_link_libraries(-m64)
target_link_options(native_simulator INTERFACE "-m64")
target_compile_options(native_simulator INTERFACE "-m64")
if(NATIVE_TARGET_HOST) # Allow users to manually select the target for cross-compiling use cases
set(TARGET_HOST ${NATIVE_TARGET_HOST})
else()
if("${CMAKE_HOST_SYSTEM_PROCESSOR}" MATCHES "arm.*")
# All 32bit arm variants
set(TARGET_HOST "arm")
elseif("${CMAKE_HOST_SYSTEM_PROCESSOR}" MATCHES ".*86.*")
# x86_64/i*86
set(TARGET_HOST "x86_64")
else()
zephyr_compile_options(-m32)
zephyr_link_libraries(-m32)
target_link_options(native_simulator INTERFACE "-m32")
target_compile_options(native_simulator INTERFACE "-m32")
# When building for 32bits x86, gcc defaults to using the old 8087 float arithmetic
# which causes some issues with literal float comparisons. So we set it
# to use the SSE2 float path instead
# (clang defaults to use SSE, but, setting this option for it is safe)
check_set_compiler_property(APPEND PROPERTY fpsse2 "SHELL:-msse2 -mfpmath=sse")
zephyr_compile_options($<TARGET_PROPERTY:compiler,fpsse2>)
target_compile_options(native_simulator INTERFACE "$<TARGET_PROPERTY:compiler,fpsse2>")
set(TARGET_HOST ${CMAKE_HOST_SYSTEM_PROCESSOR})
endif()
endif()
zephyr_compile_options(
${ARCH_FLAG}
if(EXISTS ${CMAKE_CURRENT_LIST_DIR}/${TARGET_HOST}.cmake)
# Set necessary compiler & linker options for this specific host architecture
include(${TARGET_HOST}.cmake)
elseif(DEFINED NATIVE_TARGET_HOST)
message(WARNING "NATIVE_TARGET_HOST set to ${NATIVE_TARGET_HOST}, but ${CMAKE_CURRENT_LIST_DIR}/"
"${TARGET_HOST}.cmake not found. No custom target options will be applied."
)
endif()
# We tell the compiler to mark all symbols to have hidden visibility by default.
# Later, after the image from all embedded code has been built, all these symbols will be made local
# (i.e. not linkable anymore from outside that embedded code library).
# If users want to be able to link to a symbol from outside the embedded image, they should annotate
# it with one of NATIVE_SIMULATOR_IF*
zephyr_compile_options(
-fvisibility=hidden
)
@@ -104,17 +100,15 @@ if(NOT CONFIG_EXTERNAL_LIBC)
$<TARGET_PROPERTY:compiler,freestanding>
$<TARGET_PROPERTY:compiler,no_builtin>
)
else()
# No freestanding compilation, i.e. we use the compiler default C library
zephyr_compile_options($<TARGET_PROPERTY:compiler,hosted>)
endif()
if(CONFIG_COMPILER_WARNINGS_AS_ERRORS)
target_compile_options(native_simulator INTERFACE $<TARGET_PROPERTY:compiler,warnings_as_errors>)
endif()
if(CONFIG_EXTERNAL_LIBC)
# @Intent: Obtain compiler specific flags for no freestanding compilation
zephyr_compile_options($<TARGET_PROPERTY:compiler,hosted>)
endif()
if(CONFIG_EXTERNAL_LIBCPP)
target_link_options(native_simulator INTERFACE "-lstdc++")
endif()

View File

@@ -1,34 +0,0 @@
# SPDX-License-Identifier: Apache-2.0
# For Aarch64, multilib is not an actively pursued solution for most Linux
# distributions. Userspace is (generally) either 32-bit or 64-bit but not
# both.
# @Intent: Call a script to get userspace wordsize for comparison with CONFIG_64BIT
execute_process(
COMMAND
${PYTHON_EXECUTABLE}
${ZEPHYR_BASE}/scripts/build/user_wordsize.py
OUTPUT_VARIABLE
WORDSIZE
OUTPUT_STRIP_TRAILING_WHITESPACE
)
if(CONFIG_64BIT)
if(${WORDSIZE} STREQUAL "32")
message(FATAL_ERROR
"CONFIG_64BIT=y but this Aarch64 machine has a 32-bit userspace.\n"
"If you were targeting native_sim/native/64, target native_sim instead.\n"
"Otherwise, be sure to define CONFIG_64BIT appropriately.\n"
)
endif()
zephyr_compile_options(-fPIC)
else()
if(${WORDSIZE} STREQUAL "64")
message(FATAL_ERROR
"CONFIG_64BIT=n but this Aarch64 machine has a 64-bit userspace.\n"
"If you were targeting native_sim, target native_sim/native/64 instead.\n"
"Otherwise, be sure to define CONFIG_64BIT appropriately.\n"
)
endif()
endif()

34
arch/posix/aarch64.cmake Normal file
View File

@@ -0,0 +1,34 @@
# SPDX-License-Identifier: Apache-2.0
# For Aarch64, multilib is not an actively pursued solution for most Linux
# distributions. Userspace is (generally) either 32-bit or 64-bit but not
# both.
# Get userspace wordsize for comparison with CONFIG_64BIT
execute_process(
COMMAND
${PYTHON_EXECUTABLE}
${ZEPHYR_BASE}/scripts/build/user_wordsize.py
OUTPUT_VARIABLE
WORDSIZE
OUTPUT_STRIP_TRAILING_WHITESPACE
)
if(CONFIG_64BIT)
if(${WORDSIZE} STREQUAL "32")
message(FATAL_ERROR
"CONFIG_64BIT=y but this Aarch64 machine has a 32-bit userspace.\n"
"If you were targeting native_sim/native/64, target native_sim instead.\n"
"Otherwise, be sure to define CONFIG_64BIT appropriately.\n"
)
endif()
zephyr_compile_options(-fPIC)
else()
if(${WORDSIZE} STREQUAL "64")
message(FATAL_ERROR
"CONFIG_64BIT=n but this Aarch64 machine has a 64-bit userspace.\n"
"If you were targeting native_sim, target native_sim/native/64 instead.\n"
"Otherwise, be sure to define CONFIG_64BIT appropriately.\n"
)
endif()
endif()

9
arch/posix/arm.cmake Normal file
View File

@@ -0,0 +1,9 @@
# SPDX-License-Identifier: Apache-2.0
if(CONFIG_64BIT)
message(FATAL_ERROR
"CONFIG_64BIT=y while targeting a 32-bit ARM processor.\n"
"If you were targeting native_sim/native/64, target native_sim instead.\n"
"Otherwise, be sure to define CONFIG_64BIT appropriately.\n"
)
endif()

View File

@@ -1,19 +1,18 @@
# SPDX-License-Identifier: Apache-2.0
zephyr_library()
zephyr_library_compile_definitions(NO_POSIX_CHEATS)
zephyr_library_sources(
cpuhalt.c
fatal.c
irq.c
swap.c
thread.c
)
cpuhalt.c
fatal.c
irq.c
swap.c
thread.c
)
if(CONFIG_ARCH_POSIX_TRAP_ON_FATAL)
target_sources(native_simulator INTERFACE fatal_trap.c)
endif()
zephyr_library_sources(
posix_core_nsi.c
posix_core_nsi.c
)

View File

@@ -22,9 +22,7 @@ extern "C" {
static inline void arch_kernel_init(void)
{
#ifdef CONFIG_SOC_PER_CORE_INIT_HOOK
soc_per_core_init_hook();
#endif /* CONFIG_SOC_PER_CORE_INIT_HOOK */
}
static ALWAYS_INLINE void

24
arch/posix/x86_64.cmake Normal file
View File

@@ -0,0 +1,24 @@
# SPDX-License-Identifier: Apache-2.0
if(CONFIG_64BIT)
# some gcc versions fail to build without -fPIC
zephyr_compile_options(-m64 -fPIC)
zephyr_link_libraries(-m64)
target_link_options(native_simulator INTERFACE "-m64")
target_compile_options(native_simulator INTERFACE "-m64")
else()
zephyr_compile_options(-m32)
zephyr_link_libraries(-m32)
target_link_options(native_simulator INTERFACE "-m32")
target_compile_options(native_simulator INTERFACE "-m32")
# When building for 32bits x86, gcc defaults to using the old 8087 float arithmetic
# which causes some issues with literal float comparisons. So we set it
# to use the SSE2 float path instead
# (clang defaults to use SSE, but, setting this option for it is safe)
check_set_compiler_property(APPEND PROPERTY fpsse2 "SHELL:-msse2 -mfpmath=sse")
zephyr_compile_options($<TARGET_PROPERTY:compiler,fpsse2>)
target_compile_options(native_simulator INTERFACE "$<TARGET_PROPERTY:compiler,fpsse2>")
endif()

View File

@@ -361,6 +361,7 @@ config RISCV_PMP
select THREAD_LOCAL_STORAGE if USERSPACE
select ARCH_MEM_DOMAIN_SUPPORTS_ISOLATED_STACKS
select MEM_DOMAIN_ISOLATED_STACKS
select PMP_KERNEL_MODE_DYNAMIC if MEM_ATTR
help
MCU implements Physical Memory Protection.
@@ -409,11 +410,20 @@ config PMP_GRANULARITY
(ie 4, 8, 16, ...), but if neither TOR mode nor NA4 mode is
supported, the minimum granularity is 8.
config PMP_NO_LOCK_GLOBAL
bool "Do not lock the global PMP entries"
select PMP_KERNEL_MODE_DYNAMIC
help
Configure the PMP entries as unlocked (L=0) to implement PMP relative
features. This allows application to dynamically reconfigure PMP
entries without requiring hard reset.
endif #RISCV_PMP
config PMP_STACK_GUARD
def_bool y
depends on HW_STACK_PROTECTION
select PMP_KERNEL_MODE_DYNAMIC if MULTITHREADING
config PMP_STACK_GUARD_MIN_SIZE
int "Stack Guard area size"
@@ -430,6 +440,12 @@ config PMP_STACK_GUARD_MIN_SIZE
wiggle room to accommodate the eventual overflow exception
stack usage.
config PMP_KERNEL_MODE_DYNAMIC
bool
help
Enable this to dynamically reconfigure and activate PMP entries for
Machine mode when switching between kernel (ISR, syscall) and threads.
# Implement the null pointer detection using the Physical Memory Protection
# (PMP) Unit.
config NULL_POINTER_EXCEPTION_DETECTION_PMP
@@ -460,6 +476,17 @@ config RISCV_IMPRECISE_FPU_STATE_TRACKING
the floating-point register state imprecisely by reporting the state to be
dirty even when it has not been modified. This option reflects that.
config RISCV_SMRNMI_ENABLE_NMI_DELIVERY
bool "NMI delivery on SMRNMI hardware (MNSTATUS.NMIE=1)"
select RISCV_ISA_EXT_ZICSR
help
Set MNSTATUS.NMIE bit to 1 during boot to enable NMI delivery on
RISC-V hardware implementing the SMRNMI extension.
This option only enables NMI delivery. It does not provide RNMI
handlers or mnret instruction support. Proper RNMI handlers must
be implemented in SoC-specific code to handle NMI events.
endmenu
config MAIN_STACK_SIZE

View File

@@ -119,6 +119,15 @@ config RISCV_ISA_EXT_ZICSR
The "Zicsr" extension introduces support for the full set of CSR
instructions that operate on CSRs registers.
config RISCV_ISA_EXT_SMCSRIND
bool
depends on RISCV_ISA_EXT_ZICSR
help
(Smcsrind) - Standard Extension for Indirect CSR Access
The Smcsrind extension provides indirect access to CSRs through
the MISELECT and MIREG registers.
config RISCV_ISA_EXT_ZIFENCEI
bool
help
@@ -228,6 +237,14 @@ config RISCV_ISA_EXT_ZBC
The Zbc instructions can be used for carry-less multiplication that
is the multiplication in the polynomial ring over GF(2).
config RISCV_ISA_EXT_ZBKB
bool
help
(Zbkb) - Zbkb BitManip Extension (Bit-manipulation for Cryptography)
The Zbkb instructions can be used for accelerating cryptography workloads
and contain rotation, reversion, packing and some advanced bit-manipulation.
config RISCV_ISA_EXT_ZBS
bool
help

View File

@@ -28,6 +28,7 @@ zephyr_library_sources_ifdef(CONFIG_DEBUG_COREDUMP coredump.c)
zephyr_library_sources_ifdef(CONFIG_IRQ_OFFLOAD irq_offload.c)
zephyr_library_sources_ifdef(CONFIG_USE_ISR_WRAPPER isr.S)
zephyr_library_sources_ifdef(CONFIG_RISCV_PMP pmp.c pmp.S)
zephyr_linker_sources_ifdef(CONFIG_RISCV_PMP ROM_SECTIONS pmp.ld)
zephyr_library_sources_ifdef(CONFIG_THREAD_LOCAL_STORAGE tls.c)
zephyr_library_sources_ifdef(CONFIG_USERSPACE userspace.S)
zephyr_library_sources_ifdef(CONFIG_SEMIHOST semihost.c)

Some files were not shown because too many files have changed in this diff Show More