Commit graph

28,390 commits

Author SHA1 Message Date
Bjarki Arge Andreasen
e0481a1f30 drivers: i2c: i2c_nrfx: Use NRF_DT_INST_IRQ macros
Use NRF_DT_INST_IRQ_ macros which support building with and without
SW ISR table for all nordic socs.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-16 18:06:06 +01:00
Bjarki Arge Andreasen
7f685ca60a drivers: gpio: nrfx_gpio: Use NRF_DT_INST_IRQ macros
Use NRF_DT_INST_IRQ_ macros which support building with and without
SW ISR table for all nordic socs.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-16 18:06:06 +01:00
Bjarki Arge Andreasen
2e9586b33b drivers: spi: nrfx_spim: Use NRF_DT_INST_IRQ macros
Use NRF_DT_INST_IRQ_ macros which support building with and without
SW ISR table for all nordic socs.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-16 18:06:06 +01:00
Neil Chen
a52ff9a7bb drivers: syscon: update syscon driver to support mcxa flexcan clock
Add mcxa flexcan clock support

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-01-16 18:04:54 +01:00
Camille BAUD
bc07d91cca drivers: lora: Add ability to force enable LDRO
Allows Enabling LDRO all the time via DTS

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-16 11:43:43 +00:00
Camille BAUD
cd65845ba2 drivers: lora: Enable LDRO when symbol time > 16.38ms
Enable LDRO when it should be enabled

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-16 11:43:43 +00:00
Camille BAUD
6b2f1c19ac drivers: lora: Add missing Bandwidth and Spreading Factor values
Add missing values and replace arbitrary BW enum with actual value

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-01-16 11:43:43 +00:00
Gaetan Perrot
f15e645e35 drivers: watchdog: nxp_ewm: fix redundant NULL check
nxp_ewm_install_timeout() accesses cfg fields before checking for
NULL, making the later NULL check ineffective.

Remove the redundant check.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-16 11:43:06 +00:00
Gatien Chevallier
1d42f375cd drivers: otp: add OTP memory emulation driver
In order to make some basic tests on the OTP API, add an OTP memory
emulator driver. It implements the .program() and .read() APIs.

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
2026-01-16 11:42:50 +00:00
Gatien Chevallier
7db8328b08 drivers: Introduce new OTP subsystem
Introduce a new OTP subsystem to be able to interact with One Time
Programmable(OTP) memory. For now, add basic read()/program() APIs.
Program() API is default disabled due to its sensitivity.

File drivers/otp.h is inspired by drivers/eeprom.h as the basic
features are similar.

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
2026-01-16 11:42:50 +00:00
Carlo Caione
ca0703f9e6 modules: lora-basics-modem: Refactor and fix CMake
A set of preliminary (but harmless) changes to prepare for adding the HAL
implementation.

- Rename CMake variables for clarity and consistency, adding an 'LBM_LIB_'
  prefix when the path is a library / module path.

- Change zephyr_library_include_directories to zephyr_include_directories
  for the RAL/RALF includes, since these headers may be needed outside the
  library itself.

- Make lbm_common.h available to code outside the driver directory.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2026-01-16 11:42:37 +00:00
TOKITA Hiroshi
717bc816b9 drivers: sensor: liteon: ltr553: Add support for LTR553
Extends the LTR329 driver to support the LTR553.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-16 11:42:27 +00:00
TOKITA Hiroshi
ab6699c03a dts: bindings: liteon: ltr329: deprecate legacy ALS props
To add support for LTR553, we will migrate device-tree
properties to new ones and mark the old ones as deprecated.
We will also refactor variable names accordingly.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-16 11:42:27 +00:00
TOKITA Hiroshi
0f40d36f6b drivers: sensor: liteon: ltr55x: Split definitions to header
ADd ltr55x.h to split definitions from .c file.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-16 11:42:27 +00:00
TOKITA Hiroshi
69bee427ba drivers: sensor: liteon: Rename ltr329 to ltr55x
The LTR329 is a functional subset of the LTR55X series,
lacking the proximity sensor functionality.

To maintain symbol consistency, we will use LTR55X as the base name.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-01-16 11:42:27 +00:00
Zhaoxiang Jin
ab16cca665 drivers: adc: nxp_sar_adc: Add compatibility for SoCs without ADCLKSEL
Some NXP SAR ADC variants don't implement the MCR[ADCLKSEL] field.
Add conditional compilation guards to define compatibility macros
that evaluate to 0 when ADCLKSEL is not available, allowing the
driver to compile across different NXP SoCs.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-01-16 11:41:16 +00:00
Scott Worley
c6a959dcc3 drivers: serial: microchip: mec: Common UART driver
We modified the Microchip MEC UART driver to be HAL
independent and be usuable on all MEC SoCs. The only
hardware difference is an extra register in the MEC174x/5x
family providing TX FIFO full and current byte count.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2026-01-16 11:40:38 +00:00
Henrik Brix Andersen
b359f9037d drivers: can: nxp: mcux: flexcan: add proper support for clock multiplexer
Add proper support for the 1-bit CAN protocol engine clock multiplexer
present in some NXP FlexCAN instances.

Both possible input clocks are now represented as named clocks in the
devicetree nodes ("clksrc0" and "clksrc1") and the existing devicetree
property "clk-source" now selects the correct clock in addition to setting
the multiplexer bit (CLKSRC) in the FlexCAN CTRL1 register.

Fixes: #94517

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2026-01-16 11:40:27 +00:00
Henrik Brix Andersen
b1aa1a394a dts: bindings: can: nxp: flexcan: make clk-source property optional
Make the clk-source property of the NXP FlexCAN devicetree nodes optional
as not all FlexCAN instances have an internal clock multiplexer.

Remove the clk-source property from the SoCs where the internal clock
multiplexer is not present, limit the values this property can be assigned,
and default the clock selection bit to 0 in the driver.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2026-01-16 11:40:27 +00:00
Bjarki Arge Andreasen
636e104b23 util: Use CONCAT() instead of internal _CONCAT_\d() in tree
The explicit, and internal, _CONCAT_\d macros are used in a few
files instead of the public CONCAT() macro which automatically
expands to the correct _CONCAT_\d macro based on number of args
passed to it. Update files to use CONCAT().

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2026-01-16 11:39:41 +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
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
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
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
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
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
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
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
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
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
Gaetan Perrot
21c1417f31 drivers: usb: usb_dc_numaker: make usbd_ep_fifo_copy_to_user void
numaker_usbd_ep_fifo_copy_to_user() 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 11:06:31 +00:00
Gaetan Perrot
f6060eb31f drivers: usb: usb_dc_numaker: make usbd_ep_fifo_copy_from_user void
numaker_usbd_ep_fifo_copy_from_user() 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 11:06:31 +00:00
Sara Touqan
772bfccd68 drivers: mspi: stm32: remove unused mspi_stm32_ospi_verify_device function
Remove unused function in OSPI driver.

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
2026-01-15 11:06:14 +00:00
Sara Touqan
0651092295 drivers: mspi: stm32: refactor frequency handling to rely on devicetree
Remove max frequency Kconfig and uses clock-frequency
property instead

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
2026-01-15 11:06:14 +00:00
Lin Yu-Cheng
c15bd8daa5 drivers: spi: use transfer config to set spi frequency
use transfer config to set spi frequency

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2026-01-15 11:05:53 +00:00
Aleksandr Senin
f8cf0d3803 drivers: entropy: add GD32F4xx TRNG driver
Add entropy driver for the GD32F4xx TRNG.
Implement get_entropy_isr() semantics and bounded DRDY wait.
Add DT binding and SoC TRNG node; hook driver Kconfig.

Signed-off-by: Aleksandr Senin <al@meshium.net>
2026-01-15 11:05:28 +00:00
Francis Roi Manabat
51fa798260 drivers: rtc: add MAX31331 RTC Support
Add MAX31331 RTC driver, an ultra-low-power real-time clock (RTC)
that provides timekeeping with
extremely low current consumption (65 nA).

Signed-off-by: Francis Roi Manabat <francisroi.manabat@analog.com>
2026-01-15 11:05:00 +00:00
Nicolas Moreno
69e353904c drivers: display: features for ILI9341 driver
Replaced display-controller.yaml with lcd-controller.yaml
Deleted pixel format property, replacing it with the
property on lcd-controller.yaml. Replace ILI9XXX RGB macro
with PANEL RGB macro. Also, added condition to verify pixel
format is RGB565, BRG565 or RGB888, otherwise it will show error
Replaced <zephyr/dt-bindings/display/ili9xxx.h> with
<zephyr/dt-bindings/display/panel.h> and
ILI9XXX_PIXEL with PANEL_PIXEL in some Devicetrees
and files that contained both elements. Fixed some
script sintax. Deleted drivers/display/display_ili9xxx.c

Signed-off-by: Nicolas Moreno <niko722795@gmail.com>
2026-01-15 11:04:16 +00:00
Nicolas Moreno
9b2593b8c5 drivers: display: issue with configuration on ILI9341
ILI9341 is not deploying correctly the display sample.
The screen looks mirrored vertically and the color
doesn't match with the sequence expected. To fix it,
change the Memory Access Control configuration data.

Signed-off-by: Nicolas Moreno <niko722795@gmail.com>
2026-01-15 11:04:16 +00:00
Lyle Zhu
18d6e8c8b1 drivers: bluetooth: hci: nxp: enable calibration data by default
Enable HCI_NXP_SET_CAL_DATA and HCI_NXP_SET_CAL_DATA_ANNEX100 by
default for NW612 and IW416 modules to ensure proper calibration
during HCI initialization.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2026-01-14 13:04:42 -06:00
Robert Robinson
cf6e4178e9 modules: tf-m: nordic: Add support for nRF7120 TF-M
This commit adds initial support for non secure nRF7120 targets in
zephyr.

There are important limitations, such as:
- The hardware Crypto accelerator is not supported and thus the non
  secure target is NOT secure for production applications in upstream
  Zephyr.
- The BL2 is not supported, so no DFU is supported with this support

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2026-01-14 13:02:59 -06:00
Robert Robinson
212a8fe8c9 dts: arm: nordic: Add support for nRF7120
Add dts files for nRF7120 SoC.

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2026-01-14 13:02:59 -06:00
Albort Xue
307c13ad7a drivers: flash: flexspi_nor: Add RDSR2 command to quad enable LUT
When qer is S2B1v1 or S2B1v4, reading Status Register
1 and Status Register 2 requires different opcodes,
and writing Status Register 1/2 requires two bytes in a
single write. Add the Read Status Register 2 command
sequence to the LUT used by the quad-enable function,
and ensure the write operation sends two bytes (SR1|SR2)
when setting the QE bit.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-01-14 13:01:34 -06:00
Qiang Zhang
33e71b448b dts: arm: nxp: Update EDMA device tree configurations
Update EDMA device tree nodes for NXP MCXE31B platforms to align
with the unified EDMA driver implementation.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2026-01-14 13:00:55 -06:00
Qiang Zhang
cdb53ec8aa drivers: dma: mcux_edma: Remove DMA_MCUX_EDMA_V5 configuration
The DMA_MCUX_EDMA_V5 configuration option has been removed and replaced
with DMA_MCUX_EDMA_V4, as both versions share the same register layout
and can use the same driver implementation.

Key changes:
- Remove CONFIG_DMA_MCUX_EDMA_V5 Kconfig option
- Replace DMA_MCUX_EDMA_V5 conditionals with DMA_MCUX_EDMA_V4
- Remove DMAx_Type typedef, use DMA_Type directly
- Update EDMA_HW_TCD macros for V4 to use HAL-provided accessor macros
- Add DMA_MCUX_EDMA_DMAMUX Kconfig option to control DMAMUX support
  based on device tree property
- Update device tree binding to add has-dmamux property
- Update HAL driver selection to use DMA_MCUX_EDMA_DMAMUX instead of
  DMA_MCUX_EDMA for DMAMUX component
- Add SOC_SERIES_MCXE31X to DMA_MCUX_TEST_SLOT_START configuration
- Calculate DMA_TCD_ALIGN_SIZE from edma_tcd_t structure size

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2026-01-14 13:00:55 -06:00
Chaitanya Tata
23efdfe309 drivers: nrf_wifi: Implement key installation for nRF71
For nRF71 series keys should be installed via PSA-APIs (KMU).

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-01-14 09:23:16 -06:00