[PATCH v2 4/4] azure/gitlab: Add tests for SiFive Unleashed board
Bin Meng
bmeng.cn at gmail.com
Thu Aug 26 17:33:35 CEST 2021
This adds CI tests for SiFive Unleashed board.
QEMU supports booting exact the same images as used on the real
hardware out of the box, that U-Boot SPL loads U-Boot proper
from either an SD card or the SPI NOR flash, hence we can easily
set up CI to cover these 2 boot flows of SiFive Unleashed board.
With this, now we can have regression testing of mmc-spi-slot and
sifive spi drivers, as well as mmc and spi-nor subsystems.
Signed-off-by: Bin Meng <bmeng.cn at gmail.com>
---
(no changes since v1)
.azure-pipelines.yml | 20 +++++++++++++++++++-
.gitlab-ci.yml | 26 +++++++++++++++++++++++++-
2 files changed, 44 insertions(+), 2 deletions(-)
diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml
index 15507a7357..2e9c1fb4fd 100644
--- a/.azure-pipelines.yml
+++ b/.azure-pipelines.yml
@@ -254,6 +254,12 @@ jobs:
r2dplus_tulip:
TEST_PY_BD: "r2dplus"
TEST_PY_ID: "--id tulip_qemu"
+ sifive_unleashed_sdcard:
+ TEST_PY_BD: "sifive_unleashed"
+ TEST_PY_ID: "--id sdcard_qemu"
+ sifive_unleashed_spi-nor:
+ TEST_PY_BD: "sifive_unleashed"
+ TEST_PY_ID: "--id spi-nor_qemu"
xilinx_zynq_virt:
TEST_PY_BD: "xilinx_zynq_virt"
TEST_PY_ID: "--id qemu"
@@ -289,7 +295,7 @@ jobs:
wget -O - https://github.com/riscv/opensbi/releases/download/v0.9/opensbi-0.9-rv-bin.tar.xz | tar -C /tmp -xJ;
export OPENSBI=/tmp/opensbi-0.9-rv-bin/share/opensbi/ilp32/generic/firmware/fw_dynamic.bin;
fi
- if [[ "${TEST_PY_BD}" == "qemu-riscv64_spl" ]]; then
+ if [[ "${TEST_PY_BD}" == "qemu-riscv64_spl" ]] || [[ "${TEST_PY_BD}" == "sifive_unleashed" ]]; then
wget -O - https://github.com/riscv/opensbi/releases/download/v0.9/opensbi-0.9-rv-bin.tar.xz | tar -C /tmp -xJ;
export OPENSBI=/tmp/opensbi-0.9-rv-bin/share/opensbi/lp64/generic/firmware/fw_dynamic.bin;
fi
@@ -302,6 +308,18 @@ jobs:
cp /opt/grub/grubriscv64.efi ${UBOOT_TRAVIS_BUILD_DIR}/grub_riscv64.efi
cp /opt/grub/grubaa64.efi ${UBOOT_TRAVIS_BUILD_DIR}/grub_arm64.efi
cp /opt/grub/grubarm.efi ${UBOOT_TRAVIS_BUILD_DIR}/grub_arm.efi
+ # create sdcard / spi-nor images for sifive unleashed using genimage
+ if [[ "${TEST_PY_BD}" == "sifive_unleashed" ]]; then
+ mkdir -p root;
+ cp ${UBOOT_TRAVIS_BUILD_DIR}/spl/u-boot-spl.bin .;
+ cp ${UBOOT_TRAVIS_BUILD_DIR}/u-boot.itb .;
+ rm -rf tmp;
+ genimage --inputpath . --config board/sifive/unleashed/genimage_sdcard.cfg;
+ cp images/sdcard.img ${UBOOT_TRAVIS_BUILD_DIR}/;
+ rm -rf tmp;
+ genimage --inputpath . --config board/sifive/unleashed/genimage_spi-nor.cfg;
+ cp images/spi-nor.img ${UBOOT_TRAVIS_BUILD_DIR}/;
+ fi
virtualenv -p /usr/bin/python3 /tmp/venv
. /tmp/venv/bin/activate
pip install -r test/py/requirements.txt
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ffdeaae5a8..599de6e506 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -23,7 +23,7 @@ stages:
wget -O - https://github.com/riscv/opensbi/releases/download/v0.9/opensbi-0.9-rv-bin.tar.xz | tar -C /tmp -xJ;
export OPENSBI=/tmp/opensbi-0.9-rv-bin/share/opensbi/ilp32/generic/firmware/fw_dynamic.bin;
fi
- - if [[ "${TEST_PY_BD}" == "qemu-riscv64_spl" ]]; then
+ - if [[ "${TEST_PY_BD}" == "qemu-riscv64_spl" ]] || [[ "${TEST_PY_BD}" == "sifive_unleashed" ]]; then
wget -O - https://github.com/riscv/opensbi/releases/download/v0.9/opensbi-0.9-rv-bin.tar.xz | tar -C /tmp -xJ;
export OPENSBI=/tmp/opensbi-0.9-rv-bin/share/opensbi/lp64/generic/firmware/fw_dynamic.bin;
fi
@@ -40,6 +40,18 @@ stages:
- cp /opt/grub/grubriscv64.efi $UBOOT_TRAVIS_BUILD_DIR/grub_riscv64.efi
- cp /opt/grub/grubaa64.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm64.efi
- cp /opt/grub/grubarm.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm.efi
+ # create sdcard / spi-nor images for sifive unleashed using genimage
+ - if [[ "${TEST_PY_BD}" == "sifive_unleashed" ]]; then
+ mkdir -p root;
+ cp ${UBOOT_TRAVIS_BUILD_DIR}/spl/u-boot-spl.bin .;
+ cp ${UBOOT_TRAVIS_BUILD_DIR}/u-boot.itb .;
+ rm -rf tmp;
+ genimage --inputpath . --config board/sifive/unleashed/genimage_sdcard.cfg;
+ cp images/sdcard.img ${UBOOT_TRAVIS_BUILD_DIR}/;
+ rm -rf tmp;
+ genimage --inputpath . --config board/sifive/unleashed/genimage_spi-nor.cfg;
+ cp images/spi-nor.img ${UBOOT_TRAVIS_BUILD_DIR}/;
+ fi
- virtualenv -p /usr/bin/python3 /tmp/venv
- . /tmp/venv/bin/activate
- pip install -r test/py/requirements.txt
@@ -317,6 +329,18 @@ r2dplus_tulip test.py:
TEST_PY_ID: "--id tulip_qemu"
<<: *buildman_and_testpy_dfn
+sifive_unleashed_sdcard test.py:
+ variables:
+ TEST_PY_BD: "sifive_unleashed"
+ TEST_PY_ID: "--id sdcard_qemu"
+ <<: *buildman_and_testpy_dfn
+
+sifive_unleashed_spi-nor test.py:
+ variables:
+ TEST_PY_BD: "sifive_unleashed"
+ TEST_PY_ID: "--id spi-nor_qemu"
+ <<: *buildman_and_testpy_dfn
+
xilinx_zynq_virt test.py:
variables:
TEST_PY_BD: "xilinx_zynq_virt"
--
2.25.1
More information about the U-Boot
mailing list