Commit graph

126,787 commits

Author SHA1 Message Date
Jiafei Pan
ee28ac20d5 boards: imx93_evk: enable watchdog on the board
Enabled watchdog on the board.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Joe Zhou <zhongcai.zhou@nxp.com>
2025-10-06 20:17:50 -04:00
Jiafei Pan
dc1dffbe87 dts: arm64: imx93: add watchdog device nodes
Add watchdog device nodes in i.MX93 A-Core dts.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Joe Zhou <zhongcai.zhou@nxp.com>
2025-10-06 20:17:50 -04:00
Jiafei Pan
8e0486d291 drivers: watchdog: wdog32: add imx9352 support
On i.MX 93 platform, no need to clear interrupt flags, otherwise it
will not trigger reset.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Joe Zhou <zhongcai.zhou@nxp.com>
2025-10-06 20:17:50 -04:00
Jiafei Pan
9f6a74506f drivers: watchdog: wdog32: add MMIO mapping support
Added MMIO mapping support in order to support on Cortex-A Core.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-06 20:17:50 -04:00
Jiafei Pan
708ffa3c29 modules: hal_nxp: disable quick access
Define FSL_SDK_DRIVER_QUICK_ACCESS_DISABLE to disable quickaccess
definition in hal_nxp drivers.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-06 20:17:50 -04:00
Jiafei Pan
11a2ec4b13 west.yml: depend on hal_nxp pr 605
Depend on hal_nxp PR 605.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-06 20:17:50 -04:00
Declan Snyder
9f382d6356 boards: mimxrt700_evk: Make linkserver the default runner
Linkeserver should be the default runner because that's actually what
comes on the board out of box, which is already indicated in the
documentation of the board.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-06 20:17:39 -04:00
Loic Domaigne
c123d983d1 include: kernel: doc: improve slab API "isr-ok" documentation
As discussed on Discord, certain k_mem_slab* APIs are ISR-OK, but not
marked as such. After APIs review, the following functions should be
ISR-OK:
- k_mem_slab_free
- k_mem_slab_num_used_get
- k_mem_slab_max_used_get
- k_mem_slab_num_free_get
- k_mem_slab_runtime_stats_get
- k_mem_slab_runtime_stats_reset_max

Added the Doxygen marker where needed.

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-10-06 20:17:27 -04:00
Emil Gydesen
0a7d6bc168 doc: releases: Add note about CONFIG_BT_BUF_ACL_RX_COUNT
The deprecated Kconfig option has been removed.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-06 20:17:14 -04:00
Emil Gydesen
6c870b071a Bluetooth: Remove CONFIG_BT_BUF_ACL_RX_COUNT
Remove the deprecated CONFIG_BT_BUF_ACL_RX_COUNT config
as it has been deprecated since 4.1

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-06 20:17:14 -04:00
Benjamin Cabé
e7c8ecf4bb shields: arduino: Add support for Arduino Modulino Thermo
Add shield definition and documnentation for the Arduino Modulino Thermo

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-06 20:16:53 -04:00
Daniel Leung
9b25d8a440 tests: mem_protect/mem_map: remove intel_adsp test case
This removes the special test case for intel_adsp to skip
the mapped code execution test. The test can now run on
the ACE3.0 hardware without issue.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-06 20:16:31 -04:00
Daniel Leung
35b26e9368 tests: mem_protect/mem_map: fix mapped code execution test
The mapped code execution test uses the simple k_mem_phys_addr()
to do virtual to physical address translation. And this requires
the virtual address to be inside the kernel permanent mapping
(i.e. between __kernel_ram_start and __kernel_ram_end). With
demand paging, the translation is no longer static and it can be
mapped into any physical address. So a simple memory mapping
in the test would map an incorrect physical address which may
not even contain the said function. It has been working when
demand paging is not enabled is due to the custom sections is
immediately after the text section, so that the simple address
translation still works. But a custom linker script (i.e. board
config) may make that not true anymore.

So fix this by putting transplanted_function() into
snippets-text-sections.ld such that this would appear inside
.text section.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-06 20:16:31 -04:00
Daniel Leung
a9849a7ada soc: intel_adsp/ace: add snippets-text-sections.ld
Adds snippets-text-sections.ld to ACE linker scripts.
For now, this is for the memory mapping test.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-06 20:16:31 -04:00
Daniel Leung
36413cdbf7 arm: linker: add snippets-text-sections.ld to cortex_a_r, arm64
Adds snippets-text-sections.ld to arm/cortex_a_r and arm64
linker scripts.

For now, this is for the memory mapping test.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-06 20:16:31 -04:00
Daniel Leung
55a904882f x86: linker: add snippets-text-sections.ld
Adds snippets-text-sections.ld to x86 linker scripts.
For now, this is for the memory mapping test.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-06 20:16:31 -04:00
Daniel Leung
e8a66d57db linker: add a way to add snippets to text section
This adds a way to add to the text section via
zephyr_linker_sources(TEXT_SECTIONS <...>).

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-06 20:16:31 -04:00
Benjamin Cabé
98168eb5a2 shields: arduino: Add support for Arduino Modulino Movement
Add shield definition and documentation for the Arduino Modulino Movement

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-06 20:15:28 -04:00
Chris Friedt
c8e22ec596 tests: posix: signals: adjust expectations for real-time signals
1. Fix an off-by-one error in `signo_fits()` (a utility function inside
   signal.c

2. Adjust expectations for C libraries that do not provide a sigset_t
  large enough to support `SIGRTMIN` or `SIGRAMAX`.

This fixes an issue in CI that appeared when run under ARC.

```shell
west build -p auto -b qemu_arc/qemu_arc_hs -t run tests/posix/signals
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-06 20:15:10 -04:00
Sylvio Alves
6862856193 west.yml: espressif: use Zephyr utils for MIN/MAX
Replace all <sys/param.h> to <zephyr/sys/utils.h> for
MIN/MAX macros in Espressif HAL.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-06 20:12:58 -04:00
Tomas Barak
ca85e76fc2 MAINTAINERS: Add self as collaborator
- add TomasBarakNXP as collaborator in audio, i2s, nxp xtensa platforms

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-10-06 15:10:39 -04:00
Jan Kablitz
be0e98388c drivers: sensor: st: lis2du12: add SENSOR_TRIG_DELTA support
Extend the LIS2DU12 accelerometer driver with SENSOR_TRIG_DELTA
support. The detection is based on the slope between successive
channel readings. Support for setting SENSOR_ATTR_SLOPE_TH and
SENSOR_ATTR_SLOPE_DUR is added as well. In line with other sensors,
SENSOR_ATTR_SLOPE_TH is configured in SI units (m/s^2) and
SENSOR_ATTR_SLOPE_DUR in samples relative to the ODR. The new trigger
can be mapped either to the same GPIO as the data-ready interrupt or
to a dedicated one.

Signed-off-by: Jan Kablitz <jan.kablitz@8tronix.de>
2025-10-06 15:10:01 -04:00
Pieter De Gendt
58b2153218 MAINTAINERS: Add area for NVMEM
Create a section for the newly maintained NVMEM area.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Pieter De Gendt
44158c43ee doc: releases: 4.3: Add NVMEM entry
Add an entry to the API and options section for the Non-Volatile Memory
subsystem.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Pieter De Gendt
c8477e37f8 doc: services: Add NVMEM subsystem
Introduce a page for the Non-Volatile Memory subsystem with a reference to
the doxygen API.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Pieter De Gendt
6c83f868ed tests: lib: devicetree: api: Add NVMEM test cases
Add test cases tot the devicetree API testsuite for NVMEM macros.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Pieter De Gendt
3577eed9c6 tests: nvmem: api: Add test suite for NVMEM API
Add basic testing to validate the API of the NVMEM subsystem.
Add testing with an EEPROM backend.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Pieter De Gendt
05a605021a nvmem: Introduce new subsystem for Non-Volatile Memory layer
This commit adds the NVMEM subsystem with a basic implementation for use
with EEPROM devices.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Pieter De Gendt
5d49dccf65 dts: bindings: nvmem: Add fixed-layout
Add a devicetree binding to represent a fixed layout in an NVMEM provider.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Andriy Gelman
f4b3d3946d devicetree: Add nvmem-consumer
Adds property nvmem-cells for referencing a node that stores some
configuration information. A typical use case is the reading of MAC
address from an EEPROM device.

Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Erwan Gouriou
f460b59d0f boards: stm32n6570_dk: Configure i3c1
Configure i3c1 nodes on stm32n6570_dk.
Note that pins conflict with i2c1 ones, so don't enable it here and
it will have to be enabled by application

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-06 15:07:38 -04:00
Erwan Gouriou
9ed3eada84 dts: arm: stm32n6: Add i3c nodes
Provide I3C nodes for stm32n6 series.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-06 15:07:38 -04:00
Peter Mitsis
482d183087 tests: Update smp test to support 12 CPUs
Updates the smp test to support nsim/nsim_hs5x/smp/12cores.
Furthermore, if someone attempts to build the smp test for more
than 12 CPUs, report an error message informing the user to
reduce the number of CPUs. This reduction can be in the form
of a custom overlay for the board in question.

Fixes #96339

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-06 15:06:37 -04:00
Filip Kokosinski
daab73db73 MAINTAINERS: add Instrumentation Subsystem
This commit adds an entry in MAINTAINERS.yml for the Instrumentation
Subsystem added in #91595.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-10-06 15:06:25 -04:00
Filip Kokosinski
f5a349f45c scripts: move zaru.py to a separate directory
This commit moves the `zaru.py` script to `scripts/instrumentation`, and
adjusts references to the script in other places.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-10-06 15:06:25 -04:00
Daniel Schultz
8f60b7446c boards: aesc: ElemRV-N: Add GPIO Controller
ElemRV-N has a gpio controller. Enable this node in the board-level
device-tree and add this interface to all aux. files.

Also sort device-tree nodes in the DTS file alphabetically.

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-10-06 20:03:28 +03:00
Daniel Schultz
15aa152669 dts: riscv: aesc: elemrv-n: Add GPIO Controller
ElemRV-N has a GPIO controller with a total of 12 pins.

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-10-06 20:03:28 +03:00
Daniel Schultz
15d2990b24 drivers: gpio: Add driver for Aesc Silicon
Add basic support for the Aesc Silicon GPIO controller.

This IP core has internal tri-states and therefore a read,
write and direction registers. Additionally, it has advanced
monitoring capabilities for interrupt generation; low or
high leve and rising or falling edge.

Interrupt support will be added later when ElemRV supports
interrupt in Zephyr.

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-10-06 20:03:28 +03:00
Mike J. Chen
8cd010b701 drivers: mbox: imx_mu: return early in ISR when done
Change the ISR code to return once all pended interrupts
are handled instead of continuing to iterate over
all channels. Common occurence is just for one interrupt
bit to be set so no need to check all bits in all channels
if only one bit is pending.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-10-06 20:03:16 +03:00
Mike J. Chen
13e0588cd2 drivers: mbox: imx_mu: change order of interrupt handling
Handle notification interrupt before data interrupt of
a channel. Notification interrupts are more commonly
used (e.g. for ipc) and clearing the interrupt ASAP
helps reduce the possiblility that the sender finds
the interrupt already pending if it tries to send multiple
ipc messages in quick succession.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-10-06 20:03:16 +03:00
Mike J. Chen
3c80b15aef drivers: mbox: imx_mu: handle all interrupts for a channel
Handle all interrupts for a channel before going to next
channel. Previous code did an if/else check, so if both
a data rx interrupt and a notification interrupt were pending
for a channel, only one would be handled in the ISR. The
ISR would have to fire again (probably would be still pending)
for the other interrupt to be processed. This could even
lead to starvation/delay if another data rx interrupt got
pended again.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-10-06 20:03:16 +03:00
Mike J. Chen
593e2b5fed drivers: mbox: imx_mu: Remove extra interrupt handler layer
Change to pass the device node to IRQ_CONNECT and remove
the intermediate interrupt handler that has to call
DEVICE_DT_INST_GET() to get the device pointer.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-10-06 20:03:16 +03:00
Mike J. Chen
04778ff6cc drivers: mbox: imx_mu: ignore TriggerInterrupt failures
The ipc backends, like icmsg.c, don't expect errors when
using mailbox send for notifications. In some places,
icmsg.c ignores the return value of the mailbox send,
in some places it propagates the error up, and in some
places it asserts.

icmsg only uses the mailbox send with NULL msg as a means
to interrupt the other processor, and all data is passed
via shared memory. So it is safe to ignore the case when
the interrupt is already pending, since the other
processor should handle the pending message when it gets
around the handling the interrupt. As long as the order
of clearing the interrupt is before the handling of the
data, there should be no case where not pending a new
interrupt when one is already pending would result in missing
any new message.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-10-06 20:03:16 +03:00
Frederik Wenigwieser
b365311984 boards: espressif: esp32s3_mini_n8: fix psram size
There is no psram on this board.

see also:
Table 1-1. ESP32-S3-MINI-1 and ESP32-S3-MINI-1U Series Comparison
https://www.espressif.com/sites/default/files/documentation/esp32-s3-mini-1_mini-1u_datasheet_en.pdf

Signed-off-by: Frederik Wenigwieser <zephyr@frederik.at>
2025-10-06 20:03:06 +03:00
Siratul Islam
f7969995e1 boards: add WeAct Studio ESP32-S3-B board support
Add support for WeAct Studio ESP32-S3-B development board featuring:
- ESP32-S3R8 chip with 8MB integrated PSRAM
- 16MB external SPI flash
- RGB WS2812 LED on GPIO48
- User button on GPIO45
- Dual USB-C connectors
- Wi-Fi and Bluetooth LE support

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-06 20:02:46 +03:00
Krzysztof Chruściński
5a588f1b99 tests: boards: nrf: dmm: Skip stress test for empty memory region
Skip stress test if null memory region. That's the case if DMM is
disabled.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-10-06 20:02:37 +03:00
Krzysztof Chruściński
92d5b46588 soc: nordic: common: dmm: Fix allocation algorithm
There were some corner cases and stress test could fail. Reworking
tail bits handling to make the stress test pass.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-10-06 20:02:37 +03:00
Adam Kondraciuk
60af28e3f5 drivers: timer: nrf_grtc: Move GRTC initialization to early init
GRTC is used by the logger, so it must be initialized
as early as possible. On the other hand, clock requests
are allowed once the clock control API has been initialized.
This PR introduces a two-stage GRTC initialization to meet
these requirements.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-10-06 20:02:28 +03:00
Jérôme Pouiller
7faf6920cd manifest: Update hal_silabs to include wiseconnect 3.5.2
hal_silabs now includes the last version (3.5.2) of WiseConnect, the
downstream SDK for Silicon Labs SiWx91x series.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-06 20:02:16 +03:00
Alberto Escolar Piedras
9de8947bf9 native_simulator: Get latest from upstream
Align with native_simulator's upstream main
4641dad899979528e4083aa762651388a2a7ec7b

Which includes:
4641dad common: nsi_internal.h: Use NSI_INLINE macros
7a1156c nsi_tasks: move header to include folder
6b7d76a nct: fix restarting sem_wait after signal
166516d nce: fix restarting sem_wait after signal

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-06 20:02:02 +03:00