Commit graph

136,983 commits

Author SHA1 Message Date
Cristian Bulacu
bcec3bd04b openthread: platform: infra_if: Remove NAT64 packet checksums
OpenThread NAT64 translator creates a packet that has header checksum
computed and appended.
In case of using ethernet as backbone interface, some NICs may want to
have checksum set to 0 for a correct computation.
This commit aims to address this issue by checking if hardware has
offload capabilities and setting NAT64 packet checksums to 0, if needed.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-11 05:50:07 -05:00
Maochen Wang
09aac143bf manifest: update hostap to fix EAP-TLS failure with TLS 1.3 on Cisco AP
Current implementation uses tls_connection_export_keys_cb to retrieve
exporter_master_secret, client_random, and server_random, which only
works for TLS 1.2. TLS 1.3 introduces a different key derivation
mechanism.
In mbedtls 3.6.4, MBEDTLS_SSL_KEYING_MATERIAL_EXPORT supports exporting
keying material for both TLS 1.2 and TLS 1.3. Update logic to use this
macro and remove redundant MBEDTLS_SSL_PROTO_TLS1_3 check in TLS 1.2
handling.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-12-11 05:49:56 -05:00
Maochen Wang
e01e67e1b0 samples: net: wifi: enable supplicant key debug for NXP config
Introduce WIFI_NM_WPA_SUPPLICANT_DEBUG_SHOW_KEYS to allow key dump
when using the NXP board debug configuration.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-12-11 05:49:56 -05:00
Maochen Wang
2faece5494 hostap: update mbedtls config for enterprise use
Enable MBEDTLS_SSL_KEYING_MATERIAL_EXPORT by default to support TLS
keying material export for enterprise scenarios.
Replace deprecated TLS 1.3 configs with MBEDTLS_SSL_PROTO_TLS1_3 and
MBEDTLS_SSL_SESSION_TICKETS.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-12-11 05:49:56 -05:00
Maochen Wang
ba04029986 mbedtls: enable config for keying material export
Introduce MBEDTLS_SSL_KEYING_MATERIAL_EXPORT configuration option to
control support for TLS keying material export.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-12-11 05:49:56 -05:00
Filip Kokosinski
ff252ebbf4 MAINTAINERS: relegate some Microchip RISC-V maintainers to colalborators
This commit relegates some of the Microchip RISC-V area maitainers to the
collabolator tier.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-12-11 05:49:34 -05:00
Firas Sammoura
ab0bf3a47f tests: riscv: pmp: Make permission change tests dynamic
The existing PMP permission tests relied on hardcoded region indices
(e.g., index 0 or 2). This makes the tests fragile and dependent
on the exact memory attribute region setup.

This change refactors the tests to dynamically determine region counts
and indices based on the output of `mem_attr_get_regions()`:

-   `test_pmp_change_perm_invalid_permission`: Uses the last valid
    region index to test invalid permission flags.
-   `test_pmp_change_perm_invalid_region_index`: Uses the total number
    of regions as the out-of-bounds index.
-   `test_successful_permission_change`: Locates the index of the
    target test region (`dt_regions[0]`) by matching its base address
    and size. The test now also inverts the X bit of the current
    permissions to ensure a change is applied and verified.

These changes make the tests more robust and less dependent on a
specific static configuration.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-12-11 05:49:15 -05:00
Michał Stasiak
cdb23524c3 drivers: nrf: remove GPIO HAL inclusion
Since pin retention handling was moved to nrfx,
GPIO HAL no longer has to be included in analog drivers.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-11 05:49:05 -05:00
Robert Lubos
2565352d11 net: http: server: websocket: Fix truncated string warning on copying
WS_MAGIC is a constant string and when calculating lengths for copying
we always exclude the NULL terminator. In result, using strncpy() for
copying can generate a warning about truncated string, as WS_MAGIC will
always be truncated from the NULL terminator. Therefore replace
strncpy() with memcpy() as it seems more appropriate for this case.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-12-11 05:48:34 -05:00
Pieter De Gendt
82845973a6 scripts: footprint: size_report: Close ELF file
Use the ELFFile context manager to open/close an input file.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-11 05:48:23 -05:00
Yassine El Aissaoui
cafe285810 modules: hal_nxp: Fix spc module selection on MCXW SoC family
Fix wrong condition for spc selection on MCXW family.

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-12-11 05:48:14 -05:00
Cristian Bulacu
510ccd718f net: ip: net_context: Use sin6_scope_id for link-local IPv6 addresses
This commit aims to make use of sin6_scope_id field of net_sockaddr_in6
structure to correctly choose the network interface when destination
address in link-local.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-11 05:47:48 -05:00
Cristian Bulacu
e197198f0a openthread: platform: udp: Correct scope_id assignment for ll addresses
This commit aims to fix correct scope_id assignment when link local
addresses are in use

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-11 05:47:27 -05:00
Fin Maaß
0a5ad3aaa8 drivers: ethernet: remove imply MDIO
remove `imply MDIO` from the
ethernet drivers, that don't directly use mdio
and only use the ethernet phy api, now that the
phys select MDIO.

in 648c8252b575879c2e926d0b051febf2cb1672d1 the
`select MDIO` ones were remove, unfortunatly I forgot
the implyed ones.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-11 05:47:14 -05:00
Alexandre Rey
0b52928625 driver: spi: mcux_dspi: remove obsolete rx_bufs check
The guard against rx_bufs == NULL was originally added to prevent a
DMA misconfiguration observed when no RX buffer was provided.

The issue can no longer be reproduced, and the check was incomplete
since it did not cover rx_bufs->buffers == NULL or rx_bufs->count == 0,
which lead to the same effective condition.

Removing the check simplifies the driver and avoids blocking valid
TX-only transfers.

Signed-off-by: Alexandre Rey <alx.rey@icloud.com>
2025-12-11 09:20:10 +02:00
Pisit Sawangvonganan
c5365797ac shell: modules: devmem: utilize sys_put_le(16|32|64) in memory_dump
Replaces direct byte shifting and assignment with `sys_put_le16`,
`sys_put_le32`, and `sys_put_le64` to simplify the `memory_dump` function.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-12-11 09:19:51 +02:00
Pisit Sawangvonganan
ed75a0a293 shell: modules: devmem: use shell_print where applicable
To improve code clarity, use `shell_print` in place of `shell_fprintf`
with `SHELL_NORMAL` where appropriate.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-12-11 09:19:51 +02:00
Stuart Longland
b87498212d shell_uart: Drop superfluous if statement
We're now checking if there is space prior to executing the loop body,
therefore guaranteeing this condition is never going to fire in a
single-threaded context.

Signed-off-by: Stuart Longland <stuartl@vrt.com.au>
2025-12-11 09:19:40 +02:00
Stuart Longland
301c0130b2 shell_uart: Stop polling if buffer is full
Before calling `uart_poll_in`, check we have space to store the character
in the ring buffer beforehand.  If we do, *then* poll for the character.

That way we don't miss out on serial traffic when our ring buffer is full
unless we fill our hardware ring buffer too.

Signed-off-by: Stuart Longland <stuartl@vrt.com.au>
2025-12-11 09:19:40 +02:00
cyliang tw
43d1c516af tests: drivers: pwm: pwm_gpio_loopback: support numaker_m3334ki
Add support for Nuvoton numaker board numaker_m3334ki.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-12-11 09:19:29 +02:00
cyliang tw
5c31987ce2 dts: arm: nuvoton: add PWM nodes for numaker m333x
Update m333x.dtsi to add PWM nodes for PWM driver support.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-12-11 09:19:29 +02:00
Missael Maciel
726e7b64c2 drivers: uart: save interrupts in PM Action
Removed usart_intenset attribute from conditional compilation
in mcux_flexcomm_data structure since this parameter needs to
be saved/restored independently if the interrupts are enabled
or not based on the PR feedback

Signed-off-by: Missael Maciel <davidmissael.maciel@nxp.com>
2025-12-11 09:19:05 +02:00
Missael Maciel
a84e0b5413 drivers: uart: save interrupts in PM Action
The PM action saves the interrupts enabled using a
global variable called usart_intenset. The problem is
when you have multiple uart instances that have different
configurations, when entering/exiting from a power level,
only one configuration is saved and will be applied to all
uart instances when exiting from a power level. We need to
keep this setting individual for each instance. To do this,
usart_intenset was added as a new element to mcux_flexcomm_data
structure. In this way, each uart instance will keep/restore
each own setting.

Signed-off-by: Missael Maciel <davidmissael.maciel@nxp.com>
2025-12-11 09:19:05 +02:00
Andrej Butok
75a2b1e35c drivers: gpio: nxp: mcux_igpio: fix mcux_igpio_port_get_raw()
- Reads the Pad Status Register (PSR) to get
  the current GPIO input value, instead of the Data Register (DR).
  Following IMXRT1170RM.pdf "13.5.2 GPIO Write Mode".
- Enables input buffer via Software Input On (SION)
  to get correct pin value in PSR for both input/output pins.
- Issue has been discovered during Safety DIO self-tests.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-12-11 09:18:54 +02:00
Zhaoxiang Jin
bd500cb1f9 boards: nxp: remove unused definitions
1. Remove 'XIP_BOOT_HEADER_ENABLE', it is not
used in the mcxn947 build tree.

2. Remove 'BOARD_FLASH_SIZE', it is not used
in the rw612 build tree.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-11 09:18:47 +02:00
Alain Volmat
d671e3f675 drivers: stm32: remove all HAL_RIF_ calls from stm32 drivers
RIF configuration is now done at soc init time in a centralized
way so it is no more necessary for drivers to perform this
configuration.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-11 09:18:38 +02:00
Alain Volmat
76410eef68 soc: stm32n6x: addition of RIF configuration at soc init
Perform all the IPs RIF configuration at init time in case of this
isn't yet performed by an earlier entity during the boot sequence.
This configuration depends on TRUSTED_EXECUTION_SECURE which is
currently always enabled on STM32N6x but will be configurable in
future.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-12-11 09:18:38 +02:00
Firas Sammoura
89ae7bb8e8 arch: riscv: pmp: Remove header guards and add kconfig deps
Remove the CONFIG_RISCV_PMP #ifdef guards from the function
declarations in pmp.h. This allows the header to be included
unconditionally, while the function definitions remain conditional
on the Kconfig option.

Add @kconfig_dep to the Doxygen comments for all functions
to clearly indicate the dependency on CONFIG_RISCV_PMP.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-12-11 09:18:28 +02:00
Lucien Zhao
b78d150e47 dts: arm: nxp: rt700_cpu0: add uuid support
SYSCON0 IP can be accessed by CPU0, HiFi4, EZH-V, eDMA0, eDMA1.
So cm33_cpu1 can't be supported this feature.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-12-11 09:18:20 +02:00
Alberto Escolar Piedras
312b1ef04f pmci: mctp: samples: Remove unnecessary include
These samples do not seem to need the unistd.h header, but including it
limits us to C libraries which have it, which as it is a POSIX
extension is not all.
So let's not include it so we do not limit ourselves unnecessarily.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-11 09:18:02 +02:00
Pete Johanson
17d143a175 tests: secure_storage: Don't try to erase flash with no controller
Add a check for a chosen flash controller to avoid attempting to clear the
settings flash with no controller available.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-12-11 09:17:53 +02:00
Alberto Escolar Piedras
9f0ce75b41 drivers: disk: loopback: Remove unnecessary include
This file does not seem to need unistd.h, and that header is a
POSIX extension to the C library which is not avaiable in general.
So let's not include it.

Without this change this file fails to build with minimal libc or
other C libraries which do not have this extra header.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-10 17:37:49 +00:00
Fabrice DJIATSA
307c08ba6b boards: st: stm32n6570_dk: increase size ram size of serial boot variant
Increase the RAM size of the SB variant to enable execution of relevant
tests that require at least 172 KB.

This ensures continuous tracking of these tests on CI.


Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-12-10 17:37:40 +00:00
Mathieu Choplain
cb27d92c0c scripts: build: check_init_prio: take deferred-init into account
A device with zephyr,deferred-init is initialized by the application, so
we cannot check if it is initialized in "the correct order". On the other
hand, a non-deferred device must not depend on a deferred-init device: this
is guaranteed to be initialized out of order.

Also adjust existing test cases and add a new test case to validate this
behavior.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-10 17:37:27 +00:00
Mathieu Choplain
ed182a89cd scripts: build: check_init_prio: create dedicated "flag errors" function
There is a bit of logic to run every time an error is reported. Factor it
out into a dedicated function.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-12-10 17:37:27 +00:00
Tahsin Mutlugun
15965b266c drivers: serial: uart_max32: Enable TX AE workaround for MAX32657
Extend UART_MAX32_TX_AE_WORKAROUND to also apply when building for
MAX32657.

Without this option, logging output may become fragmented or delayed
because TX interrupts fail to trigger reliably for small chunks of data.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-12-10 17:37:18 +00:00
Tahsin Mutlugun
6c6e8e51bf drivers: serial: uart_max32: Refactor IRQ flag clearing
api_irq_update was clearing TX interrupt flags before the TX interrupt
could be served, breaking synchronization in time-sensitive applications.

Changes:
1. Remove unnecessary MXC_UART_ClearFlags() calls in api_fifo_read() and
   api_irq_update to avoid premature flag clearing; ISR handler already
   clears them after returning from the callback.
2. Replace raw flag checks in irq_is_pending() with more complete
   api_irq_rx_ready() and api_irq_tx_ready().

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-12-10 17:37:18 +00:00
Qingsong Gou
a8d0a7789e drivers: adc: sf32lb: fix ref_internal
Fix adc ref_internal value

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-10 17:37:09 +00:00
Peter van der Perk
24b3ff233b gpio: mcux_rgpio: Support IRQ output select and access checks for i.MX95 M7
Support for selecting the IRQ output via the `irq-output-select` property
in devicetree. Updates interrupt configuration and ISR logic to use the
selected IRQ index. For i.MX95 M7, ensures pins and IRQs are configured
only when secure access is allowed by checking PCNS and ICNS registers.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-12-10 17:36:57 +00:00
Marcelo Roberto Jimenez
ce99d1e428 drivers: ethernet: stm32hal: Fixes source address control
The default configuration for all STM32 microcontrollers in HAL is
to replace the ehternet MAC address with the address configured in
replace address zero. In "modules/hal", Grep for:

macDefaultConf.SourceAddrControl = ETH_SOURCEADDRESS_REPLACE_ADDR0;

But this is a bad thing for bridging. Since Zephyr ethernet LL code
always writes the source address, this patch has no impact on normal
operation. And has the benefit of maintaining the source MAC address
of bridged packets.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2025-12-10 17:36:47 +00:00
Anas Nashif
172c403be5 Revert "ci: assigner: only run on main branch"
This reverts commit 79356f1385.

Was the wrong "fix".

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-12-10 17:36:29 +00:00
Anas Nashif
51a6e8b6f6 ci: assigner: do not check permission/manifest on branches
Workaround GH running workflows from main on release branches.
The assignment script fails and does wrong assignments based on wrong
versions of the maintainer file and manifest.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-12-10 17:36:29 +00:00
Michał Stasiak
013428c551 drivers: i2c: add DMM to i2c_nrfx_twim
Added DMM buffer preparation to I2C TWIM driver.
Adds little impact as buffer content is already copied
into message buffer which is places in proper memory for
optimized transfer.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-10 15:47:00 +00:00
Michał Stasiak
ca5986b084 drivers: i2c: clean-up macros used in nrfx_twim
Removed unused macros. Moved common macros to common header.
Aligned naming and style to other nrf drivers.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-12-10 15:47:00 +00:00
Zhaoxiang Jin
4a92103f92 tests: dma: Enable loop_transfer for nxp,4ch-dma
Enable loop_transfer for nxp,4ch-dma

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-10 15:46:47 +00:00
Zhaoxiang Jin
ee2cab94d9 boards: Enable DMA on frdm_mcxc444
Enable DMA on frdm_mcxc444

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-10 15:46:47 +00:00
Zhaoxiang Jin
a58a750336 drivers: dma: nxp: Add support for NXP 4 channel DMA driver
This commit introduces a new DMA driver for NXP platforms,
specifically supporting the MCXC/kinetis series.

Please access https://www.nxp.com/webapp/sps/download/preDownload.jsp?render=true
to download MCXC44x Sub-Family Reference Manual for more details.
DMAMUX can be found in Chapter 20 and DMA in Chapter 21.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-10 15:46:47 +00:00
Zhaoxiang Jin
41542b5613 drivers: sim: Enable dma clock through sim driver
Enable dma and dmamux clock through sim driver

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-12-10 15:46:47 +00:00
Deepika aerlync
067426ac54 drivers: serial: add Infineon PSOC4 UART support
Add initial implementation of the Infineon PSOC4 UART driver based on the
Peripheral Driver Library (PDL) for PSOC4 (PSoC 4100TP) devices.

Features:
- UART transmit and receive using PDL SCB UART APIs
- Configurable baud rate, parity, stop bits, and data bits from devicetree
- Pinctrl integration for TX/RX pins
- Support for Zephyr console and shell subsystems
- Build-time validation for UART configuration parameters

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Deepika aerlync <deepika@aerlync.com>
2025-12-10 15:46:35 +00:00
Deepika aerlync
c40d66d046 drivers: clock_control: add Infineon PSOC4 support
Add clock control driver support for Infineon PSoC4:
- Fixed clock driver (clock_control_ifx_fixed_clock.c)
- Fixed factor clock driver (clock_control_ifx_fixed_factor_clock.c)
- Peripheral clock driver (clock_control_ifx_peri_clock.c)
- CAT1 clock control header

Provides clock initialization and management based on
devicetree configuration.

Signed-off-by: Dharun krithik k <dharunkrithik@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Deepika aerlync <deepika@aerlync.com>
2025-12-10 15:46:35 +00:00