From patchwork Sat Mar 28 14:25:25 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bin Meng X-Patchwork-Id: 244459 List-Id: U-Boot discussion From: bmeng.cn at gmail.com (Bin Meng) Date: Sat, 28 Mar 2020 07:25:25 -0700 Subject: [PATCH v2 1/5] travis: Replace pre-built ARM/ARM64 GRUB images with the one built from source In-Reply-To: <1585405529-21397-1-git-send-email-bmeng.cn@gmail.com> References: <1585405529-21397-1-git-send-email-bmeng.cn@gmail.com> Message-ID: <1585405529-21397-2-git-send-email-bmeng.cn@gmail.com> As of today travis uses the pre-built GRUB ARM/ARM64 images from opensuse. But azure/gitlab are using images built from GRUB 2.04 source. This updates travis to build GRUB ARM/ARM64 UEFI targets from source, to keep in sync with azure/gitlab. Signed-off-by: Bin Meng --- Changes in v2: - new patch: "travis: Replace pre-built ARM/ARM64 GRUB images with the one built from source" .travis.yml | 55 +++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 49 insertions(+), 6 deletions(-) diff --git a/.travis.yml b/.travis.yml index c59bd77..7bdb56a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,6 +14,7 @@ addons: - ubuntu-toolchain-r-test - llvm-toolchain-bionic-7 packages: + - autopoint - cppcheck - sloccount - sparse @@ -55,10 +56,6 @@ install: - cat ~/.buildman - grub-mkimage --prefix="" -o ~/grub_x86.efi -O i386-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd - grub-mkimage --prefix="" -o ~/grub_x64.efi -O x86_64-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd - - mkdir ~/grub2-arm - - ( cd ~/grub2-arm; wget -O - http://download.opensuse.org/ports/armv7hl/distribution/leap/42.2/repo/oss/suse/armv7hl/grub2-arm-efi-2.02~beta2-87.1.armv7hl.rpm | rpm2cpio | cpio -di ) - - mkdir ~/grub2-arm64 - - ( cd ~/grub2-arm64; wget -O - http://download.opensuse.org/ports/aarch64/distribution/leap/42.2/repo/oss/suse/aarch64/grub2-arm64-efi-2.02~beta2-87.1.aarch64.rpm | rpm2cpio | cpio -di ) - wget http://mirrors.kernel.org/ubuntu/pool/main/m/mpfr4/libmpfr4_3.1.4-1_amd64.deb && sudo dpkg -i libmpfr4_3.1.4-1_amd64.deb && rm libmpfr4_3.1.4-1_amd64.deb env: @@ -112,6 +109,48 @@ before_script: popd; fi + # Build GRUB UEFI targets + - if [[ "${QEMU_TARGET}" == "arm-softmmu" ]]; then + git clone git://git.savannah.gnu.org/grub.git /tmp/grub && + pushd /tmp/grub && + git checkout grub-2.04 && + ./bootstrap && + ./configure --target=arm --with-platform=efi + CC=gcc + TARGET_CC=~/.buildman-toolchains/gcc-7.3.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-gcc + TARGET_OBJCOPY=~/.buildman-toolchains/gcc-7.3.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-objcopy + TARGET_STRIP=~/.buildman-toolchains/gcc-7.3.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-strip + TARGET_NM=~/.buildman-toolchains/gcc-7.3.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-nm + TARGET_RANLIB=~/.buildman-toolchains/gcc-7.3.0-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-ranlib && + make -j4 && + ./grub-mkimage -O arm-efi -o ~/grub_arm.efi --prefix= -d + grub-core cat chain configfile echo efinet ext2 fat halt help linux + lsefisystab loadenv lvm minicmd normal part_msdos part_gpt reboot + search search_fs_file search_fs_uuid search_label serial sleep test + true && + popd; + fi + - if [[ "${QEMU_TARGET}" == "aarch64-softmmu" ]]; then + git clone git://git.savannah.gnu.org/grub.git /tmp/grub && + pushd /tmp/grub && + git checkout grub-2.04 && + ./bootstrap && + ./configure --target=aarch64 --with-platform=efi + CC=gcc + TARGET_CC=~/.buildman-toolchains/gcc-7.3.0-nolibc/aarch64-linux/bin/aarch64-linux-gcc + TARGET_OBJCOPY=~/.buildman-toolchains/gcc-7.3.0-nolibc/aarch64-linux/bin/aarch64-linux-objcopy + TARGET_STRIP=~/.buildman-toolchains/gcc-7.3.0-nolibc/aarch64-linux/bin/aarch64-linux-strip + TARGET_NM=~/.buildman-toolchains/gcc-7.3.0-nolibc/aarch64-linux/bin/aarch64-linux-nm + TARGET_RANLIB=~/.buildman-toolchains/gcc-7.3.0-nolibc/aarch64-linux/bin/aarch64-linux-ranlib && + make -j4 && + ./grub-mkimage -O arm64-efi -o ~/grub_arm64.efi --prefix= -d + grub-core cat chain configfile echo efinet ext2 fat halt help linux + lsefisystab loadenv lvm minicmd normal part_msdos part_gpt reboot + search search_fs_file search_fs_uuid search_label serial sleep test + true && + popd; + fi + script: # Comments must be outside the command strings below, or the Travis parser # will get confused. @@ -133,8 +172,12 @@ script: - export UBOOT_TRAVIS_BUILD_DIR=`cd .. && pwd`/.bm-work/${TEST_PY_BD}; cp ~/grub_x86.efi $UBOOT_TRAVIS_BUILD_DIR/; cp ~/grub_x64.efi $UBOOT_TRAVIS_BUILD_DIR/; - cp ~/grub2-arm/usr/lib/grub2/arm-efi/grub.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm.efi; - cp ~/grub2-arm64/usr/lib/grub2/arm64-efi/grub.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm64.efi; + if [[ -e ~/grub_arm.efi ]]; then + cp ~/grub_arm.efi $UBOOT_TRAVIS_BUILD_DIR/; + fi; + if [[ -e ~/grub_arm64.efi ]]; then + cp ~/grub_arm64.efi $UBOOT_TRAVIS_BUILD_DIR/; + fi; if [[ "${TEST_PY_BD}" != "" ]]; then virtualenv -p /usr/bin/python3 /tmp/venv; . /tmp/venv/bin/activate; From patchwork Sat Mar 28 14:25:26 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bin Meng X-Patchwork-Id: 244461 List-Id: U-Boot discussion From: bmeng.cn at gmail.com (Bin Meng) Date: Sat, 28 Mar 2020 07:25:26 -0700 Subject: [PATCH v2 2/5] travis: Build GRUB image for RISC-V 32-bit and 64-bit In-Reply-To: <1585405529-21397-1-git-send-email-bmeng.cn@gmail.com> References: <1585405529-21397-1-git-send-email-bmeng.cn@gmail.com> Message-ID: <1585405529-21397-3-git-send-email-bmeng.cn@gmail.com> This adds the GRUB image build for RISC-V 32-bit and 64-bit. Signed-off-by: Bin Meng --- Changes in v2: - new patch: "travis: Build GRUB image for RISC-V 32-bit and 64-bit" .travis.yml | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/.travis.yml b/.travis.yml index 7bdb56a..10915b26 100644 --- a/.travis.yml +++ b/.travis.yml @@ -97,6 +97,7 @@ before_script: fi - if [[ "${TOOLCHAIN}" == "powerpc" ]]; then ./tools/buildman/buildman --fetch-arch powerpc; fi - if [[ "${TOOLCHAIN}" == "riscv" ]]; then + ./tools/buildman/buildman --fetch-arch riscv32 && ./tools/buildman/buildman --fetch-arch riscv64; fi - if [[ "${QEMU_TARGET}" != "" ]]; then @@ -150,6 +151,46 @@ before_script: true && popd; fi + - if [[ "${QEMU_TARGET}" == "riscv32-softmmu" ]]; then + git clone git://git.savannah.gnu.org/grub.git /tmp/grub && + pushd /tmp/grub && + git checkout grub-2.04 && + ./bootstrap && + ./configure --target=riscv32 --with-platform=efi + CC=gcc + TARGET_CC=~/.buildman-toolchains/gcc-7.3.0-nolibc/riscv32-linux/bin/riscv32-linux-gcc + TARGET_OBJCOPY=~/.buildman-toolchains/gcc-7.3.0-nolibc/riscv32-linux/bin/riscv32-linux-objcopy + TARGET_STRIP=~/.buildman-toolchains/gcc-7.3.0-nolibc/riscv32-linux/bin/riscv32-linux-strip + TARGET_NM=~/.buildman-toolchains/gcc-7.3.0-nolibc/riscv32-linux/bin/riscv32-linux-nm + TARGET_RANLIB=~/.buildman-toolchains/gcc-7.3.0-nolibc/riscv32-linux/bin/riscv32-linux-ranlib && + make -j4 && + ./grub-mkimage -O riscv32-efi -o ~/grub_riscv32.efi --prefix= -d + grub-core cat chain configfile echo efinet ext2 fat halt help linux + lsefisystab loadenv lvm minicmd normal part_msdos part_gpt reboot + search search_fs_file search_fs_uuid search_label serial sleep test + true && + popd; + fi + - if [[ "${QEMU_TARGET}" == "riscv64-softmmu" ]]; then + git clone git://git.savannah.gnu.org/grub.git /tmp/grub && + pushd /tmp/grub && + git checkout grub-2.04 && + ./bootstrap && + ./configure --target=riscv64 --with-platform=efi + CC=gcc + TARGET_CC=~/.buildman-toolchains/gcc-7.3.0-nolibc/riscv64-linux/bin/riscv64-linux-gcc + TARGET_OBJCOPY=~/.buildman-toolchains/gcc-7.3.0-nolibc/riscv64-linux/bin/riscv64-linux-objcopy + TARGET_STRIP=~/.buildman-toolchains/gcc-7.3.0-nolibc/riscv64-linux/bin/riscv64-linux-strip + TARGET_NM=~/.buildman-toolchains/gcc-7.3.0-nolibc/riscv64-linux/bin/riscv64-linux-nm + TARGET_RANLIB=~/.buildman-toolchains/gcc-7.3.0-nolibc/riscv64-linux/bin/riscv64-linux-ranlib && + make -j4 && + ./grub-mkimage -O riscv64-efi -o ~/grub_riscv64.efi --prefix= -d + grub-core cat chain configfile echo efinet ext2 fat halt help linux + lsefisystab loadenv lvm minicmd normal part_msdos part_gpt reboot + search search_fs_file search_fs_uuid search_label serial sleep test + true && + popd; + fi script: # Comments must be outside the command strings below, or the Travis parser @@ -178,6 +219,12 @@ script: if [[ -e ~/grub_arm64.efi ]]; then cp ~/grub_arm64.efi $UBOOT_TRAVIS_BUILD_DIR/; fi; + if [[ -e ~/grub_riscv32.efi ]]; then + cp ~/grub_riscv32.efi $UBOOT_TRAVIS_BUILD_DIR/; + fi; + if [[ -e ~/grub_riscv64.efi ]]; then + cp ~/grub_riscv64.efi $UBOOT_TRAVIS_BUILD_DIR/; + fi; if [[ "${TEST_PY_BD}" != "" ]]; then virtualenv -p /usr/bin/python3 /tmp/venv; . /tmp/venv/bin/activate; From patchwork Sat Mar 28 14:25:27 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bin Meng X-Patchwork-Id: 244462 List-Id: U-Boot discussion From: bmeng.cn at gmail.com (Bin Meng) Date: Sat, 28 Mar 2020 07:25:27 -0700 Subject: [PATCH v2 3/5] azure/gitlab/travis: Add qemu-riscv32 testing In-Reply-To: <1585405529-21397-1-git-send-email-bmeng.cn@gmail.com> References: <1585405529-21397-1-git-send-email-bmeng.cn@gmail.com> Message-ID: <1585405529-21397-4-git-send-email-bmeng.cn@gmail.com> This adds the qemu-riscv32_defconfig test configuration. Signed-off-by: Bin Meng --- Changes in v2: - Update travis to add qemu-riscv32 testing .azure-pipelines.yml | 5 +++++ .gitlab-ci.yml | 9 +++++++++ .travis.yml | 7 +++++++ 3 files changed, 21 insertions(+) diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml index f66d58a..99a93cc 100644 --- a/.azure-pipelines.yml +++ b/.azure-pipelines.yml @@ -215,6 +215,10 @@ jobs: TEST_PY_BD: "qemu-ppce500" TEST_PY_TEST_SPEC: "not sleep" BUILDMAN: "^qemu-ppce500$" + qemu_riscv32: + TEST_PY_BD: "qemu-riscv32" + TEST_PY_TEST_SPEC: "not sleep" + BUILDMAN: "^qemu-riscv32$" qemu_riscv64: TEST_PY_BD: "qemu-riscv64" TEST_PY_TEST_SPEC: "not sleep" @@ -263,6 +267,7 @@ jobs: grub-mkimage --prefix=\"\" -o ~/grub_x86.efi -O i386-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd grub-mkimage --prefix=\"\" -o ~/grub_x64.efi -O x86_64-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd cp /opt/grub/grubriscv64.efi ~/grub_riscv64.efi + cp /opt/grub/grubriscv32.efi ~/grub_riscv32.efi cp /opt/grub/grubaa64.efi ~/grub_arm64.efi cp /opt/grub/grubarm.efi ~/grub_arm.efi # the below corresponds to .gitlab-ci.yml "script" diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 55943bb..39437ce 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -21,6 +21,7 @@ stages: - grub-mkimage --prefix="" -o ~/grub_x86.efi -O i386-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd - grub-mkimage --prefix="" -o ~/grub_x64.efi -O x86_64-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd - cp /opt/grub/grubriscv64.efi ~/grub_riscv64.efi + - cp /opt/grub/grubriscv32.efi ~/grub_riscv32.efi - cp /opt/grub/grubaa64.efi ~/grub_arm64.efi - cp /opt/grub/grubarm.efi ~/grub_arm.efi @@ -296,6 +297,14 @@ qemu-ppce500 test.py: BUILDMAN: "^qemu-ppce500$" <<: *buildman_and_testpy_dfn +qemu-riscv32 test.py: + tags: [ 'all' ] + variables: + TEST_PY_BD: "qemu-riscv32" + TEST_PY_TEST_SPEC: "not sleep" + BUILDMAN: "^qemu-riscv32$" + <<: *buildman_and_testpy_dfn + qemu-riscv64 test.py: tags: [ 'all' ] variables: diff --git a/.travis.yml b/.travis.yml index 10915b26..3226c0e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -571,6 +571,13 @@ matrix: QEMU_TARGET="ppc-softmmu" BUILDMAN="^qemu-ppce500$" TOOLCHAIN="powerpc" + - name: "test/py qemu-riscv32" + env: + - TEST_PY_BD="qemu-riscv32" + TEST_PY_TEST_SPEC="not sleep" + QEMU_TARGET="riscv32-softmmu" + BUILDMAN="^qemu-riscv32$" + TOOLCHAIN="riscv" - name: "test/py qemu-riscv64" env: - TEST_PY_BD="qemu-riscv64" From patchwork Sat Mar 28 14:25:28 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bin Meng X-Patchwork-Id: 244460 List-Id: U-Boot discussion From: bmeng.cn at gmail.com (Bin Meng) Date: Sat, 28 Mar 2020 07:25:28 -0700 Subject: [PATCH v2 4/5] test/py: Update u_boot_utils.find_ram_base to bypass the low 2MiB memory In-Reply-To: <1585405529-21397-1-git-send-email-bmeng.cn@gmail.com> References: <1585405529-21397-1-git-send-email-bmeng.cn@gmail.com> Message-ID: <1585405529-21397-5-git-send-email-bmeng.cn@gmail.com> On some RISC-V targets the low memory is protected that prevents S-mode U-Boot from access. Signed-off-by: Bin Meng --- Changes in v2: None test/py/u_boot_utils.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/test/py/u_boot_utils.py b/test/py/u_boot_utils.py index bf2a0fc..939d82e 100644 --- a/test/py/u_boot_utils.py +++ b/test/py/u_boot_utils.py @@ -237,10 +237,11 @@ def find_ram_base(u_boot_console): raise Exception('Failed to find RAM bank start in `bdinfo`') # We don't want ram_base to be zero as some functions test if the given - # address is NULL (0). Let's add 2MiB then (size of an ARM LPAE/v8 section). + # address is NULL (0). Besides, on some RISC-V targets the low memory + # is protected that prevents S-mode U-Boot from access. + # Let's add 2MiB then (size of an ARM LPAE/v8 section). - if ram_base == 0: - ram_base += 1024 * 1024 * 2 + ram_base += 1024 * 1024 * 2 return ram_base From patchwork Sat Mar 28 14:25:29 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bin Meng X-Patchwork-Id: 244463 List-Id: U-Boot discussion From: bmeng.cn at gmail.com (Bin Meng) Date: Sat, 28 Mar 2020 07:25:29 -0700 Subject: [PATCH v2 5/5] azure/gitlab/travis: Add RISC-V SPL testing In-Reply-To: <1585405529-21397-1-git-send-email-bmeng.cn@gmail.com> References: <1585405529-21397-1-git-send-email-bmeng.cn@gmail.com> Message-ID: <1585405529-21397-6-git-send-email-bmeng.cn@gmail.com> This adds QEMU RISC-V 32/64 SPL testing. Unlike QEMU RISC-V 32/64, we test SPL running in M-mode and U-Boot proper running in S-mode, with a 4-core SMP configuration. Signed-off-by: Bin Meng --- Changes in v2: - Update travis to add RISC-V SPL testing .azure-pipelines.yml | 16 ++++++++++++++++ .gitlab-ci.yml | 24 ++++++++++++++++++++++++ .travis.yml | 22 ++++++++++++++++++++++ 3 files changed, 62 insertions(+) diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml index 99a93cc..fc4836c 100644 --- a/.azure-pipelines.yml +++ b/.azure-pipelines.yml @@ -223,6 +223,14 @@ jobs: TEST_PY_BD: "qemu-riscv64" TEST_PY_TEST_SPEC: "not sleep" BUILDMAN: "^qemu-riscv64$" + qemu_riscv32_spl: + TEST_PY_BD: "qemu-riscv32_spl" + TEST_PY_TEST_SPEC: "not sleep" + BUILDMAN: "^qemu-riscv32_spl$" + qemu_riscv64_spl: + TEST_PY_BD: "qemu-riscv64_spl" + TEST_PY_TEST_SPEC: "not sleep" + BUILDMAN: "^qemu-riscv64_spl$" qemu_x86: TEST_PY_BD: "qemu-x86" TEST_PY_TEST_SPEC: "not sleep" @@ -270,6 +278,14 @@ jobs: cp /opt/grub/grubriscv32.efi ~/grub_riscv32.efi cp /opt/grub/grubaa64.efi ~/grub_arm64.efi cp /opt/grub/grubarm.efi ~/grub_arm.efi + if [[ "${TEST_PY_BD}" == "qemu-riscv32_spl" ]]; then + wget -O - https://github.com/riscv/opensbi/releases/download/v0.6/opensbi-0.6-rv32-bin.tar.xz | tar -C /tmp -xJ; + export OPENSBI=/tmp/opensbi-0.6-rv32-bin/platform/qemu/virt/firmware/fw_dynamic.bin; + fi + if [[ "${TEST_PY_BD}" == "qemu-riscv64_spl" ]]; then + wget -O - https://github.com/riscv/opensbi/releases/download/v0.6/opensbi-0.6-rv64-bin.tar.xz | tar -C /tmp -xJ; + export OPENSBI=/tmp/opensbi-0.6-rv64-bin/platform/qemu/virt/firmware/fw_dynamic.bin; + fi # the below corresponds to .gitlab-ci.yml "script" cd ${WORK_DIR} if [[ "${BUILDMAN}" != "" ]]; then diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 39437ce..6b7aa33 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -24,6 +24,14 @@ stages: - cp /opt/grub/grubriscv32.efi ~/grub_riscv32.efi - cp /opt/grub/grubaa64.efi ~/grub_arm64.efi - cp /opt/grub/grubarm.efi ~/grub_arm.efi + - if [[ "${TEST_PY_BD}" == "qemu-riscv32_spl" ]]; then + wget -O - https://github.com/riscv/opensbi/releases/download/v0.6/opensbi-0.6-rv32-bin.tar.xz | tar -C /tmp -xJ; + export OPENSBI=/tmp/opensbi-0.6-rv32-bin/platform/qemu/virt/firmware/fw_dynamic.bin; + fi + - if [[ "${TEST_PY_BD}" == "qemu-riscv64_spl" ]]; then + wget -O - https://github.com/riscv/opensbi/releases/download/v0.6/opensbi-0.6-rv64-bin.tar.xz | tar -C /tmp -xJ; + export OPENSBI=/tmp/opensbi-0.6-rv64-bin/platform/qemu/virt/firmware/fw_dynamic.bin; + fi after_script: - rm -rf /tmp/uboot-test-hooks /tmp/venv @@ -313,6 +321,22 @@ qemu-riscv64 test.py: BUILDMAN: "^qemu-riscv64$" <<: *buildman_and_testpy_dfn +qemu-riscv32_spl test.py: + tags: [ 'all' ] + variables: + TEST_PY_BD: "qemu-riscv32_spl" + TEST_PY_TEST_SPEC: "not sleep" + BUILDMAN: "^qemu-riscv32_spl$" + <<: *buildman_and_testpy_dfn + +qemu-riscv64_spl test.py: + tags: [ 'all' ] + variables: + TEST_PY_BD: "qemu-riscv64_spl" + TEST_PY_TEST_SPEC: "not sleep" + BUILDMAN: "^qemu-riscv64_spl$" + <<: *buildman_and_testpy_dfn + qemu-x86 test.py: tags: [ 'all' ] variables: diff --git a/.travis.yml b/.travis.yml index 3226c0e..fddaee8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -191,6 +191,14 @@ before_script: true && popd; fi + - if [[ "${TEST_PY_BD}" == "qemu-riscv32_spl" ]]; then + wget -O - https://github.com/riscv/opensbi/releases/download/v0.6/opensbi-0.6-rv32-bin.tar.xz | tar -C /tmp -xJ; + export OPENSBI=/tmp/opensbi-0.6-rv32-bin/platform/qemu/virt/firmware/fw_dynamic.bin; + fi + - if [[ "${TEST_PY_BD}" == "qemu-riscv64_spl" ]]; then + wget -O - https://github.com/riscv/opensbi/releases/download/v0.6/opensbi-0.6-rv64-bin.tar.xz | tar -C /tmp -xJ; + export OPENSBI=/tmp/opensbi-0.6-rv64-bin/platform/qemu/virt/firmware/fw_dynamic.bin; + fi script: # Comments must be outside the command strings below, or the Travis parser @@ -585,6 +593,20 @@ matrix: QEMU_TARGET="riscv64-softmmu" BUILDMAN="^qemu-riscv64$" TOOLCHAIN="riscv" + - name: "test/py qemu-riscv32_spl" + env: + - TEST_PY_BD="qemu-riscv32_spl" + TEST_PY_TEST_SPEC="not sleep" + QEMU_TARGET="riscv32-softmmu" + BUILDMAN="^qemu-riscv32_spl$" + TOOLCHAIN="riscv" + - name: "test/py qemu-riscv64_spl" + env: + - TEST_PY_BD="qemu-riscv64_spl" + TEST_PY_TEST_SPEC="not sleep" + QEMU_TARGET="riscv64-softmmu" + BUILDMAN="^qemu-riscv64_spl$" + TOOLCHAIN="riscv" - name: "test/py qemu-x86" env: - TEST_PY_BD="qemu-x86"