From 6232ade27757f579123589960dbe6c4304540c2a Mon Sep 17 00:00:00 2001 From: Hake Huang Date: Tue, 12 Jan 2021 15:11:26 +0800 Subject: [PATCH] tests: add spi dma loop test on frdm_k64f add spi edma loop mode test Signed-off-by: Hake Huang --- tests/drivers/spi/spi_loopback/overlay-mcux-dspi-dma.conf | 5 +++++ tests/drivers/spi/spi_loopback/src/spi.c | 5 +++++ tests/drivers/spi/spi_loopback/testcase.yaml | 7 +++++++ 3 files changed, 17 insertions(+) create mode 100644 tests/drivers/spi/spi_loopback/overlay-mcux-dspi-dma.conf diff --git a/tests/drivers/spi/spi_loopback/overlay-mcux-dspi-dma.conf b/tests/drivers/spi/spi_loopback/overlay-mcux-dspi-dma.conf new file mode 100644 index 00000000000..333b269a9ae --- /dev/null +++ b/tests/drivers/spi/spi_loopback/overlay-mcux-dspi-dma.conf @@ -0,0 +1,5 @@ +# enable DMA mode +CONFIG_DMA=y +CONFIG_DSPI_MCUX_EDMA=y +CONFIG_MCUX_DSPI_BUFFER_SIZE=144 +CONFIG_SPI_LOOPBACK_FAST_FREQ=1000000 diff --git a/tests/drivers/spi/spi_loopback/src/spi.c b/tests/drivers/spi/spi_loopback/src/spi.c index db450f50f7d..d970090253e 100644 --- a/tests/drivers/spi/spi_loopback/src/spi.c +++ b/tests/drivers/spi/spi_loopback/src/spi.c @@ -430,6 +430,11 @@ static int spi_rx_every_4(const struct device *dev, return 0; } + if (IS_ENABLED(CONFIG_DSPI_MCUX_EDMA)) { + LOG_INF("Skip every 4"); + return 0; + } + LOG_INF("Start every 4"); (void)memset(buffer_rx, 0, BUF_SIZE); diff --git a/tests/drivers/spi/spi_loopback/testcase.yaml b/tests/drivers/spi/spi_loopback/testcase.yaml index ca2ea30f32a..08841e4637e 100644 --- a/tests/drivers/spi/spi_loopback/testcase.yaml +++ b/tests/drivers/spi/spi_loopback/testcase.yaml @@ -10,3 +10,10 @@ tests: fixture: spi_loopback driver.spi.loopback.internal: filter: CONFIG_SPI_LOOPBACK_MODE_LOOP + drivers.mcux_dspi_dma.loopback: + tags: dma + harness: ztest + extra_args: OVERLAY_CONFIG="overlay-mcux-dspi-dma.conf" + harness_config: + fixture: spi_loopback + platform_allow: frdm_k64f