From ac50f8a99e0f5849ff56e030e5b4fcafb4ba5301 Mon Sep 17 00:00:00 2001 From: Kumar Gala Date: Fri, 22 Jul 2022 14:49:37 -0500 Subject: [PATCH] tests: spi_loopback: Rework test * Move test to using devicetree for various "device" params. * Move test to using spi_dt_spec to simplify code Signed-off-by: Kumar Gala --- tests/drivers/spi/spi_loopback/Kconfig | 29 --- .../spi/spi_loopback/boards/96b_carbon.conf | 1 - .../spi_loopback/boards/96b_carbon.overlay | 18 ++ .../boards/96b_stm32_sensor_mez.conf | 4 - .../boards/96b_stm32_sensor_mez.overlay | 19 ++ .../boards/adafruit_itsybitsy_m4_express.conf | 5 +- .../adafruit_itsybitsy_m4_express.overlay | 19 ++ .../spi/spi_loopback/boards/arduino_zero.conf | 6 +- .../spi_loopback/boards/arduino_zero.overlay | 19 ++ .../boards/arty_a7_arm_designstart_m1.conf | 1 - .../boards/arty_a7_arm_designstart_m1.overlay | 10 ++ .../spi_loopback/boards/atsamd21_xpro.conf | 3 +- .../spi_loopback/boards/atsamd21_xpro.overlay | 10 ++ .../spi_loopback/boards/atsame54_xpro.conf | 2 - .../spi_loopback/boards/atsame54_xpro.overlay | 10 ++ .../spi_loopback/boards/atsamr21_xpro.conf | 3 +- .../spi_loopback/boards/atsamr21_xpro.overlay | 10 ++ .../boards/b_u585i_iot02a.overlay | 13 ++ .../boards/cc1352r1_launchxl.conf | 5 - .../boards/cc1352r1_launchxl.overlay | 18 ++ .../boards/cy8ckit_062_ble_m0.conf | 1 - .../spi_loopback/boards/em_starterkit.conf | 2 - .../spi_loopback/boards/em_starterkit.overlay | 18 ++ .../spi/spi_loopback/boards/esp32.conf | 1 - .../spi/spi_loopback/boards/esp32.overlay | 18 ++ .../spi_loopback/boards/esp32c3_devkitm.conf | 1 - .../boards/esp32c3_devkitm.overlay | 18 ++ .../spi_loopback/boards/esp32s2_saola.conf | 1 - .../spi_loopback/boards/esp32s2_saola.overlay | 18 ++ .../spi/spi_loopback/boards/frdm_k64f.conf | 7 - .../spi/spi_loopback/boards/frdm_k64f.overlay | 18 ++ .../spi/spi_loopback/boards/frdm_kw41z.conf | 9 - .../spi_loopback/boards/frdm_kw41z.overlay | 18 ++ .../boards/lpcxpresso54114_m4.conf | 8 - .../boards/lpcxpresso54114_m4.overlay | 18 ++ .../spi_loopback/boards/lpcxpresso55s16.conf | 10 -- .../boards/lpcxpresso55s16.overlay | 18 ++ .../boards/lpcxpresso55s69_cpu0.conf | 3 - .../boards/lpcxpresso55s69_cpu0.overlay | 20 +++ .../spi_loopback/boards/mimxrt1010_evk.conf | 2 - .../boards/mimxrt1010_evk.overlay | 18 ++ .../spi_loopback/boards/mimxrt1015_evk.conf | 2 - .../boards/mimxrt1015_evk.overlay | 18 ++ .../spi_loopback/boards/mimxrt1020_evk.conf | 2 - .../boards/mimxrt1020_evk.overlay | 18 ++ .../spi_loopback/boards/mimxrt1024_evk.conf | 2 - .../boards/mimxrt1024_evk.overlay | 18 ++ .../spi_loopback/boards/mimxrt1050_evk.conf | 2 - .../boards/mimxrt1050_evk.overlay | 18 ++ .../spi_loopback/boards/mimxrt1060_evk.conf | 2 - .../boards/mimxrt1060_evk.overlay | 18 ++ .../spi_loopback/boards/mimxrt1064_evk.conf | 2 - .../boards/mimxrt1064_evk.overlay | 18 ++ .../boards/mimxrt595_evk_cm33.conf | 2 - .../boards/mimxrt595_evk_cm33.overlay | 18 ++ .../boards/mimxrt685_evk_cm33.conf | 2 - .../boards/mimxrt685_evk_cm33.overlay | 18 ++ .../spi_loopback/boards/nrf51dk_nrf51422.conf | 4 - .../boards/nrf51dk_nrf51422.overlay | 11 ++ .../boards/nrf52840dk_nrf52840.conf | 4 - .../boards/nrf52840dk_nrf52840.overlay | 11 ++ .../spi_loopback/boards/nrf52dk_nrf52832.conf | 4 - .../boards/nrf52dk_nrf52832.overlay | 11 ++ .../boards/nrf9160dk_nrf9160.conf | 4 - .../boards/nrf9160dk_nrf9160.overlay | 11 ++ .../spi_loopback/boards/nucleo_f207zg.overlay | 10 ++ .../spi_loopback/boards/nucleo_f302r8.conf | 1 - .../spi_loopback/boards/nucleo_f302r8.overlay | 18 ++ .../spi_loopback/boards/nucleo_f411re.overlay | 10 ++ .../spi_loopback/boards/nucleo_f429zi.overlay | 10 ++ .../spi_loopback/boards/nucleo_f746zg.overlay | 10 ++ .../spi_loopback/boards/nucleo_f767zi.overlay | 10 ++ .../spi_loopback/boards/nucleo_g0b1re.overlay | 10 ++ .../spi_loopback/boards/nucleo_g431rb.overlay | 10 ++ .../spi_loopback/boards/nucleo_g474re.overlay | 10 ++ .../spi_loopback/boards/nucleo_h723zg.overlay | 10 ++ .../spi_loopback/boards/nucleo_h743zi.overlay | 10 ++ .../spi_loopback/boards/nucleo_l152re.overlay | 10 ++ .../spi_loopback/boards/nucleo_l476rg.overlay | 10 ++ .../spi_loopback/boards/nucleo_l4r5zi.overlay | 10 ++ .../boards/nucleo_l552ze_q.overlay | 10 ++ .../boards/nucleo_u575zi_q.overlay | 13 ++ .../spi_loopback/boards/nucleo_wb55rg.overlay | 10 ++ .../spi_loopback/boards/nucleo_wl55jc.overlay | 10 ++ .../spi_loopback/boards/olimex_esp32_evb.conf | 1 - .../boards/olimex_esp32_evb.overlay | 18 ++ .../boards/rv32m1_vega_ri5cy.conf | 8 - .../boards/rv32m1_vega_ri5cy.overlay | 18 ++ .../spi_loopback/boards/stm32l562e_dk.overlay | 10 ++ .../spi_loopback/boards/stm32mp157c_dk2.conf | 7 - .../boards/stm32mp157c_dk2.overlay | 18 ++ .../spi_loopback/boards/tlsr9518adk80d.conf | 7 - .../boards/tlsr9518adk80d.overlay | 18 ++ .../spi/spi_loopback/boards/twr_ke18f.conf | 7 - .../spi/spi_loopback/boards/twr_ke18f.overlay | 18 ++ .../dts/bindings/test-spi-loopback-fast.yaml | 13 ++ .../dts/bindings/test-spi-loopback-slow.yaml | 13 ++ .../spi_loopback/overlay-mcux-dspi-dma.conf | 1 - .../overlay-mcux-dspi-dma.overlay | 18 ++ .../spi_loopback/overlay-stm32-spi-dma.conf | 1 - .../spi/spi_loopback/overlay-stm32-spi.conf | 2 - tests/drivers/spi/spi_loopback/src/spi.c | 167 ++++++------------ tests/drivers/spi/spi_loopback/testcase.yaml | 12 +- 103 files changed, 908 insertions(+), 293 deletions(-) create mode 100644 tests/drivers/spi/spi_loopback/boards/96b_carbon.overlay delete mode 100644 tests/drivers/spi/spi_loopback/boards/96b_stm32_sensor_mez.conf create mode 100644 tests/drivers/spi/spi_loopback/boards/96b_stm32_sensor_mez.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/adafruit_itsybitsy_m4_express.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/arduino_zero.overlay delete mode 100644 tests/drivers/spi/spi_loopback/boards/atsame54_xpro.conf create mode 100644 tests/drivers/spi/spi_loopback/boards/cc1352r1_launchxl.overlay delete mode 100644 tests/drivers/spi/spi_loopback/boards/cy8ckit_062_ble_m0.conf delete mode 100644 tests/drivers/spi/spi_loopback/boards/em_starterkit.conf create mode 100644 tests/drivers/spi/spi_loopback/boards/em_starterkit.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/esp32.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/esp32c3_devkitm.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/esp32s2_saola.overlay delete mode 100644 tests/drivers/spi/spi_loopback/boards/frdm_k64f.conf create mode 100644 tests/drivers/spi/spi_loopback/boards/frdm_k64f.overlay delete mode 100644 tests/drivers/spi/spi_loopback/boards/frdm_kw41z.conf create mode 100644 tests/drivers/spi/spi_loopback/boards/frdm_kw41z.overlay delete mode 100644 tests/drivers/spi/spi_loopback/boards/lpcxpresso54114_m4.conf create mode 100644 tests/drivers/spi/spi_loopback/boards/lpcxpresso54114_m4.overlay delete mode 100644 tests/drivers/spi/spi_loopback/boards/lpcxpresso55s16.conf create mode 100644 tests/drivers/spi/spi_loopback/boards/lpcxpresso55s16.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/lpcxpresso55s69_cpu0.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/mimxrt1010_evk.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/mimxrt1015_evk.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/mimxrt1020_evk.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/mimxrt1024_evk.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/mimxrt1050_evk.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/mimxrt1060_evk.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/mimxrt1064_evk.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/mimxrt595_evk_cm33.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/mimxrt685_evk_cm33.overlay delete mode 100644 tests/drivers/spi/spi_loopback/boards/nrf51dk_nrf51422.conf delete mode 100644 tests/drivers/spi/spi_loopback/boards/nrf52840dk_nrf52840.conf delete mode 100644 tests/drivers/spi/spi_loopback/boards/nrf52dk_nrf52832.conf delete mode 100644 tests/drivers/spi/spi_loopback/boards/nrf9160dk_nrf9160.conf create mode 100644 tests/drivers/spi/spi_loopback/boards/nucleo_f302r8.overlay create mode 100644 tests/drivers/spi/spi_loopback/boards/olimex_esp32_evb.overlay delete mode 100644 tests/drivers/spi/spi_loopback/boards/rv32m1_vega_ri5cy.conf create mode 100644 tests/drivers/spi/spi_loopback/boards/rv32m1_vega_ri5cy.overlay delete mode 100644 tests/drivers/spi/spi_loopback/boards/stm32mp157c_dk2.conf create mode 100644 tests/drivers/spi/spi_loopback/boards/stm32mp157c_dk2.overlay delete mode 100644 tests/drivers/spi/spi_loopback/boards/tlsr9518adk80d.conf create mode 100644 tests/drivers/spi/spi_loopback/boards/tlsr9518adk80d.overlay delete mode 100644 tests/drivers/spi/spi_loopback/boards/twr_ke18f.conf create mode 100644 tests/drivers/spi/spi_loopback/boards/twr_ke18f.overlay create mode 100644 tests/drivers/spi/spi_loopback/dts/bindings/test-spi-loopback-fast.yaml create mode 100644 tests/drivers/spi/spi_loopback/dts/bindings/test-spi-loopback-slow.yaml create mode 100644 tests/drivers/spi/spi_loopback/overlay-mcux-dspi-dma.overlay delete mode 100644 tests/drivers/spi/spi_loopback/overlay-stm32-spi.conf diff --git a/tests/drivers/spi/spi_loopback/Kconfig b/tests/drivers/spi/spi_loopback/Kconfig index f5c173d524f..5f1033ea470 100644 --- a/tests/drivers/spi/spi_loopback/Kconfig +++ b/tests/drivers/spi/spi_loopback/Kconfig @@ -4,34 +4,5 @@ mainmenu "SPI Loopback Test" source "Kconfig.zephyr" -config SPI_LOOPBACK_DRV_NAME - string "SPI device name to use for test" - -config SPI_LOOPBACK_CS_GPIO - bool "SPI port CS pin is controlled via a GPIO port during test" - depends on GPIO - -config SPI_LOOPBACK_CS_CTRL_GPIO_DRV_NAME - string "The GPIO port which is used to control CS" - depends on SPI_LOOPBACK_CS_GPIO - default "GPIO_0" - -config SPI_LOOPBACK_CS_CTRL_GPIO_PIN - int "The GPIO PIN which is used to act as a CS pin" - depends on SPI_LOOPBACK_CS_GPIO - default 0 - -config SPI_LOOPBACK_SLAVE_NUMBER - int "Slave number from 0 to host controller slave limit" - default 0 - -config SPI_LOOPBACK_SLOW_FREQ - int "The frequency in Hz to use when testing in slow mode" - default 500000 - -config SPI_LOOPBACK_FAST_FREQ - int "The frequency in Hz to use when testing in fast mode" - default 16000000 - config SPI_LOOPBACK_MODE_LOOP bool "Configure the SPI in LOOP mode, so that no extra wiring is needed" diff --git a/tests/drivers/spi/spi_loopback/boards/96b_carbon.conf b/tests/drivers/spi/spi_loopback/boards/96b_carbon.conf index 0728c33cccd..0232f7d97c3 100644 --- a/tests/drivers/spi/spi_loopback/boards/96b_carbon.conf +++ b/tests/drivers/spi/spi_loopback/boards/96b_carbon.conf @@ -1,2 +1 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_2" CONFIG_SPI_STM32_INTERRUPT=y diff --git a/tests/drivers/spi/spi_loopback/boards/96b_carbon.overlay b/tests/drivers/spi/spi_loopback/boards/96b_carbon.overlay new file mode 100644 index 00000000000..7fb81b121f8 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/96b_carbon.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi2 { + 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/96b_stm32_sensor_mez.conf b/tests/drivers/spi/spi_loopback/boards/96b_stm32_sensor_mez.conf deleted file mode 100644 index 34ebd1f4fff..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/96b_stm32_sensor_mez.conf +++ /dev/null @@ -1,4 +0,0 @@ -CONFIG_SPI_LOOPBACK_CS_GPIO=y -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_DRV_NAME="GPIOE" -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_PIN=11 -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_4" diff --git a/tests/drivers/spi/spi_loopback/boards/96b_stm32_sensor_mez.overlay b/tests/drivers/spi/spi_loopback/boards/96b_stm32_sensor_mez.overlay new file mode 100644 index 00000000000..b57eadc21d4 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/96b_stm32_sensor_mez.overlay @@ -0,0 +1,19 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi4 { + cs-gpios = <&gpioe 11 GPIO_ACTIVE_LOW>; + 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/adafruit_itsybitsy_m4_express.conf b/tests/drivers/spi/spi_loopback/boards/adafruit_itsybitsy_m4_express.conf index 3c9d18abbe4..fde2a9bb39b 100644 --- a/tests/drivers/spi/spi_loopback/boards/adafruit_itsybitsy_m4_express.conf +++ b/tests/drivers/spi/spi_loopback/boards/adafruit_itsybitsy_m4_express.conf @@ -1,5 +1,2 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SERCOM1" +CONFIG_GPIO=y CONFIG_SPI_LOOPBACK_MODE_LOOP=y -CONFIG_SPI_LOOPBACK_CS_GPIO=y -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_DRV_NAME="PORTA" -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_PIN=7 diff --git a/tests/drivers/spi/spi_loopback/boards/adafruit_itsybitsy_m4_express.overlay b/tests/drivers/spi/spi_loopback/boards/adafruit_itsybitsy_m4_express.overlay new file mode 100644 index 00000000000..81e5c27fa0f --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/adafruit_itsybitsy_m4_express.overlay @@ -0,0 +1,19 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&sercom1 { + cs-gpios = <&porta 7 GPIO_ACTIVE_LOW>; + 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/arduino_zero.conf b/tests/drivers/spi/spi_loopback/boards/arduino_zero.conf index 84648c8cd00..5fa19345fa5 100644 --- a/tests/drivers/spi/spi_loopback/boards/arduino_zero.conf +++ b/tests/drivers/spi/spi_loopback/boards/arduino_zero.conf @@ -1,4 +1,2 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SERCOM4" -CONFIG_SPI_LOOPBACK_CS_GPIO=y -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_DRV_NAME="PINMUX_A" -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_PIN=3 +CONFIG_GPIO=y +CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/boards/arduino_zero.overlay b/tests/drivers/spi/spi_loopback/boards/arduino_zero.overlay new file mode 100644 index 00000000000..3beff52cfda --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/arduino_zero.overlay @@ -0,0 +1,19 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&sercom4 { + cs-gpios = <&porta 3 GPIO_ACTIVE_LOW>; + 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/arty_a7_arm_designstart_m1.conf b/tests/drivers/spi/spi_loopback/boards/arty_a7_arm_designstart_m1.conf index f8440884927..ece141a0776 100644 --- a/tests/drivers/spi/spi_loopback/boards/arty_a7_arm_designstart_m1.conf +++ b/tests/drivers/spi/spi_loopback/boards/arty_a7_arm_designstart_m1.conf @@ -4,5 +4,4 @@ # SPDX-License-Identifier: Apache-2.0 # -CONFIG_SPI_LOOPBACK_DRV_NAME="DAPLINK_SINGLE_SPI_0" CONFIG_SPI_LOOPBACK_MODE_LOOP=y diff --git a/tests/drivers/spi/spi_loopback/boards/arty_a7_arm_designstart_m1.overlay b/tests/drivers/spi/spi_loopback/boards/arty_a7_arm_designstart_m1.overlay index 804a70dd75c..2193928925b 100644 --- a/tests/drivers/spi/spi_loopback/boards/arty_a7_arm_designstart_m1.overlay +++ b/tests/drivers/spi/spi_loopback/boards/arty_a7_arm_designstart_m1.overlay @@ -6,4 +6,14 @@ &daplink_single_spi0 { status = "okay"; + 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/atsamd21_xpro.conf b/tests/drivers/spi/spi_loopback/boards/atsamd21_xpro.conf index 4f52d46dee6..3d2da209abc 100644 --- a/tests/drivers/spi/spi_loopback/boards/atsamd21_xpro.conf +++ b/tests/drivers/spi/spi_loopback/boards/atsamd21_xpro.conf @@ -1,2 +1 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SERCOM5" -CONFIG_SPI_LOOPBACK_CS_GPIO=n +CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/boards/atsamd21_xpro.overlay b/tests/drivers/spi/spi_loopback/boards/atsamd21_xpro.overlay index c8a0560000e..da5025ea770 100644 --- a/tests/drivers/spi/spi_loopback/boards/atsamd21_xpro.overlay +++ b/tests/drivers/spi/spi_loopback/boards/atsamd21_xpro.overlay @@ -8,4 +8,14 @@ /* Internally connect MOSI to MISO for loop-back operation */ dipo = <0>; dopo = <0>; + 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/atsame54_xpro.conf b/tests/drivers/spi/spi_loopback/boards/atsame54_xpro.conf deleted file mode 100644 index 8497667443d..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/atsame54_xpro.conf +++ /dev/null @@ -1,2 +0,0 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_0" -CONFIG_SPI_LOOPBACK_CS_GPIO=n diff --git a/tests/drivers/spi/spi_loopback/boards/atsame54_xpro.overlay b/tests/drivers/spi/spi_loopback/boards/atsame54_xpro.overlay index fb1d9889377..65f01d4c9eb 100644 --- a/tests/drivers/spi/spi_loopback/boards/atsame54_xpro.overlay +++ b/tests/drivers/spi/spi_loopback/boards/atsame54_xpro.overlay @@ -8,4 +8,14 @@ /* Internally connect MOSI to MISO for loop-back operation */ dipo = <3>; dopo = <2>; + 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/atsamr21_xpro.conf b/tests/drivers/spi/spi_loopback/boards/atsamr21_xpro.conf index 8497667443d..3d2da209abc 100644 --- a/tests/drivers/spi/spi_loopback/boards/atsamr21_xpro.conf +++ b/tests/drivers/spi/spi_loopback/boards/atsamr21_xpro.conf @@ -1,2 +1 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_0" -CONFIG_SPI_LOOPBACK_CS_GPIO=n +CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/boards/atsamr21_xpro.overlay b/tests/drivers/spi/spi_loopback/boards/atsamr21_xpro.overlay index c8a0560000e..da5025ea770 100644 --- a/tests/drivers/spi/spi_loopback/boards/atsamr21_xpro.overlay +++ b/tests/drivers/spi/spi_loopback/boards/atsamr21_xpro.overlay @@ -8,4 +8,14 @@ /* Internally connect MOSI to MISO for loop-back operation */ dipo = <0>; dopo = <0>; + 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/b_u585i_iot02a.overlay b/tests/drivers/spi/spi_loopback/boards/b_u585i_iot02a.overlay index 1bc32946d28..dc60fd1c5b2 100644 --- a/tests/drivers/spi/spi_loopback/boards/b_u585i_iot02a.overlay +++ b/tests/drivers/spi/spi_loopback/boards/b_u585i_iot02a.overlay @@ -7,3 +7,16 @@ &rcc { apb2-prescaler = <2>; }; + +&spi1 { + 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/cc1352r1_launchxl.conf b/tests/drivers/spi/spi_loopback/boards/cc1352r1_launchxl.conf index d1bb2e12a13..3f1f7f93508 100644 --- a/tests/drivers/spi/spi_loopback/boards/cc1352r1_launchxl.conf +++ b/tests/drivers/spi/spi_loopback/boards/cc1352r1_launchxl.conf @@ -1,8 +1,3 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_0" - -CONFIG_SPI_LOOPBACK_SLOW_FREQ=2000000 -CONFIG_SPI_LOOPBACK_FAST_FREQ=3000000 - CONFIG_SPI_LOOPBACK_MODE_LOOP=y #The driver does not yet have async support diff --git a/tests/drivers/spi/spi_loopback/boards/cc1352r1_launchxl.overlay b/tests/drivers/spi/spi_loopback/boards/cc1352r1_launchxl.overlay new file mode 100644 index 00000000000..f2425e674bf --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/cc1352r1_launchxl.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi0 { + slow@0 { + compatible = "test-spi-loopback-slow"; + reg = <0>; + spi-max-frequency = <2000000>; + }; + fast@0 { + compatible = "test-spi-loopback-fast"; + reg = <0>; + spi-max-frequency = <3000000>; + }; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/cy8ckit_062_ble_m0.conf b/tests/drivers/spi/spi_loopback/boards/cy8ckit_062_ble_m0.conf deleted file mode 100644 index 91c3c15b37d..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/cy8ckit_062_ble_m0.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_GPIO=y diff --git a/tests/drivers/spi/spi_loopback/boards/em_starterkit.conf b/tests/drivers/spi/spi_loopback/boards/em_starterkit.conf deleted file mode 100644 index e75e516879c..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/em_starterkit.conf +++ /dev/null @@ -1,2 +0,0 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_0" -CONFIG_SPI_LOOPBACK_SLOW_FREQ=128000 diff --git a/tests/drivers/spi/spi_loopback/boards/em_starterkit.overlay b/tests/drivers/spi/spi_loopback/boards/em_starterkit.overlay new file mode 100644 index 00000000000..345fef8b441 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/em_starterkit.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi0 { + 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 = <16000000>; + }; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/esp32.conf b/tests/drivers/spi/spi_loopback/boards/esp32.conf index b4dd9d09285..fb0909611c8 100644 --- a/tests/drivers/spi/spi_loopback/boards/esp32.conf +++ b/tests/drivers/spi/spi_loopback/boards/esp32.conf @@ -1,2 +1 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_3" CONFIG_SPI_ESP32_INTERRUPT=y diff --git a/tests/drivers/spi/spi_loopback/boards/esp32.overlay b/tests/drivers/spi/spi_loopback/boards/esp32.overlay new file mode 100644 index 00000000000..cdd26ddd1dc --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/esp32.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi3 { + 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/esp32c3_devkitm.conf b/tests/drivers/spi/spi_loopback/boards/esp32c3_devkitm.conf index 682579e1498..fb0909611c8 100644 --- a/tests/drivers/spi/spi_loopback/boards/esp32c3_devkitm.conf +++ b/tests/drivers/spi/spi_loopback/boards/esp32c3_devkitm.conf @@ -1,2 +1 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_2" CONFIG_SPI_ESP32_INTERRUPT=y diff --git a/tests/drivers/spi/spi_loopback/boards/esp32c3_devkitm.overlay b/tests/drivers/spi/spi_loopback/boards/esp32c3_devkitm.overlay new file mode 100644 index 00000000000..7fb81b121f8 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/esp32c3_devkitm.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi2 { + 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/esp32s2_saola.conf b/tests/drivers/spi/spi_loopback/boards/esp32s2_saola.conf index b4dd9d09285..fb0909611c8 100644 --- a/tests/drivers/spi/spi_loopback/boards/esp32s2_saola.conf +++ b/tests/drivers/spi/spi_loopback/boards/esp32s2_saola.conf @@ -1,2 +1 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_3" CONFIG_SPI_ESP32_INTERRUPT=y diff --git a/tests/drivers/spi/spi_loopback/boards/esp32s2_saola.overlay b/tests/drivers/spi/spi_loopback/boards/esp32s2_saola.overlay new file mode 100644 index 00000000000..cdd26ddd1dc --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/esp32s2_saola.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi3 { + 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/frdm_k64f.conf b/tests/drivers/spi/spi_loopback/boards/frdm_k64f.conf deleted file mode 100644 index 6dbfa010e7c..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/frdm_k64f.conf +++ /dev/null @@ -1,7 +0,0 @@ -# -# Copyright (c) 2018, NXP -# -# SPDX-License-Identifier: Apache-2.0 -# - -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_0" diff --git a/tests/drivers/spi/spi_loopback/boards/frdm_k64f.overlay b/tests/drivers/spi/spi_loopback/boards/frdm_k64f.overlay new file mode 100644 index 00000000000..59b259a9766 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/frdm_k64f.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi0 { + 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/frdm_kw41z.conf b/tests/drivers/spi/spi_loopback/boards/frdm_kw41z.conf deleted file mode 100644 index 23cf65b49a5..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/frdm_kw41z.conf +++ /dev/null @@ -1,9 +0,0 @@ -# -# Copyright (c) 2018, NXP -# -# SPDX-License-Identifier: Apache-2.0 -# - -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_0" -CONFIG_SPI_LOOPBACK_SLOW_FREQ=5000 -CONFIG_SPI_LOOPBACK_FAST_FREQ=160000 diff --git a/tests/drivers/spi/spi_loopback/boards/frdm_kw41z.overlay b/tests/drivers/spi/spi_loopback/boards/frdm_kw41z.overlay new file mode 100644 index 00000000000..cd668ccdab8 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/frdm_kw41z.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi0 { + slow@0 { + compatible = "test-spi-loopback-slow"; + reg = <0>; + spi-max-frequency = <5000>; + }; + fast@0 { + compatible = "test-spi-loopback-fast"; + reg = <0>; + spi-max-frequency = <160000>; + }; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/lpcxpresso54114_m4.conf b/tests/drivers/spi/spi_loopback/boards/lpcxpresso54114_m4.conf deleted file mode 100644 index 9731c8285c6..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/lpcxpresso54114_m4.conf +++ /dev/null @@ -1,8 +0,0 @@ -# -# Copyright (c) 2019, NXP -# -# SPDX-License-Identifier: Apache-2.0 -# - -CONFIG_SPI_LOOPBACK_DRV_NAME="FLEXCOMM_5" -CONFIG_SPI_LOOPBACK_SLAVE_NUMBER=2 diff --git a/tests/drivers/spi/spi_loopback/boards/lpcxpresso54114_m4.overlay b/tests/drivers/spi/spi_loopback/boards/lpcxpresso54114_m4.overlay new file mode 100644 index 00000000000..162cf22c223 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/lpcxpresso54114_m4.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&flexcomm5 { + slow@2 { + compatible = "test-spi-loopback-slow"; + reg = <2>; + spi-max-frequency = <500000>; + }; + fast@2 { + compatible = "test-spi-loopback-fast"; + reg = <2>; + spi-max-frequency = <16000000>; + }; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/lpcxpresso55s16.conf b/tests/drivers/spi/spi_loopback/boards/lpcxpresso55s16.conf deleted file mode 100644 index e359a7dd3aa..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/lpcxpresso55s16.conf +++ /dev/null @@ -1,10 +0,0 @@ -# -# Copyright (c) 2020 Henrik Brix Andersen -# -# SPDX-License-Identifier: Apache-2.0 -# - -CONFIG_SPI_LOOPBACK_DRV_NAME="HS_LSPI" -CONFIG_SPI_LOOPBACK_SLAVE_NUMBER=1 -CONFIG_SPI_LOOPBACK_SLOW_FREQ=5000 -CONFIG_SPI_LOOPBACK_FAST_FREQ=160000 diff --git a/tests/drivers/spi/spi_loopback/boards/lpcxpresso55s16.overlay b/tests/drivers/spi/spi_loopback/boards/lpcxpresso55s16.overlay new file mode 100644 index 00000000000..f8ed2db8203 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/lpcxpresso55s16.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&hs_lspi { + slow@1 { + compatible = "test-spi-loopback-slow"; + reg = <1>; + spi-max-frequency = <5000>; + }; + fast@1 { + compatible = "test-spi-loopback-fast"; + reg = <1>; + spi-max-frequency = <160000>; + }; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/lpcxpresso55s69_cpu0.conf b/tests/drivers/spi/spi_loopback/boards/lpcxpresso55s69_cpu0.conf index d63a93518fd..89121ea1cb0 100644 --- a/tests/drivers/spi/spi_loopback/boards/lpcxpresso55s69_cpu0.conf +++ b/tests/drivers/spi/spi_loopback/boards/lpcxpresso55s69_cpu0.conf @@ -3,8 +3,5 @@ # # SPDX-License-Identifier: Apache-2.0 # - -CONFIG_SPI_LOOPBACK_DRV_NAME="HS_LSPI" -CONFIG_SPI_LOOPBACK_SLAVE_NUMBER=1 CONFIG_SPI_MCUX_FLEXCOMM_DMA=y CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/boards/lpcxpresso55s69_cpu0.overlay b/tests/drivers/spi/spi_loopback/boards/lpcxpresso55s69_cpu0.overlay new file mode 100644 index 00000000000..f42ec2b3160 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/lpcxpresso55s69_cpu0.overlay @@ -0,0 +1,20 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + + +&hs_lspi { + /delete-property/ cs-gpios; + slow@1 { + compatible = "test-spi-loopback-slow"; + reg = <1>; + spi-max-frequency = <5000>; + }; + fast@1 { + compatible = "test-spi-loopback-fast"; + reg = <1>; + spi-max-frequency = <160000>; + }; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/mimxrt1010_evk.conf b/tests/drivers/spi/spi_loopback/boards/mimxrt1010_evk.conf index 0d0d3c3776e..bf53e8cb950 100644 --- a/tests/drivers/spi/spi_loopback/boards/mimxrt1010_evk.conf +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1010_evk.conf @@ -3,7 +3,5 @@ # # SPDX-License-Identifier: Apache-2.0 # - -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_1" CONFIG_SPI_MCUX_LPSPI_DMA=y CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/boards/mimxrt1010_evk.overlay b/tests/drivers/spi/spi_loopback/boards/mimxrt1010_evk.overlay new file mode 100644 index 00000000000..979062e18d9 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1010_evk.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&lpspi1 { + 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/mimxrt1015_evk.conf b/tests/drivers/spi/spi_loopback/boards/mimxrt1015_evk.conf index 0d0d3c3776e..bf53e8cb950 100644 --- a/tests/drivers/spi/spi_loopback/boards/mimxrt1015_evk.conf +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1015_evk.conf @@ -3,7 +3,5 @@ # # SPDX-License-Identifier: Apache-2.0 # - -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_1" CONFIG_SPI_MCUX_LPSPI_DMA=y CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/boards/mimxrt1015_evk.overlay b/tests/drivers/spi/spi_loopback/boards/mimxrt1015_evk.overlay new file mode 100644 index 00000000000..979062e18d9 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1015_evk.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&lpspi1 { + 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/mimxrt1020_evk.conf b/tests/drivers/spi/spi_loopback/boards/mimxrt1020_evk.conf index 0d0d3c3776e..bf53e8cb950 100644 --- a/tests/drivers/spi/spi_loopback/boards/mimxrt1020_evk.conf +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1020_evk.conf @@ -3,7 +3,5 @@ # # SPDX-License-Identifier: Apache-2.0 # - -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_1" CONFIG_SPI_MCUX_LPSPI_DMA=y CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/boards/mimxrt1020_evk.overlay b/tests/drivers/spi/spi_loopback/boards/mimxrt1020_evk.overlay new file mode 100644 index 00000000000..979062e18d9 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1020_evk.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&lpspi1 { + 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/mimxrt1024_evk.conf b/tests/drivers/spi/spi_loopback/boards/mimxrt1024_evk.conf index 0d0d3c3776e..bf53e8cb950 100644 --- a/tests/drivers/spi/spi_loopback/boards/mimxrt1024_evk.conf +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1024_evk.conf @@ -3,7 +3,5 @@ # # SPDX-License-Identifier: Apache-2.0 # - -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_1" CONFIG_SPI_MCUX_LPSPI_DMA=y CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/boards/mimxrt1024_evk.overlay b/tests/drivers/spi/spi_loopback/boards/mimxrt1024_evk.overlay new file mode 100644 index 00000000000..979062e18d9 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1024_evk.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&lpspi1 { + 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/mimxrt1050_evk.conf b/tests/drivers/spi/spi_loopback/boards/mimxrt1050_evk.conf index e535f7d5762..5181a16951d 100644 --- a/tests/drivers/spi/spi_loopback/boards/mimxrt1050_evk.conf +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1050_evk.conf @@ -3,7 +3,5 @@ # # SPDX-License-Identifier: Apache-2.0 # - -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_1" CONFIG_SPI_MCUX_LPSPI_DMA=y CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/boards/mimxrt1050_evk.overlay b/tests/drivers/spi/spi_loopback/boards/mimxrt1050_evk.overlay new file mode 100644 index 00000000000..979062e18d9 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1050_evk.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&lpspi1 { + 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/mimxrt1060_evk.conf b/tests/drivers/spi/spi_loopback/boards/mimxrt1060_evk.conf index 0d0d3c3776e..bf53e8cb950 100644 --- a/tests/drivers/spi/spi_loopback/boards/mimxrt1060_evk.conf +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1060_evk.conf @@ -3,7 +3,5 @@ # # SPDX-License-Identifier: Apache-2.0 # - -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_1" CONFIG_SPI_MCUX_LPSPI_DMA=y CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/boards/mimxrt1060_evk.overlay b/tests/drivers/spi/spi_loopback/boards/mimxrt1060_evk.overlay new file mode 100644 index 00000000000..979062e18d9 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1060_evk.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&lpspi1 { + 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/mimxrt1064_evk.conf b/tests/drivers/spi/spi_loopback/boards/mimxrt1064_evk.conf index 0d0d3c3776e..bf53e8cb950 100644 --- a/tests/drivers/spi/spi_loopback/boards/mimxrt1064_evk.conf +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1064_evk.conf @@ -3,7 +3,5 @@ # # SPDX-License-Identifier: Apache-2.0 # - -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_1" CONFIG_SPI_MCUX_LPSPI_DMA=y CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/boards/mimxrt1064_evk.overlay b/tests/drivers/spi/spi_loopback/boards/mimxrt1064_evk.overlay new file mode 100644 index 00000000000..979062e18d9 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt1064_evk.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&lpspi1 { + 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/mimxrt595_evk_cm33.conf b/tests/drivers/spi/spi_loopback/boards/mimxrt595_evk_cm33.conf index f21461eca7c..dc84c6e6624 100644 --- a/tests/drivers/spi/spi_loopback/boards/mimxrt595_evk_cm33.conf +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt595_evk_cm33.conf @@ -3,7 +3,5 @@ # # SPDX-License-Identifier: Apache-2.0 # - -CONFIG_SPI_LOOPBACK_DRV_NAME="HS_LSPI_1" CONFIG_SPI_MCUX_FLEXCOMM_DMA=y CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/boards/mimxrt595_evk_cm33.overlay b/tests/drivers/spi/spi_loopback/boards/mimxrt595_evk_cm33.overlay new file mode 100644 index 00000000000..df72413cb8f --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt595_evk_cm33.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&hs_lspi1 { + 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/mimxrt685_evk_cm33.conf b/tests/drivers/spi/spi_loopback/boards/mimxrt685_evk_cm33.conf index 7474432cb1e..dc84c6e6624 100644 --- a/tests/drivers/spi/spi_loopback/boards/mimxrt685_evk_cm33.conf +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt685_evk_cm33.conf @@ -3,7 +3,5 @@ # # SPDX-License-Identifier: Apache-2.0 # - -CONFIG_SPI_LOOPBACK_DRV_NAME="FLEXCOMM_5" CONFIG_SPI_MCUX_FLEXCOMM_DMA=y CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/boards/mimxrt685_evk_cm33.overlay b/tests/drivers/spi/spi_loopback/boards/mimxrt685_evk_cm33.overlay new file mode 100644 index 00000000000..6a96fa76106 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/mimxrt685_evk_cm33.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&flexcomm5 { + 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/nrf51dk_nrf51422.conf b/tests/drivers/spi/spi_loopback/boards/nrf51dk_nrf51422.conf deleted file mode 100644 index 8d7a6802b0e..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/nrf51dk_nrf51422.conf +++ /dev/null @@ -1,4 +0,0 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_1" -CONFIG_SPI_LOOPBACK_CS_GPIO=y -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_DRV_NAME="GPIO_0" -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_PIN=28 diff --git a/tests/drivers/spi/spi_loopback/boards/nrf51dk_nrf51422.overlay b/tests/drivers/spi/spi_loopback/boards/nrf51dk_nrf51422.overlay index 49e1e9ac2de..812f643f3e8 100644 --- a/tests/drivers/spi/spi_loopback/boards/nrf51dk_nrf51422.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nrf51dk_nrf51422.overlay @@ -6,4 +6,15 @@ &spi1 { overrun-character = <0x00>; + cs-gpios = <&gpio0 28 GPIO_ACTIVE_LOW>; + 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/nrf52840dk_nrf52840.conf b/tests/drivers/spi/spi_loopback/boards/nrf52840dk_nrf52840.conf deleted file mode 100644 index 560e6a7a8b8..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/nrf52840dk_nrf52840.conf +++ /dev/null @@ -1,4 +0,0 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_3" -CONFIG_SPI_LOOPBACK_CS_GPIO=y -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_DRV_NAME="GPIO_0" -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_PIN=28 diff --git a/tests/drivers/spi/spi_loopback/boards/nrf52840dk_nrf52840.overlay b/tests/drivers/spi/spi_loopback/boards/nrf52840dk_nrf52840.overlay index bc3d06410c0..7f511d0753d 100644 --- a/tests/drivers/spi/spi_loopback/boards/nrf52840dk_nrf52840.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nrf52840dk_nrf52840.overlay @@ -7,4 +7,15 @@ &spi3 { overrun-character = <0x00>; rx-delay = <1>; + cs-gpios = <&gpio0 28 GPIO_ACTIVE_LOW>; + 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/nrf52dk_nrf52832.conf b/tests/drivers/spi/spi_loopback/boards/nrf52dk_nrf52832.conf deleted file mode 100644 index 8d7a6802b0e..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/nrf52dk_nrf52832.conf +++ /dev/null @@ -1,4 +0,0 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_1" -CONFIG_SPI_LOOPBACK_CS_GPIO=y -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_DRV_NAME="GPIO_0" -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_PIN=28 diff --git a/tests/drivers/spi/spi_loopback/boards/nrf52dk_nrf52832.overlay b/tests/drivers/spi/spi_loopback/boards/nrf52dk_nrf52832.overlay index 49e1e9ac2de..812f643f3e8 100644 --- a/tests/drivers/spi/spi_loopback/boards/nrf52dk_nrf52832.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nrf52dk_nrf52832.overlay @@ -6,4 +6,15 @@ &spi1 { overrun-character = <0x00>; + cs-gpios = <&gpio0 28 GPIO_ACTIVE_LOW>; + 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/nrf9160dk_nrf9160.conf b/tests/drivers/spi/spi_loopback/boards/nrf9160dk_nrf9160.conf deleted file mode 100644 index f118357c19d..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/nrf9160dk_nrf9160.conf +++ /dev/null @@ -1,4 +0,0 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_3" -CONFIG_SPI_LOOPBACK_CS_GPIO=y -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_DRV_NAME="GPIO_0" -CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_PIN=16 diff --git a/tests/drivers/spi/spi_loopback/boards/nrf9160dk_nrf9160.overlay b/tests/drivers/spi/spi_loopback/boards/nrf9160dk_nrf9160.overlay index 9201308c1ce..a07ed5fbf5d 100644 --- a/tests/drivers/spi/spi_loopback/boards/nrf9160dk_nrf9160.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nrf9160dk_nrf9160.overlay @@ -6,4 +6,15 @@ &spi3 { overrun-character = <0x00>; + cs-gpios = <&gpio0 16 GPIO_ACTIVE_LOW>; + 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/nucleo_f207zg.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_f207zg.overlay index e28e2e9c2ca..0f7bf9c89b1 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_f207zg.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_f207zg.overlay @@ -12,6 +12,16 @@ &spi1 { status = "okay"; + 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>; + }; }; &dma2 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_f302r8.conf b/tests/drivers/spi/spi_loopback/boards/nucleo_f302r8.conf index 0728c33cccd..0232f7d97c3 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_f302r8.conf +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_f302r8.conf @@ -1,2 +1 @@ -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_2" CONFIG_SPI_STM32_INTERRUPT=y diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_f302r8.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_f302r8.overlay new file mode 100644 index 00000000000..7fb81b121f8 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_f302r8.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi2 { + 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/nucleo_f411re.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_f411re.overlay index 5f83d3d16be..ed9a16c1a92 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_f411re.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_f411re.overlay @@ -12,6 +12,16 @@ &spi1 { status = "okay"; + 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>; + }; }; &dma2 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_f429zi.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_f429zi.overlay index 5f83d3d16be..ed9a16c1a92 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_f429zi.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_f429zi.overlay @@ -12,6 +12,16 @@ &spi1 { status = "okay"; + 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>; + }; }; &dma2 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_f746zg.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_f746zg.overlay index 0e667f9da0c..d2cc5c63fb6 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_f746zg.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_f746zg.overlay @@ -11,6 +11,16 @@ &dma1 3 0 0x28480 0x03>; dma-names = "tx", "rx"; status = "okay"; + 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>; + }; }; &dma1 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_f767zi.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_f767zi.overlay index e6ebf3e6c4f..32899f3aa3d 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_f767zi.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_f767zi.overlay @@ -8,6 +8,16 @@ dmas = <&dma2 5 3 0x28440 0x03 &dma2 2 3 0x28480 0x03>; 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>; + }; }; &dma2 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_g0b1re.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_g0b1re.overlay index b57bcdd32a5..58c82c467f8 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_g0b1re.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_g0b1re.overlay @@ -8,6 +8,16 @@ dmas = <&dmamux1 2 17 0x20440 &dmamux1 1 16 0x20480>; 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>; + }; }; &dma1 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_g431rb.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_g431rb.overlay index fa5afc69606..3a67518ceec 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_g431rb.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_g431rb.overlay @@ -8,6 +8,16 @@ dmas = <&dmamux1 0 11 0x20440 &dmamux1 1 10 0x20480>; 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>; + }; }; &dma1 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_g474re.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_g474re.overlay index 8c8af566802..2c775fc2619 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_g474re.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_g474re.overlay @@ -17,6 +17,16 @@ dmas = <&dmamux1 0 11 0x20440 &dmamux1 8 10 0x20480>; 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>; + }; }; &dma1 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_h723zg.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_h723zg.overlay index c9f83ed7e9b..5628ce3f8f6 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_h723zg.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_h723zg.overlay @@ -15,4 +15,14 @@ /delete-property/ clocks; clocks = <&rcc STM32_CLOCK_BUS_APB2 0x00001000>, <&rcc STM32_SRC_PLL1_Q SPI123_SEL(0)>; + 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/nucleo_h743zi.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_h743zi.overlay index 815c52993f0..eae8992e8cb 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_h743zi.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_h743zi.overlay @@ -8,6 +8,16 @@ dmas = <&dmamux1 0 38 0x20440 &dmamux1 1 37 0x20480>; 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>; + }; }; &dma1 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_l152re.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_l152re.overlay index 3552f726bb6..ce74ccdc549 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_l152re.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_l152re.overlay @@ -11,6 +11,16 @@ &dma1 2 0x20480>; dma-names = "tx", "rx"; status = "okay"; + 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>; + }; }; &dma1 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_l476rg.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_l476rg.overlay index 21b6c77db6f..45725e5b965 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_l476rg.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_l476rg.overlay @@ -8,6 +8,16 @@ dmas = <&dma1 3 1 0x20440 &dma1 2 1 0x20480>; 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>; + }; }; &dma1 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_l4r5zi.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_l4r5zi.overlay index f30808b1f65..f7853ede88e 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_l4r5zi.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_l4r5zi.overlay @@ -8,6 +8,16 @@ dmas = <&dmamux1 0 11 0x20440 &dmamux1 7 10 0x20480>; 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>; + }; }; &dma1 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_l552ze_q.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_l552ze_q.overlay index c4f5be6de0d..132d78afb5e 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_l552ze_q.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_l552ze_q.overlay @@ -8,6 +8,16 @@ dmas = <&dmamux1 0 12 0x440 &dmamux1 7 11 0x480>; 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>; + }; }; &dma1 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_u575zi_q.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_u575zi_q.overlay index 125e6c74e56..95095efbb3c 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_u575zi_q.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_u575zi_q.overlay @@ -7,3 +7,16 @@ &rcc { apb2-prescaler = <2>; }; + +&spi1 { + 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/nucleo_wb55rg.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_wb55rg.overlay index a5afb9a573d..c5c417d8138 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_wb55rg.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_wb55rg.overlay @@ -8,6 +8,16 @@ dmas = <&dmamux1 11 7 0x20440 &dmamux1 1 6 0x20480>; 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>; + }; }; &dma1 { diff --git a/tests/drivers/spi/spi_loopback/boards/nucleo_wl55jc.overlay b/tests/drivers/spi/spi_loopback/boards/nucleo_wl55jc.overlay index 3cf29992658..4892427d3ea 100644 --- a/tests/drivers/spi/spi_loopback/boards/nucleo_wl55jc.overlay +++ b/tests/drivers/spi/spi_loopback/boards/nucleo_wl55jc.overlay @@ -8,6 +8,16 @@ dmas = <&dmamux1 11 8 0x20440 &dmamux1 1 7 0x20480>; 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>; + }; }; &dma1 { diff --git a/tests/drivers/spi/spi_loopback/boards/olimex_esp32_evb.conf b/tests/drivers/spi/spi_loopback/boards/olimex_esp32_evb.conf index 853c0e6af1d..cb7a40409b2 100644 --- a/tests/drivers/spi/spi_loopback/boards/olimex_esp32_evb.conf +++ b/tests/drivers/spi/spi_loopback/boards/olimex_esp32_evb.conf @@ -1,3 +1,2 @@ # Loopback on UEXT connector -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_2" CONFIG_SPI_ESP32_INTERRUPT=y diff --git a/tests/drivers/spi/spi_loopback/boards/olimex_esp32_evb.overlay b/tests/drivers/spi/spi_loopback/boards/olimex_esp32_evb.overlay new file mode 100644 index 00000000000..7fb81b121f8 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/olimex_esp32_evb.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi2 { + 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/rv32m1_vega_ri5cy.conf b/tests/drivers/spi/spi_loopback/boards/rv32m1_vega_ri5cy.conf deleted file mode 100644 index aa893a7f526..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/rv32m1_vega_ri5cy.conf +++ /dev/null @@ -1,8 +0,0 @@ -# -# Copyright (c) 2018, NXP -# -# SPDX-License-Identifier: Apache-2.0 -# - -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_0" -CONFIG_SPI_LOOPBACK_SLAVE_NUMBER=2 diff --git a/tests/drivers/spi/spi_loopback/boards/rv32m1_vega_ri5cy.overlay b/tests/drivers/spi/spi_loopback/boards/rv32m1_vega_ri5cy.overlay new file mode 100644 index 00000000000..cde529dea20 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/rv32m1_vega_ri5cy.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&lpspi0 { + slow@2 { + compatible = "test-spi-loopback-slow"; + reg = <2>; + spi-max-frequency = <500000>; + }; + fast@2 { + compatible = "test-spi-loopback-fast"; + reg = <2>; + spi-max-frequency = <16000000>; + }; +}; diff --git a/tests/drivers/spi/spi_loopback/boards/stm32l562e_dk.overlay b/tests/drivers/spi/spi_loopback/boards/stm32l562e_dk.overlay index c4f5be6de0d..132d78afb5e 100644 --- a/tests/drivers/spi/spi_loopback/boards/stm32l562e_dk.overlay +++ b/tests/drivers/spi/spi_loopback/boards/stm32l562e_dk.overlay @@ -8,6 +8,16 @@ dmas = <&dmamux1 0 12 0x440 &dmamux1 7 11 0x480>; 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>; + }; }; &dma1 { diff --git a/tests/drivers/spi/spi_loopback/boards/stm32mp157c_dk2.conf b/tests/drivers/spi/spi_loopback/boards/stm32mp157c_dk2.conf deleted file mode 100644 index 1ca9d05031a..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/stm32mp157c_dk2.conf +++ /dev/null @@ -1,7 +0,0 @@ -# -# Copyright (c) 2019, STMicroelectronics -# -# SPDX-License-Identifier: Apache-2.0 -# - -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_4" diff --git a/tests/drivers/spi/spi_loopback/boards/stm32mp157c_dk2.overlay b/tests/drivers/spi/spi_loopback/boards/stm32mp157c_dk2.overlay new file mode 100644 index 00000000000..47cb14d7734 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/stm32mp157c_dk2.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi4 { + 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/tlsr9518adk80d.conf b/tests/drivers/spi/spi_loopback/boards/tlsr9518adk80d.conf deleted file mode 100644 index def1ae3444c..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/tlsr9518adk80d.conf +++ /dev/null @@ -1,7 +0,0 @@ -# -# Copyright (c) 2021 Telink Semiconductor -# -# SPDX-License-Identifier: Apache-2.0 -# - -CONFIG_SPI_LOOPBACK_DRV_NAME="PSPI" diff --git a/tests/drivers/spi/spi_loopback/boards/tlsr9518adk80d.overlay b/tests/drivers/spi/spi_loopback/boards/tlsr9518adk80d.overlay new file mode 100644 index 00000000000..c630e50fac2 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/tlsr9518adk80d.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&pspi { + 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/twr_ke18f.conf b/tests/drivers/spi/spi_loopback/boards/twr_ke18f.conf deleted file mode 100644 index 37676a0889f..00000000000 --- a/tests/drivers/spi/spi_loopback/boards/twr_ke18f.conf +++ /dev/null @@ -1,7 +0,0 @@ -# -# Copyright (c) 2019 Vestas Wind Systems A/S -# -# SPDX-License-Identifier: Apache-2.0 -# - -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_0" diff --git a/tests/drivers/spi/spi_loopback/boards/twr_ke18f.overlay b/tests/drivers/spi/spi_loopback/boards/twr_ke18f.overlay new file mode 100644 index 00000000000..8802e571f10 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/boards/twr_ke18f.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&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/dts/bindings/test-spi-loopback-fast.yaml b/tests/drivers/spi/spi_loopback/dts/bindings/test-spi-loopback-fast.yaml new file mode 100644 index 00000000000..d00ca600849 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/dts/bindings/test-spi-loopback-fast.yaml @@ -0,0 +1,13 @@ +# +# Copyright (c) 2022 Kumar Gala +# +# SPDX-License-Identifier: Apache-2.0 +# + +description: | + This binding provides resources required to build and run the + tests/drivers/spi/spi_loopback test in Zephyr. + +compatible: "test-spi-loopback-fast" + +include: [spi-device.yaml] diff --git a/tests/drivers/spi/spi_loopback/dts/bindings/test-spi-loopback-slow.yaml b/tests/drivers/spi/spi_loopback/dts/bindings/test-spi-loopback-slow.yaml new file mode 100644 index 00000000000..98b59a7d8f3 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/dts/bindings/test-spi-loopback-slow.yaml @@ -0,0 +1,13 @@ +# +# Copyright (c) 2022 Kumar Gala +# +# SPDX-License-Identifier: Apache-2.0 +# + +description: | + This binding provides resources required to build and run the + tests/drivers/spi/spi_loopback test in Zephyr. + +compatible: "test-spi-loopback-slow" + +include: [spi-device.yaml] diff --git a/tests/drivers/spi/spi_loopback/overlay-mcux-dspi-dma.conf b/tests/drivers/spi/spi_loopback/overlay-mcux-dspi-dma.conf index 333b269a9ae..17e3ffb7bcc 100644 --- a/tests/drivers/spi/spi_loopback/overlay-mcux-dspi-dma.conf +++ b/tests/drivers/spi/spi_loopback/overlay-mcux-dspi-dma.conf @@ -2,4 +2,3 @@ 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/overlay-mcux-dspi-dma.overlay b/tests/drivers/spi/spi_loopback/overlay-mcux-dspi-dma.overlay new file mode 100644 index 00000000000..890e94df131 --- /dev/null +++ b/tests/drivers/spi/spi_loopback/overlay-mcux-dspi-dma.overlay @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2022 Kumar Gala + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&spi0 { + 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 = <1000000>; + }; +}; diff --git a/tests/drivers/spi/spi_loopback/overlay-stm32-spi-dma.conf b/tests/drivers/spi/spi_loopback/overlay-stm32-spi-dma.conf index 3ce3d8ee097..76b5be824bb 100644 --- a/tests/drivers/spi/spi_loopback/overlay-stm32-spi-dma.conf +++ b/tests/drivers/spi/spi_loopback/overlay-stm32-spi-dma.conf @@ -1,5 +1,4 @@ # enable DMA mode for SPI loopback test -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_1" CONFIG_SPI_STM32_DMA=y CONFIG_SPI_STM32_INTERRUPT=n CONFIG_SPI_ASYNC=n diff --git a/tests/drivers/spi/spi_loopback/overlay-stm32-spi.conf b/tests/drivers/spi/spi_loopback/overlay-stm32-spi.conf deleted file mode 100644 index 733137888e3..00000000000 --- a/tests/drivers/spi/spi_loopback/overlay-stm32-spi.conf +++ /dev/null @@ -1,2 +0,0 @@ -# enable stm32 spi instance for loopback test -CONFIG_SPI_LOOPBACK_DRV_NAME="SPI_1" diff --git a/tests/drivers/spi/spi_loopback/src/spi.c b/tests/drivers/spi/spi_loopback/src/spi.c index fee3604119e..a769e8dd417 100644 --- a/tests/drivers/spi/spi_loopback/src/spi.c +++ b/tests/drivers/spi/spi_loopback/src/spi.c @@ -16,26 +16,22 @@ LOG_MODULE_REGISTER(main); #include -#define SPI_DRV_NAME CONFIG_SPI_LOOPBACK_DRV_NAME -#define SPI_SLAVE_NUMBER CONFIG_SPI_LOOPBACK_SLAVE_NUMBER -#define SLOW_FREQ CONFIG_SPI_LOOPBACK_SLOW_FREQ -#define FAST_FREQ CONFIG_SPI_LOOPBACK_FAST_FREQ +#define SPI_FAST_DEV DT_COMPAT_GET_ANY_STATUS_OKAY(test_spi_loopback_fast) +#define SPI_SLOW_DEV DT_COMPAT_GET_ANY_STATUS_OKAY(test_spi_loopback_slow) -#if defined(CONFIG_SPI_LOOPBACK_CS_GPIO) -#define CS_CTRL_GPIO_DRV_NAME CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_DRV_NAME -struct spi_cs_control spi_cs = { - .gpio = { - .pin = CONFIG_SPI_LOOPBACK_CS_CTRL_GPIO_PIN, - .dt_flags = GPIO_ACTIVE_LOW - }, - .delay = 0, -}; -#define SPI_CS (&spi_cs) +#if CONFIG_SPI_LOOPBACK_MODE_LOOP +#define MODE_LOOP SPI_MODE_LOOP #else -#define SPI_CS NULL -#define CS_CTRL_GPIO_DRV_NAME "" +#define MODE_LOOP 0 #endif +#define SPI_OP SPI_OP_MODE_MASTER | SPI_MODE_CPOL | MODE_LOOP | \ + SPI_MODE_CPHA | SPI_WORD_SET(8) | SPI_LINES_SINGLE + + +struct spi_dt_spec spi_fast = SPI_DT_SPEC_GET(SPI_FAST_DEV, SPI_OP, 0); +struct spi_dt_spec spi_slow = SPI_DT_SPEC_GET(SPI_SLOW_DEV, SPI_OP, 0); + /* to run this test, connect MOSI pin to the MISO of the SPI */ #define STACK_SIZE 512 @@ -77,47 +73,8 @@ static void to_display_format(const uint8_t *src, size_t size, char *dst) } } -struct spi_config spi_cfg_slow = { - .frequency = SLOW_FREQ, -#if CONFIG_SPI_LOOPBACK_MODE_LOOP - .operation = SPI_OP_MODE_MASTER | SPI_MODE_CPOL | SPI_MODE_LOOP | -#else - .operation = SPI_OP_MODE_MASTER | SPI_MODE_CPOL | -#endif - SPI_MODE_CPHA | SPI_WORD_SET(8) | SPI_LINES_SINGLE, - .slave = SPI_SLAVE_NUMBER, - .cs = SPI_CS, -}; - -struct spi_config spi_cfg_fast = { - .frequency = FAST_FREQ, -#if CONFIG_SPI_LOOPBACK_MODE_LOOP - .operation = SPI_OP_MODE_MASTER | SPI_MODE_CPOL | SPI_MODE_LOOP | -#else - .operation = SPI_OP_MODE_MASTER | SPI_MODE_CPOL | -#endif - SPI_MODE_CPHA | SPI_WORD_SET(8) | SPI_LINES_SINGLE, - .slave = SPI_SLAVE_NUMBER, - .cs = SPI_CS, -}; - -#if defined(CONFIG_SPI_LOOPBACK_CS_GPIO) -static int cs_ctrl_gpio_config(void) -{ - spi_cs.gpio.port = device_get_binding(CS_CTRL_GPIO_DRV_NAME); - if (!spi_cs.gpio.port) { - LOG_ERR("Cannot find %s!", CS_CTRL_GPIO_DRV_NAME); - zassert_not_null(spi_cs.gpio.port, "Invalid gpio device"); - return -1; - } - - return 0; -} -#endif /* CONFIG_SPI_LOOPBACK_CS_GPIO */ - /* test transferring different buffers on the same dma channels */ -static int spi_complete_multiple(const struct device *dev, - struct spi_config *spi_conf) +static int spi_complete_multiple(struct spi_dt_spec *spec) { struct spi_buf tx_bufs[2]; const struct spi_buf_set tx = { @@ -148,7 +105,7 @@ static int spi_complete_multiple(const struct device *dev, LOG_INF("Start complete multiple"); - ret = spi_transceive(dev, spi_conf, &tx, &rx); + ret = spi_transceive_dt(spec, &tx, &rx); if (ret) { LOG_ERR("Code %d", ret); zassert_false(ret, "SPI transceive failed"); @@ -178,8 +135,7 @@ static int spi_complete_multiple(const struct device *dev, return 0; } -static int spi_complete_loop(const struct device *dev, - struct spi_config *spi_conf) +static int spi_complete_loop(struct spi_dt_spec *spec) { const struct spi_buf tx_bufs[] = { { @@ -206,7 +162,7 @@ static int spi_complete_loop(const struct device *dev, LOG_INF("Start complete loop"); - ret = spi_transceive(dev, spi_conf, &tx, &rx); + ret = spi_transceive_dt(spec, &tx, &rx); if (ret) { LOG_ERR("Code %d", ret); zassert_false(ret, "SPI transceive failed"); @@ -227,8 +183,7 @@ static int spi_complete_loop(const struct device *dev, return 0; } -static int spi_null_tx_buf(const struct device *dev, - struct spi_config *spi_conf) +static int spi_null_tx_buf(struct spi_dt_spec *spec) { static const uint8_t EXPECTED_NOP_RETURN_BUF[BUF_SIZE] = { 0 }; @@ -262,7 +217,7 @@ static int spi_null_tx_buf(const struct device *dev, LOG_INF("Start null tx"); - ret = spi_transceive(dev, spi_conf, &tx, &rx); + ret = spi_transceive_dt(spec, &tx, &rx); if (ret) { LOG_ERR("Code %d", ret); zassert_false(ret, "SPI transceive failed"); @@ -283,8 +238,7 @@ static int spi_null_tx_buf(const struct device *dev, return 0; } -static int spi_rx_half_start(const struct device *dev, - struct spi_config *spi_conf) +static int spi_rx_half_start(struct spi_dt_spec *spec) { const struct spi_buf tx_bufs[] = { { @@ -312,7 +266,7 @@ static int spi_rx_half_start(const struct device *dev, (void)memset(buffer_rx, 0, BUF_SIZE); - ret = spi_transceive(dev, spi_conf, &tx, &rx); + ret = spi_transceive_dt(spec, &tx, &rx); if (ret) { LOG_ERR("Code %d", ret); zassert_false(ret, "SPI transceive failed"); @@ -333,8 +287,7 @@ static int spi_rx_half_start(const struct device *dev, return 0; } -static int spi_rx_half_end(const struct device *dev, - struct spi_config *spi_conf) +static int spi_rx_half_end(struct spi_dt_spec *spec) { const struct spi_buf tx_bufs[] = { { @@ -371,7 +324,7 @@ static int spi_rx_half_end(const struct device *dev, (void)memset(buffer_rx, 0, BUF_SIZE); - ret = spi_transceive(dev, spi_conf, &tx, &rx); + ret = spi_transceive_dt(spec, &tx, &rx); if (ret) { LOG_ERR("Code %d", ret); zassert_false(ret, "SPI transceive failed"); @@ -392,8 +345,7 @@ static int spi_rx_half_end(const struct device *dev, return 0; } -static int spi_rx_every_4(const struct device *dev, - struct spi_config *spi_conf) +static int spi_rx_every_4(struct spi_dt_spec *spec) { const struct spi_buf tx_bufs[] = { { @@ -443,7 +395,7 @@ static int spi_rx_every_4(const struct device *dev, (void)memset(buffer_rx, 0, BUF_SIZE); - ret = spi_transceive(dev, spi_conf, &tx, &rx); + ret = spi_transceive_dt(spec, &tx, &rx); if (ret) { LOG_ERR("Code %d", ret); zassert_false(ret, "SPI transceive failed"); @@ -502,8 +454,7 @@ static void spi_async_call_cb(struct k_poll_event *async_evt, } } -static int spi_async_call(const struct device *dev, - struct spi_config *spi_conf) +static int spi_async_call(struct spi_dt_spec *spec) { const struct spi_buf tx_bufs[] = { { @@ -529,7 +480,7 @@ static int spi_async_call(const struct device *dev, LOG_INF("Start async call"); - ret = spi_transceive_async(dev, spi_conf, &tx, &rx, &async_sig); + ret = spi_transceive_async(spec->bus, &spec->config, &tx, &rx, &async_sig); if (ret == -ENOTSUP) { LOG_DBG("Not supported"); return 0; @@ -555,24 +506,22 @@ static int spi_async_call(const struct device *dev, } #endif -static int spi_resource_lock_test(const struct device *lock_dev, - struct spi_config *spi_conf_lock, - const struct device *try_dev, - struct spi_config *spi_conf_try) +static int spi_resource_lock_test(struct spi_dt_spec *lock_spec, + struct spi_dt_spec *try_spec) { - spi_conf_lock->operation |= SPI_LOCK_ON; + lock_spec->config.operation |= SPI_LOCK_ON; - if (spi_complete_loop(lock_dev, spi_conf_lock)) { + if (spi_complete_loop(lock_spec)) { return -1; } - if (spi_release(lock_dev, spi_conf_lock)) { + if (spi_release_dt(lock_spec)) { LOG_ERR("Deadlock now?"); zassert_false(1, "SPI release failed"); return -1; } - if (spi_complete_loop(try_dev, spi_conf_try)) { + if (spi_complete_loop(try_spec)) { return -1; } @@ -585,26 +534,8 @@ void test_spi_loopback(void) struct k_thread async_thread; k_tid_t async_thread_id; #endif - const struct device *spi_slow; - const struct device *spi_fast; - LOG_INF("SPI test on buffers TX/RX %p/%p", buffer_tx, buffer_rx); -#if defined(CONFIG_SPI_LOOPBACK_CS_GPIO) - if (cs_ctrl_gpio_config()) { - return; - } -#endif /* CONFIG_SPI_LOOPBACK_CS_GPIO */ - - spi_slow = device_get_binding(SPI_DRV_NAME); - if (!spi_slow) { - LOG_ERR("Cannot find %s!\n", SPI_DRV_NAME); - zassert_not_null(spi_slow, "Invalid SPI device"); - return; - } - - spi_fast = spi_slow; - #if (CONFIG_SPI_ASYNC) async_thread_id = k_thread_create(&async_thread, spi_async_stack, STACK_SIZE, @@ -612,39 +543,41 @@ void test_spi_loopback(void) &async_evt, &caller, NULL, K_PRIO_COOP(7), 0, K_NO_WAIT); #endif + zassert_true(spi_is_ready(&spi_slow), "Slow spi lookback device is not ready"); LOG_INF("SPI test slow config"); - if (spi_complete_multiple(spi_slow, &spi_cfg_slow) || - spi_complete_loop(spi_slow, &spi_cfg_slow) || - spi_null_tx_buf(spi_slow, &spi_cfg_slow) || - spi_rx_half_start(spi_slow, &spi_cfg_slow) || - spi_rx_half_end(spi_slow, &spi_cfg_slow) || - spi_rx_every_4(spi_slow, &spi_cfg_slow) + if (spi_complete_multiple(&spi_slow) || + spi_complete_loop(&spi_slow) || + spi_null_tx_buf(&spi_slow) || + spi_rx_half_start(&spi_slow) || + spi_rx_half_end(&spi_slow) || + spi_rx_every_4(&spi_slow) #if (CONFIG_SPI_ASYNC) - || spi_async_call(spi_slow, &spi_cfg_slow) + || spi_async_call(&spi_slow) #endif ) { goto end; } + zassert_true(spi_is_ready(&spi_fast), "Fast spi lookback device is not ready"); + LOG_INF("SPI test fast config"); - if (spi_complete_multiple(spi_fast, &spi_cfg_fast) || - spi_complete_loop(spi_fast, &spi_cfg_fast) || - spi_null_tx_buf(spi_fast, &spi_cfg_fast) || - spi_rx_half_start(spi_fast, &spi_cfg_fast) || - spi_rx_half_end(spi_fast, &spi_cfg_fast) || - spi_rx_every_4(spi_fast, &spi_cfg_fast) + if (spi_complete_multiple(&spi_fast) || + spi_complete_loop(&spi_fast) || + spi_null_tx_buf(&spi_fast) || + spi_rx_half_start(&spi_fast) || + spi_rx_half_end(&spi_fast) || + spi_rx_every_4(&spi_fast) #if (CONFIG_SPI_ASYNC) - || spi_async_call(spi_fast, &spi_cfg_fast) + || spi_async_call(&spi_fast) #endif ) { goto end; } - if (spi_resource_lock_test(spi_slow, &spi_cfg_slow, - spi_fast, &spi_cfg_fast)) { + if (spi_resource_lock_test(&spi_slow, &spi_fast)) { goto end; } diff --git a/tests/drivers/spi/spi_loopback/testcase.yaml b/tests/drivers/spi/spi_loopback/testcase.yaml index 749cebd5ea5..58ffea867c8 100644 --- a/tests/drivers/spi/spi_loopback/testcase.yaml +++ b/tests/drivers/spi/spi_loopback/testcase.yaml @@ -1,12 +1,10 @@ common: depends_on: spi tags: drivers spi - platform_exclude: seeeduino_xiao serpente arduino_nano_33_iot atsamr21_xpro - atsamd21_xpro arduino_zero adafruit_trinket_m0 arduino_mkrzero + filter: dt_compat_enabled("test-spi-loopback-slow") and dt_compat_enabled("test-spi-loopback-fast") tests: drivers.spi.loopback: harness: ztest - filter: not CONFIG_SOC_FAMILY_STM32 harness_config: fixture: spi_loopback drivers.spi.loopback.internal: @@ -14,16 +12,10 @@ tests: drivers.mcux_dspi_dma.loopback: tags: dma harness: ztest - extra_args: OVERLAY_CONFIG="overlay-mcux-dspi-dma.conf" + extra_args: OVERLAY_CONFIG="overlay-mcux-dspi-dma.conf" DTC_OVERLAY_FILE="overlay-mcux-dspi-dma.overlay" harness_config: fixture: spi_loopback platform_allow: frdm_k64f - drivers.stm32_spi.loopback: - harness: ztest - extra_args: OVERLAY_CONFIG="overlay-stm32-spi.conf" - harness_config: - fixture: spi_loopback - filter: CONFIG_SOC_FAMILY_STM32 drivers.stm32_spi_dma.loopback: tags: dma harness: ztest