Commit graph

136,983 commits

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