diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 2d572d224f..48baace071 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -5,11 +5,13 @@ stages: - build_idf4.x - build_idf5.0.x - build_idf5.1.x + - build_idf5.2.x - build_idf_master - build_nuttx - test_idf4.x - test_idf5.0.x - test_idf5.1.x + - test_idf5.2.x - test_idf_master - test_host - test_nuttx @@ -17,11 +19,13 @@ stages: - sanitizer_test_idf4.x - sanitizer_test_idf5.0.x - sanitizer_test_idf5.1.x + - sanitizer_test_idf5.2.x - sanitizer_test_idf_master - sanitizer_test_nuttx - sanitizer_check_idf4.x - sanitizer_check_idf5.0.x - sanitizer_check_idf5.1.x + - sanitizer_check_idf5.2.x - sanitizer_check_idf_master - sanitizer_check_nuttx - deploy @@ -297,9 +301,9 @@ create_coverage_reports: - job: tests_armhf_esp32_idf5.0.x_flash_encrypted - job: tests_armhf_esp32s2_idf5.0.x - job: tests_armhf_esp32s2_idf5.0.x_flash_encrypted + - job: tests_armhf_esp32s3_idf5.0.x - job: tests_armhf_esp32c2_idf5.0.x - job: tests_armhf_esp32c3_idf5.0.x - - job: tests_armhf_esp32c3_idf5.0.x_builtin_usb_jtag - job: tests_armhf_esp32c3_idf5.0.x_flash_encrypted # idf 5.1.x - job: tests_armhf_esp32_idf5.1.x @@ -309,10 +313,20 @@ create_coverage_reports: - job: tests_armhf_esp32s3_idf5.1.x - job: tests_armhf_esp32c2_idf5.1.x - job: tests_armhf_esp32c3_idf5.1.x - - job: tests_armhf_esp32c3_idf5.1.x_builtin_usb_jtag - job: tests_armhf_esp32c3_idf5.1.x_flash_encrypted - - job: tests_armhf_esp32c6_idf5.1.x_builtin_usb_jtag - - job: tests_armhf_esp32h2_idf5.1.x_builtin_usb_jtag + - job: tests_armhf_esp32c6_idf5.1.x + - job: tests_armhf_esp32h2_idf5.1.x + # idf 5.2.x + - job: tests_armhf_esp32_idf5.2.x + - job: tests_armhf_esp32_idf5.2.x_flash_encrypted + - job: tests_armhf_esp32s2_idf5.2.x + - job: tests_armhf_esp32s2_idf5.2.x_flash_encrypted + - job: tests_armhf_esp32s3_idf5.2.x + - job: tests_armhf_esp32c2_idf5.2.x + - job: tests_armhf_esp32c3_idf5.2.x + - job: tests_armhf_esp32c3_idf5.2.x_flash_encrypted + - job: tests_armhf_esp32c6_idf5.2.x + - job: tests_armhf_esp32h2_idf5.2.x # idf master - job: tests_armhf_esp32 - job: tests_armhf_esp32_flash_encrypted @@ -321,10 +335,9 @@ create_coverage_reports: - job: tests_armhf_esp32s3 - job: tests_armhf_esp32c2 - job: tests_armhf_esp32c3 - - job: tests_armhf_esp32c3_builtin_usb_jtag - job: tests_armhf_esp32c3_flash_encrypted - - job: tests_armhf_esp32c6_builtin_usb_jtag - - job: tests_armhf_esp32h2_builtin_usb_jtag + - job: tests_armhf_esp32c6 + - job: tests_armhf_esp32h2 - job: test_nuttx_esp32 - job: test_nuttx_esp32s2 - job: test_nuttx_esp32s3 @@ -378,4 +391,3 @@ include: - '.gitlab/ci/test.yml' - '.gitlab/ci/test-sanitizers.yml' - '.gitlab/ci/pre-check.yml' - diff --git a/.gitlab/ci/build-test-app.yml b/.gitlab/ci/build-test-app.yml index 718aaf35a7..1d5a1790c7 100644 --- a/.gitlab/ci/build-test-app.yml +++ b/.gitlab/ci/build-test-app.yml @@ -30,6 +30,8 @@ git ls-remote https://gitlab-ci-token:${BOT_TOKEN}@${CI_SERVER_HOST}:${CI_SERVER_PORT}/espressif/esp-idf.git | grep "refs/heads/$CI_COMMIT_REF_NAME" test $? -eq 0 && echo "Use IDF branch \"$CI_COMMIT_REF_NAME\"" && TEST_APP_CUSTOM_BRANCH=$CI_COMMIT_REF_NAME fi + elif [ "${TEST_APP_IDF_DOCKER_IMAGE}" = "${TEST_APP_IDF5_2_RELEASE_DOCKER_IMAGE}" ] && [ -n "${TEST_APP_IDF5_2_BRANCH:-}" ]; then + TEST_APP_CUSTOM_BRANCH="$TEST_APP_IDF5_2_BRANCH" elif [ "${TEST_APP_IDF_DOCKER_IMAGE}" = "${TEST_APP_IDF5_1_RELEASE_DOCKER_IMAGE}" ] && [ -n "${TEST_APP_IDF5_1_BRANCH:-}" ]; then TEST_APP_CUSTOM_BRANCH="$TEST_APP_IDF5_1_BRANCH" elif [ "${TEST_APP_IDF_DOCKER_IMAGE}" = "${TEST_APP_IDF5_0_RELEASE_DOCKER_IMAGE}" ] && [ -n "${TEST_APP_IDF5_0_BRANCH:-}" ]; then @@ -163,6 +165,14 @@ UT_GET_IDF_VER: "1" extends: .build_test_app_template +.build_idf52x_test_app_template: &build_idf52x_test_app_template + stage: build_idf5.2.x + variables: + TEST_APP_CONFIGS: "" + TEST_APP_IDF_DOCKER_IMAGE: "${TEST_APP_IDF5_2_RELEASE_DOCKER_IMAGE}" + UT_GET_IDF_VER: "1" + extends: .build_test_app_template + .build_idf_master_test_app_template: &build_idf_master_test_app_template stage: build_idf_master allow_failure: true @@ -233,6 +243,66 @@ build_test_app_esp32h2: TEST_APP_CONFIGS: "single_core svtrace_single apptrace_gcov_single" extends: .build_idf_master_test_app_template +############## +# IDF 5.2.X # +############## + +build_test_app_esp32_idf5.2.x: + variables: + CHIP_NAME: "esp32" + TOOLCHAIN_PREFIX: "xtensa-esp32" + BUILD_TEST_APP_DIR: "build_test_app_esp32_idf5.2.x" + TEST_APP_BUILD_TOOLCHAIN_PREFIX: xtensa-esp + extends: .build_idf52x_test_app_template + +build_test_app_esp32s2_idf5.2.x: + variables: + CHIP_NAME: "esp32s2" + TOOLCHAIN_PREFIX: "xtensa-esp32s2" + BUILD_TEST_APP_DIR: "build_test_app_esp32s2_idf5.2.x" + TEST_APP_BUILD_TOOLCHAIN_PREFIX: xtensa-esp + extends: .build_idf52x_test_app_template + +build_test_app_esp32s3_idf5.2.x: + variables: + CHIP_NAME: "esp32s3" + TOOLCHAIN_PREFIX: "xtensa-esp32s3" + BUILD_TEST_APP_DIR: "build_test_app_esp32s3_idf5.2.x" + TEST_APP_BUILD_TOOLCHAIN_PREFIX: xtensa-esp + extends: .build_idf52x_test_app_template + +build_test_app_esp32c2_idf5.2.x: + variables: + CHIP_NAME: "esp32c2" + TOOLCHAIN_PREFIX: "riscv32-esp" + BUILD_TEST_APP_DIR: "build_test_app_esp32c2_idf5.2.x" + TEST_APP_CONFIGS: "single_core svtrace_single apptrace_gcov_single" + extends: .build_idf52x_test_app_template + +build_test_app_esp32c3_idf5.2.x: + variables: + CHIP_NAME: "esp32c3" + TOOLCHAIN_PREFIX: "riscv32-esp" + BUILD_TEST_APP_DIR: "build_test_app_esp32c3_idf5.2.x" + TEST_APP_CONFIGS: "single_core single_core_encrypted svtrace_single apptrace_gcov_single" + extends: .build_idf52x_test_app_template + +build_test_app_esp32c6_idf5.2.x: + variables: + CHIP_NAME: "esp32c6" + TOOLCHAIN_PREFIX: "riscv32-esp" + BUILD_TEST_APP_DIR: "build_test_app_esp32c6_idf5.2.x" + TEST_APP_CONFIGS: "single_core svtrace_single apptrace_gcov_single" + extends: .build_idf52x_test_app_template + +build_test_app_esp32h2_idf5.2.x: + variables: + CHIP_NAME: "esp32h2" + TOOLCHAIN_PREFIX: "riscv32-esp" + BUILD_TEST_APP_DIR: "build_test_app_esp32h2_idf5.2.x" + TEST_APP_CONFIGS: "single_core svtrace_single apptrace_gcov_single" + extends: .build_idf52x_test_app_template + ############# # IDF 5.1.X # ############# diff --git a/.gitlab/ci/test-sanitizers.yml b/.gitlab/ci/test-sanitizers.yml index 02a744dc17..2843f26cf4 100644 --- a/.gitlab/ci/test-sanitizers.yml +++ b/.gitlab/ci/test-sanitizers.yml @@ -42,6 +42,27 @@ ESP_GDB_TOOLCHAIN: "${ESP_V5_3X_RISCV_GDB_TOOLCHAIN}" TOOLCHAIN_PREFIX: "riscv32-esp" +.tests_sanitizers_v5.2.x_template: + extends: .tests_sanitizers_template + stage: sanitizer_test_idf5.2.x + image: $CI_DOCKER_REGISTRY/target-test-env-v5.2:2 + before_script: + - pip install xmlrunner + - pip install pygdbmi==0.9.0.2 + variables: + CHIP_TEST_TOOLCHAIN: "xtensa-${CHIP_NAME}" + TEST_RUN_DIR: "build_test_app_${CHIP_NAME}_idf5.2.x" + ESP_GDB_TOOLCHAIN: "${ESP_V5_2X_XTENSA_GDB_TOOLCHAIN}" + TOOLCHAIN_PREFIX: "xtensa-esp" + ESP_TOOLCHAIN: "${ESP_V5_2X_TOOLCHAIN_VER}" + +.tests_sanitizers_v5.2.x_riscv_template: + extends: .tests_sanitizers_v5.2.x_template + variables: + CHIP_TEST_TOOLCHAIN: "riscv32-esp" + ESP_GDB_TOOLCHAIN: "${ESP_V5_2X_RISCV_GDB_TOOLCHAIN}" + TOOLCHAIN_PREFIX: "riscv32-esp" + .tests_sanitizers_v5.1.x_template: extends: .tests_sanitizers_template stage: sanitizer_test_idf5.1.x @@ -148,41 +169,102 @@ tests_sanitizers_esp32c3: CHIP_NAME: "esp32c3" TEST_RUN_EXTRA_OPTS: "-i latest -b esp32c3-ftdi -p test_*.*Single" -tests_sanitizers_esp32c3_builtin_usb_jtag: +tests_sanitizers_esp32c6: extends: .tests_sanitizers_master_riscv_template tags: - - arm - - test_jtag_arm_esp32c3_builtin + - esp32c6 + - usb_serial_jtag needs: - - job: build_test_app_esp32c3 + - job: build_test_app_esp32c6 - job: build_linux_armhf_sanitizer_test variables: - CHIP_NAME: "esp32c3" - TEST_RUN_EXTRA_OPTS: "-i latest -b esp32c3-builtin -p test_*.*Single" + CHIP_NAME: "esp32c6" + TEST_RUN_EXTRA_OPTS: "-i latest -b esp32c6-builtin -p test_*.*Single -u /dev/serial_ports/ttyACM-esp32" -tests_sanitizers_esp32c6_builtin_usb_jtag: +tests_sanitizers_esp32h2: extends: .tests_sanitizers_master_riscv_template + tags: + - esp32h2 + - usb_serial_jtag + needs: + - job: build_test_app_esp32h2 + - job: build_linux_armhf_sanitizer_test + variables: + CHIP_NAME: "esp32h2" + TEST_RUN_EXTRA_OPTS: "-i latest -b esp32h2-builtin -p test_*.*Single -u /dev/serial_ports/ttyACM-esp32" + +############# +# IDF 5.2.X # +############# + +tests_sanitizers_esp32_idf5.2.x: + extends: .tests_sanitizers_v5.2.x_template + needs: + - job: build_test_app_esp32_idf5.2.x + - job: build_linux_armhf_sanitizer_test + variables: + CHIP_NAME: "esp32" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32-wrover-kit-3.3v -e *.*Encrypted" + +tests_sanitizers_esp32s2_idf5.2.x: + extends: .tests_sanitizers_v5.2.x_template + needs: + - job: build_test_app_esp32s2_idf5.2.x + - job: build_linux_armhf_sanitizer_test + variables: + CHIP_NAME: "esp32s2" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32s2-devkitj -p test_*.*Single" + +tests_sanitizers_esp32s3_idf5.2.x: + extends: .tests_sanitizers_v5.2.x_template + needs: + - job: build_test_app_esp32s3_idf5.2.x + - job: build_linux_armhf_sanitizer_test + variables: + CHIP_NAME: "esp32s3" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32s3-ftdi -p test_*.*Single test_*.*Dual" + +tests_sanitizers_esp32c2_idf5.2.x: + extends: .tests_sanitizers_v5.2.x_riscv_template + needs: + - job: build_test_app_esp32c2_idf5.2.x + - job: build_linux_armhf_sanitizer_test + variables: + CHIP_NAME: "esp32c2" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32c2-ftdi -p test_*.*Single" + +tests_sanitizers_esp32c3_idf5.2.x: + extends: .tests_sanitizers_v5.2.x_riscv_template + needs: + - job: build_test_app_esp32c3_idf5.2.x + - job: build_linux_armhf_sanitizer_test + variables: + CHIP_NAME: "esp32c3" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32c3-ftdi -p test_*.*Single" + +tests_sanitizers_esp32c6_idf5.2.x: + extends: .tests_sanitizers_v5.2.x_riscv_template tags: - esp32c6 - usb_serial_jtag needs: - - job: build_test_app_esp32c6 + - job: build_test_app_esp32c6_idf5.2.x - job: build_linux_armhf_sanitizer_test variables: CHIP_NAME: "esp32c6" - TEST_RUN_EXTRA_OPTS: "-i latest -b esp32c6-builtin -p test_*.*Single -u /dev/ttyACM0" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32c6-builtin -p test_*.*Single -u /dev/serial_ports/ttyACM-esp32" -tests_sanitizers_esp32h2_builtin_usb_jtag: - extends: .tests_sanitizers_master_riscv_template +tests_sanitizers_esp32h2_idf5.2.x: + extends: .tests_sanitizers_v5.2.x_riscv_template tags: - esp32h2 - usb_serial_jtag needs: - - job: build_test_app_esp32h2 + - job: build_test_app_esp32h2_idf5.2.x - job: build_linux_armhf_sanitizer_test variables: CHIP_NAME: "esp32h2" - TEST_RUN_EXTRA_OPTS: "-i latest -b esp32h2-builtin -p test_*.*Single -u /dev/ttyACM0" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32h2-builtin -p test_*.*Single -u /dev/serial_ports/ttyACM-esp32" ############# # IDF 5.1.X # @@ -213,7 +295,7 @@ tests_sanitizers_esp32s3_idf5.1.x: - job: build_linux_armhf_sanitizer_test variables: CHIP_NAME: "esp32s3" - TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32s3-ftdi -p test_*.*Single test_*.*Dual" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32s3-builtin -p test_*.*Single test_*.*Dual" tests_sanitizers_esp32c2_idf5.1.x: extends: .tests_sanitizers_v5.1.x_riscv_template @@ -233,19 +315,7 @@ tests_sanitizers_esp32c3_idf5.1.x: CHIP_NAME: "esp32c3" TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32c3-ftdi -p test_*.*Single" -tests_sanitizers_esp32c3_idf5.1.x_builtin_usb_jtag: - extends: .tests_sanitizers_v5.1.x_riscv_template - tags: - - arm - - test_jtag_arm_esp32c3_builtin - needs: - - job: build_test_app_esp32c3_idf5.1.x - - job: build_linux_armhf_sanitizer_test - variables: - CHIP_NAME: "esp32c3" - TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32c3-builtin -p test_*.*Single" - -tests_sanitizers_esp32c6_idf5.1.x_builtin_usb_jtag: +tests_sanitizers_esp32c6_idf5.1.x: extends: .tests_sanitizers_v5.1.x_riscv_template tags: - esp32c6 @@ -255,9 +325,9 @@ tests_sanitizers_esp32c6_idf5.1.x_builtin_usb_jtag: - job: build_linux_armhf_sanitizer_test variables: CHIP_NAME: "esp32c6" - TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32c6-builtin -p test_*.*Single -u /dev/ttyACM0" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32c6-builtin -p test_*.*Single -u /dev/serial_ports/ttyACM-esp32" -tests_sanitizers_esp32h2_idf5.1.x_builtin_usb_jtag: +tests_sanitizers_esp32h2_idf5.1.x: extends: .tests_sanitizers_v5.1.x_riscv_template tags: - esp32h2 @@ -267,7 +337,7 @@ tests_sanitizers_esp32h2_idf5.1.x_builtin_usb_jtag: - job: build_linux_armhf_sanitizer_test variables: CHIP_NAME: "esp32h2" - TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32h2-builtin -p test_*.*Single -u /dev/ttyACM0" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32h2-builtin -p test_*.*Single -u /dev/serial_ports/ttyACM-esp32" ############# # IDF 5.0.X # @@ -318,18 +388,6 @@ tests_sanitizers_esp32c3_idf5.0.x: CHIP_NAME: "esp32c3" TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_0_X_RELEASE_TAG -b esp32c3-ftdi -p test_*.*Single" -tests_sanitizers_esp32c3_idf5.0.x_builtin_usb_jtag: - extends: .tests_sanitizers_v5.0.x_riscv_template - tags: - - arm - - test_jtag_arm_esp32c3_builtin - needs: - - job: build_test_app_esp32c3_idf5.0.x - - job: build_linux_armhf_sanitizer_test - variables: - CHIP_NAME: "esp32c3" - TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_0_X_RELEASE_TAG -b esp32c3-builtin -p test_*.*Single" - ########### # IDF 4.X # ########### @@ -446,6 +504,14 @@ sanitizer_check_armhf_esp32: variables: TEST_RUN_DIR: "build_test_app_esp32" +sanitizer_check_armhf_esp32_idf5.2.x: + <<: *sanitizer_check_armhf + stage: sanitizer_check_idf5.2.x + needs: + - job: tests_sanitizers_esp32_idf5.2.x + variables: + TEST_RUN_DIR: "build_test_app_esp32_idf5.2.x" + sanitizer_check_armhf_esp32_idf5.1.x: <<: *sanitizer_check_armhf stage: sanitizer_check_idf5.1.x @@ -478,6 +544,14 @@ sanitizer_check_armhf_esp32s2: variables: TEST_RUN_DIR: "build_test_app_esp32s2" +sanitizer_check_armhf_esp32s2_idf5.2.x: + <<: *sanitizer_check_armhf + stage: sanitizer_check_idf5.2.x + needs: + - job: tests_sanitizers_esp32s2_idf5.2.x + variables: + TEST_RUN_DIR: "build_test_app_esp32s2_idf5.2.x" + sanitizer_check_armhf_esp32s2_idf5.1.x: <<: *sanitizer_check_armhf stage: sanitizer_check_idf5.1.x @@ -510,6 +584,14 @@ sanitizer_check_armhf_esp32s3: variables: TEST_RUN_DIR: "build_test_app_esp32s3" +sanitizer_check_armhf_esp32s3_idf5.2.x: + <<: *sanitizer_check_armhf + stage: sanitizer_check_idf5.2.x + needs: + - job: tests_sanitizers_esp32s3_idf5.2.x + variables: + TEST_RUN_DIR: "build_test_app_esp32s3_idf5.2.x" + sanitizer_check_armhf_esp32s3_idf5.1.x: <<: *sanitizer_check_armhf stage: sanitizer_check_idf5.1.x @@ -542,6 +624,14 @@ sanitizer_check_armhf_esp32c2: variables: TEST_RUN_DIR: "build_test_app_esp32c2" +sanitizer_check_armhf_esp32c2_idf5.2.x: + <<: *sanitizer_check_armhf + stage: sanitizer_check_idf5.2.x + needs: + - job: tests_sanitizers_esp32c2_idf5.2.x + variables: + TEST_RUN_DIR: "build_test_app_esp32c2_idf5.2.x" + sanitizer_check_armhf_esp32c2_idf5.1.x: <<: *sanitizer_check_armhf stage: sanitizer_check_idf5.1.x @@ -566,13 +656,13 @@ sanitizer_check_armhf_esp32c3: variables: TEST_RUN_DIR: "build_test_app_esp32c3" -sanitizer_check_armhf_esp32c3_builtin_usb_jtag: +sanitizer_check_armhf_esp32c3_idf5.2.x: <<: *sanitizer_check_armhf - stage: sanitizer_check_idf_master + stage: sanitizer_check_idf5.2.x needs: - - job: tests_sanitizers_esp32c3_builtin_usb_jtag + - job: tests_sanitizers_esp32c3_idf5.2.x variables: - TEST_RUN_DIR: "build_test_app_esp32c3" + TEST_RUN_DIR: "build_test_app_esp32c3_idf5.2.x" sanitizer_check_armhf_esp32c3_idf5.1.x: <<: *sanitizer_check_armhf @@ -582,14 +672,6 @@ sanitizer_check_armhf_esp32c3_idf5.1.x: variables: TEST_RUN_DIR: "build_test_app_esp32c3_idf5.1.x" -sanitizer_check_armhf_esp32c3_idf5.1.x_builtin_usb_jtag: - <<: *sanitizer_check_armhf - stage: sanitizer_check_idf5.1.x - needs: - - job: tests_sanitizers_esp32c3_idf5.1.x_builtin_usb_jtag - variables: - TEST_RUN_DIR: "build_test_app_esp32c3_idf5.1.x" - sanitizer_check_armhf_esp32c3_idf5.0.x: <<: *sanitizer_check_armhf stage: sanitizer_check_idf5.0.x @@ -598,14 +680,6 @@ sanitizer_check_armhf_esp32c3_idf5.0.x: variables: TEST_RUN_DIR: "build_test_app_esp32c3_idf5.0.x" -sanitizer_check_armhf_esp32c3_idf5.0.x_builtin_usb_jtag: - <<: *sanitizer_check_armhf - stage: sanitizer_check_idf5.0.x - needs: - - job: tests_sanitizers_esp32c3_idf5.0.x_builtin_usb_jtag - variables: - TEST_RUN_DIR: "build_test_app_esp32c3_idf5.0.x" - sanitizer_check_armhf_esp32c3_idf4.x: <<: *sanitizer_check_armhf stage: sanitizer_check_idf4.x @@ -614,35 +688,51 @@ sanitizer_check_armhf_esp32c3_idf4.x: variables: TEST_RUN_DIR: "build_test_app_esp32c3_idf4.x" -sanitizer_check_armhf_esp32c6_builtin_usb_jtag: +sanitizer_check_armhf_esp32c6: <<: *sanitizer_check_armhf stage: sanitizer_check_idf_master needs: - - job: tests_sanitizers_esp32c6_builtin_usb_jtag + - job: tests_sanitizers_esp32c6 variables: TEST_RUN_DIR: "build_test_app_esp32c6" -.sanitizer_check_armhf_esp32c6_idf5.1.x_builtin_usb_jtag: +.sanitizer_check_armhf_esp32c6_idf5.2.x: + <<: *sanitizer_check_armhf + stage: sanitizer_check_idf5.2.x + needs: + - job: tests_sanitizers_esp32c6_idf5.2.x + variables: + TEST_RUN_DIR: "build_test_app_esp32c6_idf5.2.x" + +.sanitizer_check_armhf_esp32c6_idf5.1.x: <<: *sanitizer_check_armhf stage: sanitizer_check_idf5.1.x needs: - - job: tests_sanitizers_esp32c6_idf5.1.x_builtin_usb_jtag + - job: tests_sanitizers_esp32c6_idf5.1.x variables: TEST_RUN_DIR: "build_test_app_esp32c6_idf5.1.x" -sanitizer_check_armhf_esp32h2_builtin_usb_jtag: +sanitizer_check_armhf_esp32h2: <<: *sanitizer_check_armhf stage: sanitizer_check_idf_master needs: - - job: tests_sanitizers_esp32h2_builtin_usb_jtag + - job: tests_sanitizers_esp32h2 variables: TEST_RUN_DIR: "build_test_app_esp32h2" -sanitizer_check_armhf_esp32h2_idf5.1.x_builtin_usb_jtag: +sanitizer_check_armhf_esp32h2_idf5.2.x: + <<: *sanitizer_check_armhf + stage: sanitizer_check_idf5.2.x + needs: + - job: tests_sanitizers_esp32h2_idf5.2.x + variables: + TEST_RUN_DIR: "build_test_app_esp32h2_idf5.2.x" + +sanitizer_check_armhf_esp32h2_idf5.1.x: <<: *sanitizer_check_armhf stage: sanitizer_check_idf5.1.x needs: - - job: tests_sanitizers_esp32h2_idf5.1.x_builtin_usb_jtag + - job: tests_sanitizers_esp32h2_idf5.1.x variables: TEST_RUN_DIR: "build_test_app_esp32h2_idf5.1.x" diff --git a/.gitlab/ci/test.yml b/.gitlab/ci/test.yml index a1dbb736a8..eb61f822f6 100644 --- a/.gitlab/ci/test.yml +++ b/.gitlab/ci/test.yml @@ -69,6 +69,28 @@ ESP_GDB_TOOLCHAIN: "${ESP_V5_3X_RISCV_GDB_TOOLCHAIN}" TOOLCHAIN_PREFIX: "riscv32-esp" +.tests_armhf_v5.2.x_template: + extends: .tests_armhf_template + stage: test_idf5.2.x + allow_failure: true + image: $CI_DOCKER_REGISTRY/target-test-env-v5.2:2 + before_script: + - pip install xmlrunner + - pip install pygdbmi==0.9.0.2 + variables: + CHIP_TEST_TOOLCHAIN: "xtensa-${CHIP_NAME}" + TEST_RUN_DIR: "build_test_app_${CHIP_NAME}_idf5.2.x" + ESP_GDB_TOOLCHAIN: "${ESP_V5_2X_XTENSA_GDB_TOOLCHAIN}" + TOOLCHAIN_PREFIX: "xtensa-esp" + ESP_TOOLCHAIN: "${ESP_V5_2X_TOOLCHAIN_VER}" + +.tests_armhf_v5.2.x_riscv_template: + extends: .tests_armhf_v5.2.x_template + variables: + CHIP_TEST_TOOLCHAIN: "riscv32-esp" + ESP_GDB_TOOLCHAIN: "${ESP_V5_2X_RISCV_GDB_TOOLCHAIN}" + TOOLCHAIN_PREFIX: "riscv32-esp" + .tests_armhf_v5.1.x_template: extends: .tests_armhf_template stage: test_idf5.1.x @@ -195,18 +217,6 @@ tests_armhf_esp32c3: CHIP_NAME: "esp32c3" TEST_RUN_EXTRA_OPTS: "-i latest -b esp32c3-ftdi -p test_*.*Single" -tests_armhf_esp32c3_builtin_usb_jtag: - extends: .tests_armhf_master_riscv_template - tags: - - arm - - test_jtag_arm_esp32c3_builtin - needs: - - job: build_test_app_esp32c3 - - job: build_linux_armhf_test - variables: - CHIP_NAME: "esp32c3" - TEST_RUN_EXTRA_OPTS: "-i latest -b esp32c3-builtin -p test_*.*Single" - tests_armhf_esp32c3_flash_encrypted: extends: .tests_armhf_master_riscv_template tags: @@ -218,7 +228,7 @@ tests_armhf_esp32c3_flash_encrypted: CHIP_NAME: "esp32c3" TEST_RUN_EXTRA_OPTS: "-i latest -b esp32c3-ftdi -p test_*.*SingleEncrypted" -tests_armhf_esp32c6_builtin_usb_jtag: +tests_armhf_esp32c6: extends: .tests_armhf_master_riscv_template tags: - esp32c6 @@ -228,9 +238,9 @@ tests_armhf_esp32c6_builtin_usb_jtag: - job: build_linux_armhf_test variables: CHIP_NAME: "esp32c6" - TEST_RUN_EXTRA_OPTS: "-i latest -b esp32c6-builtin -p test_*.*Single -u /dev/ttyACM0" + TEST_RUN_EXTRA_OPTS: "-i latest -b esp32c6-builtin -p test_*.*Single -u /dev/serial_ports/ttyACM-esp32" -tests_armhf_esp32h2_builtin_usb_jtag: +tests_armhf_esp32h2: extends: .tests_armhf_master_riscv_template tags: - esp32h2 @@ -241,7 +251,113 @@ tests_armhf_esp32h2_builtin_usb_jtag: - job: build_linux_armhf_test variables: CHIP_NAME: "esp32h2" - TEST_RUN_EXTRA_OPTS: "-i latest -b esp32h2-builtin -p test_*.*Single -u /dev/ttyACM0" + TEST_RUN_EXTRA_OPTS: "-i latest -b esp32h2-builtin -p test_*.*Single -u /dev/serial_ports/ttyACM-esp32" + +############## +# IDF 5.2.X # +############## + +tests_armhf_esp32_idf5.2.x: + extends: .tests_armhf_v5.2.x_template + needs: + - job: build_test_app_esp32_idf5.2.x + - job: build_linux_armhf_test + variables: + CHIP_NAME: "esp32" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32-wrover-kit-3.3v -e *.*Encrypted" + +tests_armhf_esp32_idf5.2.x_flash_encrypted: + extends: .tests_armhf_v5.2.x_template + tags: + - test_jtag_arm_flash_encryption + needs: + - job: build_test_app_esp32_idf5.2.x + - job: build_linux_armhf_test + variables: + CHIP_NAME: "esp32" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32-wrover-kit-3.3v -p test_*.*Encrypted" + +tests_armhf_esp32s2_idf5.2.x: + extends: .tests_armhf_v5.2.x_template + needs: + - job: build_test_app_esp32s2_idf5.2.x + - job: build_linux_armhf_test + variables: + CHIP_NAME: "esp32s2" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32s2-devkitj -p test_*.*Single" + +tests_armhf_esp32s2_idf5.2.x_flash_encrypted: + extends: .tests_armhf_v5.2.x_template + tags: + - test_jtag_arm_flash_encryption_esp32s2 + needs: + - job: build_test_app_esp32s2_idf5.2.x + - job: build_linux_armhf_test + variables: + CHIP_NAME: "esp32s2" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32s2-devkitj -p test_*.*SingleEncrypted" + +tests_armhf_esp32s3_idf5.2.x: + extends: .tests_armhf_v5.2.x_template + needs: + - job: build_test_app_esp32s3_idf5.2.x + - job: build_linux_armhf_test + variables: + CHIP_NAME: "esp32s3" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32s3-ftdi -p test_*.*Single test_*.*Dual" + +tests_armhf_esp32c2_idf5.2.x: + extends: .tests_armhf_v5.2.x_riscv_template + needs: + - job: build_test_app_esp32c2_idf5.2.x + - job: build_linux_armhf_test + variables: + CHIP_NAME: "esp32c2" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32c2-ftdi -p test_*.*Single" + +tests_armhf_esp32c3_idf5.2.x: + extends: .tests_armhf_v5.2.x_riscv_template + needs: + - job: build_test_app_esp32c3_idf5.2.x + - job: build_linux_armhf_test + variables: + CHIP_NAME: "esp32c3" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32c3-ftdi -p test_*.*Single" + +tests_armhf_esp32c3_idf5.2.x_flash_encrypted: + extends: .tests_armhf_v5.2.x_riscv_template + tags: + - test_jtag_arm_flash_encryption_esp32c3 + needs: + - job: build_test_app_esp32c3_idf5.2.x + - job: build_linux_armhf_test + variables: + CHIP_NAME: "esp32c3" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32c3-ftdi -p test_*.*SingleEncrypted" + +tests_armhf_esp32c6_idf5.2.x: + extends: .tests_armhf_v5.2.x_riscv_template + tags: + - esp32c6 + - usb_serial_jtag + needs: + - job: build_test_app_esp32c6_idf5.2.x + - job: build_linux_armhf_test + variables: + CHIP_NAME: "esp32c6" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32c6-builtin -p test_*.*Single -u /dev/serial_ports/ttyACM-esp32" + +tests_armhf_esp32h2_idf5.2.x: + extends: .tests_armhf_v5.2.x_riscv_template + tags: + - esp32h2 + - usb_serial_jtag + needs: + - job: build_test_app_esp32h2_idf5.2.x + - job: build_linux_armhf_test + variables: + CHIP_NAME: "esp32h2" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_2_X_RELEASE_TAG -b esp32h2-builtin -p test_*.*Single -u /dev/serial_ports/ttyACM-esp32" ############# # IDF 5.1.X # @@ -314,18 +430,6 @@ tests_armhf_esp32c3_idf5.1.x: CHIP_NAME: "esp32c3" TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32c3-ftdi -p test_*.*Single" -tests_armhf_esp32c3_idf5.1.x_builtin_usb_jtag: - extends: .tests_armhf_v5.1.x_riscv_template - tags: - - arm - - test_jtag_arm_esp32c3_builtin - needs: - - job: build_test_app_esp32c3_idf5.1.x - - job: build_linux_armhf_test - variables: - CHIP_NAME: "esp32c3" - TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32c3-builtin -p test_*.*Single" - tests_armhf_esp32c3_idf5.1.x_flash_encrypted: extends: .tests_armhf_v5.1.x_riscv_template tags: @@ -337,7 +441,7 @@ tests_armhf_esp32c3_idf5.1.x_flash_encrypted: CHIP_NAME: "esp32c3" TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32c3-ftdi -p test_*.*SingleEncrypted" -tests_armhf_esp32c6_idf5.1.x_builtin_usb_jtag: +tests_armhf_esp32c6_idf5.1.x: extends: .tests_armhf_v5.1.x_riscv_template tags: - esp32c6 @@ -347,9 +451,9 @@ tests_armhf_esp32c6_idf5.1.x_builtin_usb_jtag: - job: build_linux_armhf_test variables: CHIP_NAME: "esp32c6" - TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32c6-builtin -p test_*.*Single -u /dev/ttyACM0" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32c6-builtin -p test_*.*Single -u /dev/serial_ports/ttyACM-esp32" -tests_armhf_esp32h2_idf5.1.x_builtin_usb_jtag: +tests_armhf_esp32h2_idf5.1.x: extends: .tests_armhf_v5.1.x_riscv_template tags: - esp32h2 @@ -359,7 +463,7 @@ tests_armhf_esp32h2_idf5.1.x_builtin_usb_jtag: - job: build_linux_armhf_test variables: CHIP_NAME: "esp32h2" - TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32h2-builtin -p test_*.*Single -u /dev/ttyACM0" + TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_1_X_RELEASE_TAG -b esp32h2-builtin -p test_*.*Single -u /dev/serial_ports/ttyACM-esp32" ############# # IDF 5.0.X # @@ -432,18 +536,6 @@ tests_armhf_esp32c3_idf5.0.x: CHIP_NAME: "esp32c3" TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_0_X_RELEASE_TAG -b esp32c3-ftdi -p test_*.*Single" -tests_armhf_esp32c3_idf5.0.x_builtin_usb_jtag: - extends: .tests_armhf_v5.0.x_riscv_template - tags: - - arm - - test_jtag_arm_esp32c3_builtin - needs: - - job: build_test_app_esp32c3_idf5.0.x - - job: build_linux_armhf_test - variables: - CHIP_NAME: "esp32c3" - TEST_RUN_EXTRA_OPTS: "-i $TEST_APP_IDF5_0_X_RELEASE_TAG -b esp32c3-builtin -p test_*.*Single" - tests_armhf_esp32c3_idf5.0.x_flash_encrypted: extends: .tests_armhf_v5.0.x_riscv_template tags: @@ -654,22 +746,16 @@ test_nuttx_esp32s2: test_nuttx_esp32s3: extends: - .test_nuttx_template - tags: - - esp32s3 - - usb_serial_jtag variables: CHIP: esp32s3 - TEST_BOARD: "esp32s3-builtin" + TEST_BOARD: "esp32s3-ftdi" test_nuttx_esp32c3: extends: - .test_nuttx_template - tags: - - esp32c3 - - usb_serial_jtag variables: CHIP: esp32c3 - TEST_BOARD: "esp32c3-builtin" + TEST_BOARD: "esp32c3-ftdi" TOOLCHAIN_PREFIX: "riscv32-esp" ESP_GDB_TOOLCHAIN: "${ESP_V5_1X_RISCV_GDB_TOOLCHAIN}" CHIP_TEST_TOOLCHAIN: "riscv32-esp" diff --git a/testing/esp/test_apps/gen_ut_app/configs/psram_dual b/testing/esp/test_apps/gen_ut_app/configs/psram_dual index 141cb36b1c..0e2b90f6c2 100644 --- a/testing/esp/test_apps/gen_ut_app/configs/psram_dual +++ b/testing/esp/test_apps/gen_ut_app/configs/psram_dual @@ -52,4 +52,3 @@ CONFIG_SPIRAM_SPIWP_SD3_PIN=7 # PSRAM settings for ESP32S3 # CONFIG_ESP32S3_SPIRAM_SUPPORT=y -CONFIG_SPIRAM_MODE_OCT=y \ No newline at end of file diff --git a/testing/esp/test_apps/gen_ut_app/configs/psram_single b/testing/esp/test_apps/gen_ut_app/configs/psram_single index 3617f65390..04298479e6 100644 --- a/testing/esp/test_apps/gen_ut_app/configs/psram_single +++ b/testing/esp/test_apps/gen_ut_app/configs/psram_single @@ -57,4 +57,3 @@ CONFIG_ESP32S2_SPIRAM_SUPPORT=y # PSRAM settings for ESP32S3 # CONFIG_ESP32S3_SPIRAM_SUPPORT=y -CONFIG_SPIRAM_MODE_OCT=y