Commit graph

25,525 commits

Author SHA1 Message Date
Luis Ubieda
fa96f07a42 icm4268x: Remove RTIO Workqueue usage in streaming mode
As it introduces latencies due to switching to the threads pool.
Moreover, this is not required for streaming as it executes in a
non-blocking path.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-22 08:52:29 +02:00
Luis Ubieda
9de11f529a icm4268x: Add defensive code to prevent invalid submissions
Missing packets or overrunning/underrunning the queue should not result
in a system crash.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-22 08:52:29 +02:00
Luis Ubieda
2648e0190a icm4268x: Expand Bus RTIO queue
Based on performance observed when cranking the sensor at +1000 Hz ODR,
otherwise is not able to keep up with the pace.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-22 08:52:29 +02:00
Titouan Christophe
b677e828d0 drivers: crypto: hash_pkt.in_buf is now constant
Previous commit made the input buffer of the hash packet constant.
Let's therefore adapt typing where used, and remove inappropriate
casts of constant buffers to non-constant ones.

All the "backend" hashing functions already take a constant input,
these changes only affect the "plumbing" between the Zephyr crypto
API and the actual implementation where applicable.

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-21 22:55:24 +03:00
Lucien Zhao
a044862790 drivers: clock_control: adapt clock driver for mcxe24x series
- add CONFIG_SOC_SERIES_MCXE24X judgment in driver

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-21 22:55:08 +03:00
John Batch
75c731cbcc drivers: adc: Infineon HPPASS SAR ADC Driver
Adds HPPASS SAR ADC driver and HPPASS Analog driver files to support
ADC conversion for the PSOC C3 family of MCUs.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-21 22:54:55 +03:00
Felix Wang
190c6dd567 drivers: pwm: Fix qtmr set cycles bug.
The mcux_qtmr_pwm_set_cycles can not set 100% and 0%
duty cycle PWM wave.
Set output compare setting based on pulse_cycles and
period_cycles:
1. If pulse_cycles is 0, generate 0% duty cycle wave.
2. If pulse_cycles equals period_cycles but not 0,
   generate 100% duty cycle wave.
3. Otherwise toggle output when compare value matched.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-21 22:53:53 +03:00
Felix Wang
8af0f0387f drivers: pwm: enable pwm capture for qtmr driver
Supported mode: single capture, continus capture,
pulse capture, period capture.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-21 22:53:53 +03:00
Biwen Li
8e97541ce4 drivers: dma: mcux_edma: get irq number for multi level int
Get irq number when multi level intrerrupts is enabled.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-21 22:53:41 +03:00
Biwen Li
fa68798528 drivers: dma: mcux_edma: print SADDR, DADDR
- Print SADDR, DADDR for debugging.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-21 22:53:32 +03:00
Luis Ubieda
4ca0f189fe sensor: icm45686: Fix build-time failure on I3C mode
Missed while simplifying RTIO bus transfers on #94832.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-21 22:53:20 +03:00
Luis Ubieda
f28b1b74b1 sensor: all: Fix missing result argument on RTIO callbacks
If there's an error/result checked, consider the callback result in
such solution.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-21 22:53:20 +03:00
Alessandro Manganaro
6ceeb56d53 drivers: bluetooth: hci: fix a typo in stm32wbax ble hci driver
Typo fix in assert condition used by stm32wbax ble hci driver.

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-10-21 22:52:02 +03:00
Clément Laigle
fc2e63048b drivers: sensor: omron 2smpb_02e: add FPU selection
Co-authored-by: Luis Ubieda <luisubiedas@gmail.com>
Signed-off-by: Clément Laigle <c.laigle@catie.fr>
2025-10-21 12:25:45 -04:00
Clément Laigle
3920294751 drivers: sensor: add support for OMRON 2SMPB_02E pressure sensor
Support for the OMRON 2SMPB_02E digital barometric pressure sensor.

Signed-off-by: Clément Laigle <c.laigle@catie.fr>
2025-10-21 12:25:45 -04:00
Declan Snyder
bc9869851b drivers: eth_nxp_enet: Fix power mode control
The driver should not take the whole interface down and re-initialize on
every low power entry and exit. This is a lot of latency for no real gain
as far as I can tell. We can just do as the reference manual actually says
which is to set the sleep enable bit to put the module to sleep while still
being able to detect magic packets for wake on LAN.

Also, the only platform that this power action was "enabled" for was
kinetis, but that platform does not have any power management enabled in
Zephyr.  Which means this code was never getting called even with all the
PM configs on.  So basically this code is dead code. But it could be useful
for other platform, such as RT, so there's no reason not to remove the
dependency on kinetis and let it be used for any of the platform as long as
PM_DEVICE is enabled (hence the imply).

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-21 12:24:16 -04:00
Benjamin Santon
e69ae4e5aa drivers: spi: spi_max32: Fix QSPI and half duplex, support hold on CS
Fix QSPI and half duplex
Support hold on CS flag
Create functions to assert and deassert CS

Signed-off-by: Benjamin Santon <benjamin.santon@analog.com>
2025-10-21 12:23:51 -04:00
Tony Han
30b4e678ca drivers: dma: sam: implement finite state machine for DMA channel
Add state machine for config/start/stop/resume/suspend for DMA channels.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Tony Han
a7f1b709d3 drivers: dma: sam: add DMA channel suspend and resume support
Add support for XDMA channel read write suspend and read write resume.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Tony Han
56bc90bd68 drivers: dma: sam: update to support sama7g5 XDMAC peripheral
Update the driver to support sama7g5 XDMAC peripheral.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Tony Han
cb8e055a4d drivers: dma: sam: support different num of channels for each instance
As the number of DMA channels could be different between DMA instances,
get the number from "XDMAC Global Type Register" and validate the
channel used.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Tony Han
bb69252ccf drivers: dma: sam: update to support multiple DMA instances
This update xdmac driver to support multiple DMA instancess.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Lin Yu-Cheng
fed6a9d9b5 driver: espi: implement espi PM function
1. add cs pin as espi driver wake up reference
2. removed the unnecessary update of the cached date
3. removed the unnecessary busy wait in notify funciton

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-10-21 17:25:10 +03:00
Marek Matej
45c9babce6 drivers: flash: esp32: Add asynchronous flash access using work queue
Direct flash access can cause exceptions when performed while the flash
memory is inaccessible or being modified — for example, when code is
executing from PSRAM. To avoid such invalid access, this change introduces
asynchronous flash operations that are executed from a safe runtime context
via a work queue. This ensures all flash accesses occur only when the flash
is valid and accessible.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-10-21 17:24:55 +03:00
Hieu Nguyen
04018d6433 drivers: spi: Add SPI support for Renesas RZ/V2L, A3UL
Add SPI driver support for Renesas RZ/V2L, A3UL

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-10-21 17:23:23 +03:00
Adam BERLINGER
f97eba57d8 drivers: video: stm32_dcmipp: Initialize ISP only once
This fixes bug where stm32_dcmipp_isp_init is called multiple times.

Signed-off-by: Adam BERLINGER <adam.berlinger@st.com>
2025-10-21 17:23:13 +03:00
Muhammed Asif
8f6b71312f drivers: pwm: microchip: add support for pwm tcc g1 IPs
Add pwm driver using tcc g1 peripheral.
Adds the support for generating pwm output.
Supports both 16-bit and 24bit mode of tcc peripheral

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-10-21 17:23:02 +03:00
Etienne Carriere
d0c829a482 drivers: video: stm32: test HAL functions return value
Add missing test of some HAL functions return value.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 17:22:52 +03:00
Etienne Carriere
493993e0a6 drivers: video: stm32: don't mix HAL return value and errno
Clarify HAL return value is of type HAL_StatusTypeDef and not an
int in STM32 DCMI and DCMIPP drivers. For consistency, rename
the variable holding HAL return value from ret to hal_ret.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 17:22:52 +03:00
Mathieu Choplain
f8c0da3444 drivers: usb: udc: stm32: fix FS mode on OTG_FS for STM32F4 series
On most parts of the STM32F4 series, when the OTG_HS controller is used in
FS mode, the ULIP **low-power** clock must also be disabled for proper
operation. This was done properly in an old version of the driver but was
lost as part of refactoring[1].

Re-introduce ULPI low-power clock disable when OTG_HS is used in FS mode.

[1] See commit e31ddec781

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 17:21:52 +03:00
Aksel Skauge Mellbye
3605c36b31 drivers: entropy: gecko_trng: Ensure bus clock is enabled
Ensure bus clock is enabled before accessing TRNG FIFO on
Series 2 VSE devices.

This is a minimal bugfix to work around an issue where certain
HAL APIs disable the bus clock after accessing the crypto block.
Long term, this driver should be rewritten to properly use
clock control APIs for clock management.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-21 17:21:39 +03:00
Mathieu Choplain
26f5469068 drivers: usb: device: stm32: fix N6 power-up sequence logic
Actually do what the comment says and wait for Vdd33USB to be ready,
instead of waiting for the opposite.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 17:21:18 +03:00
Mathieu Choplain
f413980cc0 drivers: usb: udc: stm32: fix N6 power-up sequence logic
Actually do what the comment says and wait for Vdd33USB to be ready,
instead of waiting for the opposite.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 17:21:18 +03:00
Tom Chang
2b1ea37ef2 driver: peci: npcx: prevent sleep during PECI transactions
This commit prevents enter deep sleep mode during PECI transactions
since clocks if PECI will stop.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-10-21 17:21:05 +03:00
Jordan Yates
3973aaa282 modem: modem_cellular: comms check result callback
Add a callback for the periodic script result so that applications have
a way of detecting dead links.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-21 14:16:49 +03:00
Tim Pambor
91d3d95313 drivers: ethernet: adin1100: add support for hardware reset
Add support for hardware reset via GPIO in the ADIN1100 PHY driver.

The reset pin is configured via device tree using the reset-gpios
property.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-21 14:16:38 +03:00
Etienne Carriere
f6db1cb09a drivers: disk: sdmmc_stm32: test HAL init/deinit return values
Add tests of the value returned by initialization and deinitialization
HAL functions.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 14:16:19 +03:00
Etienne Carriere
4575afa515 drivers: disk: sdmmc_stm32: don't assume HAL return value is an int
Clarify HAL return value is of type HAL_StatusTypeDef and may not
be a int. This change aims preventing one from mixing standard "errno"
int return values and STM32 HAL return value finding misleading
implementation in existing code.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 14:16:19 +03:00
Etienne Carriere
fc44d0eeb0 drivers: disk: sdmmc_stm32: don't mix HAL return values and error
Ensure STM32 SDMMC driver returns proper errno values and not HAL return
codes.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 14:16:19 +03:00
Etienne Carriere
f81b1e81ab drivers: eeprom: stm32: test HAL return value
Add missing test of HAL_FLASHEx_DATAEEPROM_Unlock() return value.

By the way, add a error trace message when failing to relock the
EEPROM after we failed to program it.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 14:16:10 +03:00
Etienne Carriere
e943878418 drivers: eeprom: stm32: don't mix HAL return value and errno
Correct eeprom_stm32_write() to return a valid errno instead
of mixing HAL return values and errno return values.

Clarify HAL return value is of type HAL_StatusTypeDef and not an
int in eeprom_stm32_read().

Remove printing of HAL_FLASHEx_DATAEEPROM_Lock() error code since
not very useful.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 14:16:10 +03:00
Etienne Carriere
0e39d34998 drivers: flash: stm32: test HAL functions return value
Add missing test of some HAL fnuctions return value.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 14:15:59 +03:00
farsin NASAR V A
574cff532d drivers: reset: microchip: Add reset driver
Add reset driver for Microchip RSTC G1 IP.

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2025-10-21 14:15:33 +03:00
David Jewsbury
eb605628ae drivers: audio: dmic_nrfx: Update AUXPLL control with frequency macros
Frequencies being for AUXPLL were register assignments and
not actual frequencies.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-10-21 14:15:23 +03:00
Ben Marsh
ce08f16a05 drivers: flash: stm32_{q|o|x}spi: Fix write unprotect logs
The STM32 QSPI, OSPI, and XSPI drivers support sending the ULBPR command
for flash ICs that require unlocking before writing to. This is done
conditionally based on the requires_ulbpr devicetree property.

Previously the driver would always log "Write Un-protected", even if a
write un-protect was not attempted. Fix this so that "Write Un-protected"
is only logged when a write un-protect is attempted and succeeds.

Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
2025-10-21 14:14:48 +03:00
Jeppe Odgaard
46de640492 drivers: sensor: qdec_stm32: check counts/revoultion compile time
Use build assert to check counts_per_revolution DTS value compile time to
prevent runtime failure and also decrease flash usage slightly.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-10-21 14:14:38 +03:00
Nhut Nguyen
9daff84666 drivers: eeprom: fm25xxx: Fix format warning
Use %zu for size_t to avoid build warning with arm64 compiler

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-10-21 14:14:28 +03:00
Immo Birnbaum
61c9cbbbf1 drivers: ethernet: xlnx_gem: obtain AMBA AHB bus width from config register
Obtain the value for the AMBA AHB bus width (32 bit/64 bit/128 bit) from
the design_cfg5 register at init-time rather than specifying it in the
respective SoC's DT.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-21 11:43:03 +03:00
Zhaoxiang Jin
96e70b08ef drivers: audio: Add dialog da7212 driver
Add dialog da7212 driver. dialog da7212
datasheet:https://www.farnell.com/datasheets/3962888.pdf

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-21 11:42:06 +03:00
Julien Racki
9c9d100839 drivers: clock: stm32: Move the MSI init after the LSE init
Moved the MSI init after the LSE init to respect the initialization flow
of the MSI PLL mode that need LSE to be enabled and ready.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-10-21 11:41:33 +03:00