Commit graph

25,525 commits

Author SHA1 Message Date
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
Mathieu Choplain
fcd30046cb drivers: pinctrl: stm32: add support for STM32N6 pinctrl
Modify the STM32 pinctrl driver and SoC-specific pinctrl macros
to introduce support of the st,stm32n6-pinctrl variant.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-06-20 13:21:55 -04:00
Colin Evrard
97f9411f32 drivers: adc: esp32: check reference at compile time
Check that the channels are configured with the reference
ADC_REF_INTERNAL when compiling the driver.

Signed-off-by: Colin Evrard <colin.evrard@mind.be>
2025-06-20 16:24:09 +02:00
Hoang Nguyen
87177d1ac4 drivers: gpio: rz: improve gpio driver for Renesas RZ/A2M
- Adding support for GPIO_DISCONNECTED mode.
- Removing redundant interrupt configuration logic from the
.pin_configure API (already handled in pin_interrupt_configure).

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-06-20 16:24:01 +02:00
Maochen Wang
7e3f5814e4 drivers: wifi: nxp: only enable NXP_WIFI_TC_RELOCATE for RW612
Only by default enable NXP_WIFI_TC_RELOCATE for RW612, which will
relocate traffic API into RAM. But for other platform, for example
the RT series, the ITCM/DTCM is a more suitable place for critical
code.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-06-20 16:23:52 +02:00
Nick Ward
3b05fd12a5 drivers: gnss: tidy satellite count kconfig symbols
CONFIG_GNSS_LUATOS_AIR530Z_SATELLITES_COUNT
and CONFIG_GNSS_U_BLOX_M8_SATELLITES_COUNT
would unnecessarily be in .config file.

Signed-off-by: Nick Ward <nix.ward@gmail.com>
2025-06-20 16:23:43 +02:00
Benjamin Cabé
d5af2f7dde drivers: sensors: fxls8974: fix compilation error in fxls8974_transceive
SPI code wasn't tested in CI so this compilation error was missed.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-20 16:23:25 +02:00
Andrzej Głąbek
8415f7f7a7 drivers: flash_mspi_nor: Omit quad_enable_set() when QER is set to NONE
When the quad-enable-requirements property is set to "NONE" or is not
present, no Quad Enable operation should be performed.
This fixes an issue with the mx25uw6345g flash chip that is present
on the nRF54h20 DK and supports the Single I/O mode, but cannot be
used in that mode.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-06-20 16:22:58 +02:00
sudarsan N
48bbbfe976 drivers: video: fix NULL dereference in mipid02_get_fmt
Category: Null pointer dereference (CWE-476)

Corrects the logic that validates the result of mipid04_get_format_desc().
Previously, the check was inverted, which could lead to a NULL pointer
dereference when accessing desc->pixelformat.

Fixes Coverity CID: 525183

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-20 11:50:49 +01:00
Qingling Wu
2016f05860 drivers: nxp: wifi: Enable 11AX density config by default for IW610
Enable NXP_WIFI_MMSF by default for IW610

Signed-off-by: Qingling Wu <qingling.wu@nxp.com>
2025-06-20 08:52:53 +02:00
Phi Bang Nguyen
10deca2ef6 drivers: video: Fix skipped CIDs when enumerating controls
When enumerating controls with VIDEO_CTRL_FLAG_NEXT_CTRL, if child devices
have controls with IDs lower or equal to the ones in the parent devices,
those controls will be accidentally skipped.

Fix this by resetting the query's ID and tracking of the queried device in
the query when moving to the next device in the pipeline.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-06-19 22:37:54 -07:00
Jilay Pandya
d25b1d1959 drivers: stepper: add check for inval resolution in set_microstep_res
Add check for invalid microstep resolution directly in api to avoid the
check in each and every driver
Set microstep resolution is made a mandatory function now as all
stepper drivers support it and hence should implement it

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-06-19 22:35:51 -07:00
Erwan Gouriou
41664ebda0 drivers: memc: stm32 psram: Fix XSPI configuration for performance
Correct XSPI configuration in order to improve PSRAM access on the
STM32N6 discovery board.
Ideally, this should be defined by device tree, but I'm fixing
the only user for now.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-19 22:33:37 -07:00
Hao Luo
f1348d3954 drivers: i2c: ambiq: buffer overflow issue fixed
Bugfix for possible out-of-bounds operation when buffer address
is not 4 bytes aligned

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-19 22:31:06 -07:00