Commit graph

136,983 commits

Author SHA1 Message Date
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
f65ac5effb02bdc4cb70b205545971e70c53c282

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