Commit graph

24538 commits

Author SHA1 Message Date
Etienne Carriere
2ccc1eab89 drivers: i2c: stm32: I2C transaction first transfer must set RESTART flag
The first transfer in an I2C transaction series must always set
the RESTART flag. Since this is not always done by callers,
enforce the flag is set, both in the I2C API and RTIO API entry
points of STM32 I2C RTIO drivers.

Add a sanity test in STM32 I2C v2 RTIO driver on transaction
chunks regarding RESTART and STOP flags, as done on the non-RTIO
driver.


Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-06-23 12:47:00 -07:00
Muzaffar Ahmed
56a0160e30 drivers: wifi: siwx91x: Fix buffer overflow in client disconnect
Copy only WIFI_MAC_ADDR_LEN bytes to sta_info.mac instead of dynamic
length

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-06-23 12:46:10 -07:00
Muzaffar Ahmed
73a1bef079 drivers: wifi: siwx91x: Raise AP enable event from driver
Raising event from driver itself after successful AP start,
instead of waiting for an event from SDK/TA FW. TA used to send an
asynchronous event earlier but currently does not.

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-06-23 12:46:10 -07:00
Johan Hedberg
c186a3110c Bluetooth: drivers: Use bt_hci_cmd_alloc()
Use bt_hci_cmd_alloc() instead of the soon to be deprecated
bt_hci_cmd_create().

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-06-23 12:44:53 -07:00
Sergei Ovchinnikov
645159dc26 drivers: npm13xx: add support for nPM1304
Add support for nPM1304 in the npm13xx drivers. The nPM1304 supports
different voltage and current ranges which are handled through the
initialization macros.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-06-23 16:19:43 +01:00
Sergei Ovchinnikov
89b8383633 drivers: npm13xx: rename npm1300 to npm13xx
Rename npm1300 to npm13xx in function names, documentation, etc. where
applicable for all the npm13xx drivers

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-06-23 16:19:43 +01:00
Sergei Ovchinnikov
fb007db50a drivers: npm1300: rename to npm13xx
Rename npm1300 drivers and header files to npm13xx to allow for usage
with other nPM13xx product variants.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-06-23 16:19:43 +01:00
Dave Joseph
95c20c338c drivers: firmware: TISCI driver support
Added TISCI driver for supported devices using the binding ti,k2g-sci.
This is used to communicate via the secury proxy channel for clock,
resource and power domain management.
Refer: https://software-dl.ti.com/tisci/esd/latest/2_tisci_msgs/general/TISCI_header.html

Signed-off-by: Dave Joseph <d-joseph@ti.com>
2025-06-23 15:54:34 +01:00
Dave Joseph
04d12bc8b2 drivers: mbox: secureproxy: Pass userdata in isr
This change modifies the secure proxy mailbox driver to pass user data
to the interrupt service routine (ISR) callback. This allows the ISR
to access the specific context or data associated with the mailbox
message being processed.

Signed-off-by: Dave Joseph <d-joseph@ti.com>
2025-06-23 15:54:34 +01:00
Benjamin Cabé
a55a9670ee drivers: gpio: max149xx: fix error handling
Use signed variable for negative error codes so that potential errors
are actually detected and returned properly.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 15:50:05 +01:00
Benjamin Cabé
bc5b332c9b drivers: audio: max98091: fix max98091_set_property error handling
Don't systematically return -EINVAL when property actually exists

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 15:48:25 +01:00
Bjarki Arge Andreasen
0829c2bb8c drivers: nrfx: help select clock control when needed
CLOCK_CONTROL is required for fast instances of UART and COUNTER,
help select it when possible. The fast instances are UARTE120,
TIMER120 and TIMER121, and CLOCK_CONTROL is not supported for
CPUFLPR and CPUPPR even when the fast instances are used.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-23 15:47:01 +01:00
sudarsan N
3fb0cf48f5 drivers: video: fix uninitialized struct
Zero-initialize fmt to fix Coverity.

CID:525180
CID 524760
CID 524753
CID 524781
CID 524755

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-23 15:46:42 +01:00
Mike J. Chen
a5a78ee608 drivers: usb_dc_mcux: disable irq in detach
Otherwise the next attach could have the ISR invoked
before init has completely initialized all the required
data structures to handle the ISR properly.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-06-23 15:45:55 +01:00
Hao Luo
4a9412b5d4 drivers: adc: add dma support for ambiq adc driver
This commit adds dma support for ambiq adc driver

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-23 15:45:44 +01:00
Riku Karjalainen
9493af937d drivers: usb: stm32: fix stm32u5x clock disable in sleep mode
Replace logical OR with bitwise OR.

Signed-off-by: Riku Karjalainen <riku.karjalainen@vaisala.com>
2025-06-23 15:43:55 +01:00
Riku Karjalainen
160ef4670a drivers: usb: stm32: fix stm32u5x clock disable in sleep mode
Replace logical OR with bitwise OR.

Signed-off-by: Riku Karjalainen <riku.karjalainen@vaisala.com>
2025-06-23 15:43:55 +01:00
Johann Fischer
7b287ec133 drivers: udc: disable SOF interrupt by default
If the new Kconfig option is disabled, no SOF events are passed to the
higher layer.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-23 15:43:32 +01:00
Johann Fischer
2d7995747e drivers: udc: add SOF Kconfig option and SOF event helper
Add helper to handle SOF interrupts/events and new Kconfig option to
disable SOF interrupt.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-23 15:43:32 +01:00
Jilay Pandya
08dd7c519a drivers: stepper: tmc5xxx: introduce stop function
Introduce stop function in tmc5xxx

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-23 13:44:51 +02:00
Jilay Pandya
2aca0d3e9d drivers: stepper: remove stop function wrapped in disable
Removing stop functionality wrapped in stepper_disable since
there is a dedicated function for it.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-23 13:44:51 +02:00
Alessandro Manganaro
6244e9307e drivers: timer: Fix interrupt management in stm32 lptim timer
Fix interrupt management issue in stm32 lptim timer

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-06-23 13:44:15 +02:00
Alessandro Manganaro
e5ded3d71a drivers: timer: Fix conversion issue in stm32 lptim timer
Using correct macro to convert stdby time in LPTIM counter

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-06-23 13:44:15 +02:00
Benjamin Cabé
2a43a94455 drivers: display: hx8394: add missing static qualifiers to local arrays
Updated multiple configuration arrays from 'const' to 'static const'

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 13:42:48 +02:00
Andrzej Głąbek
e78729609d drivers: mspi_dw: Add support for RX dummy cycles in single line mode
Support for 8 dummy cycles in a single line RX transaction is required
for the standard JEDEC Read SFDP command. The SSI controller does not
support dummy cycles in Standard SPI mode, but the driver can simulate
those by just sending a dummy data byte.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-23 13:42:07 +02:00
Andrzej Głąbek
28dafe36e3 drivers: mspi_dw: Add error reporting on RX FIFO overflow
Immediately finish an RX transfer when the RX FIFO overflow is
encountered and return the -EIO error code, which better indicates
the problem than -ETIMEDOUT that was returned previously in such
case.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-23 13:42:07 +02:00
Andrzej Głąbek
e4dc74452c drivers: mspi_dw: Improve transfer handling
- use separate code paths for TX and RX in ISR
- make sending of dummy bytes in the single line mode (Standard
  SPI) more consistent so it can be easily extended
- use value 0 instead of 0xAA for dummy bytes as there is normally
  no point in making noise one the MOSI line when only receiving
  data (it can only be useful in debugging transfers)
- move all writing of data in the TX FIFO to ISR to avoid broken
  transfers in the single line mode (where the clock stretching
  is not available) when the driver is preempted right before it
  enables interrupts
- use the TX FIFO start level also for transfers without data,
  so that it's not possible that the TX FIFO gets emptied between
  the writes of command and address fields in the single line mode
- add a few comments to explain better how transfers are handled

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-23 13:42:07 +02:00
Andrzej Głąbek
6ddb616a23 drivers: mspi_dw: Add waiting for clock in nRF EXMIF specific resume
After the START task is triggered, the clock that drives the SSI core
needs some time to become ready. Before that, writes to SSI registers
may be unsuccessful. Add a loop that performs test writes to one of
the registers after the EXMIF peripheral is resumed to ensure that it
is fully operable.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-23 13:42:07 +02:00
Andrzej Głąbek
8b67b36f41 drivers: mspi_dw: Apply a few minor corrections
- replace %d with %u in two error log message format strings
- add checks for maximum supported address length
- correct *_WAIT_CYCLES_MAX macros used in XIP handling routines
  (although their values are valid, they belong to different SSI
  registers)
- remove one unnecessary use of SPI_CTRLR0_WAIT_CYCLES_MASK
- remove doubled definitions of the XIP_CTRL register bit fields

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-23 13:42:07 +02:00
Kapil Bhatt
39e6f0170f drivers: nrf_wifi: Add Kconfig for Dynamic ED
Add Kconfig to enable/disable Dynamic ED which add support for
proprietary algorithm to enhance performance in high-traffic channels.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-06-23 09:46:47 +02:00
Aymen LAOUINI
3851588ec3 drivers: firmware: nrf_ironside: add nrf9280 to CPUCONF service
CPUCONF service now supports application on nrf92 application cores.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-06-23 09:46:25 +02:00
Benjamin Cabé
942d823c71 drivers: ethernet: phy: dm8806: fix error handling
Use signed variable for negative error codes so that potential errors
are actually detected and returned properly.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-23 09:46:10 +02:00
Tony Han
42a017cfde drivers: i2c: sam: update i2c_clock_set() for sama7g5 FLEXCOM TWI
The TWI offered by sama7g5 FLEXCOM is compatible with "atmel,sam-i2c-twi".

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-06-22 18:44:04 -07:00
Corey Wharton
846d8197a7 drivers: gpio: gpio_dw: move base_addr to config struct
This variable should be const and inside the driver config struct.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-06-22 18:39:18 -07:00
Corey Wharton
338c5051db drivers: gpio: gpio_dw: add custom flag to set data and control source
If supported, the data and control source for a signal can come from
either software or hardware. This change adds a custom configuration
flag to set this for a specific pin.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-06-22 18:39:18 -07:00
Benjamin Cabé
b4e4c8ed48 drivers: pinctrl: wch: remove useless operations
Remove redundant register updates in pinctrl_configure_pins, and replace
the improper (and inefficient) use of bitwise OR assignment (|=) with
direct assignments when writing to the write-only BSHR registers

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 18:34:02 +02:00
Benjamin Cabé
6176b2ca1b drivers: gpio: wch: simplify port_toggle_bits logic
computation of BSHR was unnecessarily complex, with redundant
XOR/masking operations.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 15:31:27 +02:00
Dmitrii Sharshakov
639bccf969 Bluetooth: drivers: make H4 and H5 follow CONFIG_BT_HCI_INIT_PRIORITY
In some cases UART drivers might have too high init priorities
so HCI must be initialized even later if used with those.

One example is zephyr,native-tty-uart.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-06-21 13:14:45 +02:00
Benjamin Cabé
1e27c46015 drivers: clock_control: npcm: add missing const qualifiers
Ensure that the various configuration and conversion tables are marked
as const to save on RAM usage.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 13:14:39 +02:00
Benjamin Cabé
1c1ec64ab6 drivers: clock_control: npcm: fix clock_control_off
Align code with the comment :) There apparently was a copy-paste issue
from the clock_control_on code.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 13:14:39 +02:00
Benjamin Cabé
48a1a2a248 drivers: intc: nxp_pint: fix off-by-one error in pin_enable
Prevent out-of-bounds access in nxp_pint_pin_enable by fixing the
comparison to use >= instead of >.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 10:40:28 +02:00
Camille BAUD
46b5d05ae1 drivers: clock_control: Introduce bl60x clock driver
This introduces a clock_control driver for bl60x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-21 10:40:20 +02:00
Benjamin Cabé
747bf7bc50 drivers: spi: esp32_spim: use size_t for DMA buffer lengths
Updated buffer length variables to be size_t as they need to be able to
represent the maximum buffer size which is 4092.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 08:19:37 +02:00
Benjamin Cabé
2408ca6795 drivers: adc: renesas_rz: fix error handling
Fix a bunch of occurrences of API calls returning error codes that were
being ignored.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-21 08:19:28 +02:00
Francois Ramu
958087f49d drivers: flash: stm32 ospi driver size and address of the external NOR
New property of the st,stm32-ospi-nor compatible gives
the external NOR flash in bits.
The property of the st,stm32-ospi compatible gives
the external NOR flash base address

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-06-20 14:41:41 -05:00
Camille BAUD
3787be931e drivers: display: Introduce SSD1363
This introduces a driver for the SSD1363 PMOLED controller

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-20 14:41:31 -05:00
Peter van der Perk
32d68bed22 drivers: timer: remove fsl_power.h for MCXN series
Initial it was only removed for mcxn236 but mcnx947 would fail to
compile then

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-06-20 13:26:41 -04:00
Mario Paja
0637ec4821 drivers: i2s: stm32 sai add mclk-divider property
This property enables the user to configure the Master Clock Divider.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-06-20 13:26:14 -04:00
Benjamin Cabé
8365dd5cfc drivers: dai: fix bad GENMASK in NXP driver
Fixed swapped GENMASK arguments causing bad mask to be generated.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-20 13:26:03 -04:00
Jérôme Pouiller
fbc70337e8 modules: hal_silabs: Update WiseConnect SDK
Import the new version of the WiseConnect SDK.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-06-20 13:22:57 -04:00