Commit graph

136,983 commits

Author SHA1 Message Date
Julien Vermillard
9ece57491b boards: holyiot: support holyiot 21014
Add support fot the holyiot 21014 board.
BLE 5.0 module based on NRF52810.

Signed-off-by: Julien Vermillard <julien@clunkymachines.com>
2025-12-12 15:34:19 -05:00
Marek Maškarinec
5741f3ee6b drivers: tmag5273: Add mag gain property
Adds mag-gain-correction DT property, which sets the magnetic gain
correction value. Previously a property to select the channel for gain
correction existed, but there was no way to configure the correction
value itself.

Signed-off-by: Marek Maškarinec <marek.maskarinec@hardwario.com>
2025-12-12 09:58:56 -05:00
Jason He
89d3de81e6 boards: frdm_imx93: enable USB support
Add EHCI controller configuration with dual USB instances (USB1/USB2),
device tree bindings, 8 bidirectional endpoints, and UDC workqueue
stack optimization for frdm_imx93 A55 platform.

Signed-off-by: Jason He <jason.he_1@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Jony Zhang <jony.zhang@nxp.com>
2025-12-12 09:58:32 -05:00
Jony Zhang
ddb3acfb74 drivers: usb: mcux_ehci: add MMIO configuration for i.MX 93 family
The original driver is only feasible for M-Core, but for Cortex-A Core,
it need to do MMU mapping to map physical address to virtual address,
to the main update is to add MMIO mapping in this driver, and all the
register access should use virtual address.

Replace direct base address access with DEVICE_MMIO_NAMED_* macros
to provide better memory mapping abstraction and improve platform
portability.

This change:
- Adds DEVICE_MMIO_NAMED_ROM/RAM to config and data structures
- Maps the register base address during driver pre-initialization
- Updates all base address references to use DEVICE_MMIO_NAMED_GET
- Maintains backward compatibility with existing functionality

The DEVICE_MMIO API provides a standardized way to handle memory-mapped
registers across different platforms and memory protection schemes.

Signed-off-by: Jason He <jason.he_1@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Jony Zhang <jony.zhang@nxp.com>
2025-12-12 09:58:32 -05:00
Jason He
c2b7ae10e6 drivers: usb: mcux_ehci: add clock control for i.MX 93 family
Support device tree specified clock rates for USB controller and PHY.

Signed-off-by: Jason He <jason.he_1@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Jony Zhang <jony.zhang@nxp.com>
2025-12-12 09:58:32 -05:00
Jiafei Pan
02c808f390 modules: hal_nxp: fix camke for sdk-ng middleware
As middleware.cmake could be included by mcux-sdk's CMakeLists.txt,
so use CMAKE_CURRENT_LIST_DIR to make sure the directory is correct.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Jony Zhang <jony.zhang@nxp.com>
2025-12-12 09:58:32 -05:00
Jason He
24c510ec54 drivers: clock: mcux_ccm: add USB clock control support
Add USB_CLK and USB_PHY_CLK support for NXP EHCI controller on MIMX9352.

Signed-off-by: Jason He <jason.he_1@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Jony Zhang <jony.zhang@nxp.com>
2025-12-12 09:58:32 -05:00
Tomas Gudelevičius
b2d7055de9 drivers: modem: cellular: reinit modem after script failures
If the modem reboots or stops responding to AT commands while in
RUN_DIAL, AWAIT_REGISTERED, or CARRIER_ON, the modem_cellular state
machine could previously dead-end. Applications had to recover by
manually issuing device PM suspend/resume.

This change adds an internal recovery path: after repeated chat/script
failures in the states above, the driver resets the state to INIT, and
posts an immediate RESUME event. This allows the initialization sequence
to run again and restores connectivity, including after unexpected modem
reboots.

No API changes; behavior only differs in failure scenarios.

Signed-off-by: Tomas Gudelevičius <tomas.gudelevicius@draeger.com>
2025-12-12 09:58:23 -05:00
Jisheng Zhang
d2ec1c35a0 boards: renesas: Add CPKCOR-RA8D1B board support
Add CPKCOR-RA8D1B board support. Tested uart, button, led, sdram,
tfcard and usbhs.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
2025-12-12 09:58:11 -05:00
Jisheng Zhang
1dc0e167e3 dts: arm: renesas: Add DTCM and ITCM nodes for RA8D1
Add DTCM and ITCM for RA8D1.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
2025-12-12 09:58:11 -05:00
Jamie McCrae
a4e2a38370 scripts: zephyr_module: Skip writing output on no change
Skips updating files if the output already matches the file
contents, this prevents a random occurance whereby sysbuild
reconfigures itself after a reconfiguration for no known
discernable reason

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-12-12 09:57:48 -05:00
Tim Pambor
7a9b4d3a5c boards: st: stm32h573i_dk: Add TF-M non-secure app support
Add support for building Trusted Firmware-M (TF-M) non-secure
applications for the STM32H573I-DK board.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-12 09:57:40 -05:00
Cristian Bulacu
267c3196f6 net: l2: openthread: Bring OT iface up on backbone events
When Ethernet is enabled, `net_config_init_app` function will use the
first found interface that has auto start enabled. In this particular
case, backbone interface will not be able to perform dhcp request
because OpenThread interface gets to be the first interface found
and chose. Openthread will fail this procedure, as it has no
direct connectivity to backbone.
This is why, ethernet app has `CONFIG_IEEE802154_NET_IF_NO_AUTO_START`
set.
In this case, make sure to call net_if_up for OpenThread interface from
border router code when backbone events are triggered.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-12 09:57:20 -05:00
Cristian Bulacu
7abba8812f samples: net: openthread: border_router: Add ethernet config
Added project configuration for OpenThread Zephyr Border Router with
ethernet configured as backbone interface

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-12 09:57:20 -05:00
Camille BAUD
7a1e2d7509 drivers: lora: Add explicit support for variants
Add explicit support for sx1268, sx1278, llcc68

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-12 09:57:09 -05:00
Camille BAUD
287f40edbe drivers: lora: Add regulator-ldo for sx126x
Adds ability to set usage of LDO instead of DCDC

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-12-12 09:57:09 -05:00
Damian Krolik
1a6ff4f8e4 drivers: ieee802154: remove unused IEEE802154_CSL_DEBUG
The Kconfig option is not used anywhere for a while.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2025-12-12 09:57:00 -05:00
Nikodem Kastelik
b62921f4ce tests: boards: nrf: i2c: add twi variant
Currently only TWIM peripheral is verified against TWIS.
Add new test variant to verify nRF52 TWI peripheral as well.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-12-12 09:56:50 -05:00
Alberto Escolar Piedras
ba9b5f5ce0 tests: subsys: crc: Improve test
1) Also build the CRC shell:
   Even if we do not runtime test that part, let's at least build it.
   Otherwise we do not have any test building it, and it just rots.
2) Do not limit the test to devices with HW CRC acceleration.
   The CRC module has a SW version, and it makes sense to test it also.
   (we were only build testing the HW support side in CI so far).
3) Limit what we test in integration to one platform for the SW version
   and one HW platform.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-12 09:56:43 -05:00
Alberto Escolar Piedras
a2a215e8cc subsys/crc/crc_shell: Fix includes
To use the shell one does not need anymore to pull unistd.h,
if one uses sys_getopt, we need to include sys/sys_getopt.h

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-12-12 09:56:43 -05:00
Matthias Alleman
158ec0384b drivers: input: input_chsc5x: configurable ic type verification
Add Kconfig option to skip or execute the verification of the ic
type. This adds a delay of 100ms to the initialization.

Signed-off-by: Matthias Alleman <matthias.alleman@basalte.be>
2025-12-12 09:56:30 -05:00
Matthias Alleman
7a662cac8b drivers: input: input_chsc5x: add delay after reset
The sensor requires at least 94ms of delay before starting
communication after a reset. This is not mentioned in the
datasheet but is arbitrarily defined.

Signed-off-by: Matthias Alleman <matthias.alleman@basalte.be>
2025-12-12 09:56:30 -05:00
Gaetan Perrot
d904d11a22 tests: Fix typo in "Unsupported configuration" error message
Several test sources used the misspelled string "Unsupported
configuraiton".

Fix the typo across all affected files to improve clarity and
consistency.

Updated files:
 - tests/boards/nrf/rram_throttling/src/main.c
 - tests/drivers/flash/common/src/main.c
 - tests/drivers/flash/negative_tests/src/main.c

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-12-12 09:56:20 -05:00
Anuj Pathak
cb2109e7d9 samples: drivers: i2s: echo: add MAX32655 support
- reduced block length from 100ms to 33.33ms to compile for low ram
- add compile time conditional option to slave mode
- add overlay file for max32655fthr

Signed-off-by: Anuj Pathak <anuj@croxel.com>
2025-12-12 05:01:31 -05:00
Anuj Pathak
c0b013d2d4 samples: drivers: i2s: echo: Add MAX9867 codec support
Add MAX9867 codec initialization support to the sample
to later use for MAX32655FTHR support

Signed-off-by: Anuj Pathak <anuj@croxel.com>
2025-12-12 05:01:31 -05:00
Anuj Pathak
68b23bab28 boards: max32655fthr: enable i2c1
MAX32655 uses I2C1 to control on board PMIC and Audio Codec
this commit enable it as per board spec

Signed-off-by: Anuj Pathak <anuj@croxel.com>
2025-12-12 05:01:31 -05:00
Anuj Pathak
4409ba8655 drivers: i2s: add i2s driver for max32 mcu
add necessary build files and i2s driver with tx/rx support

Signed-off-by: Anuj Pathak <anuj@croxel.com>
2025-12-12 05:01:31 -05:00
Anuj Pathak
c4e857c9fd dts: i2s: add i2s node for max32655fthr
- add basic dma only i2s dts binding for max32-i2s
- add i2s node with default config to max32655.dtsi
- add i2s pin definition for max32655fthr board as per spec

Signed-off-by: Anuj Pathak <anuj@croxel.com>
2025-12-12 05:01:31 -05:00
Bjarki Arge Andreasen
7c2ab76a70 drivers: timer: nrf_grtc: Decouple clock source from CLOCK_CONTROL
The GRTC timer, typically used as sys clock on newer nordic chips,
is currently tightly coupled to the CLOCK_CONTROL_NRF drivers though
not being dependent on it. The GRTC and its device driver is
independent from CLOCK_CONTROL, its clock requirements are managed
by hardware, based on its clock source selection.

This commit moves the clock source selection to the GRTC driver, and
removes the hard coupling to the CLOCK_CONTROL drivers. To preserve
backwards compatibility, if CLOCK_CONTROL_NRF_K32SRC_RC is selected,
GRTC will default to LFLPRC.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-12 04:59:53 -05:00
Benjamin Cabé
bef6cdb127 sys: util: add sys_ prefix to SIGN, gcd, and lcm utils
As per our naming conventions for public symbols, these utility functions
and macros should be prefixed with "sys_".

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-12 04:58:14 -05:00
Benjamin Cabé
7389cbbd3e sys: util: hide internal gcd/lcm helpers
These should not show up as API in doxygen

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-12-12 04:58:14 -05:00
Ruibin Chang
d26ffeba9d drivers/pwm/it8xxx2: add pwm init output level property
When EC reboot, pwm pins go back to default GPI mode.
After we set pin mode to pwm mode at init(), it would
output low, so LED will be light (LED is low-activated).
And until set_cycles() is called to set output high,
then LED will be turn off the light (PWM-LED flicker).
So add the property to set PWM channel init output level.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-12-12 04:56:42 -05:00
Jeppe Odgaard
d32e7de509 debug: coredump: add cpp header guards
Add header guards to support usage from C++.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-12-12 04:55:58 -05:00
Peter Ujfalusi
ebb5625bee intel_adsp: Add debug slot manager
Currently all drivers which uses a slot from the debug window have fragile
hardwired slot 'mapping', they are locked to use specific slots even if
there are free slots available for them to take.

The new API hides the management of the slots and descriptors and users
can ask, release or even seize slots that they want to use.

Add a new debug slot manager API and a new default no config option to
allow selection between the hardwired or dynamic debug slot management.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
2025-12-12 04:54:53 -05:00
Peter Ujfalusi
2ce9d5f5e3 soc: intel_adsp: tools: cavstool.py: Look up the shell slot by type
Instead of using hardwired index for the shell debug slot, look it up by
it's type.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
2025-12-12 04:54:53 -05:00
Peter Ujfalusi
8cb287a411 intel_adsp: debug_window: Describe the partial slot in page0
Resize the reserved part of the debug window to cover the first 1K and
define the partial_page0 which will cover the partial slot in page 0.

Add comment to describe the debug window layout.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
2025-12-12 04:54:53 -05:00
Peter Ujfalusi
c7dd9d79bd intel_adsp: kconfig: Increase the default size of MEMORY_WIN_2_SIZE
The current default of 8192 will provide only 2 pages in debug window:
page0: descriptors
page1: slot0

However, the coredump is hardwired to use slot1, which by default is not
valid.

Increase the default window size to 12288 to allow three pages.

This change affects CAVS25 only as it is using default window sizes and the
window 3 is not used in this configuration at all (it was used with IPC3
only), so we do have enough space for the three page - we could even
increase the default to cover 4 pages (8192+8192), but let's be
conservative on this.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
2025-12-12 04:54:53 -05:00
Peter Ujfalusi
81666a3275 intel_adsp: common: gdbstub: Correct z_gdb_backend_init() return type
The z_gdb_backend_init() is defined to return with success/error code
with return type of int.

Fixes: a9c47a47a4 ("intel_adsp: cavs: add gdb support")
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
2025-12-12 04:54:53 -05:00
Krzysztof Chruściński
90bbc47122 samples: boards: nordic: coresight_stm: Benchmark only the cached code
Add additional call before starting time measurement to ensure that
all calls that are benchmarked are already cached. This change allows
to get more stable results as all exectutions are from cache.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-12 04:47:50 -05:00
Khoa Nguyen
3a384173b4 tests: drivers: i2c: Update to use i2c_write instead of burst_write
Update test app `i2c_target_api` to use i2c_write instead of using
same burst_write functional

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-12-12 10:30:55 +01:00
Qingsong Gou
de66e05602 drivers: watchdog: sf32lb: fix return errors
Fix watchdog driver return error

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-12 10:30:15 +01:00
S Mohamed Fiaz
e88400036e modules: hal_silabs: wiseconnect: CMakeLists fix
This fix addresses a PM failure caused by an inconsistency
between the device tree and the build system. The device tree
was updated with `reg = <0x00000400 DT_SIZE_K(319)>;`,
but the corresponding value for `SL_SI91X_SI917_RAM_MEM_CONFIG`
in CMakeLists.txt was not updated, leading to the problem.
The build system now automatically sets `SL_SI91X_SI917_RAM_MEM_CONFIG`
based on the sram0 RAM size from the device tree using `dt_prop()`
and `list(GET)`, ensuring the configuration matches the device tree
and preventing future mismatches.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-12-12 10:29:49 +01:00
Fabio Baltieri
006a951323 tests: assert_custom_header: only build on some platforms
This test does not build correctly on some modules, namely TFM, just run
it on a few platform, that should be enough to validate that the feature
is working correctly.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-12-11 16:36:45 -05:00
Cristian Bulacu
6dab107c91 openthread: Kconfig: Enable packet filtering
Enable packet filtering functionality for OpenThread Border Router when
NAT64 Translator is enabled

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-11 16:36:17 -05:00
Cristian Bulacu
d1858bed24 openthread: platform: infra_if: Add packet filtering rule for NAT64
This commit aims to implement IPv4 packet filtering for NAT64 translator.
If packets are consumed, those are not processed anymore by network
stack.
NAT64 packets are created by OpenThread stack and sent on backbone
interface using a raw socket.

This commit attempts to fix an issue where a TCP connection is initiated
by an OpenThread node, but discarded by network stack since there is no
active known connection.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-12-11 16:36:17 -05:00
Bjarki Arge Andreasen
1adf52166d samples: boards: nordic: clock_control: add README.rst
Add documentation of the nordic clock control sample in the form of
a README.rst

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-12-11 16:35:54 -05:00
Krzysztof Chruściński
01fc83d63d boards: nordic: nrf54h20dk: Add cpuapp TCM memory section
Add memory section which is placed in cpuapp TCM (Tightly Coupled
Memory) RAM0 which is fast, non-cacheable.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-11 16:35:45 -05:00
Krzysztof Chruściński
d9f1761571 boards: nordic: Add bias-pull-up to UART TX pin sleep state
When UART TX pin is in sleep state it should have pull up. So far it
was floating and that could lead to garbage output on terminal.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-12-11 16:35:18 -05:00
Fabin V Martin
f9fb943967 boards: microchip: Update pic32cm_jh01_cpro device tree
Add uart support for pic32cm_jh01_cpro.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-11 16:35:07 -05:00
Fabin V Martin
7b39f9ac71 dts: arm: microchip: pic32cm_jh: add sercom nodes
Add sercom nodes for pic32cm_jh

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-12-11 16:35:07 -05:00