diff --git a/tests/drivers/counter/counter_basic_api/boards/max32650evkit.overlay b/tests/drivers/counter/counter_basic_api/boards/max32650evkit.overlay new file mode 100644 index 00000000000..056e2db6293 --- /dev/null +++ b/tests/drivers/counter/counter_basic_api/boards/max32650evkit.overlay @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2025 Analog Devices, Inc. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&timer0 { + status = "okay"; + prescaler = <2>; + counter { + status = "okay"; + }; +}; + +&timer1 { + status = "okay"; + prescaler = <2>; + counter { + status = "okay"; + }; +}; + +&timer2 { + status = "okay"; + prescaler = <2>; + counter { + status = "okay"; + }; +}; + +&timer3 { + status = "okay"; + prescaler = <2>; + counter { + status = "okay"; + }; +}; + +&timer4 { + status = "okay"; + prescaler = <2>; + counter { + status = "okay"; + }; +}; + +&timer5 { + status = "okay"; + prescaler = <2>; + counter { + status = "okay"; + }; +}; diff --git a/tests/drivers/counter/counter_basic_api/boards/max32650fthr.overlay b/tests/drivers/counter/counter_basic_api/boards/max32650fthr.overlay new file mode 100644 index 00000000000..056e2db6293 --- /dev/null +++ b/tests/drivers/counter/counter_basic_api/boards/max32650fthr.overlay @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2025 Analog Devices, Inc. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&timer0 { + status = "okay"; + prescaler = <2>; + counter { + status = "okay"; + }; +}; + +&timer1 { + status = "okay"; + prescaler = <2>; + counter { + status = "okay"; + }; +}; + +&timer2 { + status = "okay"; + prescaler = <2>; + counter { + status = "okay"; + }; +}; + +&timer3 { + status = "okay"; + prescaler = <2>; + counter { + status = "okay"; + }; +}; + +&timer4 { + status = "okay"; + prescaler = <2>; + counter { + status = "okay"; + }; +}; + +&timer5 { + status = "okay"; + prescaler = <2>; + counter { + status = "okay"; + }; +}; diff --git a/tests/drivers/dma/chan_blen_transfer/boards/max32650evkit.conf b/tests/drivers/dma/chan_blen_transfer/boards/max32650evkit.conf new file mode 100644 index 00000000000..a093a1aa637 --- /dev/null +++ b/tests/drivers/dma/chan_blen_transfer/boards/max32650evkit.conf @@ -0,0 +1,4 @@ +# Copyright (c) 2025 Analog Devices, Inc. +# SPDX-License-Identifier: Apache-2.0 + +CONFIG_CODE_DATA_RELOCATION=y diff --git a/tests/drivers/dma/chan_blen_transfer/boards/max32650evkit.overlay b/tests/drivers/dma/chan_blen_transfer/boards/max32650evkit.overlay new file mode 100644 index 00000000000..0e412606f7a --- /dev/null +++ b/tests/drivers/dma/chan_blen_transfer/boards/max32650evkit.overlay @@ -0,0 +1,7 @@ +/* + * Copyright (c) 2025 Analog Devices, Inc. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +tst_dma0: &dma0 { }; diff --git a/tests/drivers/dma/chan_blen_transfer/boards/max32650fthr.conf b/tests/drivers/dma/chan_blen_transfer/boards/max32650fthr.conf new file mode 100644 index 00000000000..a093a1aa637 --- /dev/null +++ b/tests/drivers/dma/chan_blen_transfer/boards/max32650fthr.conf @@ -0,0 +1,4 @@ +# Copyright (c) 2025 Analog Devices, Inc. +# SPDX-License-Identifier: Apache-2.0 + +CONFIG_CODE_DATA_RELOCATION=y diff --git a/tests/drivers/dma/chan_blen_transfer/boards/max32650fthr.overlay b/tests/drivers/dma/chan_blen_transfer/boards/max32650fthr.overlay new file mode 100644 index 00000000000..0e412606f7a --- /dev/null +++ b/tests/drivers/dma/chan_blen_transfer/boards/max32650fthr.overlay @@ -0,0 +1,7 @@ +/* + * Copyright (c) 2025 Analog Devices, Inc. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +tst_dma0: &dma0 { }; diff --git a/tests/drivers/dma/loop_transfer/boards/max32650evkit.overlay b/tests/drivers/dma/loop_transfer/boards/max32650evkit.overlay new file mode 100644 index 00000000000..0e412606f7a --- /dev/null +++ b/tests/drivers/dma/loop_transfer/boards/max32650evkit.overlay @@ -0,0 +1,7 @@ +/* + * Copyright (c) 2025 Analog Devices, Inc. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +tst_dma0: &dma0 { }; diff --git a/tests/drivers/dma/loop_transfer/boards/max32650fthr.overlay b/tests/drivers/dma/loop_transfer/boards/max32650fthr.overlay new file mode 100644 index 00000000000..0e412606f7a --- /dev/null +++ b/tests/drivers/dma/loop_transfer/boards/max32650fthr.overlay @@ -0,0 +1,7 @@ +/* + * Copyright (c) 2025 Analog Devices, Inc. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +tst_dma0: &dma0 { }; diff --git a/tests/drivers/i2c/i2c_target_api/boards/max32650evkit.conf b/tests/drivers/i2c/i2c_target_api/boards/max32650evkit.conf new file mode 100644 index 00000000000..9d55757cded --- /dev/null +++ b/tests/drivers/i2c/i2c_target_api/boards/max32650evkit.conf @@ -0,0 +1,5 @@ +# Copyright (c) 2025 Analog Devices, Inc. +# SPDX-License-Identifier: Apache-2.0 + +CONFIG_I2C_VIRTUAL=n +CONFIG_I2C_MAX32_DMA=y diff --git a/tests/drivers/i2c/i2c_target_api/boards/max32650evkit.overlay b/tests/drivers/i2c/i2c_target_api/boards/max32650evkit.overlay new file mode 100644 index 00000000000..810a60d5401 --- /dev/null +++ b/tests/drivers/i2c/i2c_target_api/boards/max32650evkit.overlay @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2025 Analog Devices, Inc. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&i2c0 { + dmas = <&dma0 0 MAX32_DMA_SLOT_I2C0_TX>, <&dma0 1 MAX32_DMA_SLOT_I2C0_RX>; + dma-names = "tx", "rx"; + + eeprom0: eeprom@54 { + compatible = "zephyr,i2c-target-eeprom"; + reg = <0x54>; + address-width = <16>; + size = <1024>; + }; +}; + +&i2c1 { + status = "okay"; + pinctrl-0 = <&i2c1_scl_p2_18 &i2c1_sda_p2_17>; + pinctrl-names = "default"; + + dmas = <&dma0 2 MAX32_DMA_SLOT_I2C1_TX>, <&dma0 3 MAX32_DMA_SLOT_I2C1_RX>; + dma-names = "tx", "rx"; + + eeprom1: eeprom@56 { + compatible = "zephyr,i2c-target-eeprom"; + reg = <0x56>; + address-width = <16>; + size = <1024>; + }; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/frdm_mcxa153.conf b/tests/drivers/spi/spi_loopback/boards/frdm_mcxa153.conf new file mode 100644 index 00000000000..79bf897a834 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/frdm_mcxa153.conf @@ -0,0 +1 @@ +CONFIG_ISR_STACK_SIZE=512 diff --git a/tests/drivers/spi/spi_loopback/boards/frdm_mcxa153.overlay b/tests/drivers/spi/spi_loopback/boards/frdm_mcxa153.overlay new file mode 100644 index 00000000000..c1640509e3d --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/frdm_mcxa153.overlay @@ -0,0 +1,21 @@ +/* + * Copyright 2025 NXP + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/* To test this sample, connect + * LPSPI0 MOSI(J6-6, P1_0/LPSPI0_SDO) --> LPSPI0 MISO(J6-5, P1_2/LPSPI0_SDI) + */ +&lpspi0 { + slow@0 { + compatible = "test-spi-loopback-slow"; + reg = <0>; + spi-max-frequency = <500000>; + }; + fast@0 { + compatible = "test-spi-loopback-fast"; + reg = <0>; + spi-max-frequency = <16000000>; + }; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/max32650evkit.conf b/tests/drivers/spi/spi_loopback/boards/max32650evkit.conf new file mode 100644 index 00000000000..fdddf5a9ab1 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/max32650evkit.conf @@ -0,0 +1,7 @@ +# +# Copyright (c) 2025 Analog Devices, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# +CONFIG_SPI_ASYNC=y +CONFIG_SPI_MAX32_INTERRUPT=y diff --git a/tests/drivers/spi/spi_loopback/boards/max32650evkit.overlay b/tests/drivers/spi/spi_loopback/boards/max32650evkit.overlay new file mode 100644 index 00000000000..53d86a9fc95 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/max32650evkit.overlay @@ -0,0 +1,21 @@ +/* + * Copyright (c) 2025 Analog Devices, Inc. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi2 { + dmas = <&dma0 1 MAX32_DMA_SLOT_SPI2_TX>, <&dma0 2 MAX32_DMA_SLOT_SPI2_RX>; + dma-names = "tx", "rx"; + + slow@0 { + compatible = "test-spi-loopback-slow"; + reg = <0>; + spi-max-frequency = <128000>; + }; + fast@0 { + compatible = "test-spi-loopback-fast"; + reg = <0>; + spi-max-frequency = <500000>; + }; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/max32650fthr.conf b/tests/drivers/spi/spi_loopback/boards/max32650fthr.conf new file mode 100644 index 00000000000..fdddf5a9ab1 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/max32650fthr.conf @@ -0,0 +1,7 @@ +# +# Copyright (c) 2025 Analog Devices, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# +CONFIG_SPI_ASYNC=y +CONFIG_SPI_MAX32_INTERRUPT=y diff --git a/tests/drivers/spi/spi_loopback/boards/max32650fthr.overlay b/tests/drivers/spi/spi_loopback/boards/max32650fthr.overlay new file mode 100644 index 00000000000..5ca783b8b76 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/max32650fthr.overlay @@ -0,0 +1,21 @@ +/* + * Copyright (c) 2025 Analog Devices, Inc. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi1 { + dmas = <&dma0 1 MAX32_DMA_SLOT_SPI1_TX>, <&dma0 2 MAX32_DMA_SLOT_SPI1_RX>; + dma-names = "tx", "rx"; + + slow@0 { + compatible = "test-spi-loopback-slow"; + reg = <0>; + spi-max-frequency = <128000>; + }; + fast@0 { + compatible = "test-spi-loopback-fast"; + reg = <0>; + spi-max-frequency = <500000>; + }; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/nrf_at_1mhz.overlay b/tests/drivers/spi/spi_loopback/boards/nrf_at_1mhz.overlay new file mode 100644 index 00000000000..b8dd48ef2cc --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/nrf_at_1mhz.overlay @@ -0,0 +1,14 @@ +/* + * Copyright (c) 2025 Nordic Semiconductor ASA + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/* Note: 1 MHz is too low for fast SPI instance on some nRF platforms. + * In such case, use slow instance instead. + * This overlay is for negative test. + */ + +&dut_fast { + spi-max-frequency = ; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/nrf_at_2mhz.overlay b/tests/drivers/spi/spi_loopback/boards/nrf_at_2mhz.overlay new file mode 100644 index 00000000000..74fbb3a0205 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/nrf_at_2mhz.overlay @@ -0,0 +1,14 @@ +/* + * Copyright (c) 2025 Nordic Semiconductor ASA + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/* Note: 2 MHz is too low for fast SPI instance on some nRF platforms. + * In such case, use slow instance instead. + * This overlay is for negative test. + */ + +&dut_fast { + spi-max-frequency = ; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_wba55cg.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_wba55cg.overlay new file mode 100644 index 00000000000..60bda6fd538 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_wba55cg.overlay @@ -0,0 +1,29 @@ +/* + * Copyright (c) 2025 STMicroelectronics + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&rcc { + apb2-prescaler = <2>; +}; + +&spi1 { + dmas = <&gpdma1 0 7 STM32_DMA_PERIPH_TX + &gpdma1 1 6 STM32_DMA_PERIPH_RX>; + dma-names = "tx", "rx"; + slow@0 { + compatible = "test-spi-loopback-slow"; + reg = <0>; + spi-max-frequency = <500000>; + }; + fast@0 { + compatible = "test-spi-loopback-fast"; + reg = <0>; + spi-max-frequency = <16000000>; + }; +}; + +&gpdma1 { + status = "okay"; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/siwx917_rb4338a.conf b/tests/drivers/spi/spi_loopback/boards/siwx917_rb4338a.conf new file mode 100644 index 00000000000..368ff560c98 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/siwx917_rb4338a.conf @@ -0,0 +1 @@ +CONFIG_SPI_SILABS_SIWX91X_GSPI_DMA=y diff --git a/tests/drivers/spi/spi_loopback/boards/siwx917_rb4338a.overlay b/tests/drivers/spi/spi_loopback/boards/siwx917_rb4338a.overlay new file mode 100644 index 00000000000..15441b53bfa --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/siwx917_rb4338a.overlay @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2025 Silicon Laboratories Inc. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&pinctrl0 { + spi0_default: spi0_default { + out { + pinmux = , ; + }; + in { + pinmux = ; + }; + }; +}; + +&spi0 { + status = "okay"; + cs-gpios = <&gpiob 12 GPIO_ACTIVE_LOW>; + pinctrl-0 = <&spi0_default>; + pinctrl-names = "default"; + + dmas = <&dma0 11>, <&dma0 10>; + dma-names = "tx", "rx"; + + slow@0 { + compatible = "test-spi-loopback-slow"; + reg = <0>; + spi-max-frequency = <500000>; + }; + fast@1 { + compatible = "test-spi-loopback-fast"; + reg = <1>; + spi-max-frequency = <10000000>; + }; +}; + +&dma0 { + status = "okay"; +}; diff --git a/tests/drivers/spi/spi_loopback/testcase.yaml b/tests/drivers/spi/spi_loopback/testcase.yaml index bf65221f61d..e5be506cc7f 100644 --- a/tests/drivers/spi/spi_loopback/testcase.yaml +++ b/tests/drivers/spi/spi_loopback/testcase.yaml @@ -72,6 +72,7 @@ tests: - nucleo_f429zi - nucleo_f746zg - nucleo_f767zi + - nucleo_wba55cg - nucleo_wb55rg - nucleo_l152re - nucleo_wl55jc @@ -80,6 +81,7 @@ tests: - nucleo_h745zi_q/stm32h745xx/m4 - nucleo_h745zi_q/stm32h745xx/m7 - stm32h573i_dk + - stm32n6570_dk/stm32n657xx/sb integration_platforms: - nucleo_g474re drivers.spi.stm32_spi_dma_dt_nocache_mem.loopback: @@ -133,10 +135,12 @@ tests: - nucleo_h745zi_q/stm32h745xx/m4 - nucleo_h745zi_q/stm32h745xx/m7 - nucleo_l152re + - nucleo_wba55cg - nucleo_wb55rg - nucleo_wl55jc - stm32f3_disco - stm32h573i_dk + - stm32n6570_dk/stm32n657xx/sb integration_platforms: - stm32h573i_dk drivers.spi.gd32_spi_interrupt.loopback: @@ -228,6 +232,18 @@ tests: filter: CONFIG_DT_HAS_NXP_FLEXIO_ENABLED and CONFIG_DT_HAS_NXP_FLEXIO_SPI_ENABLED platform_allow: mimxrt1040_evk + drivers.spi.nrf54h_fast_2mhz: + extra_args: + - DTC_OVERLAY_FILE="boards/nrf54h20dk_nrf54h20_cpuapp_fast.overlay" + - EXTRA_DTC_OVERLAY_FILE="boards/nrf_at_2mhz.overlay" + platform_allow: + - nrf54h20dk/nrf54h20/cpuapp + harness: console + harness_config: + fixture: spi_loopback + type: one_line + regex: + - "Failed to initialize nrfx driver" drivers.spi.nrf54h_fast_8mhz: extra_args: DTC_OVERLAY_FILE="boards/nrf54h20dk_nrf54h20_cpuapp_fast.overlay" platform_allow: @@ -244,6 +260,17 @@ tests: - EXTRA_DTC_OVERLAY_FILE="boards/nrf_at_32mhz.overlay" platform_allow: - nrf54h20dk/nrf54h20/cpuapp + drivers.spi.nrf54l_1mhz: + extra_args: EXTRA_DTC_OVERLAY_FILE="boards/nrf_at_1mhz.overlay" + platform_allow: + - nrf54l15dk/nrf54l15/cpuapp + - nrf54l20pdk/nrf54l20/cpuapp + harness: console + harness_config: + fixture: spi_loopback + type: one_line + regex: + - "Failed to initialize nrfx driver" drivers.spi.nrf54l_8mhz: extra_args: EXTRA_DTC_OVERLAY_FILE="boards/nrf_at_8mhz.overlay" platform_allow: @@ -305,3 +332,7 @@ tests: extra_configs: - CONFIG_SPI_SILABS_EUSART_DMA=y - CONFIG_SPI_ASYNC=n + drivers.spi.silabs_siwx91x.loopback: + filter: CONFIG_SOC_FAMILY_SILABS_SIWX91X + platform_allow: + - siwx917_rb4338a