Commit graph

117313 commits

Author SHA1 Message Date
Yicheng Li
dea8cd3fcf dma_mcux_lpc: Fix descriptor address conversion when used by DSP
The SDK FSL DMA driver converts descriptor addresses to DMA's address
space when linking descriptors. The Zephyr dma_mcux_lpc driver is
missing the inverse conversion when dereferencing the linked next
descriptor pointer.

This isn't a problem when this driver is used on the M33 core
of the MIMXRT595S because the M33 can access the address space
of the DMA (0x20000000+). But when the Fusion F1 DSP core uses
this driver, the DSP cannot access the DMA's address space
so the inverse conversion is needed.

Signed-off-by: Yicheng Li <yichengli@google.com>
2025-06-17 07:23:31 +02:00
Armando Visconti
a2d230bd88 drivers/sensor/: lis2dux12: support FIFO modes
Support three different FIFO contents which are selectable through
a new DT property, fifo-mode-sel, which may be set to one of the
following values:

    - 0x0 # 1x Accelerometer @12bit and 1x temperature @12bit samples
    - 0x1 # 1x Accelerometer @16bit sample
    - 0x2 # 2x Accelerometer @8bit samples (previous and current)

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-06-17 07:23:23 +02:00
Jiafei Pan
f9ca69d454 soc: imx943: clean clock dts binding header file
Removed some redundant definitions and clang-format this file.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:23:12 +02:00
Benjamin Cabé
1787e5cdab drivers: misc: fix condition in gpio_ra_interrupt_unset function
Updated the condition in the gpio_ra_interrupt_unset function to use a
logical OR instead of AND, since it should return if either port_num or
pin is not the same as the current callback.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-17 07:23:04 +02:00
Jiafei Pan
cfc652765b boards: imx943_evk: a55: update document about dcache
Update board document to remove dcache off command under U-Boot as
CONFIG_ARM64_BOOT_DISABLE_DCACHE has been enabled.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:22:51 +02:00
Jiafei Pan
dc68d1bb10 soc: imx943: a55: disable D-Cache when booting from el2
Enabled CONFIG_ARM64_BOOT_DISABLE_DCACHE to disable D-Cache when
booting from EL2.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:22:51 +02:00
Hao Luo
e05abfdcf4 drivers: mspi: ambiq: optimize ambiq mspi device pm
This commit optimizes the device pm for ambiq mspi driver
by adding pinctrl sleep/resume.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-17 07:22:44 +02:00
Hao Luo
373ab289ce drivers: spi: ambiq: optimize ambiq spi device pm
This commit optimizes the device pm for ambiq spi driver
by adding pinctrl sleep/resume.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-17 07:22:44 +02:00
Hao Luo
37134f5a4e drivers: i2c: ambiq: optimize ambiq i2c device pm
This commit optimizes the device pm for ambiq i2c driver
by adding pinctrl sleep/resume.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-17 07:22:44 +02:00
Hao Luo
fe632259c9 drivers: uart: ambiq: optimize ambiq uart runtime pm
This commit optimizes the runtime pm for ambiq uart driver
by adding pinctrl sleep/resume.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-17 07:22:44 +02:00
Hao Luo
69f2c7f273 boards: ambiq: apollo510_evb: add pinctrl sleep mode
This commit adds pinctrl sleep mode for apollo510_evb
to support device pm.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-17 07:22:44 +02:00
Hao Luo
a54197b2f8 soc: ambiq: workaround for issue #90777
This commit workarounds issue #90777

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-06-17 07:22:44 +02:00
Alexander Apostolu
2e7ec2bc29 drivers: sensor: adi: adxl372: Remove logically dead code
Remove logically dead if and else-if conditions as shown by the static
analysis, replacing with the else statement.

When data_opt is assigned to the MIN of fifo_wmark_cfg and fifo_full_cfg,
both those variables will be non-NULL as an earlier condition ensures the
function returns if either one of the variables is NULL before assigning
to data_opt.

Signed-off-by: Alexander Apostolu <apostolu240@gmail.com>
2025-06-17 07:22:34 +02:00
Jiafei Pan
132d79615c dts: nxp: imx95_a55: add GPIO device nodes
Added all GPIO device nodes in i.MX 95 Cortex-A Core SoC dts.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:21:32 +02:00
Jiafei Pan
a426ed7898 boards: imx8mn_evk: add JLink runner for A53 Core
Use JLink runner for flash and debug on A53 Core.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:21:21 +02:00
Jiafei Pan
55401d8956 boards: imx8mm_evk: add JLink runner for A53 Core
Use JLink runner for flash and debug on A53 Core.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:21:21 +02:00
Jiafei Pan
7b1266aba5 boards: imx8mp_evk: add JLink runner for A53 Core
Use JLink runner for flash and debug on A53 Core.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:21:21 +02:00
Jiafei Pan
84fce99b5e boards: imx91_evk: add JLink runner support
Use JLink runner to flash and debug on i.MX91 EVK.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-06-17 07:21:21 +02:00
Armando Visconti
44a67ea403 samples/sensor: Add sample to read RTIO stream using drdy
Add sample to read from up to 10 streaming devices, using the
sensor_stream() API and the RTIO framework:
    https://docs.zephyrproject.org/latest/services/rtio/index.html

The devices has to be aliased as streamN (0 <= N <= 9) in DT, and
will be instantiated using SENSOR_DT_STREAM_IODEV() macro.

Currently the sample gets/prints data on SENSOR_TRIG_DATA_READY
trigger basis for the following sensor channels:

        - SENSOR_CHAN_ACCEL_XYZ

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-06-17 07:21:04 +02:00
Armando Visconti
afe0abea42 sensor: lsm6dsv16x: add SENSOR_TRIG_DATA_READY trigger
Add SENSOR_TRIG_DATA_READY trigger support to RTIO streaming.
Currently it just handle XL drdy.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-06-17 07:21:04 +02:00
Armando Visconti
1dd1b35676 samples/sensor: stream_fifo: fix documentation
Add some info and sensortile_box_pro board description in README file.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-06-17 07:21:04 +02:00
Pete Johanson
7b0e431fc8 tests: drivers: memc: Set up APARD32690 properly.
Enable/disable devices as necessary to ensure memc test will test the
attached HyperRAM and no other memory nodes.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-06-17 07:20:22 +02:00
Benjamin Cabé
c4ed1c01eb drivers: sensor: tdk: fix double tap trigger handler
Ensure that the appropriate trigger is passed when a double tap is
detected.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 14:15:31 -04:00
Jason Yu
c387d9c73d modules: hal_nxp: mcux-sdk-ng: Fix LPC55S16 build error
Fix build error when CONFIG_MCUX_COMPONENT_driver.fro_calib is set.
Error message:

modules/hal/nxp/mcux/mcux-sdk-ng/cmake/extension/function.cmake:2084 (if)
  if given arguments:

    "IN_LIST" "NEED_WRAP_TOOLCHAINS"

The error is because, mcux sdk ng cmake functions `mcux_add_xxx` support
add content based on toolchains. CMake should set current toolchain in
CMake Variable `CONFIG_TOOLCHAIN` to use this feature.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-06-16 14:15:12 -04:00
Jason Yu
ac0bf59b5b modules: hal_nxp: mcux-sdk-ng: Fix RT595 F1 build error
In MCUX SDK NG, the `core_id` and `core_id_suffix_name` are
different concepts, generally the values are the same. But
there are exeptions, such as RT595 F1.

Zephyr's `CONFIG_MCUX_CORE_SUFFIX` is actually MCUX SDK's
`core_id_suffix_name`. SDK NG CMake needs `core_id`, but
current integration layer uses `CONFIG_MCUX_CORE_SUFFIX`
as `core_id`, so there is build error with RT595 F1.

Fix the code that convert `CONFIG_MCUX_CORE_SUFFIX` to `core_id`,
handle the special case.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-06-16 14:15:12 -04:00
Jason Yu
ede6186759 modules: hal_nxp: mcux: Add MCUX SDK NG glue layer readme
Add the readme to show the implementation.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-06-16 14:15:12 -04:00
Furkan Akkiz
f8871d52c8 boards: adi: max32662evkit: Add CAN support
This commit enables CAN0 for max32662evkit

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-06-16 14:13:59 -04:00
Ioan Dragomir
92a11405f7 drivers: can: Add CAN support for max32662
Adapt MAX32690 driver to use Wrap_MXC_CAN_Init to handle differences
in the MSDK API (see analogdevicesinc/msdk#1306) between the
MAX32690 and MAX32662.

can_driver_api.timing_min required phase_seg1 >= 3 and phase_seg2 >= 2
when configuring CAN bit timing. Both microcontrollers covered by this
driver (MAX32662, MAX32690) support values down to 1 for both of these
timing parameters.

Refer to the docs for registers CAN_BUSTIM1, CANn_BUSTIM1.

Add a can0 node to the MAX32662 dtsi.

Signed-off-by: Ioan Dragomir <ioan.dragomir@analog.com>
2025-06-16 14:13:59 -04:00
Anıl Kara
4eb7168a81 boards: adi: max32690evkit: Add CAN support
This commit enables CAN0 for max32690evkit

Signed-off-by: Anıl Kara <anil.kara@analog.com>
2025-06-16 14:13:59 -04:00
Anıl Kara
b38a1f4a89 dts: arm: adi: Add CAN peripheral to max32690
This commit defines CAN peripheral as a devicetree node.

Signed-off-by: Anıl Kara <anil.kara@analog.com>
2025-06-16 14:13:59 -04:00
Anıl Kara
7f3b002210 drivers: can: Add max32xxx CAN driver
This commit adds CAN driver for max32xxx.

Signed-off-by: Anıl Kara <anil.kara@analog.com>
2025-06-16 14:13:59 -04:00
TOKITA Hiroshi
831987d19a tests: drivers: display: controlling test execution with fixture
Currently, the `display_read_write` test execution can be suppressed
by `harness: display`, but since the display harness does not exist,
there is no way to run tests.
Using a fixture, it will be possible only to build if not specified,
and run tests if specified.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-06-16 11:11:33 -07:00
Benjamin Cabé
1387657107 net: dns: remove redundant check in mdns_unpack_query_header
Drop this redundant check that was likely meant to be checking that Z
field is zero but in the case of reception the RFC says it MUST be
ignored anyway.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 14:04:59 -04:00
Alberto Escolar Piedras
dc24583858 net: sockets_offload: Fix build error with NO_OPTIMIZATIONS
When CONFIG_NO_OPTIMIZATIONS the compiler will not inline
socket_offload_dns_is_enabled(), which means calls to
socket_offload* remain, and the linker will fail with

in function `zsock_getaddrinfo': undefined reference to
`socket_offload_getaddrinfo'
in function `zsock_freeaddrinfo': undefined reference to
`socket_offload_freeaddrinfo'

Instead of relaying on that function being inlined and the
if'ed code being removed, let's just use the preprocessor.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-16 14:04:40 -04:00
Benjamin Cabé
a3aa06521e drivers: haptics: drv2605: drop redundant include
haptics.h was being included twice.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 14:04:22 -04:00
Benjamin Cabé
0017c5bb33 drivers: haptics: handlers: propagate stop_output return value
Actually propagate the return value of haptics_stop_output.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 14:04:22 -04:00
Benjamin Cabé
005377b4c5 drivers: dac: adopt SHELL_HELP
Adopt SHELL_HELP macro for dac_shell

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-16 14:03:57 -04:00
Mathias Markussen
813fd26716 board: st: stm32u5g9j-dk2: Add HSPI external flash
Add external HSPI flash on STM32U5G9J-DK2
Use external loader to flash it with STM32CubeProgrammer

Signed-off-by: Mathias Markussen <mathias.markussen@st.com>
2025-06-16 14:03:42 -04:00
Mathias Markussen
c9ba87f47e board: st: stm32u5g9j-dk2: Add touchscreen driver
Use GT911 touchscreen driver on STM32U5G9J-DK2

Signed-off-by: Mathias Markussen <mathias.markussen@st.com>
2025-06-16 14:03:42 -04:00
Mathias Markussen
00733cebc3 dts: Add hspi to STM32U5 chips including this
The SOCs including this dts all have hspi (xspi comatible)
peripheral included.

Signed-off-by: Mathias Markussen <mathias.markussen@st.com>
2025-06-16 14:03:42 -04:00
Fabrice DJIATSA
746d60b0f8 tests: drivers: spi: remove useless files and testcases
- with the updates made to the spi_ll_stm32 driver,
we no longer need to configure the 16-bit frame/word size
in the DTS overlay file. The test_spi_word_size_16 testsuite
helps us verify the 16-bit frame mode supported on
the ST platform.

- remove testcases that use thoses files in testcase.yaml

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-16 14:03:05 -04:00
Fabrice DJIATSA
eccf541ea6 drivers: spi: stm32: dynamically update spi word/frame size
Update the source_data and dest_data sizes with the frame size
in bytes before performing the transfer.
With these changes, we can handle cases where the buffers switch
between 8-bit and 16-bit modes.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-16 14:03:05 -04:00
Fabrice DJIATSA
994efc0b92 drivers: spi: update error type to skip word_size testcases
Workaround to avoid getting the -EFAULT (14) error when running
the test_spi_word_size_x (x = 7, 9, 24) test cases:
Since these testcase configurations aren't supported, update
the error type to ENOTSUP to allow skipping the test cases using ztest.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-16 14:03:05 -04:00
Fabrice DJIATSA
cc4e2f526a tests: drivers: spi: spi_loopback: handle rx/tx buffers nocache memory
Place transfer buffers in non-cacheable memory when
CONFIG_NOCACHE_MEMORY=y. This change ensures that DMA transfer
buffers are allocated in non-cacheable memory on platforms where
CONFIG_NOCACHE_MEMORY is enabled. This avoids potential cache
coherence issues that are not handled by the SPI driver.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-16 14:03:05 -04:00
Fabrice DJIATSA
5daad8f7c1 tests: drivers: spi_loopback: add latency tolerance for some boards
Set a convenient latency for each platform, since each platform
reacts differently to the driver.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-16 14:03:05 -04:00
Fabrice DJIATSA
c5f5fc1fa8 tests: drivers: spi: spi_loopback: enable nucleo_c071rb to run test again
Due to RAM overflow by 3200 bytes, decrease size of SPI_LARGE_BUFFER.

signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-06-16 14:03:05 -04:00
c37abf115d drivers: dma: fix the WCH DMA transfer width
The driver treats the `source_data_size` and `dest_data_size` as a
width in bits and converts 8 bits to 1, 16 bits to 2, and 32 bits to 3.

This should be a width in bytes with 1 byte mapping to 0, 2 bytes to
1, and 4 bytes to 3.

Note that this preserves the current behaviour of silently accepting
invalid transfer bit widths.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-16 14:01:54 -04:00
dc57eda4ca boards: wch: add dma to the supported list so the build tests run
This adds `tests/drivers/dma/chan_blen_transfer` and
`tests/drivers/dma/loop_transfer` as build tests to any manual Twister
run.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-16 14:01:54 -04:00
Andrej Butok
f062012f84 boards: mimxrt1060_evk: set LinkServer as the default runner
Sets LinkServer as the default runner for the mimxrt1060-evk board,
as the board is configured for CMSIS-DAP by default.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-06-16 14:00:32 -04:00
Tien Nguyen
8507859371 tests: drivers: gpio: Add support for RZ/V2N-EVK
Add support for RZ/V2N-EVK

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
2025-06-16 14:00:22 -04:00