Commit graph zephyr/drivers
Author SHA1 Message Date
Ali Hozhabri
fec68bf0f3 drivers: bluetooth: hci: Provide support for CubeFW v1.4.0
Provide necessary changes to support CubeFW v1.4.0.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2026-03-17 18:26:31 -04:00
Qiang Zhang
adb4e00866 drivers: input: add NXP MCUX TSI input driver
Add input drive TSI (Touch Sensing Input) peripheral.

The driver uses a delayed work queue to periodically scan enabled
channels and reports touch/release events through the input API.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2026-03-17 18:26:23 -04:00
Qiang Zhang
47c8e6b53e clock: clock_control: mcux_syscon: add support for TSI clock
Add clock control support for the Touch Sensing Input (TSI) peripheral.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2026-03-17 18:26:23 -04:00
Albort Xue
53bf327743 drivers: regulator: nxp_vref: Format vref implementation.
Format current implementation.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-03-17 18:26:11 -04:00
Albort Xue
8cd47a9dba drivers: regulator: nxp_vref: Add clock configuration and enable
Add explicit clock configuration and enable calls during driver
initialization.

Note: -ENOSYS is temporarily ignored as not all clock control
drivers currently implement the configure API. This handling
should be removed once all clock drivers support configure.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-03-17 18:26:11 -04:00
Kate Wang
97773925f1 drivers: display: introduce NXP MCUX LCDIFV2 driver
Add display driver for NXP i.MX LCDIFV2 controller.

The driver supports:
- RGB565, RGB888, and ARGB8888 pixel formats
- Configurable framebuffer allocation (0-2 buffers)
- Partial display updates when driver framebuffers are enabled
- Display blanking control
- Backlight GPIO control
- Pinctrl integration
- Cache coherency support via MCUX cache API

Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
2026-03-17 18:26:04 -04:00
Fabio Baltieri
86cb8abea8 drivers: i2c: rts5912: set pin as open drain in i2c_rts5912_recover_bus
The i2c_rts5912_recover_bus kicks in after an i2c transfer error to
recover the bus and uses the i2c pins in gpio mode. This MCU allows
using pins in a 3.3V domain at 1.8V by setting compatible input
thresholds, the problem though is that then if the pin is set to
push-pull output it's going to drive back up to 3.3V.

Avoid that by setting the pin as open drain before setting it as output.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-03-17 18:25:29 -04:00
Jamie McCrae
f22592cbc5 tree: Replace FIXED_PARTITION_* macro usage with PARTITION_*
Replaces usage of these deprecated macros with ones that support
fixed and mapped partition compatibles. Also includes an update to
hal_espressif which also (rightly or wrongly) has zephyr specific
code in it

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-03-17 18:24:52 -04:00
Jamie McCrae
1b4d81cbbc drivers: disk: flashdisk: Support zephyr,mapped-partitions
Updates this to support using this new binding whilst retaining
support for fixed-partitions

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-03-17 18:24:52 -04:00
Felix van Beusekom
339b22dd4f drivers: sensor: lis2dw12: remove unused variable
The variable lis2dw12 is not used inside this function

Signed-off-by: Felix van Beusekom <felixvanbeusekom@live.nl>
2026-03-17 18:24:24 -04:00
Jiafei Pan
e7ad32472a drivers: gpio: rgpio: fix access protection for A-Core
For Cortex-A Core, Zephyr runs on non-secure world, the bit in PCNS
or ICNS for corresponding GPIO pin is 1, no need to clear it and
Cortex-A Core could access the corresponding pin's regitsters, so
disable this feature for Cortex-A Core.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2026-03-17 18:23:22 -04:00
Peter Marheine
5fec964b23 soc: ite: remove unnecessary __soc_handle_irq trampoline
Defining `__soc_handle_irq` (part of the code path run on every
interrupt) as a jump to `get_irq` introduces unnecessary latency to
interrupt handling and inflates code size. Since `get_irq` is not
otherwise called, rename it to `__soc_handle_irq` and delete the old
trampoline.

The signature of the function is changed to match the declaration of
`__soc_handle_irq`, which is possible since commit
495a3281d4679c19703810afbac9607d16ac6788 corrected its declaration.

Signed-off-by: Peter Marheine <pmarheine@chromium.org>
2026-03-17 18:23:00 -04:00
Holt Sun
bd3076276c drivers: mcux_lptmr: select timer instance via zephyr,system-timer chosen
Replace the single-instance assumption with a zephyr,system-timer chosen
node approach. The timer driver reads its hardware instance directly from
DT_CHOSEN(zephyr_system_timer) instead of assuming instance 0. The
counter driver skips whichever instance is designated as the system timer,
allowing both drivers to coexist on SoCs with multiple LPTMR instances.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-03-17 18:22:50 -04:00
Alberto Escolar Piedras
0a1c9eec56 drivers: ethernet: tap: Remove uses of net logging helper macros
These macros are private to the net subsystem, let's not use them in
drivers

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-03-17 18:21:28 -04:00
Alberto Escolar Piedras
078f47d9c8 drivers: net: ppp: Remove uses of net logging helper macros
These macros are private to the net subsystem, let's not use them in
drivers

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-03-17 18:21:28 -04:00
Alberto Escolar Piedras
5926c43353 drivers: ieee802154: Remove uses of net logging helper macros
These macros are private to the net subsystem, let's not use them in
drivers.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-03-17 18:21:28 -04:00
Aditya Bhutada
8d57889537 drivers: espi: espi_taf_npcx: Add retry mechanism for RPMC OP2 command
Add a retry mechanism for the RPMC OP2 command in the eSPI TAF NPCX
driver. If the OP2 command returns a status indicating that the device
is busy, the driver will retry the command up to 3 times.

Signed-off-by: Aditya Bhutada <aditya.bhutada@intel.com>
2026-03-17 18:21:01 -04:00
Muhammad Waleed Badar
17641a8523 drivers: input: chsc6x: use common touchscreen helper
Use the common touchscreen configuration and replace manual ABS
reporting with input_touchscreen_report_pos() to align with the
Zephyr input subsystem helpers.

Add the touchscreen-common devicetree properties screen-width and
screen-height to in-tree nodes using this controller.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-03-17 18:20:51 -04:00
Chun-Chieh Li
b5077ea895 drivers: usb: udc: numaker: fix zero data transfer in HSUSBD DMA
HSUSBD DMA doesn't support zero data transfer and must be skipped.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2026-03-17 18:20:42 -04:00
David J. Leach, Jr.
0f8f891b9e drivers: audio: max98091: log I2C communication errors
The internal I2C helper functions max98091_read_reg,
max98091_write_reg, and max98091_update_reg were ignoring the
return values of the underlying I2C driver calls. In the event
of a bus error or NACK, this led to silent failures where
hardware configuration would appear successful despite failure.

This commit evaluates and logs the return codes for all three
helpers to improve driver serviceability and resolve static
analysis warnings.

Fixes #92594

Signed-off-by: David J. Leach, Jr. <tasmar@gmail.com>
2026-03-17 18:20:13 -04:00
Hake Huang
e7b61d14f7 drivers: dma: raise TCD queue default for MCUX SAI
Set DMA_TCD_QUEUE_SIZE default to 4 when I2S_MCUX_SAI is enabled.
The MCUX SAI driver preloads 3 RX DMA blocks and requires the TCD
queue size to be greater than 3 to satisfy its BUILD_ASSERT and avoid
build failures in MCUX SAI I2S configurations.

Fixes #103997

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2026-03-17 18:19:38 -04:00
Tim Pambor
7c7624743d ethernet: dwmac: Configureable RX refill thread priority
Add a Kconfig option to configure the RX refill thread priority.
The default is set to 0, which is the same as the previous hardcoded
value. This allows users to set a different priority if needed.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-03-17 18:19:30 -04:00
Tim Pambor
0466dfaabb ethernet: dwmac: Fix RX refill thread priority
Thread priority was passed to options argument of k_thread_create,
instead of the priority argument.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-03-17 18:19:30 -04:00
Michał Stasiak
a8e6e17c22 drivers: i2c: nrfx_twim: use timeout error code
Using different, more appropriate, error code in
case of timeout, to differentiate from regular EIO.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2026-03-17 18:18:41 -04:00
David J. Leach, Jr.
fd62462389 drivers: sensor: icm42x70: validate FIFO packet count
The driver was using a packet count value read directly from the
hardware to control a loop bound and a register read size. If the
hardware reported a value exceeding the internal buffer size, it
could lead to a buffer overflow or an untrusted loop bound.

Add a check to cap the packet_count based on the actual size of
the driver's FIFO data buffer.

Fixes #90512

Signed-off-by: David J. Leach, Jr. <tasmar@gmail.com>
2026-03-16 19:08:53 -05:00
Tim Pambor
a444599bbc ethernet: dwmac_stm32h7x: add support for STM32H5 series
H5 series SoCs have a similar Ethernet MAC to the H7 series,
but with some differences with respect to configuration of phy
interface type. As they use a Cortex-M33 core, they have no cache,
so that dma descriptors are always in non-cached memory.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-03-16 19:07:55 -05:00
Tim Pambor
ad286e4cd0 ethernet: dwmac_stm32h7x: add support for STM32H7RS series
H7RS series SoCs have a similar Ethernet MAC to the H7 series,
but with some differences with respect to configuration of phy
interface type.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-03-16 19:07:55 -05:00
Tim Pambor
d664a564dd ethernet: dwmac_stm32h7x: support configuration of phy connection type
Configure phy connection type to value specified in device tree.

Utilize definitions from STM32 Low-Level APIs instead of open coding
values.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-03-16 19:07:55 -05:00
David J. Leach, Jr.
5509ab12bc drivers: sensor: icm4268x: annotate intentional unsigned comparison
The IS_ACCEL macro checks if a channel is within the accelerometer
range. Because SENSOR_CHAN_ACCEL_X currently evaluates to 0 and
the channel type is unsigned, Coverity flags this as a redundant
comparison.

Added a coverity[unsigned_compare] annotation to silence the warning.
This preserves the macro's logic, ensuring the check remains valid
even if the underlying enum order is modified in the future.

Fixes #100002

Signed-off-by: David J. Leach, Jr. <tasmar@gmail.com>
2026-03-16 19:07:28 -05:00
Eira Siegel
14f7d496ae drivers: sensor: st: Pass internal return values to fetch caller
Several of the ST sensor implementations do not return a value to
the fetch caller, even when a fetch fails internally. This is
fixed by returning the value from the internal calls.

Signed-off-by: Eira Siegel <eira@the.cy>
2026-03-16 19:07:11 -05:00
William Markezana
6011b07c5c drivers: sensor: add Sensirion STCC4 CO2 sensor driver
Add driver for the Sensirion STCC4 miniature CO2 sensor. The STCC4
measures CO2 concentration (ppm), temperature, and humidity via I2C
using Sensirion's standard word+CRC protocol.

Features:
- Continuous and single-shot measurement modes
- CRC-8 validation on all sensor data
- Product ID readout at init
- Graceful handling of first measurement delay in continuous mode

Signed-off-by: William Markezana <william.markezana@gmail.com>
2026-03-16 19:02:13 -05:00
Jean-Pierre De Jesus DIAZ
cde85a66ab drivers: watchdog: cc13xx_cc26xx: fix unused variable.
Removed the options variable on wdt_cc13xx_cc26xx_init
which was only initialized to zero and not used.

Signed-off-by: Jean-Pierre De Jesus DIAZ <me@jeandudey.tech>
2026-03-16 19:01:47 -05:00
Benjamin Cabé
727b3cbde1 drivers: sensor: s3km1110: Add support for S3KM1110 24GHz mmWave sensor
This adds a new sensor driver (with custom channels) for the S3KM1110, a
24GHz mmWave radar sensor from Iclegend that uses a UART interface.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-03-16 18:59:55 -05:00
Josuah Demangeon
4e2a4c2696 drivers: video: shell: support more than 10 completions
The video shell uses a workaround to have different sub-commands use
different completions. Raise the limit of maximum completions from 10 up
to 20 to support more devices.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2026-03-16 18:59:44 -05:00
Josuah Demangeon
3b92cb59db drivers: video: shell: add a "video tree" command
Add a "video tree <device>" command to show the topology of video devices.
This follows the chain of source devices as defined by
VIDEO_DEVICE_DEFINE() in the macros.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2026-03-16 18:59:44 -05:00
Josuah Demangeon
79aa7e3845 drivers: video: shell: fix shell tab completion when device fails
The tab completion was not showing the valid devices after the failed
devices. Fix it by continuing to search for devices after a failed device.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2026-03-16 18:59:44 -05:00
Josuah Demangeon
7ecb1d032f drivers: video: shell: add tab completion for "video selection ..."
Add support for completion for the "video selection" shell command.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2026-03-16 18:59:44 -05:00
Christopher Cope
f8800c8ab3 drivers: gnss: Add L5 system support
This adds L5, BeiDou and QZSS satellite systems to enum ```gnss_system```

Signed-off-by: Christopher Cope <chris.cope@roedan.com>
2026-03-16 18:59:12 -05:00
Ayush Singh
c1e14900b0 drivers: serial: Add RPMSG UART
A lot of BeagleBoard.org boards contain SOCs with co-processors such as
M4F in AM62x (PocketBeagle 2 [0]), R5s in AM67A (BeagleY-AI [1]). In such
targets, the application is normally loaded by the Linux host using
remoteproc.

There have been some out of tree patches to have micropython and other
Zephyr applications output to allow having a console without requiring
manual connections. This patch attempts to provide a more concrete and
upstream way to have that functionality.

The implementation uses existing rpmsg service subsystem.

Only implemented poll_out

Tested on PocketBeagle 2 M4F core.

[0]: https://docs.zephyrproject.org/latest/boards/beagle/pocketbeagle_2/doc/index.html
[1]: https://docs.zephyrproject.org/latest/boards/beagle/beagley_ai/doc/index.html

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2026-03-16 18:58:35 -05:00
Cherrence Sarip
79e6e32f79 drivers: pwm: add support for MAX2221X pwm
Implements PWM driver support for the MAX22216/MAX22217 device.
This driver integrates with the Zephyr PWM API and uses the parent
MFD device to perform register access.

Signed-off-by: Cherrence Sarip <cherrence.sarip@analog.com>
2026-03-16 10:09:16 -04:00
Cherrence Sarip
d5c0edf4fb drivers: misc: add support for MAX2221X misc
Add MISC driver support for the MAX22216/MAX22217 device.
The driver provides miscellaneous functions and uses the parent
MFD device for register access.

Signed-off-by: John Erasmus Mari Geronimo <johnerasmusmari.geronimo@analog.com>
Signed-off-by: Cherrence Sarip <cherrence.sarip@analog.com>
2026-03-16 10:09:16 -04:00
Cherrence Sarip
5aa97fbc7b drivers: mfd: add support for MAX2221X multi-function device
Implements SPI-based register access (read, write, update) for the
MAX22216/MAX22217 multi-function device.

Signed-off-by: Cherrence Sarip <cherrence.sarip@analog.com>
2026-03-16 10:09:16 -04:00
Felipe Neves
89de9b7ca9 video: ov5640: fix out of bounds
control initialization by setting the control array first.

Signed-off-by: Felipe Neves <ryukokki.felipe@gmail.com>
2026-03-16 10:08:54 -04:00
Stanislav Poboril
71d1dd85d1 drivers: ethernet: phy: nxp_t1s_phy: add NXP 10BASE-T1S driver
Add driver for 10BASE-T1S digital PHY found on some NXP SoCs.

Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
2026-03-16 10:07:00 -04:00
Stanislav Poboril
e36f597c96 boards: frdm_mcxa577: add enet_qos support
1. adjusted enet_qos driver to cope with features missing on mcxa577
2. enabled enet_qos support
3. verified samples/net/zperf

Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
2026-03-16 10:07:00 -04:00
Stanislav Poboril
92b97cc596 drivers: ethernet: eth_nxp_enet_qos_mac: support for half-duplex mode
Mode is no longer fixed to full-duplex, it is set to half-duplex or
full-duplex in PHY callback.

Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
2026-03-16 10:07:00 -04:00
Josuah Demangeon
f527724abf drivers: video: add formats: 8-bit padded to 16-bit
Add padded formats as seen on Himax image sensors used with 8-bit
DVP receivers, where half of the pins are used, leading to empty
bits in memory. This replaces the Y4 format which is 8-bit despite
only giving 4-bit filled with data per byte.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2026-03-16 10:06:44 -04:00
Krzysztof Chruściński
0ca8d2cbd0 drivers: spi: nrfx_spis: Add missing pinctrl initial stage
Driver initialization is expected to keep the driver in the
suspended stage before calling pm_device_driver_init. It means
that initialization should set pinctrl SLEEP stage. Nordic SPIS
driver was not doing that. If device runtime PM was enabled it
resulted in pins being in the default state when it was expected
that they are in the sleep state.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2026-03-16 10:06:00 -04:00
Michał Stasiak
1038bd14b0 drivers: mspi: allow using MSPI type for nrf-qspi-v2 binding
MSPI type is just a rename of QSPI type. Code
provided for nrf-qspi-v2 binding should work with both.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2026-03-16 10:05:41 -04:00
Tien Nguyen
9e59e1479d drivers: spi: add missing p_reg initialize in extended configurations
add missing p_reg initialize in extended configurations

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-03-16 12:32:50 +01:00