summaryrefslogtreecommitdiffstats
path: root/meta/recipes-bsp/opensbi/opensbi_0.6.bb
diff options
context:
space:
mode:
authorAlistair Francis <alistair.francis@wdc.com>2020-02-24 10:35:43 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-02-28 23:08:11 +0000
commit20e9ca7745fc8f2392c37c5e5e8d5b0a5f72c06c (patch)
treeb49f552636a98ae9b552e88e79b9f5b67f7f7e36 /meta/recipes-bsp/opensbi/opensbi_0.6.bb
parent5198aa954ad0bffb7d6609e5118f642a59595b18 (diff)
downloadopenembedded-core-contrib-20e9ca7745fc8f2392c37c5e5e8d5b0a5f72c06c.tar.gz
opensbi: Update to v0.6
Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-bsp/opensbi/opensbi_0.6.bb')
-rw-r--r--meta/recipes-bsp/opensbi/opensbi_0.6.bb48
1 files changed, 48 insertions, 0 deletions
diff --git a/meta/recipes-bsp/opensbi/opensbi_0.6.bb b/meta/recipes-bsp/opensbi/opensbi_0.6.bb
new file mode 100644
index 0000000000..56f2d4b915
--- /dev/null
+++ b/meta/recipes-bsp/opensbi/opensbi_0.6.bb
@@ -0,0 +1,48 @@
+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."
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://COPYING.BSD;md5=42dd9555eb177f35150cf9aa240b61e5"
+
+require opensbi-payloads.inc
+
+inherit autotools-brokensep deploy
+
+SRCREV = "ac5e821d50be631f26274765a59bc1b444ffd862"
+SRC_URI = "git://github.com/riscv/opensbi.git \
+ file://0001-Makefile-Don-t-specify-mabi-or-march.patch \
+ "
+
+S = "${WORKDIR}/git"
+
+EXTRA_OEMAKE += "PLATFORM=${RISCV_SBI_PLAT} I=${D}"
+# If RISCV_SBI_PAYLOAD is set then include it as a payload
+EXTRA_OEMAKE_append = " ${@riscv_get_extra_oemake_image(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}/platform/${RISCV_SBI_PLAT}/lib
+ rm -r ${D}/platform/${RISCV_SBI_PLAT}/firmware/payloads
+ rm -r ${D}/lib
+}
+
+do_deploy () {
+ install -m 755 ${D}/platform/${RISCV_SBI_PLAT}/firmware/fw_payload.* ${DEPLOYDIR}/
+ install -m 755 ${D}/platform/${RISCV_SBI_PLAT}/firmware/fw_jump.* ${DEPLOYDIR}/
+ install -m 755 ${D}/platform/${RISCV_SBI_PLAT}/firmware/fw_dynamic.* ${DEPLOYDIR}/
+}
+
+addtask deploy before do_build after do_install
+
+FILES_${PN} += "/platform/${RISCV_SBI_PLAT}/firmware/fw_jump.*"
+FILES_${PN} += "/platform/${RISCV_SBI_PLAT}/firmware/fw_payload.*"
+FILES_${PN} += "/platform/${RISCV_SBI_PLAT}/firmware/fw_dynamic.*"
+
+COMPATIBLE_HOST = "(riscv64|riscv32).*"
+INHIBIT_PACKAGE_STRIP = "1"
+
+SECURITY_CFLAGS = ""