Skip to content

Commit

Permalink
opensbi-sifive: bump to 1.3.1 and add a recipe
Browse files Browse the repository at this point in the history
Here is list of changes in this major release

riscv-software-src/opensbi@v1.2...v1.3.1

Signed-off-by: Thomas Perrot <[email protected]>
  • Loading branch information
tprrt committed Nov 8, 2023
1 parent 0ed794d commit 1fdd257
Show file tree
Hide file tree
Showing 4 changed files with 55 additions and 0 deletions.
2 changes: 2 additions & 0 deletions conf/machine/freedom-u540.conf
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ PREFERRED_PROVIDER_virtual/kernel ?= "linux-sifive"
PREFERRED_PROVIDER_u-boot ?= "u-boot-sifive"
PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-sifive"

PREFERRED_PROVIDER_opensbi ?= "opensbi-sifive"

EXTRA_IMAGEDEPENDS += "opensbi"
RISCV_SBI_PLAT = "generic"

Expand Down
2 changes: 2 additions & 0 deletions conf/machine/unmatched.conf
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ PREFERRED_PROVIDER_virtual/kernel ?= "linux-sifive"
PREFERRED_PROVIDER_u-boot ?= "u-boot-sifive"
PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-sifive"

PREFERRED_PROVIDER_opensbi ?= "opensbi-sifive"

EXTRA_IMAGEDEPENDS += "opensbi"
RISCV_SBI_PLAT = "generic"

Expand Down
49 changes: 49 additions & 0 deletions recipes-bsp/opensbi/opensbi-sifive_1.3.bb
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
SUMMARY = "RISC-V Open Source Supervisor Binary Interface (OpenSBI)"
DESCRIPTION = "OpenSBI aims to provide an open-source and extensible implementation of the RISC-V SBI specification for a platform specific firmware (M-mode) and a general purpose OS, hypervisor or bootloader (S-mode or HS-mode). OpenSBI implementation can be easily extended by RISC-V platform or System-on-Chip vendors to fit a particular hadware configuration."
HOMEPAGE = "https://github.com/riscv/opensbi"
LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://COPYING.BSD;md5=42dd9555eb177f35150cf9aa240b61e5"

PROVIDES += "opensbi"

require recipes-bsp/opensbi/opensbi-payloads.inc

inherit autotools-brokensep deploy

SRCREV = "057eb10b6d523540012e6947d5c9f63e95244e94"
SRC_URI = "git://github.com/riscv/opensbi.git;branch=release-1.3.x;protocol=https"

S = "${WORKDIR}/git"

EXTRA_OEMAKE += "PLATFORM=${RISCV_SBI_PLAT} I=${D} FW_PIC=n CLANG_TARGET= "
# If RISCV_SBI_PAYLOAD is set then include it as a payload
EXTRA_OEMAKE:append = " ${@riscv_get_extra_oemake_image(d)}"
EXTRA_OEMAKE:append = " ${@riscv_get_extra_oemake_fdt(d)}"

# Required if specifying a custom payload
do_compile[depends] += "${@riscv_get_do_compile_depends(d)}"

do_install:append() {
# In the future these might be required as a dependency for other packages.
# At the moment just delete them to avoid warnings
rm -r ${D}/include
rm -r ${D}/lib*
rm -r ${D}/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/payloads
}

do_deploy () {
install -m 755 ${D}/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_payload.* ${DEPLOYDIR}/
install -m 755 ${D}/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_jump.* ${DEPLOYDIR}/
install -m 755 ${D}/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_dynamic.* ${DEPLOYDIR}/
}

addtask deploy before do_build after do_install

FILES:${PN} += "/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_jump.*"
FILES:${PN} += "/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_payload.*"
FILES:${PN} += "/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_dynamic.*"

COMPATIBLE_HOST = "(riscv64|riscv32).*"
INHIBIT_PACKAGE_STRIP = "1"

SECURITY_CFLAGS = ""
2 changes: 2 additions & 0 deletions scripts/kas/qemuriscv64.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,5 @@ local_conf_header:
PREFERRED_PROVIDER_u-boot:qemuriscv64 = "u-boot-sifive"
PREFERRED_PROVIDER_virtual/bootloader:qemuriscv64 = "u-boot-sifive"
PREFERRED_PROVIDER_opensbi ?= "opensbi-sifive"

0 comments on commit 1fdd257

Please sign in to comment.