Merge branch 'change/p4_sd_runner_no_use_usj' into 'master'

ci(sd): use uart0 as usj always serial noise on ci on p4

Closes IDFCI-2371, IDFCI-2345, IDFCI-2549, and IDFCI-2550

See merge request espressif/esp-idf!35110
This commit is contained in:
Armando (Dou Yiwen)
2024-11-26 14:43:59 +08:00
16 changed files with 25 additions and 17 deletions

View File

@@ -326,7 +326,7 @@ static const sdmmc_test_board_info_t s_board_info = {
{
.slot_exists = true,
.bus_width = 4,
.uhs1_supported = true,
// .uhs1_supported = true, //no runner for uhs1
.clk = 43,
.cmd_mosi = 44,
.d0_miso = 39,

View File

@@ -18,7 +18,7 @@
#include "sd_pwr_ctrl.h"
#include "sd_pwr_ctrl_by_on_chip_ldo.h"
void sdmmc_test_sd_skip_if_board_incompatible(int slot, int width, int freq_khz, int ddr)
void sdmmc_test_sd_skip_if_board_incompatible(int slot, int width, int freq_khz, int ddr, int is_emmc)
{
sdmmc_host_t config = SDMMC_HOST_DEFAULT();
sdmmc_slot_config_t slot_config = SDMMC_SLOT_CONFIG_DEFAULT();
@@ -26,6 +26,13 @@ void sdmmc_test_sd_skip_if_board_incompatible(int slot, int width, int freq_khz,
if (!sdmmc_test_board_has_slot(slot)) {
TEST_IGNORE_MESSAGE("Board doesn't have the required slot");
}
if (is_emmc) {
if (!sdmmc_test_board_slot_is_emmc(slot)) {
TEST_IGNORE_MESSAGE("Board doesn't have the emmc card inserted");
}
}
sdmmc_test_board_get_config_sdmmc(slot, &config, &slot_config);
int board_max_freq_khz = sdmmc_test_board_get_slot_info(slot)->max_freq_khz;

View File

@@ -16,6 +16,8 @@ extern "C" {
#define SLOT_1 1
#define NO_DDR 0
#define WITH_DDR 1
#define NO_EMMC 0
#define IS_EMMC 1
/* Helper functions to initialize/deinintalize the host (SDMMC/SDSPI) inside the test */
@@ -28,8 +30,9 @@ extern "C" {
* @param width Slot width (1, 4 or 8)
* @param freq_khz Bus frequency in kHz
* @param ddr Whether to use DDR mode (NO_DDR or WITH_DDR)
* @param is_emmc Is emmc or not
*/
void sdmmc_test_sd_skip_if_board_incompatible(int slot, int width, int freq_khz, int ddr);
void sdmmc_test_sd_skip_if_board_incompatible(int slot, int width, int freq_khz, int ddr, int is_emmc);
/**
* @brief Helper function to initialize the SDMMC host and slot for the test using the given settings

View File

@@ -8,6 +8,7 @@
#include "sdmmc_cmd.h"
#include "driver/sdmmc_host.h"
#include "sdmmc_test_cd_wp_common.h"
#include "sdmmc_test_begin_end_sd.h"
#include "sdmmc_test_board.h"
#include "sd_pwr_ctrl.h"
#include "sd_pwr_ctrl_by_on_chip_ldo.h"
@@ -16,6 +17,7 @@ TEST_CASE("CD input works in SD mode", "[sdmmc]")
{
sdmmc_host_t config = SDMMC_HOST_DEFAULT();
sdmmc_slot_config_t slot_config = SDMMC_SLOT_CONFIG_DEFAULT();
sdmmc_test_sd_skip_if_board_incompatible(SDMMC_HOST_SLOT_1, 0, SDMMC_FREQ_PROBING, NO_DDR, NO_EMMC);
sdmmc_test_board_get_config_sdmmc(SDMMC_HOST_SLOT_1, &config, &slot_config);
const int test_gpio = sdmmc_test_board_get_slot_info(SDMMC_HOST_SLOT_1)->unused_pin;
slot_config.gpio_cd = test_gpio;
@@ -48,6 +50,7 @@ TEST_CASE("WP input works in SD mode", "[sdmmc]")
sdmmc_test_board_card_power_set(true);
sdmmc_host_t config = SDMMC_HOST_DEFAULT();
sdmmc_slot_config_t slot_config = SDMMC_SLOT_CONFIG_DEFAULT();
sdmmc_test_sd_skip_if_board_incompatible(SDMMC_HOST_SLOT_1, 0, SDMMC_FREQ_PROBING, NO_DDR, NO_EMMC);
sdmmc_test_board_get_config_sdmmc(SDMMC_HOST_SLOT_1, &config, &slot_config);
const int test_gpio = sdmmc_test_board_get_slot_info(SDMMC_HOST_SLOT_1)->unused_pin;
slot_config.gpio_wp = test_gpio;

View File

@@ -43,7 +43,7 @@ static void test_discard_blocks(sdmmc_card_t* card, int slot)
static void do_one_mmc_discard_test(int slot, int width, int freq_khz, int ddr)
{
sdmmc_card_t card;
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr);
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr, IS_EMMC);
sdmmc_test_sd_begin(slot, width, freq_khz, ddr, &card);
sdmmc_card_print_info(stdout, &card);
test_discard_blocks(&card, slot);

View File

@@ -15,7 +15,7 @@
static void do_one_sdmmc_erase_test(int slot, int width, int freq_khz, int ddr)
{
sdmmc_card_t card;
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr);
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr, NO_EMMC);
sdmmc_test_sd_begin(slot, width, freq_khz, ddr, &card);
sdmmc_card_print_info(stdout, &card);
sdmmc_test_sd_erase_blocks(&card);

View File

@@ -13,7 +13,7 @@
static void do_one_sdmmc_probe_test(int slot, int width, int freq_khz, int ddr)
{
sdmmc_card_t card;
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr);
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr, NO_EMMC);
sdmmc_test_sd_begin(slot, width, freq_khz, ddr, &card);
sdmmc_card_print_info(stdout, &card);
uint8_t* buffer = heap_caps_calloc(512, 1, MALLOC_CAP_DMA);

View File

@@ -15,7 +15,7 @@
static void do_one_sdmmc_perf_test(int slot, int width, int freq_khz, int ddr, FILE* perf_log)
{
sdmmc_card_t card;
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr);
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr, NO_EMMC);
sdmmc_test_sd_begin(slot, width, freq_khz, ddr, &card);
sdmmc_card_print_info(stdout, &card);
sdmmc_test_rw_performance(&card, perf_log);
@@ -68,7 +68,7 @@ TEST_CASE("sdmmc read/write performance, slot 1, 4-bit DDR", "[sdmmc]")
static void do_one_sdmmc_rw_test_with_offset(int slot, int width, int freq_khz, int ddr)
{
sdmmc_card_t card;
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr);
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr, NO_EMMC);
sdmmc_test_sd_begin(slot, width, freq_khz, ddr, &card);
sdmmc_card_print_info(stdout, &card);
sdmmc_test_rw_with_offset(&card);
@@ -90,7 +90,7 @@ TEST_CASE("sdmmc read/write performance with offset, slot 1, 4-bit", "[sdmmc]")
static void do_one_sdmmc_rw_test_unaligned_buffer(int slot, int width, int freq_khz, int ddr)
{
sdmmc_card_t card;
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr);
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr, NO_EMMC);
sdmmc_test_sd_begin(slot, width, freq_khz, ddr, &card);
sdmmc_card_print_info(stdout, &card);
sdmmc_test_rw_unaligned_buffer(&card);

View File

@@ -35,7 +35,7 @@ static void test_mmc_sanitize_blocks(sdmmc_card_t* card)
static void do_one_mmc_sanitize_test(int slot, int width, int freq_khz, int ddr)
{
sdmmc_card_t card;
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr);
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr, IS_EMMC);
sdmmc_test_sd_begin(slot, width, freq_khz, ddr, &card);
sdmmc_card_print_info(stdout, &card);
test_mmc_sanitize_blocks(&card);

View File

@@ -33,7 +33,7 @@ static void test_mmc_trim_blocks(sdmmc_card_t* card)
static void do_one_mmc_trim_test(int slot, int width, int freq_khz, int ddr)
{
sdmmc_card_t card;
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr);
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr, IS_EMMC);
sdmmc_test_sd_begin(slot, width, freq_khz, ddr, &card);
sdmmc_card_print_info(stdout, &card);
test_mmc_trim_blocks(&card);

View File

@@ -55,7 +55,7 @@ static void sdmmc_write_sectors_cmd25_error_test_acmd22(sdmmc_card_t* card, uint
static void do_one_mmc_acmd22_test(int slot, int width, int freq_khz, int ddr)
{
sdmmc_card_t card;
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr);
sdmmc_test_sd_skip_if_board_incompatible(slot, width, freq_khz, ddr, IS_EMMC);
sdmmc_test_sd_begin(slot, width, freq_khz, ddr, &card);
sdmmc_card_print_info(stdout, &card);
sdmmc_write_sectors_cmd25_error_test_acmd22(&card, 4096 * 4);

View File

@@ -3,4 +3,3 @@ CONFIG_SDMMC_BOARD_ESP32P4_EV_BOARD=y
CONFIG_SPIRAM=y
CONFIG_IDF_EXPERIMENTAL_FEATURES=y
CONFIG_SPIRAM_SPEED_200M=y
CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG=y

View File

@@ -1,2 +1 @@
CONFIG_SDMMC_BOARD_ESP32C5_BREAKOUT=y
CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG=y

View File

@@ -1,2 +1 @@
CONFIG_SDMMC_BOARD_ESP32P4_EV_BOARD_WITH_SDSPI=y
CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG=y

View File

@@ -1 +0,0 @@
CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG=y

View File

@@ -1 +0,0 @@
CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG=y