Commit graph

24538 commits

Author SHA1 Message Date
Corey Wharton
7425070ecc drivers: sensor: tmp112: format file
Format before other changes.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-03-31 08:07:12 +02:00
Chew Zeh Yang
fa1e385b77 drivers: udc_ambiq: fix compilation issue after dwc2 header removal
udc_ambiq was using USB test mode definition in dwc2 header, which
the include was removed, hence compilation now fails. This commit
fixes the compilation failure.

Signed-off-by: Chew Zeh Yang <zeon.chew@ambiq.com>
2025-03-31 08:06:47 +02:00
Julien Panis
d8dbf5653e drivers: dma: Add support for cc23x0 DMA
Add support for 8-channel configurable DMA controller. The driver
supports the following features:
- memory to peripheral (ch0 to ch5)
- peripheral to memory (ch0 to ch5)
- memory to memory (ch6 and ch7)

Each DMA channel is multiplexed between two or more trigger sources:
- ch0 -> SPI0_TX or UART0_RX
- ch1 -> SPI0_RX or UART0_TX
- ch2 -> LRFD or UART0_TX
- ch3 -> ADC0 or UART0_RX
- ch4 -> AES_A or LRFD
- ch5 -> AES_B or ADC0
- ch6 -> Software Event Channel 0
- ch7 -> Software Event Channel 1

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-03-31 08:05:52 +02:00
Titan Chen
10f7218df4 drivers: timer: rts5912: Fix RTMR accurate issue.
Fix RTMR_ADJUST_LIMIT and RTMR_ADJUST_CYCLES

Signed-off-by: Titan Chen <titan.chen@realtek.com>
2025-03-28 21:51:08 +01:00
Ibrahim Abdalkader
41a10e41b0 drivers: display: Add Sitronix ST7701 driver.
Display driver for Sitronix ST7701.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-03-28 21:50:58 +01:00
Andriy Gelman
9b1ac989b3 drivers: spi_xmc4xxx: Add delay when changing clock polarity
The passive level of the clock does not change instanteneously when
it's set using function XMC_SPI_CH_ConfigureShiftClockOutput().
This means that the passive level of the clock can be in the wrong
state when the chip select goes low.

Fix this by adding a small delay when the polarity changes to allow
the clock to return to the proper level.

Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
2025-03-28 21:50:48 +01:00
Chaitanya Tata
5119f9c379 drivers: nrf_wifi: Implement TX zero-copy feature
This uses the network packet as is without the need for a copy all the
way till the packet is handed over to RPU.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-03-28 16:11:05 +01:00
Fin Maaß
b8eda4d6e7 drivers: ethernet: litex: support more than 2 slots
This adds support for more than 2 slots in the LiteX liteeth
driver.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-28 16:10:23 +01:00
Fin Maaß
62cbfbcb27 drivers: ethernet: litex: add remove irq_lock on rx
It is already ensured in the fpga logic, that there is only one
interrupt per liteeth dev at a time. So we can remove the irq_lock on rx.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-28 16:10:23 +01:00
Fin Maaß
a080df5dfc drivers: ethernet: litex: add mutex for tx
This patch adds a mutex for the eth_tx() function to prevent multiple
threads from calling the function at the same time.
Also remove the unneded irq_lock in that function.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-28 16:10:23 +01:00
Fin Maaß
31648d5fcc drivers: ethernet: litex: correct return value
correct return value for litex liteeth driver in eth_tx().

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-28 16:10:23 +01:00
Anisetti Avinash Krishna
139211772c include: zephyr: sys: time_units: Make z_clock_hw_cycles_per_sec unsigned
Convert z_clock_hw_cycles_per_sec to unsigned int to increase
supported frequency range.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-03-28 12:21:07 +01:00
Jordan Yates
32229d0b6c serial: stm32: block sleep modes while RX is active
Block the SoC from re-entering sleep modes while the RX line is active,
if the RX activity previously woke the device from the sleep states.
This stops the device from continuously transitioning between the two
modes and improves responsiveness.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-28 08:41:31 +01:00
Jordan Yates
83ea0f7f80 serial: stm32: fix dropped UART_TX_DONE events
Fix dropped `UART_TX_DONE` events when poll out and async APIs are used
on the same port. Clearing `tx_poll_stream_on` is required to prevent
`uart_stm32_isr` from prematurely clearing the TC status bit.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-03-28 08:41:31 +01:00
Nhut Nguyen
ea00582873 drivers: gpio: rz: Fix whitespaces and typo
- Add spaces around /* ... */
- Fix a typo and remove a stray space in the description of
renesas,rz-gpio.yaml to make it visible in doc html

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-28 08:35:13 +01:00
Quang Le
379dcc719e drivers: gpio: Add support for RZ/V2L
Add GPIO driver support for RZ/V2L

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-28 08:35:13 +01:00
Quang Le
7c27e576a0 drivers: pinctrl: Add support for RZ/V2L
This is the initial commit to support pinctrl driver for Renesas RZ/V2L

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-03-28 08:35:13 +01:00
Etienne Carriere
d0d8fa444f drivers: i2c: stm32: don't manage cache aside DMA support
Fix STM32 I2C driver to not call cache management related functions
when DMA is not used. This change fixes an issue introduced by
commit 42c3a78148 ("i2c: stm32: Add cache memory support"). The issue
makes boards embedding this driver with both CONFIG_I2C_STM32_V2_DMA
and CONFIG_ARCH_MPU disabled to fail to build with an error trace message
like the below:
   .../i2c_ll_stm32_v2.c:701: undefined reference to `mem_attr_check_buf'

Fixes: 42c3a78148
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-27 21:33:53 +01:00
Marek Matej
c9e1ff3876 samples: net: wifi: esp32: Enable config by driver
Move repeated config NET_L2_ETHERNET under the driver Kconfig.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-03-27 21:33:24 +01:00
Kapil Bhatt
3ef187dee6 drivers: nrf_wifi: Add prompt to Kconfig
Add prompt to Kconfig NRF70_SYSTEM_WITH_RAW_MODES.
It is assigned in a configuration file, but is not directly
user-configurable (has no prompt). It gets its value
indirectly from other symbols.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-03-27 17:17:42 +01:00
Andrzej Kuros
d15c9fe9a6 drivers: i2c_nrfx_twim: add exclusive access API
This commit provides an extension to the i2c_nrfx_twim driver.
It introduces possibility to acquire/release exclusive access to the
i2c bus. While the exclusive access to the i2c bus is acquired
you can access the underlying nrfx_twim driver directly.

Signed-off-by: Andrzej Kuros <andrzej.kuros@nordicsemi.no>
2025-03-27 17:17:32 +01:00
Elliott Cutmore
1788c701cb drivers: adc: adc_ads1x4s0x remove duplicated initialiser
Removed duplicated "vbias_level" initialiser in driver

Signed-off-by: Elliott Cutmore <elliott.cutmore@gmail.com>
2025-03-27 14:01:32 +01:00
Fin Maaß
2260111cc6 drivers: i2c: litex: add mutex in litei2c
add mutex for the litei2c driver

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-27 14:01:11 +01:00
Fin Maaß
f7a0a54c31 drivers: i2c: litex: add driver for litei2c
add driver for litei2c.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-03-27 14:01:11 +01:00
Robert Budai
d7e363e358 drivers: gpio: max22190: add max22199 extended support
The MAX22199 is an IEC 61131-2 compliant industrial digital input device.
The MAX22199 translates eight 24V current-sinking industrial inputs to a
serialized SPI-compatible output that interfaces with 3V to 5.5V logic. It
can operate as eight Type 1/Type 3 digital inputs or four Type 2 digital
inputs. The device provides diagnostic functions, including thermal
shutdown, 24V under voltage alarm, 24V missing voltage alarm, and SPI and
CRC communication error detection.

Signed-off-by: Robert Budai <robert.budai@analog.com>
2025-03-27 03:49:44 +01:00
Zhaoxiang Jin
7ed7cd191a modules: hal_nxp: Move hal_nxp glue layer to zephyr repo
Move hal_nxp glue layer to zephyr repo.
Fix build warnings and failures caused by hal_nxp upgrade.
Update manifest to contain hal_nxp changes.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-03-26 16:26:34 +01:00
Niek Ilmer
86c4b8d1f6 drv: bluetooth: Renesas: add Zephyr_blobs_verify
Add a Zephyr blobs verify check for Renesas HAL

Signed-off-by: Niek Ilmer <niek.ilmer.aj@renesas.com>
2025-03-26 16:21:46 +01:00
Erwan Gouriou
a98e3181b8 drivers: gpio: stm32: Cleanup unused defines
These defines are unused since 8d97f67159.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-03-26 16:21:34 +01:00
Peter van der Perk
c09a4baca0 spi_nxp_lpspi: Fix DMA not releasing lock on error
When spi_mcux_dma_next_fill failed it return without releasing
the lock

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-03-26 16:20:53 +01:00
Peter van der Perk
9f10418b8a spi_nxp_lpspi: Reset peripheral on startup
Ensure that LPSPI is in POR state when initializing

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-03-26 16:20:53 +01:00
Peter van der Perk
e086678d86 spi_nxp_lpspi: Fix ISR handler filling TX
Fixes wait for completion problems where the ISR was not sending
out TX NOP's when needed causing the transfer to timeout

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-03-26 16:20:53 +01:00
Corey Wharton
a7f6cee9de drivers: sensors: lsm6dsv16x: add support for lsm6dsv32x variant
The LSM6DSV32X part is nearly identical to the LSM6DSV16X but has different
sensitivity scales for the accelerometer (4-32G versus 2-16G). This commit
adds support for this part via the "st,lsm6dsv32x" compatible string.

Signed-off-by: Corey Wharton <xodus7@cwharton.com>
2025-03-26 16:19:54 +01:00
Etienne Carriere
a4e00505dc drivers: clock_control: get_status handler for stm32n6
Add clock_control get_status handler for stm32n6 platforms.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Etienne Carriere
105d729aee drivers: clock_control: add TIMG prescaler on STM32N6
Add support for TIMG clock domain as clock source on STM32N6 SoCs.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Etienne Carriere
adc36f8cda drivers: clock_control: add HSI_DIV on STM32N6
Enable support for HSI_DIV and its use as a clock source on STM32N6 SoCs.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Etienne Carriere
0926bdb444 drivers: clock_control: add HCLKx and PCLKx source clocks on STM32N6
Enable support for HCLK, PCLK1, PCLK2, PCLK4 and PCLK5 as subsystem
clock sources identifiers on STM32N6 SoCs. HCLKx relates to the AHBx
buses clock and PCLKx relate to the APBx buses clocks.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-03-26 16:19:09 +01:00
Jamie McCrae
5c027f270e drivers: sensors: kconfig: Add sort
Adds sort to individual sensor Kconfigs and sorts them

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-03-26 11:33:11 +01:00
Jamie McCrae
f6730f7db3 drivers: serial: kconfig: Fix unsorted additions
Fixes Kconfig files that have not been added in the right place

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-03-26 11:33:11 +01:00
Tomasz Moń
6e3f8d4967 drivers: udc_dwc2: Set control endpoint CNAK only when necessary
SETUP data is unconditionally ACKed by the controller. Other DATA
packets sent to OUT control endpoint 0 (i.e. OUT Data Stage packets
and OUT Status Stage packet) are ACKed by the device only if the
endpoint was enabled with CNAK bit set.

In Buffer DMA mode controller will lock up in following scenario:
  * OUT EP0 is not enabled, e.g. OUT Status Stage has finished
  * Host starts Control Write transfer, i.e. sends SETUP DATA0 and
    device ACKs (regardless if endpoint is enabled or not)
  * host sends OUT Data Stage (OUT DATA1)
      - software enables endpoint to be able to receive next SETUP data
	while host is transmitting the OUT token. If CNAK bit is set
        alongside the EPENA bit, the device will ACK the OUT Data Stage.
        If CNAK bit is not set, the device will NAK the OUT Data Stage.

When the lockup occurs, from host perspective the OUT Data Stage packet
was successfully transmitted. This can result in host starting IN Status
Stage if there was only one OUT Data Stage packet. This in turn results
in device never getting the DOEPTINT0 SetUp interrupt. Besides just not
getting the SetUp interrupt, any subsequent control transfer won't be
noticed by device at all.

The lockup was first observed while stress testing. The host was issuing
endless sequence of Control Write, Control Read, Control Write, Control
Read, ... commands. When the controller did lock up in Buffer DMA mode,
from host perspective the device was timing out all control transfers.

Avoid the Buffer DMA lockup by setting CNAK bit only when necessary.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-03-26 11:32:33 +01:00
James Roy
bcbf69ed9f drivers: counter: nrf: Add nrfx-timer implementation
Implement the '.reset' interface in the nrfx-timer driver
to allow the upper layers to use the counter_reset
function.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-26 08:54:58 +01:00
James Roy
d019aea47b drivers: counter: Add native-posix implementation example
Implement the '.reset' interface in the native-posix driver
to allow the upper layers to use the counter_reset
function.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-03-26 08:54:58 +01:00
Jakob Riepler
7512eb0b65 drivers: fix support for U-Blox M10 modules with M8 driver
The U-Blox M10 seems to interleave UBX and NMEA messages in a way that
confuses the M8 driver leading to missing the same message that directly
follows the UBX part every time (leading to no navigation updates).
As the driver does not parse the UBX blocks during normal operation anyways
it can just be disabled.

Signed-off-by: Jakob Riepler <jakob+zephyr@chaosfield.at>
2025-03-26 07:08:27 +01:00
Ryan McClelland
248f7971e4 drivers: i3c: stm32: fix ibi build issue
Use the correct 'place' for the hj_pm_lock variable

Signed-off-by: Ryan McClelland <rymcclel@gmail.com>
2025-03-26 07:08:17 +01:00
Ryan McClelland
9628d97ad9 drivers: i3c: remove group addr definition
The i3c group address support is rather very incomplete here. Remove
references to it. This could all easily come back when/if group support
comes in.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-03-26 00:47:00 +01:00
Fabian Blatz
9564780564 drivers: input: sdl_touch: Associate display with instance
Make the zephyr,input-sdl-touch driver be multi instance and add the
possibility to associate it with a display. The input events are only
emitted if the events occured on this display.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-03-25 22:14:40 +01:00
Fabian Blatz
fdf9a6172b drivers: display: sdl: Store dev inside of window user_data
Adds storing of the zephyr display device struct inside of the windows
user_data, so it can be used inside of the SDL touch driver context for
checking the origin window of a received event.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-03-25 22:14:40 +01:00
Khoa Nguyen
9093598d86 drivers: dac: Update Renesas DAC driver to support for RA4
Update Renesas DAC driver to support DAC for RA4

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-03-25 22:13:12 +01:00
Robert Budai
1489038f3b drivers: gpio: add max14917
MAX14917 is an eight high-side switch, specified to deliver up to 700mA
(min) continuous current per channel. The high-side switches have
on-resistance of 120mΩ (typ) at 25°C ambient temperature

Signed-off-by: Robert Budai <robert.budai@analog.com>
2025-03-25 22:13:01 +01:00
Tilmann Unte
224b5b744d drivers: sensor: mpu6050: scale settings to DT, adds sample rate setting
Moves the MPU6050 accel/gyro scale settings from KConfig to Devicetree.
Adds a new setting for the MPU6050 sample rate divider register and
transmits it to the sensor upon initialization.
This helps to reduce the interrupt firing rate when combined with the
data ready trigger.
A default division factor is provided which ensures compatibility with
existing applications.
The MPU6050 sample application is extended and used for hardware tests.

Signed-off-by: Tilmann Unte <unte@es-augsburg.de>
2025-03-25 22:12:49 +01:00
Neil Chen
cec2bf0eee drivers: syscon: support mcxa156 i3c clock in syscon driver
Add mcxa156 i3c clock support

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-03-25 22:12:36 +01:00