Commit graph

136,983 commits

Author SHA1 Message Date
Muhammed Asif
9384e20fcd boards: microchip: pic32cx_sg61_cult: Updates the led configs
- Updates the LED default configuration
 - Updates the name of the LEDs as per the silk screen

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2026-03-02 15:54:21 -08:00
Sebastian Głąb
69e4eec9c3 tests: drivers: Enable GPIO tests on nrf54lm20b
Add overlays that define DTS nodes required to run
GPIO tests on nrf54lm20b targets.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2026-03-02 15:53:51 -08:00
Sebastian Głąb
4190b11bd5 tests: drivers: Enable clock_control tests on nrf54lm20b
Add nrf54lm20b to platform_allow list in clock control tests.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2026-03-02 15:53:51 -08:00
Raul Hernandez
ac8edad7d3 drivers: mbox: rpi_pico: support NS SIO base address
Refer to this comment for more information:
https://github.com/zephyrproject-rtos/zephyr/pull/92923#discussion_r2637725041

This patch enables Non-Secure mode support for the RP2350 MBOX
driver. It replaces the hardcoded SIO base address with the address
derived from the devicetree parent node. This allows the driver to
use the correct hardware alias in both Secure and Non-Secure contexts.

Signed-off-by: Raul Hernandez <raul.hernandez@spaceface.dev>
2026-03-02 15:52:52 -08:00
hans boot
a455ae3789 include: dt-bindings: clock: Correct typo in STM32H5 clock dt-bindings
Fixes zephyrproject-rtos/zephyr#104260

There was a typo in the STM32H5 clock dtr, regarding SPI6.

Signed-off-by: hans boot <hansboot020@yahoo.com>
2026-03-02 15:52:22 -08:00
Jakub Zymelka
166513d6ca boards: nordic: Add nRF54LM20A as DEVELOP_IN target
Add nRF54LM20A as DEVELOP_IN target on official LM20B DK.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2026-03-02 15:51:07 -08:00
Joakim Tjernlund
2f2fa12991 arm64: Add CFI annotations in exceptions for gdb BT
gdb cannot unwind the stack from exceptions. This adds
CFI annotations to help gdb unwind.

Signed-off-by: Joakim Tjernlund <joakim.tjernlund@infinera.com>
2026-03-02 15:49:41 -08:00
Hake Huang
4844407ded soc: mcx: kconfig enhancements
Kconfig enhancement for mcx series

MCXN: adds comments + begins splitting MCXN547 vs MCXN547_CPU0
 (to reflect per-core feature differences similarly).
MCXW2xx: adds new part number MCXW235BIHNAR,
  and moves CPU feature selects into the series Kconfig.

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2026-03-02 15:45:56 -08:00
Lucien Zhao
c0a560c671 test: arm_irq_vector_table: fix irq1 issue on frdm-imxrt1180
- fix irq1 issue on frdm-imxrt1180 as it is a debug trace interrupt

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-03-02 15:45:15 -08:00
Lucien Zhao
3418150e83 boards: frdm_imxrt1186: Add support for frdm_imxrt1186 board
- Add support for frdm_imxrt1186 board

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-03-02 15:45:15 -08:00
Lucien Zhao
d647882da4 dts: arm: nxp: add nxp_rt1186.dtsi file
add nxp_rt1186.dtsi to delete some pins missed
in rt1186 parts

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-03-02 15:45:15 -08:00
Lucien Zhao
1630f2e05a soc: nxp: rt118x: add rt1186 parts
- add SOC_MIMXRT1186_CM33/CM7 parts

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-03-02 15:45:15 -08:00
Lucien Zhao
a2f0191e2e drivers: gpio: mcux_rgpio: use cfg_idx instead of pin for pue_mux access
Fix incorrect array index on line 101. Should use cfg_idx (which accounts
for non-contiguous pin layouts) instead of pin when accessing pin_muxes
array elements. This prevents potential out-of-bounds access and ensures
correct pull configuration on i.MX RT118x SOCs.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-03-02 15:45:15 -08:00
Lay Desai
d7a4b690c9 drivers: hwinfo: Add mspm0 hwinfo driver to CMakeLists
The hwinfo driver for mspm0 was added to CMakeLists, so it gets
compiled in.

Signed-off-by: Lay Desai <lay.desai@he360.com>
2026-03-02 15:44:51 -08:00
Vinayak Kariappa Chettimada
53d053359a Bluetooth: Controller: nRF54Lx: Fix DTM when using GRTC
Fix nRF54Lx DTM implementation when using GRTC. The Radio
start needs to be offset by a maximum ISR latency value that
is less than inter-frame switching, plus minimum counter
compare offset that can be set, plus minimum CPU latency to
set the counter compare register.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-03-02 15:44:30 -08:00
Vinayak Kariappa Chettimada
8f77fc6e08 Bluetooth: Controller: nRF5x: Tune counter compare minimum and latency
Tune counter compare minimum and latency.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-03-02 15:44:30 -08:00
Vinayak Kariappa Chettimada
5e2e989cdc Bluetooth: Controller: Use clock startup time from devicetree
Use clock startup time from devicetree.

Relates to commit 72dac165d8 ("Bluetooth: Controller: Use
OVERHEAD_XTAL_US from devicetree").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2026-03-02 15:44:30 -08:00
Alberto Escolar Piedras
6006d5c3a5 tests: drivers: display: Don't wrap posix_exit to avoid clang warning
clang thinks bg_color may be used initialized in case the switch default
branch is taken for native_sim, due to the wrapper this test instroduces
for posix_exit() not being marked as no return.
Let's just skip the wrapper as it is not needed for anything.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-03-02 13:52:50 +01:00
Valerio Setti
7c37e95875 drivers: crypto: mbedtls_shim: remove legacy code
Remove inclusions that date back to the original addition of this driver
and that are no more required when PSA API is used.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2026-03-02 11:04:26 +01:00
Ryan McClelland
1292751fdc drivers: i3c: ccc: fix setvendor sending direct CCC without target
i3c_ccc_do_setvendor() uses I3C_CCC_VENDOR(false, id) indicating a
direct CCC, but never sets up the target payload with the target's
address. The memset zeros out targets.num_targets and targets.payloads,
so the CCC is sent with no target address.

Add a ccc_tgt_payload with the target's dynamic address and the
write data, matching how i3c_ccc_do_getvendor() is structured.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2026-03-02 11:03:57 +01:00
Ryan McClelland
2df0e8c20c drivers: i3c: ccc: fix RSTDAA direct using wrong R/W bit
i3c_ccc_do_rstdaa() sets rnw = 1 (read) for the directed RSTDAA CCC,
but per the I3C spec RSTDAA is a Direct Write CCC with zero data
bytes. This causes the wrong R/W bit to be driven on the bus header.

Change rnw to 0 to correctly indicate a write operation.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2026-03-02 11:03:57 +01:00
Ryan McClelland
9bb1b9b5db drivers: i3c: initialize desc to NULL in mem slab allocators
i3c_device_desc_alloc() and i3c_i2c_device_desc_alloc() leave the
local desc pointer uninitialized when k_mem_slab_alloc() fails. The
uninitialized garbage is returned to callers that check for NULL,
causing them to dereference a random pointer instead of handling
the allocation failure.

Initialize desc to NULL so callers correctly detect the failure.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2026-03-02 11:03:38 +01:00
Ryan McClelland
11bfbbf05b drivers: i3c: use safe list iteration when detaching devices
i3c_sec_bus_reset() iterates over the attached I3C and I2C device lists
using SYS_SLIST_FOR_EACH_CONTAINER while removing each node via
i3c_detach_i3c_device()/i3c_detach_i2c_device(). The non-safe iterator
reads the current node's next pointer to advance, but detaching
invalidates that pointer. This causes the loop to either stop early
(skipping devices) or access stale memory.

Add I3C_BUS_FOR_EACH_I3CDEV_SAFE and I3C_BUS_FOR_EACH_I2CDEV_SAFE
macros that wrap SYS_SLIST_FOR_EACH_CONTAINER_SAFE, which saves the
next pointer before executing the loop body. Use these in
i3c_sec_bus_reset() so nodes can be safely detached during iteration.

Also add the new macros to .clang-format ForEachMacros list.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2026-03-02 11:03:38 +01:00
Ryan McClelland
d31d6ed24b drivers: i3c: fix dangling stack pointer in i3c_sec_get_basic_info
i3c_sec_get_basic_info() attaches a stack-allocated temp_desc to the
persistent device linked list via i3c_attach_i3c_device(). If
i3c_ccc_do_getpid() fails or i3c_device_desc_alloc() returns NULL, the
function returns without detaching temp_desc. Once the stack frame is
reclaimed, the linked list contains a dangling pointer, corrupting
memory on any subsequent list traversal.

Add i3c_detach_i3c_device(&temp_desc) before each early return to
ensure the stack-allocated descriptor is removed from the list.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2026-03-02 11:03:38 +01:00
Ryan McClelland
13b1bd8942 drivers: i3c: set ibi_len in SETMRL CCC payload
i3c_bus_setmrl() accepts an ibi_len parameter and uses it to update the
cached descriptor value, but never sets mrl_cmd.ibi_len before sending
the SETMRL CCC on the wire. This means the IBI payload size byte sent
to the target is uninitialized stack data when BCR[2]=1.

Set mrl_cmd.ibi_len = ibi_len so the CCC payload matches the spec
(MIPI I3C v1.2 Section 5.1.9.3.15).

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2026-03-02 11:03:38 +01:00
Zhaoxiang Jin
8530aa46ee tests: pm: policy_api: add test for NULL callback subscription
Add test case to verify that passing NULL to
pm_policy_latency_changed_subscribe() properly
disables notifications for the given subscription,
as documented in the API.

The test verifies that after subscribing with NULL,
latency change callbacks are no longer invoked when
latency requests are added, updated, or removed.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-03-02 11:01:47 +01:00
Zhaoxiang Jin
9834dac28a pm: policy: add NULL callback support for latency subscriptions
The comment for the API pm_policy_latency_changed_subscribe
states: "NULL to disable", but the function implementation
directly saves and subscribes to this node, and subsequently
calls it directly without null checking when changes occur.
This actually poses a risk of calling a null function pointer.

This commit fixes this issue to make the function implementation
consistent with the API description.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-03-02 11:01:47 +01:00
Jason Yu
6c20000396 soc: nxp: mcxw2xx: correct NUM_IRQS value
The NUM_IRQS value for MCXW2xx was incorrectly set to 63. According to
the device reference manual, the correct number of interrupts is 61.

Fixes: #98279

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2026-03-02 11:00:51 +01:00
Fabin V Martin
aa28a39011 boards: microchip: pic32cm_pl10_cnano: added uart support
Updated uart nodes for uart support.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2026-03-02 11:00:26 +01:00
Fabin V Martin
20630ff455 drivers: uart: microchip: sercom g1: code improvements
Some naming changes and removed redundant code.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2026-03-02 11:00:26 +01:00
Fabin V Martin
12fd51ce48 dts: arm: microchip: pic32cm_pl: add sercom nodes
Add sercom nodes for pic32cm_pl

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2026-03-02 11:00:26 +01:00
Fabin V Martin
5dc54b2179 soc: microchip: Include sercom pic32cm_pl10 mapping file
Includes file for mapping DFP macros to follow a common
macro name for sercom uart g1 driver

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2026-03-02 11:00:26 +01:00
Fabin V Martin
ddef991cb0 west.yml: Add mapping file of PIC32CM_PL family
Includes mapping file for macros to standardize macro
names across multiple SoCs for the SERCOM UART G1 driver.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2026-03-02 11:00:26 +01:00
Zhaoxiang Jin
2865d5ce0d pm: policy: replace DT_PROP_LEN with ARRAY_SIZE
Use ARRAY_SIZE macro to determine the size of the pm_constraints
array instead of DT_PROP_LEN. Because a practical issue is that
'zephyr, disabling-power-states' may contain multiple power states,
but one of the power states is in a disabled status. In this case,
the size obtained by DT_PROP_LEN is larger than the actual size.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-03-02 10:58:56 +01:00
Zhaoxiang Jin
4ffd7989ee tests: pm: policy: enhance event testing
Expanded the existing policy API test to cover the new
hardened behaviors (no-op update/unregister when unregistered,
re-register == update).

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-03-02 10:58:14 +01:00
Zhaoxiang Jin
af746bc840 pm: policy: Improve the event implementation
1. Updated event-related API docs to fix wording and clarify
semantics ("earliest/soonest event", ticks vs cycles).

2. Improve the event implementation to prevent list corruption on misuse:
- pm_policy_event_register() is now idempotent: re-registering
  the same evt updates its time instead of appending a duplicate node.
- pm_policy_event_update() / pm_policy_event_unregister() become clean
  no-ops if evt is not currently registered.
- Kept a basic evt != NULL assertion.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-03-02 10:58:14 +01:00
Michal Smola
ad00e3cd66 tests: drivers: dma: enable loop_transfer test for frdm_mcxc242
No dma tests are enabled for frdm_mcxc242 board.
Enable loop_transfer test by adding board overlay and conf files.

Signed-off-by: Michal Smola <michal.smola@nxp.com>
2026-03-02 10:56:53 +01:00
Michal Smola
fa55612762 boards: frdm_mcxc242: enable dma
Dma is not enabled in board dts and it is not listed in supported
peripherals in frdm_mcxc242.yaml
Enable dma in dts and add it to the list of supported peripherals
to enable dma tests.

Signed-off-by: Michal Smola <michal.smola@nxp.com>
2026-03-02 10:56:53 +01:00
Alexey Nikolaev
51a5bcf87b logging: Replace NULL equality check with is_null_no_warn()
This change solves the problem with `the comparison will always evaluate
as 'false' for the address of '_fmt' will never be NULL` warning.
It appears when `CONFIG_COMPILER_SAVE_TEMPS=y` and this case is mentioned
in documentation for this function https://docs.zephyrproject.org/latest/doxygen/html/group__sys-util.html#ga611e5bb95e5b4d490a33b9025791d366

Signed-off-by: Alexey Nikolaev <alexeynikzzz@gmail.com>
2026-03-02 10:55:55 +01:00
Mithilesh Konakanchi
c7f2a23c74 boards: stm32f469i_disco: Add AU1 Variant and update LCD Display
Add $AU1 board variant for stm32f469i_disco. The new board uses nt35510
device for LCD display and change ft5336 I2C address to 0x38 (7-bit)

The LCD Timing Parameters are also updated to work with nt35510

Signed-off-by: Mithilesh Konakanchi <mithileshkonakmit@gmail.com>
2026-03-02 10:55:20 +01:00
Fabian Blatz
37cc399292 tests: drivers: Adding ac057tc1 to display tests
Updated display tests to run the ac057tc1 display.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2026-03-02 10:54:37 +01:00
Fabian Blatz
a983df8dbb drivers: display: Add AC057TC1 e-ink display driver
Add driver for the AC057TC1 5.7-inch 7-color electrophoretic (e-ink)
display. The driver supports MIPI DBI 4-wire SPI mode and includes:

- GPIO interrupt-driven busy signal handling with semaphore-based waiting
- Deep sleep and PM device support for power management
- 4-bit per pixel (2 pixels per byte) color format with 7 color palette

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2026-03-02 10:54:37 +01:00
Fabian Blatz
6685c3028b drivers: display: Add PIXEL_FORMAT_PRIV_START value
Adds a PIXEL_FORMAT_PRIV_START value to the display header. This allows
displays with unusual color format to still report sensible information in
their display_capabilites via extension of the enumeration.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2026-03-02 10:54:37 +01:00
Fabin V Martin
955290f3ad boards: microchip: pic32cm_jh01_cpro: update sercom node for i2c
update board dts for sercom i2c node

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2026-03-02 10:53:58 +01:00
Fabin V Martin
0e880da6a6 drivers: i2c: microchip: sercom g1: Fixed issues for i2c transfer
The issues fixed for i2c transfer using polling and interrupt
modes which was observed while testing with the pic32cm_jh_01
boards.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2026-03-02 10:53:58 +01:00
Fabin V Martin
52621bce9d dts: arm: microchip: pic32cm_jh: Add version in binding yaml for i2c
Add supported version in sercom g1 i2c binding yaml file.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2026-03-02 10:53:58 +01:00
Leevi Xu
02b4ac1519 drivers: i2c: sbcon: fix init when pinctrl applies successfully
When pinctrl_apply_state() returns 0 (success), the previous condition
(ret != -ENOENT) caused an early return, so i2c_bitbang_init() and
i2c_bitbang_configure() were never run. Only -ENOENT (no pinctrl
entry) should be ignored; real errors should still abort init.

Fix by returning only when ret < 0 && ret != -ENOENT.

Signed-off-by: Leevi Xu <leevi.xu@evenrealities.com>
2026-03-02 10:53:23 +01:00
Ajay Neeli
f349d529b3 i2c: cdns: Add 10-bit target address support
Extend the Cadence I2C driver to support 10-bit target addressing.

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2026-03-02 10:52:41 +01:00
Thomas Hebb
58812d0519 tests: bluetooth: shell: Test compilation of DID profile
No test currently builds Zephyr with CONFIG_BT_DID set, meaning errors
in that feature are not caught by CI.

Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
2026-03-02 10:49:56 +01:00
Thomas Hebb
86b9ebadc6 bluetooth: classic: did: Set up logging
This file fails to compile since commit ef7b132bfd ("Bluetooth:
Classic: Fix initialization to support re-initialization"), which added
a LOG_ERR() invocation but didn't setup logging for the file.

Fixes #101810

Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
2026-03-02 10:49:56 +01:00