[meta-freescale] [PATCH] qemu-qoriq: add recipes
chunrong.guo at nxp.com
chunrong.guo at nxp.com
Wed Jun 13 23:01:51 PDT 2018
From: Chunrong Guo <chunrong.guo at nxp.com>
*include the following changes:
6c297a7 - vfio fsl-mc: Expose DPIO cacheable region as cacheable
8e929a8 - fsl-mc: mc-bus device fdt node creation
4be2ad9 - fsl-mc: Add APIs to provide root mc-portal region
b1abcf2 - fsl-mc: Add API to provide mc-portals region
22d303a - vfio fsl-mc: Configure and setup irqfd
cfc1b9a - vfio fsl-mc: Enable DPMCP emulation
c5b28d1 - vfio fsl-mc: Add support to close dpmcp command interface
56353d9 - vfio fsl-mc: Support non dprc/dpmcp command interface on dpmcp
12a9dae - vfio fsl-mc: Add support for dprc command interface on dpmcp
a24861b - vfio fsl-mc: Add support to open dpmcp command interface
ae9efbb - vfio fsl-mc: forward non-emulated mc commands to VFIO
913ab98 - vfio fsl-mc: Add support of get_obj_irq mc commands
9883a03 - vfio fsl-mc: Add support of set obj_irq mc commands
57db3b4 - vfio fsl-mc: Add support of get_irq mc commands
c87c8c1 - vfio fsl-mc: Add support of set_irq mc commands
35413a8 - vfio fsl-mc: Add support of get_obj_region command
edca25c - vfio-fsl-mc: Add support of dprc get-attr command
74ca7d2 - vfio-fsl-mc: Add support of dprc open/close command
bb895ff - vfio-fsl-mc: Add framework for handling mc-portal commands
eb51475 - vfio fsl-mc: Scan dprc container and realize child devices
82a1b97 - vfio-fsl-mc: Register mc-device regions with mc-bus
f2a56a1 - vfio fsl-mc: add support for non-dprc device
c36e7f6 - vfio fsl-mc: Add nested dprc support
be171ec - vfio fsl-mc: framework to support fsl-mc-bus in vfio
16010da - vfio fsl-mc: Sync linux header for fsl-mc device
be260fc - fsl-mc: add interfaces to set/get msi messages
f9756ce - fsl-mc: Add mc-bus-devices region registration interface
5ae0227 - vfio-fsl-mc: Initialize fsl-mc bus devices device-id
9bdfa45 - fsl-mc: Add mc-bus-devices registration interface
c996be1 - fsl-mc: define device-id map for mc-bus devices
Signed-off-by: Chunrong Guo <chunrong.guo at nxp.com>
---
recipes-devtools/qemu/qemu-qoriq/memfd.patch | 41 +++++++++++++
recipes-devtools/qemu/qemu-qoriq/powerpc_rom.bin | Bin 0 -> 4096 bytes
recipes-devtools/qemu/qemu-qoriq/run-ptest | 10 ++++
recipes-devtools/qemu/qemu-qoriq_git.bb | 72 +++++++++++++++++++++++
4 files changed, 123 insertions(+)
create mode 100644 recipes-devtools/qemu/qemu-qoriq/memfd.patch
create mode 100644 recipes-devtools/qemu/qemu-qoriq/powerpc_rom.bin
create mode 100644 recipes-devtools/qemu/qemu-qoriq/run-ptest
create mode 100644 recipes-devtools/qemu/qemu-qoriq_git.bb
diff --git a/recipes-devtools/qemu/qemu-qoriq/memfd.patch b/recipes-devtools/qemu/qemu-qoriq/memfd.patch
new file mode 100644
index 0000000..d9e7a45
--- /dev/null
+++ b/recipes-devtools/qemu/qemu-qoriq/memfd.patch
@@ -0,0 +1,41 @@
+From d60ecdd94f4054aa0ec615824d5efdb4cebc7db9 Mon Sep 17 00:00:00 2001
+From: Ting Liu <ting.liu at nxp.com>
+Date: Thu, 19 Apr 2018 11:47:16 +0800
+Subject: [PATCH] memfd
+
+---
+ configure | 2 +-
+ util/memfd.c | 4 +---
+ 2 files changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/configure b/configure
+index be4d326..cb5197c 100755
+--- a/configure
++++ b/configure
+@@ -3735,7 +3735,7 @@ fi
+ # check if memfd is supported
+ memfd=no
+ cat > $TMPC << EOF
+-#include <sys/memfd.h>
++#include <sys/mman.h>
+
+ int main(void)
+ {
+diff --git a/util/memfd.c b/util/memfd.c
+index 4571d1a..412e94a 100644
+--- a/util/memfd.c
++++ b/util/memfd.c
+@@ -31,9 +31,7 @@
+
+ #include "qemu/memfd.h"
+
+-#ifdef CONFIG_MEMFD
+-#include <sys/memfd.h>
+-#elif defined CONFIG_LINUX
++#if defined CONFIG_LINUX && !defined CONFIG_MEMFD
+ #include <sys/syscall.h>
+ #include <asm/unistd.h>
+
+--
+2.7.4
+
diff --git a/recipes-devtools/qemu/qemu-qoriq/powerpc_rom.bin b/recipes-devtools/qemu/qemu-qoriq/powerpc_rom.bin
new file mode 100644
index 0000000000000000000000000000000000000000..c4044296c51529878f5d2a46230949d09ef1d4e2
GIT binary patch
literal 4096
zcmeHJQEMDk6h4#Pn8Z}5VUd7UHb$_7oo16ZWvl_Wq7bx}RV;`Ib~1CD44Ivo&djz(
z20DZ^Sm;B1^P!YL$|?xr50Dxx<W1-=Nb#jAB1A;VL+N<VoqKm?mo4n8m<wmm`OZ1_
zyXT&{cV+<&$6*H!JMdrW!2M?){{b*MgY{|vBVVIFj`A$ZQ4}1?4fK1d-SMjkR6spQ
z_GQ*+=6p}1edN8j-n~$%zt8GvfO5${M!BlzGeJ!LBFYOW#4B+{V8!s70opWVtXD3@
zDYsT7E6WA+<uUG+56Lw@`umUh__ at Kqf6n8Nx^M%7WfVF8S{METF%22NokAEuO`<ed
z!}V9WmvV;4>hcYvi`OX{&F6WBRnw|kl?KhhA=dzmNj!qa7`0aw&RpKS@@VUVz<iB3
zMpQ$|xW4%zN%nJ?dQI!dwdlD}J%p)_T~Q;N05Shf4N8(@M;Ibka{YvEauGg?vIjtA
zbqtD8FaGQiqq(Cfl+!&ZM!lezVg)+I$)>XgU6}SL_e61d_GCWQDdT+4h>0J6J|vY6
z?n%vooL{&VPxp1(X12&CZmJJ at _@6`fnCE!)^YzN9>I}3^S{w(>9Y>+QAbsI`)YLe%
zhsb^kg>uN3pwJm3OoIDU=pIs8v?nECzNOo>lb47s&EaP<^|yU5q9tpZ%W9g#!{`Jv
zr|0H!wb2^S$51#BeALr<I95i*YdC^h)=oK8XTDy_e`39s6Efd#dZB8#PUySXQy=qb
zi2XtSc~LLG(q`vgB_qvg-;s)C8L6AkMN at f2<h+bp)Cgs?d9P4!Wp?qtu*JH{JmPj=
z9X5+MwRTe6R?5lm8zJYFbLBH3ET5Y^zkF at UH=8!Po3GplAFV<2I`~fY=BxF=C+}Vd
z-|60b7yIC&+PdqT)q3&`#C`C|bJS5^Z at xl5eDtl8^${oMHJ06gIf&9&36H?r)A;V4
z#+S@==jEcgSd;QG&rb6RyBX$`vA~Dw|Jwn1zD7)T#WL6@;i|`=;hOjXG2Diyht{Ia
zU{W_tp9O(xFxw7bGO#{l!uHt`7`AJysF!?pxyc-36&9O84uw{OE$RWwxh&Ptjb*0V
zmcvvc1M`U<9+ne0ptr1=y`Obs#c{9N%v at sN>&_Cx0<&mZafTbZr#AFp1v*?A3Nlm0
zZzgj>xMKNXQ at 2&xYBnqPS-@>HKdpGnx?^IqQWS)y+YFH+ToxY7u|nTegHZRwP8V}b
zSae+sEb;%K*M1#ny}qNsYkLXA5B at 1?u>#SJLhH*7Xlm<8f;#-X1y`fH6W_i8$-egB
zukYdwC~E6a_+TB*MCN`S^Bz_3)<>=KiD-M`L~SkEkMBZtb6dHCdSP>WD2n&sT(mn?
z+PpV(Q at b~GE4~eH#;xQaDju($jbT{3o+O+D*Tz`w>>7;I`r2-i+`I$ItrjS_{sHo6
zTN_Ym=RSmE(Ze$(%wLGV!aq8Lpw!l&igq#Dm at 1(jj;@#MaSO(y^{Eo=O`A-R1mJvJ
aoLIp7h<sDgFE5ple~0izly{QHzx at jx&XA}8
literal 0
HcmV?d00001
diff --git a/recipes-devtools/qemu/qemu-qoriq/run-ptest b/recipes-devtools/qemu/qemu-qoriq/run-ptest
new file mode 100644
index 0000000..2206b31
--- /dev/null
+++ b/recipes-devtools/qemu/qemu-qoriq/run-ptest
@@ -0,0 +1,10 @@
+#!/bin/sh
+#
+#This script is used to run qemu test suites
+#
+
+ptestdir=$(dirname "$(readlink -f "$0")")
+export SRC_PATH=$ptestdir
+
+cd $ptestdir/tests
+make -f Makefile.include -k runtest-TESTS | sed '/: OK/ s/^/PASS: /g'
diff --git a/recipes-devtools/qemu/qemu-qoriq_git.bb b/recipes-devtools/qemu/qemu-qoriq_git.bb
new file mode 100644
index 0000000..7423b54
--- /dev/null
+++ b/recipes-devtools/qemu/qemu-qoriq_git.bb
@@ -0,0 +1,72 @@
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+
+require recipes-devtools/qemu/qemu.inc
+
+inherit ptest
+
+RDEPENDS_${PN}-ptest = "bash make"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \
+ file://COPYING.LIB;endline=24;md5=c04def7ae38850e7d3ef548588159913"
+
+SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/qemu;nobranch=1 \
+ file://powerpc_rom.bin \
+ file://run-ptest \
+ file://memfd.patch \
+ "
+
+SRCREV = "6c297a7ddd355d499ddd31353a763d57a092f851"
+
+S = "${WORKDIR}/git"
+
+COMPATIBLE_HOST_mipsarchn32 = "null"
+COMPATIBLE_HOST_mipsarchn64 = "null"
+
+PROVIDES = "qemu"
+
+python() {
+ pkgs = d.getVar('PACKAGES', True).split()
+ for p in pkgs:
+ if 'qemu-qoriq' in p:
+ d.appendVar("RPROVIDES_%s" % p, p.replace('qemu-qoriq', 'qemu'))
+ d.appendVar("RCONFLICTS_%s" % p, p.replace('qemu-qoriq', 'qemu'))
+ d.appendVar("RREPLACES_%s" % p, p.replace('qemu-qoriq', 'qemu'))
+}
+
+PPC_OECONF = '--enable-fdt --enable-kvm --with-system-pixman --disable-werror'
+EXTRA_OECONF_qoriq-arm64 = "--prefix=${prefix} --target-list=aarch64-softmmu --enable-fdt --enable-kvm --with-system-pixman --disable-werror"
+EXTRA_OECONF_qoriq-arm = "--prefix=${prefix} --target-list=arm-softmmu --enable-fdt --enable-kvm --with-system-pixman --disable-werror"
+EXTRA_OECONF_e5500-64b = "--prefix=${prefix} --target-list=ppc64-softmmu ${PPC_OECONF}"
+EXTRA_OECONF_e6500-64b = "--prefix=${prefix} --target-list=ppc64-softmmu ${PPC_OECONF}"
+EXTRA_OECONF_e6500 = "--prefix=${prefix} --target-list=ppc64-softmmu ${PPC_OECONF}"
+EXTRA_OECONF_e5500 = "--prefix=${prefix} --target-list=ppc64-softmmu ${PPC_OECONF}"
+EXTRA_OECONF_e500v2 = "--prefix=${prefix} --target-list=ppc-softmmu ${PPC_OECONF}"
+EXTRA_OECONF_e500mc = "--prefix=${prefix} --target-list=ppc-softmmu ${PPC_OECONF}"
+
+DISABLE_STATIC = ""
+
+do_install_append() {
+ # Prevent QA warnings about installed ${localstatedir}/run
+ if [ -d ${D}${localstatedir}/run ]; then rmdir ${D}${localstatedir}/run; fi
+ install -Dm 0755 ${WORKDIR}/powerpc_rom.bin ${D}${datadir}/qemu
+}
+
+do_compile_ptest() {
+ make buildtest-TESTS
+}
+
+do_install_ptest() {
+ cp -rL ${B}/tests ${D}${PTEST_PATH}
+ find ${D}${PTEST_PATH}/tests -type f -name "*.[Sshcod]" | xargs -i rm -rf {}
+
+ cp ${S}/tests/Makefile.include ${D}${PTEST_PATH}/tests
+ # Don't check the file genreated by configure
+ sed -i -e '/wildcard config-host.mak/d' \
+ -e '$ {/endif/d}' ${D}${PTEST_PATH}/tests/Makefile.include
+}
+
+INSANE_SKIP_${PN} += "already-stripped"
+FILES_${PN} += "/usr/share/qemu/* /usr/var/*"
+
+# FIXME: Avoid WARNING due missing patch for native/nativesdk
+BBCLASSEXTEND = ""
--
2.7.4
More information about the meta-freescale
mailing list