Add support for building for AArch64, also remove the requirement to
specify a platform.

Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>
---
 recipes-extended/xvisor/xvisor-configs.inc | 22 +++++++++++-----------
 recipes-extended/xvisor/xvisor_git.bb      |  9 +++++++--
 2 files changed, 18 insertions(+), 13 deletions(-)

diff --git a/recipes-extended/xvisor/xvisor-configs.inc 
b/recipes-extended/xvisor/xvisor-configs.inc
index 099128d..f53bba2 100644
--- a/recipes-extended/xvisor/xvisor-configs.inc
+++ b/recipes-extended/xvisor/xvisor-configs.inc
@@ -1,15 +1,15 @@
-def get_oemake_config(d):
-    plat = d.getVar('XVISOR_PLAT')
-
-    if plat is None:
-        return ""
-
-    if 'riscv/virt32' in plat:
-        return "generic-32b-defconfig"
-    if 'riscv/virt64' in plat:
-        return "generic-64b-defconfig"
+def get_oemake_config(a, d):
+    import re
 
-    return ""
+    if   re.match('armeb$', a):               return 'generic-v7-defconfig'
+    elif re.match('aarch64$', a):             return 'generic-v8-defconfig'
+    elif re.match('aarch64_be$', a):          return 'generic-v8-defconfig'
+    elif re.match('aarch64_ilp32$', a):       return 'generic-v8-defconfig'
+    elif re.match('aarch64_be_ilp32$', a):    return 'generic-v8-defconfig'
+    elif re.match('riscv32(eb|)$', a):        return 'generic-32b-defconfig'
+    elif re.match('riscv64(eb|)$', a):        return 'generic-64b-defconfig'
+    else:
+        bb.error("cannot map '%s' to a Xvisor defconfig" % a)
 
 def map_xvisor_arch(a, d):
     import re
diff --git a/recipes-extended/xvisor/xvisor_git.bb 
b/recipes-extended/xvisor/xvisor_git.bb
index 45a7baf..64b0f22 100644
--- a/recipes-extended/xvisor/xvisor_git.bb
+++ b/recipes-extended/xvisor/xvisor_git.bb
@@ -18,7 +18,7 @@ S = "${WORKDIR}/git"
 
 EXTRA_OEMAKE += "ARCH=\"${@map_xvisor_arch(d.getVar('TARGET_ARCH'), d)}\" 
I=${D}"
 
-CONFIG = "${@get_oemake_config(d)}"
+CONFIG = "${@get_oemake_config(d.getVar('TARGET_ARCH'), d)}"
 
 do_configure() {
     oe_runmake ${CONFIG}
@@ -35,11 +35,16 @@ do_install_append() {
 do_deploy () {
     install -d ${DEPLOY_DIR_IMAGE}
     install -m 755 ${D}/vmm.* ${DEPLOY_DIR_IMAGE}/
+
+    if [[ -f "${D}/*.dtb" ]]; then
+        install -m 755 ${D}/*.dtb ${DEPLOY_DIR_IMAGE}/
+    fi
 }
 
 addtask deploy after do_install
 
 FILES_${PN} += "/vmm.*"
+FILES_${PN} += "/*.dtb"
 
-COMPATIBLE_HOST = "(riscv64|riscv32).*"
+COMPATIBLE_HOST = "(aarch64|riscv64|riscv32).*"
 INHIBIT_PACKAGE_STRIP = "1"
-- 
2.27.0

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#5713): 
https://lists.yoctoproject.org/g/meta-virtualization/message/5713
Mute This Topic: https://lists.yoctoproject.org/mt/76177583/21656
Group Owner: meta-virtualization+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub  
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to