Commit graph

136,983 commits

Author SHA1 Message Date
Fin Maaß
2ab28b2edf docs: migration-guide: riscv compatible requirement
mention riscv compatible requirement.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-26 14:15:18 +01:00
Fin Maaß
0da1b7870e arch: riscv: require "riscv" compatible
Require the "riscv" compatible for
CONFIG_RISCV.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-26 14:15:18 +01:00
Fin Maaß
0c07ca7538 starfive: riscv: dts: remove unsupported properties
Remove unsupported properties from the StarFive RISC-V DTS files.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-26 14:15:18 +01:00
Fin Maaß
e5dc87003d riscv: dts: add missing "riscv" compatible
Add the "riscv" compatible, where it was
missing.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-26 14:15:18 +01:00
Fin Maaß
c42538600f scripts: Refactor dt_compat_any_has_prop
Refactor dt_compat_any_has_prop
to reduce its Cognitive Complexity.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-26 14:15:18 +01:00
Fin Maaß
3bffe47e3d scripts: Add dt_compat_all_has_prop
Add the dt_compat_all_has_prop
kconfig preprocessor function, simillar to
dt_compat_any_has_prop.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-26 14:15:18 +01:00
Fin Maaß
8f23fdc743 scripts: Add list array support for dt_compat_any_has_prop
Add support for arrays and string-arrays to
dt_compat_any_has_prop
kconfig preprocessor function.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-01-26 14:15:18 +01:00
Pisit Sawangvonganan
5f2d9f5e7b drivers: gpio: place API into iterable section
Add the `DEVICE_API` wrapper to the remaining `gpio_driver_api` instances,
ensuring that each driver API is placed in its respective linker section.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2026-01-26 12:09:59 +01:00
Pisit Sawangvonganan
5a5c23bbea drivers: flash: place API into iterable section
Add the `DEVICE_API` wrapper to the remaining `flash_driver_api`
instances, ensuring that each driver API is placed in its respective
linker section.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2026-01-26 12:09:53 +01:00
Gaetan Perrot
28de0a8681 doc: develop: picolibc: fix reference to libc hooks location
The documentation incorrectly pointed to a single file
(libc-hooks.c) for the Picolibc API hook implementations.

These hooks are implemented across the lib/libc/picolibc/ directory,
not in a single file.

Update the documentation to reference the directory instead to avoid
confusion.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-26 12:09:42 +01:00
Gaetan Perrot
2550ce798f dts: binding: adc: siwx91x: fix typo in description
Fix voltage typo in description field in silabs,siwx91x-adc.yaml

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-26 12:09:38 +01:00
Benjamin Cabé
38ea265124 dts: bindings: display: move DTS snippets from description to examples
Use the new `examples` property to provide example usage in a more
structured way.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-26 12:08:23 +01:00
Shreya Kulkarni
09b0424fec net: lib: midi2: fix reverse null dereference in auth_session
Coverity found a REVERSE_INULL defect (CID 551615).
The 'hasher' pointer was used before it was checked
for NULL in crypto_query_hwcaps().

This patch reorders the logic to check the pointer
immediately after device_get_binding().

Fixes CID 551615

Signed-off-by: Shreya Kulkarni <kulkarnishreya2421@gmail.com>
2026-01-26 12:08:05 +01:00
Tomi Fontanilles
3616a23b54 samples: drivers: crypto: fix failing test on qemu_cortex_m3/ti_lm3s6965
The PSA setup functions would return -141
(`PSA_ERROR_INSUFFICIENT_MEMORY`).
Increasing the heap size makes the test run successfully.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2026-01-26 12:07:44 +01:00
Kapil Bhatt
9968423aff modules: hostap: Increase stack size for P2P support
Fix stack overflow by increasing stack size for p2p.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2026-01-26 12:07:36 +01:00
Biwen Li
ce2d4e00ec dts: arm: imx95: m7: add power domain
Add power domain for irqsteer in display mix.
Must power on the display mix before accessing
registers of display irqsteer.

When disp_irqsteer node is enabled, please
enable option CONFIG_PM_DEVICE.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2026-01-26 12:06:36 +01:00
Biwen Li
f07d399de5 drivers: power_domain: arm_scmi: update kernel level and priority
Update kernel level and priority(same with scmi clock control)

On i.MX95, there is an irqsteer instance in display mix.
when the irqsteer is enabled, must power on display mix before
accessing registers of the irqsteer(call irqsteer_hw_init).
the irqsteer drivers's kernel level is PRE_KERNEL_1 and it's
priority is 40. So update kernel level to PRE_KERNEL_1 and update
priority to 30 to ensure that the arm scmi power domain driver
is initialized before initializing irqsteer driver.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2026-01-26 12:06:36 +01:00
Flavio Ceolin
12f61f81b7 doc: pm/power_domain: Fix wrong function signature
Fix a wrong type in the code snippet. In the pm action, the
action parameter is not a pointer.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-26 12:05:42 +01:00
Flavio Ceolin
1ec8feb98d doc: pm/device: Typo fixes
Fix a wrong uppercase after a comma and s/unsolicitet/unsolicited

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-26 12:05:42 +01:00
Flavio Ceolin
4ff318311d doc: pm/device: Fix variable names in code snippet
The driver config struct was declaring `int_pin` while the code was
using `int_gpio`. Another issue was the variable name used for
`dev->config`, changed it to `config` instead of `dev_config` as used
in the code.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2026-01-26 12:05:42 +01:00
Kevin Chan
821dfad62f boards: infineon: kit_pse84_eval: board.cmake
After connect to cat1d.cm33, do disconnect and connect to cat1d.cm55

Signed-off-by: Kevin Chan <kevin.chan3@infineon.com>
2026-01-26 12:05:30 +01:00
Muhammad Waleed Badar
c36bfd0367 boards: raspberrypi: rpi_4b: improve documentation
Add a quick overview and hardware specification

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-01-26 12:05:19 +01:00
Tomi Fontanilles
3c43980192 tests: crypto: mbedtls_psa: remove MD5 test
MD5 is a weak hash algorithm that is not supported by all PSA Crypto
implementations.

Remove its usage for compatibility.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2026-01-26 12:02:44 +01:00
Tomi Fontanilles
a4b7341858 tests: crypto: mbedtls_psa: use static key slots
To avoid needing heap for PSA key slots.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2026-01-26 12:02:44 +01:00
Tomi Fontanilles
6ad34407d4 modules: mbedtls: remove extra spaces in config-mbedtls.h
Title.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2026-01-26 12:02:44 +01:00
Lyle Zhu
352c6760ed bluetooth: shell: add commands to test connection request callback
Add shell commands to test the BR/EDR connection request callback
functionality introduced in the previous commit.

Add a `br_conn_req_cb()` callback function that demonstrates how
applications can handle incoming connection requests. The callback
supports:
- Accepting connections with a specified role (central/peripheral)
- Rejecting connections when auto-reject is enabled

Update the `pscan` (connectable) command to accept an optional
"central/peripheral" parameter. When provided, the connection request
callback is registered and configured to accept incoming connections
as the central/peripheral role. Without the parameter, the default
behavior is used.

Add `auto_reject_conn` shell command to enable/disable automatic
rejection of incoming connection requests for testing purposes.
This setting only takes effect if the `connectable` command has the
optional parameter `central/peripheral` set.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-26 12:01:22 +01:00
Lyle Zhu
0d73d29962 bluetooth: classic: add callback for incoming connection requests
Add a callback mechanism to allow applications to handle incoming
BR/EDR connection requests and decide whether to accept or reject
them, as well as specify the desired role (central/peripheral).

Update bt_br_set_connectable() to accept an optional callback function
parameter. When provided, callback is invoked on incoming connection
requests, allowing the application to inspect the remote device address
and Class of Device before accepting or rejecting the connection.

If no callback is provided, the connection request is accepted
internally with the default behavior based on the
`CONFIG_BT_ACCEPT_CONN_AS_CENTRAL` configuration option.

The accept_conn() function is updated to:
- Call the registered callback if available
- Pass the remote device address and Class of Device to the callback
- Accept the connection if the callback returns BT_BR_CONN_REQ_ACCEPT_*
- If the returned value is BT_BR_CONN_REQ_ACCEPT_CENTRAL, the role
  switch will be requested.
- Reject the connection if the callback returns BT_BR_CONN_REQ_REJECT_*
- Add error handling and logging for failed connection acceptance

Update all existing callers of bt_br_set_connectable() to pass NULL
for the callback parameter to maintain backward compatibility.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-26 12:01:22 +01:00
Lyle Zhu
2a7e90b1e3 tests: bluetooth: shell: add test for accept_conn_as_central
Add a new test case for the Bluetooth shell to verify the
BT_ACCEPT_CONN_AS_CENTRAL configuration option.

The test uses the BR/EDR configuration and enables the option to
accept incoming ACL connections as central role.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-26 12:01:22 +01:00
Lyle Zhu
2c4d6c69e8 bluetooth: host: classic: add option to accept connection as central
Add a new Kconfig option BT_ACCEPT_CONN_AS_CENTRAL to allow accepting
incoming ACL connection requests as the central role instead of the
default peripheral role.

When enabled, the accept_conn() function sets the role to central in
the HCI accept connection request command when handling the connection
request event.

The actual role will be updated in Role Change event.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-26 12:01:22 +01:00
Jorge Guzman
912de231d3 doc: external: xedge: add module documentation
Add documentation for Xedge embedded IoT framework.

Signed-off-by: Jorge Guzman <jorge.gzm@gmail.com>
2026-01-26 11:59:56 +01:00
Robert Lubos
7fe8d52901 drivers: wifi: eswifi: Validate data length on send
Verify that requested data can fit into the transmit buffer on send to
avoid out-of-bound memory writes.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-01-26 11:59:45 +01:00
William Tang
e4268b98fa drivers: can: mcux: flexcan: fix unnecessary error handling in MB IRQ
Move the kStatus_FLEXCAN_UnHandled case from before the
kStatus_FLEXCAN_ErrorStatus case to just before the default case.

This prevents unnecessary execution of the CAN bus error handler
during message buffer interrupt processing. The issue occurred
because when CAN bus errors occur without any mailbox generating
an interrupt, FLEXCAN_MbHandleIRQ returns kStatus_FLEXCAN_UnHandled.
With the previous code structure, the fallthrough from
kStatus_FLEXCAN_UnHandled would cause the kStatus_FLEXCAN_ErrorStatus
handler to execute unnecessarily.

By separating these two cases, kStatus_FLEXCAN_UnHandled (which
represents unhandled status during Message Buffer processing)
now falls through only to the default case for logging, while
kStatus_FLEXCAN_ErrorStatus is handled independently only when
actual CAN bus error status needs processing.

Signed-off-by: William Tang <william.tang@nxp.com>
2026-01-26 11:59:37 +01:00
William Tang
407fbac378 drivers: can: mcux_flexcan: split IRQ handling to avoid unused registers
Replace FLEXCAN_TransferHandleIRQ() with separate calls to
FLEXCAN_BusoffErrorHandleIRQ() and FLEXCAN_MbHandleIRQ() to handle
FlexCAN interrupts.

The original FLEXCAN_TransferHandleIRQ() API accesses registers for
features that may not be used, including Enhanced RX FIFO. This can
cause issues when different FlexCAN instances have different hardware
features, as it may attempt to access non-existent registers.

By using the more targeted FLEXCAN_BusoffErrorHandleIRQ() and
FLEXCAN_MbHandleIRQ() functions, we only access the registers that
are actually needed for the enabled features. This approach:
- Prevents accessing non-existent registers on instances lacking
  certain features
- Provides a more lightweight interrupt handling path
- Slightly improves code efficiency by avoiding unnecessary register
  operations

The config structure is now used in the ISR to pass the number of
message buffers to FLEXCAN_MbHandleIRQ().

Signed-off-by: William Tang <william.tang@nxp.com>
2026-01-26 11:59:37 +01:00
Luis Ubieda
611c6b2ff4 modules: sensor: afbr: Update RTIO Callback signature
As per https://github.com/zephyrproject-rtos/zephyr/pull/93227

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2026-01-26 11:59:19 +01:00
Hubert Miś
68dbbb14d7 drv: ft8xx: new coprocessor commands
Implement more co-processor commands in the FT8xx display driver.
The list of the new implemented commands consists of:

* CMD_FGCOLOR
* CMD_BGCOLOR
* CMD_SLIDER
* CMD_TOGGLE
* CMD_TRACK

Signed-off-by: Hubert Miś <hubert.mis@gmail.com>
2026-01-26 11:59:00 +01:00
Appana Durga Kedareswara rao
cd191fe216 tests: fpu_sharing: float_disable: Add ARM64 architecture support
The float_disable test was missing proper ARM64 support in its
preprocessor conditionals:

1. ARM64 was not included in K_FP_OPTS definition, causing build errors
2. ARM64 was incorrectly grouped with ARM (Cortex-M/R) which expects
   k_float_disable() to return -EINVAL for non-current threads
3. K_FLOAT_DISABLE_SYSCALL_RETVAL was not defined for ARM64

ARM64 has different FPU management semantics than ARM (Cortex-M/R):
- ARM restricts k_float_disable() to current thread only
- ARM64 allows disabling FPU for any thread because SMP configurations
  require flush_owned_fpu() to manage FPU state across multiple CPUs

Fix the preprocessor conditionals to:
- Include CONFIG_ARM64 in K_FP_OPTS definition
- Separate ARM64 from ARM in test_k_float_disable_common() so ARM64
  expects success (0) instead of -EINVAL
- Include ARM64 in K_FLOAT_DISABLE_SYSCALL_RETVAL definition

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-01-26 11:56:59 +01:00
Appana Durga Kedareswara rao
34076efa39 arm64: fpu: Clear K_FP_REGS flag in arch_float_disable()
The arch_float_disable() function was not clearing the K_FP_REGS flag
from thread->base.user_options after disabling FPU access. This caused
the float_disable test to fail as it verifies the flag is properly
cleared after FPU disable.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-01-26 11:56:59 +01:00
Appana Durga Kedareswara rao
3cdae0cf4b boards: amd: Add generic APU board support for Versal Gen 2 SoC (CortexA78)
Introduce a generic board configuration for the APU on the Versal Gen 2
SoC, which is based on the ARM Cortex-A78 processor.

This board setup provides a baseline environment for enabling and testing
Cortex-A78 features and peripheral integration on the APU subsystem.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-01-26 11:56:59 +01:00
Appana Durga Kedareswara rao
3adaf221f0 soc: amd: Add initial support for Versal Gen 2 SoC APU (Cortex-A78)
Add initial support for the Versal Gen 2 SoC APU, which is based on
the Arm Cortex-A78 processor. It includes basic wiring for memory
regions, UART, interrupt controller, and timer.

The versal2_apu.dtsi file defines peripherals shared across the SoC,
while versal2_a78.dtsi captures peripherals private to the Cortex-A78
processor. These device trees lay the groundwork for further APU-based
development on the Versal Gen 2 platform.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-01-26 11:56:59 +01:00
Jingxing Lai
1bc469bcb4 boards: seeed: xiao_nrf54l15: add OpenOCD AP lock recovery
Add CTRL-AP based mass-erase recovery support for nRF54L15 to help
recover AP-locked devices.

The script adds a user-facing `nrf54l_mass_erase` helper and triggers it
automatically on `examine-fail` when AP lock is detected.

Signed-off-by: Jingxing Lai <starsphere@foxmail.com>
2026-01-25 17:07:57 +01:00
Gaetan Perrot
654dfddc7d mgmt: mcumgr: transport: smp_bt: reduce ret variable scope
The return value variable was initialized but immediately
overwritten before.

Remove the redundant initialization and limit the variable scope to
where it is actually used.

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-25 17:07:05 +01:00
Lucien Zhao
6639613213 dts: nxp: nxp_mcxe24x_common.dtsi: add uuid/hwinfo feature
- add uuid and rcm-hwinfo feature
- test passed for hwinfo_api case on mcxe24x platform

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-01-25 17:06:39 +01:00
Emil Gydesen
018482e3e9 tests: Bluetooth: Tester: Fix miss check and alloc in BAP broadcast
Some of the BAP broadcast functions was missing a check for
allocated.

Adding the checks exposed a bug in the CAP commands where
the broadcasts were never actually allocated. Since there
is not a command for that in CAP, a workaround has been
implemented to use the first command (setup_stream) to
allocate a BAP broadcast with a dummy broadcast ID.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2026-01-25 17:06:13 +01:00
Pisit Sawangvonganan
d8110bf398 drivers: i2c: place API into iterable section
Add the `DEVICE_API` wrapper to the remaining `i2c_driver_api` instances,
ensuring that each driver API is placed in its respective linker section.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2026-01-25 14:40:03 +01:00
Benjamin Cabé
21dcbfeb24 ci: doc: workflows: Add CI for Doxygen coverage delta analysis
This add a new script and hooks it up into the existing doc workflow so
that we can make documentation build fail if new API is added without
proper documentation coverage for it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-25 14:39:53 +01:00
Benjamin Cabé
c3012ccff4 doc: cmake: run doxygen coverage in single-threaded mode
In order to get reproducible coverage reports, run Doxygen in
single-threaded mode for the doxygen-coverage target.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-25 14:39:53 +01:00
Stephan Linz
443590b616 MAINTAINERS: include Sparkfun RP2040 mikroBUS in RPi Pico Platforms
This commit adds the Sparkfun RP2040 mikroBUS Development Board under
the same assignees as other of the Raspberry Pi Pico based boards.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-25 14:39:28 +01:00
Stephan Linz
10b3088e35 boards: sparkfun: adds the RP2040 mikroBUS development board
Adds basic support for the "Sparkfun RP2040 mikroBUS Development
Board" that comes with 16MB on-board QSPI Flash, a blue user LED
on GP25, UART0 as console, I2C1 and SPI0 as default serial busses,
free access to ADC0 - ADC3, and the following add-ons:

- support for the digital on-board RGB LED at GP8 over PIO0
- support for the on-board battery fuel gauge sensor over I2C1
  that monitors the single cell battery charging circuit
- support for the on-board microSD card as SDHC over SPI1 at 12MHz
- support for the on-board Qwiic or STEMMA QT connector
- support for the on-board mikroBUS socket
- support for the Thing Plus or Feather pin header

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-25 14:39:28 +01:00
Merin George
cf6bfbfa54 soc: add flash power down/up sequence around deep sleep
Implement cyw20829 SoC specific flash power down before
entering deep sleep and power up on wake. This reduces
the overall power consumption during deep sleep

Signed-off-by: Merin George <merin.george@infineon.com>
2026-01-25 14:39:08 +01:00
Merin George
019b31f3eb drivers: bluetooth: hci: enable controller low power mode
Enable low power mode support in the bluetooth HCI driver for
cyw20829 so that the controller can enter sleep states when idle

Signed-off-by: Merin George <merin.george@infineon.com>
2026-01-25 14:39:08 +01:00