From 98638a26536545d6f0f562bd6d91a909d5733b1f Mon Sep 17 00:00:00 2001 From: Tahsin Mutlugun Date: Fri, 23 Aug 2024 16:44:49 +0300 Subject: [PATCH] tests: drivers: spi: spi_loopback: Enable DMA tests for MAX32 boards Define DMA channels for MAX32 boards and add a new test case so that DMA-based SPI transfers are tested. Signed-off-by: Tahsin Mutlugun --- .../spi_loopback/boards/max32655evkit_max32655_m4.overlay | 3 +++ .../spi_loopback/boards/max32655fthr_max32655_m4.overlay | 3 +++ tests/drivers/spi/spi_loopback/boards/max32662evkit.overlay | 3 +++ .../spi_loopback/boards/max32666fthr_max32666_cpu0.overlay | 3 +++ tests/drivers/spi/spi_loopback/boards/max32670evkit.overlay | 3 +++ tests/drivers/spi/spi_loopback/boards/max32672evkit.overlay | 3 +++ tests/drivers/spi/spi_loopback/boards/max32672fthr.overlay | 3 +++ tests/drivers/spi/spi_loopback/boards/max32675evkit.overlay | 3 +++ .../spi_loopback/boards/max32680evkit_max32680_m4.overlay | 3 +++ .../spi_loopback/boards/max32690evkit_max32690_m4.overlay | 3 +++ tests/drivers/spi/spi_loopback/overlay-max32-spi-dma.conf | 6 ++++++ tests/drivers/spi/spi_loopback/testcase.yaml | 3 +++ 12 files changed, 39 insertions(+) create mode 100644 tests/drivers/spi/spi_loopback/overlay-max32-spi-dma.conf diff --git a/tests/drivers/spi/spi_loopback/boards/max32655evkit_max32655_m4.overlay b/tests/drivers/spi/spi_loopback/boards/max32655evkit_max32655_m4.overlay index 9fb36204cc0..42454c684d2 100644 --- a/tests/drivers/spi/spi_loopback/boards/max32655evkit_max32655_m4.overlay +++ b/tests/drivers/spi/spi_loopback/boards/max32655evkit_max32655_m4.overlay @@ -5,6 +5,9 @@ */ &spi0 { + dmas = <&dma0 1 MAX32_DMA_SLOT_SPI0_TX>, <&dma0 2 MAX32_DMA_SLOT_SPI0_RX>; + dma-names = "tx", "rx"; + slow@0 { compatible = "test-spi-loopback-slow"; reg = <0>; diff --git a/tests/drivers/spi/spi_loopback/boards/max32655fthr_max32655_m4.overlay b/tests/drivers/spi/spi_loopback/boards/max32655fthr_max32655_m4.overlay index fbfd7be327f..68e5dc4b67d 100644 --- a/tests/drivers/spi/spi_loopback/boards/max32655fthr_max32655_m4.overlay +++ b/tests/drivers/spi/spi_loopback/boards/max32655fthr_max32655_m4.overlay @@ -5,6 +5,9 @@ */ &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>; diff --git a/tests/drivers/spi/spi_loopback/boards/max32662evkit.overlay b/tests/drivers/spi/spi_loopback/boards/max32662evkit.overlay index d713eed40dd..8829baa4de8 100644 --- a/tests/drivers/spi/spi_loopback/boards/max32662evkit.overlay +++ b/tests/drivers/spi/spi_loopback/boards/max32662evkit.overlay @@ -10,6 +10,9 @@ }; &spi0 { + dmas = <&dma0 1 MAX32_DMA_SLOT_SPI0_TX>, <&dma0 2 MAX32_DMA_SLOT_SPI0_RX>; + dma-names = "tx", "rx"; + slow@0 { compatible = "test-spi-loopback-slow"; reg = <0>; diff --git a/tests/drivers/spi/spi_loopback/boards/max32666fthr_max32666_cpu0.overlay b/tests/drivers/spi/spi_loopback/boards/max32666fthr_max32666_cpu0.overlay index fbfd7be327f..68e5dc4b67d 100644 --- a/tests/drivers/spi/spi_loopback/boards/max32666fthr_max32666_cpu0.overlay +++ b/tests/drivers/spi/spi_loopback/boards/max32666fthr_max32666_cpu0.overlay @@ -5,6 +5,9 @@ */ &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>; diff --git a/tests/drivers/spi/spi_loopback/boards/max32670evkit.overlay b/tests/drivers/spi/spi_loopback/boards/max32670evkit.overlay index 902eaa2a1f7..af4605991da 100644 --- a/tests/drivers/spi/spi_loopback/boards/max32670evkit.overlay +++ b/tests/drivers/spi/spi_loopback/boards/max32670evkit.overlay @@ -5,6 +5,9 @@ */ &spi0 { + dmas = <&dma0 1 MAX32_DMA_SLOT_SPI0_TX>, <&dma0 2 MAX32_DMA_SLOT_SPI0_RX>; + dma-names = "tx", "rx"; + slow@0 { compatible = "test-spi-loopback-slow"; reg = <0>; diff --git a/tests/drivers/spi/spi_loopback/boards/max32672evkit.overlay b/tests/drivers/spi/spi_loopback/boards/max32672evkit.overlay index 9cb8d2e135c..f4b98d2b427 100644 --- a/tests/drivers/spi/spi_loopback/boards/max32672evkit.overlay +++ b/tests/drivers/spi/spi_loopback/boards/max32672evkit.overlay @@ -5,6 +5,9 @@ */ &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>; diff --git a/tests/drivers/spi/spi_loopback/boards/max32672fthr.overlay b/tests/drivers/spi/spi_loopback/boards/max32672fthr.overlay index 9cb8d2e135c..f4b98d2b427 100644 --- a/tests/drivers/spi/spi_loopback/boards/max32672fthr.overlay +++ b/tests/drivers/spi/spi_loopback/boards/max32672fthr.overlay @@ -5,6 +5,9 @@ */ &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>; diff --git a/tests/drivers/spi/spi_loopback/boards/max32675evkit.overlay b/tests/drivers/spi/spi_loopback/boards/max32675evkit.overlay index 9cb8d2e135c..f4b98d2b427 100644 --- a/tests/drivers/spi/spi_loopback/boards/max32675evkit.overlay +++ b/tests/drivers/spi/spi_loopback/boards/max32675evkit.overlay @@ -5,6 +5,9 @@ */ &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>; diff --git a/tests/drivers/spi/spi_loopback/boards/max32680evkit_max32680_m4.overlay b/tests/drivers/spi/spi_loopback/boards/max32680evkit_max32680_m4.overlay index 902eaa2a1f7..af4605991da 100644 --- a/tests/drivers/spi/spi_loopback/boards/max32680evkit_max32680_m4.overlay +++ b/tests/drivers/spi/spi_loopback/boards/max32680evkit_max32680_m4.overlay @@ -5,6 +5,9 @@ */ &spi0 { + dmas = <&dma0 1 MAX32_DMA_SLOT_SPI0_TX>, <&dma0 2 MAX32_DMA_SLOT_SPI0_RX>; + dma-names = "tx", "rx"; + slow@0 { compatible = "test-spi-loopback-slow"; reg = <0>; diff --git a/tests/drivers/spi/spi_loopback/boards/max32690evkit_max32690_m4.overlay b/tests/drivers/spi/spi_loopback/boards/max32690evkit_max32690_m4.overlay index 902eaa2a1f7..af4605991da 100644 --- a/tests/drivers/spi/spi_loopback/boards/max32690evkit_max32690_m4.overlay +++ b/tests/drivers/spi/spi_loopback/boards/max32690evkit_max32690_m4.overlay @@ -5,6 +5,9 @@ */ &spi0 { + dmas = <&dma0 1 MAX32_DMA_SLOT_SPI0_TX>, <&dma0 2 MAX32_DMA_SLOT_SPI0_RX>; + dma-names = "tx", "rx"; + slow@0 { compatible = "test-spi-loopback-slow"; reg = <0>; diff --git a/tests/drivers/spi/spi_loopback/overlay-max32-spi-dma.conf b/tests/drivers/spi/spi_loopback/overlay-max32-spi-dma.conf new file mode 100644 index 00000000000..3c7b6431e53 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/overlay-max32-spi-dma.conf @@ -0,0 +1,6 @@ +# +# Copyright (c) 2024 Analog Devices, Inc. +# +# SPDX-License-Identifier: Apache-2.0 +# +CONFIG_SPI_MAX32_DMA=y diff --git a/tests/drivers/spi/spi_loopback/testcase.yaml b/tests/drivers/spi/spi_loopback/testcase.yaml index 1cdb46beca6..5760aa0d879 100644 --- a/tests/drivers/spi/spi_loopback/testcase.yaml +++ b/tests/drivers/spi/spi_loopback/testcase.yaml @@ -201,3 +201,6 @@ tests: platform_allow: - frdm_ke17z - frdm_ke17z512 + drivers.spi.max32_dma.loopback: + extra_args: OVERLAY_CONFIG="overlay-max32-spi-dma.conf" + filter: CONFIG_SOC_FAMILY_MAX32