qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH V3 3/3] tests/acpi: add pxb/pxb-pcie tests


From: Marcel Apfelbaum
Subject: [Qemu-devel] [PATCH V3 3/3] tests/acpi: add pxb/pxb-pcie tests
Date: Tue, 28 Jun 2016 12:59:28 +0300

Add an ivshmem device with 4G shared memory to
pxb in order to check the ACPI code of 64bit MMIO allocation.

Signed-off-by: Marcel Apfelbaum <address@hidden>
---
 tests/acpi-test-data/pc/DSDT.pxb       | Bin 0 -> 6329 bytes
 tests/acpi-test-data/q35/DSDT.pxb_pcie | Bin 0 -> 9098 bytes
 tests/bios-tables-test.c               |  37 +++++++++++++++++++++++++++++++++
 3 files changed, 37 insertions(+)
 create mode 100644 tests/acpi-test-data/pc/DSDT.pxb
 create mode 100644 tests/acpi-test-data/q35/DSDT.pxb_pcie

diff --git a/tests/acpi-test-data/pc/DSDT.pxb b/tests/acpi-test-data/pc/DSDT.pxb
new file mode 100644
index 
0000000000000000000000000000000000000000..8c0dbf714e7fb7b7a7cdd32945f07f721d45d7d8
GIT binary patch
literal 6329
zcmb_g-ER}w6+hP>address@hidden>address@hidden;QAXB>j+psg5X
zLE3;;>v*Ls%iGGOYM*LQp5eJq{TKF6*!~M!b>WHhoEcxoI2nnRYAMb==lt&Zxc8iM
address@hidden)uyA2TEt#ppZ9~<N#{huF^j|JV?ts<O3QIPNha$|{j(cPLDoDyFT48mG
z{jKTz)o~tv>#&9kYcJ*JYYq3Cr_LG>=+T<XISu4F+bq~td)83PX~`~?wM7009+vF9
zRs+diEo)address@hidden(tc1oGI&3YbO
z;y5m`8jl?=JKe<h9S1s2d~a_Ty5rw>8t|7!0{;Eq=q~K?3CUJ#W-`ggcVZYZDu)Qb
z7RYBWkvHV7)jnq2&g48_6JcQJijm2wA>e!RLUaJ8M#^U1_Hnqdgu9YfL)_u$?#G{9
address@hidden)(;5vlWJPpEX0sqPBsmozun6z2#i?zCnO8q5^<address@hidden&GyKRBbHN2U
zGzV;nZNesmMz+9eUt2C{eRw#m#JpAM2kK39zyXG{)?pq0&xJ5vt9?#iS?y1pm>Qla
address@hidden|n%dvQ(Vj=Md}fLL6#gj;ktOyf{00|lZUHVtJl&baijfzay{MHZQ!?-<
address@hidden;`OkcUOOm~)6_ZD~LTNbo2_a#%e^)W;eP1J>%=lYROX_q-
zaJzTmMWi3I%*U44m*FqNk~G)y{3%A%6+I&sHOl-96l!Qgg4DbXzYT*lCwpoZNlkW0
z4G;D8;Eo3B3B3)W9trixC22p2T83)YSsY$*2~(U16?1Skg<o3AYMI3wSc=js%BVOI
zY9U>`fr3I+ud%r73y4q))m1%Zu|h>%2IZ`w7H@>C(?sp<xlIzfTWkYpx^<4&yC7Gw
zgbKF2%qi^^joU`84(?>A<address@hidden|y!9%d-KG|%n0T097uH3ncpcs}-rMj%a
zdiPA{F6$;c4Ib&UO;~?1)address@hidden@hxial(C$3hVAyTWeefEL?cH4&Xj%puMN-
z4BYjnP6Hk_b{%W`%;hk7OSMAP#*Es{w1i(7`pVK*PEw}IH*r<Fu_wIM#G;Sw^0+cz
zzNyw?2&ko#<2?S|2*kW(+k$7r<5B!BcjM2S7;address@hidden
znVjZR-;F~o9K|f<_!q~&El?)>8YCykJtb*tWfQ)lF>iUC394$?C6_$<sBP9v_N?i9
zf!(ZDCVtO)VaPh>?+07Y3|P;2)-&kep!JM$xb=+H)+u&%$T|=G0`u7c^I6Y)cF24-
zz<jo6UK=)#2gC<QpBpfr^UUXl%;y5k=dAWh1fw^H%}0FmB8BJ_!7UeUH?E9$o2|tC
zH6~Y)MY}7PulWa_%J1wqeWO<Fo8Ti}a*e6RYO3_$q5JuxKczPBeevMY=G}W=fW=g!
zvfOLGW1KHBcnz;v0(&address@hidden)l3p7
zteVA23XxjAo>CHaxmuQ7ASNc>CwIIqg}(UyjpbFNoK9!b<bi*lN0p>nU;IO;%R5cj
zQPb)4hEf{A9+r<;r|(>jh=Yw{B;TnM4YSdh3r_cVXIMbqyL`g2&K;0cmUkURk5WXx
z%n%z^g&Gdkuaw4BQ>{utVKC=qKHhQgNXAw<tQ1$cyA(address@hidden&eC8hT4ACxg
zUMxqtrGu)x{XAS14<FQpaMX2ppn6PQG3$w-Ko8xo1I}W^?#3Z;xjZz?CFuQOCN9CD
z-dW$^$&G1+HHII|P)sdpml6z<P|w$saV~*GcQ2I2ZOU*;3Q)address@hidden;yq
zWEAaUI*YsIUAQQ(address@hidden;48P-y8C4^lPtT(zZ1`jPy+1$L+)6bMl%+D|
zb^C6tqifX~-bC=Qv6${1!}$>%O~Aek^Tj$%vc0{RzkTk|4A;@I2D(!nof1UHUB$Fw
zM7)^pDjl8n+T+sB61C~jUXqesrd-si@(0wqe{X`PFy7INrrj$c5A7)V867)6){O6h
zz)E^;address@hidden()6aelfLGq3&$~VUBiKE14^K{-$j8yyia(shVaXqUTqz3f1swLc(|Z1P
z4|^PkC0DN%N;HWE6;address@hidden@8VON1w;*<address@hidden&H1n8AkI5ePIW($}
ztkTs+JH!SIIhReI;wQd6Iv6sAN?}rnUU<1I=cwMsm~c3bb9=*SbjWteGKpPMPC}Rb
zBvEgNXj*?be?>address@hidden@+%z^H*x^9p|2Egx%W}1`YM$<9kU&;dGBv0
address@hidden)Qpf-megF00Ulj)!hFbNi@;address@hidden
z-szohNkhGk4+bn7-V(<rJ^l)XDsL$ZF+3Cp?wQrm54>address@hidden)@DT
zT<E<(T9^v|c;}~l3cSL2?`=W^WyyO?<PrUJ3_|#Dg%)h%H$AuHl}Z0NrMs(dup;rN
address@hidden@D1vDo9NSHUV8p#FljluLHADjgkUfPkoNYz?uF3$c~H{D
z;QrMQjvjex1hd3{<P9}G;address@hidden>_cMJLP^^dPvgp}Nf7$u|T=i2+-6T?2_
zMsrXXyn<Iu!Sy<S2m7v>vnNL)43`wgSL{hCg6~Fr5h8V!BowmzoBf5g+Lso8uP*uy
z+$`#=cywe5J>;<*m7{cTlC{TP%HmHE19|address@hidden)11)address@hidden;K
zQ|C%iAH%N-jVd_8f=*f6Ckc>;address@hidden>address@hidden&1rgKc8-4RNMGvswriJ+I>h~
address@hidden(<3lFLZD!X84Zsf8f3*FM+2*U-ppM0Cn6T#vbMQe
z<zZ#gJ1yy%NCt>W&@8DX0N!%Z6wbicb^w&L5;Q8H(I99}XvO=juXQ94DzuIY=x7l1
ziqML`9{5_NK&a3f6VO-?^s3Ox1(XLug;address@hidden
zpyPp1p%ve+zONHO(address@hidden;sn9wppp$`6p>;|?r-Gn)p%pXV4@(Jz
z3av*3^hgl2Ahb>k=yV`dXgw;RM}wfM&^jZaGl5W{^_YMj3xaAw>u~`+9tag$X9aXN
z2wD_cPYCFVK&a4qQb11zK^KMAj|B9iK&a4qN<dE?231P4+O29m)J;5T;!|LUdfkRc
address@hidden|hcYB7!7iPnvN&ymw4&address@hidden>IXyeA`T
z^L-ha!$R%J$lf)address@hidden|pgdE>GNbk#KqOk~sJmt~*
z@&%$XorS#R(fe{QVoXdS$HQdDR0re~HKtf!PH}4ka*7<address@hidden|8n?YKZxM}h
e<address@hidden<fK&$?CC8)!WI*(KUa!u$_%*A-g;

literal 0
HcmV?d00001

diff --git a/tests/acpi-test-data/q35/DSDT.pxb_pcie 
b/tests/acpi-test-data/q35/DSDT.pxb_pcie
new file mode 100644
index 
0000000000000000000000000000000000000000..838ca876dece056934ed511197c2a8fa0d27fd11
GIT binary patch
literal 9098
zcmb7KU2hx56`dt1YB{8&rL>address@hidden;V8XzSrt(>&T
zLa~83Mi5B>62}h(62?LMRNByU{zCH;^40)->SOy_6!BBkb7yww8BzjbJ}l?Xo^$V<
z-Pt+IUHVPGb^jt`*1wDEUZt5UzESsl^jVBCYSXt<O<ZT~J-=A)Sm{{8YVW5-8=Io-
address@hidden
zjA$3FbmnVHi~i!(x>qgQ&U!{b56T(DdAn1o`kBJF+_pQOY{l(address@hidden
z&TOyMs4>@1b=I3+;{H3#^Iu==uZ;J0vNPOi2mf6De&address@hidden
address@hidden)L5oecWJ}V)3)z?(YtAVh&_t}z1W}oqNi}O+o7EyfvNvtM)p#P#lv@;
zz?OPScBNiwDLoccVEj0`m3k{+8OFZ-A<Yu)eTU+i*Gg-CuHNuFIrmDZ*($J*db%NX
zZGO<@PPd==yw_#DZu;oxko6}&address@hidden)
z=j!;2G#om#?E^1aZ5BG>aAE)p7)-s|*og5iot_%zLyYh7SbP68wVAgb6ynUnR}o*e
zddrUqR4K*}2sH~-iFt+6n&address@hidden>_G}3uKTed<L
zGADL{S!HXN?Xp<address@hidden&Xcs5wSHXu&T
z3=?fWc7Ztrd=**-zyx#W<address@hidden<wN!`F(~NpiL&*6{QbCXU)U3cN(mg3MWtxW
zk~34Kp#ySKn#b|Sab{m|M4A;!vow^3#|C+DOi#=cdmKX^8+q({)mve1rh{)address@hidden
z^P3i(0>}H0xTNZhR(*Q)y}jvl0<(wJ)>cbQwk@<**mQ>ac?>~W1#tuwHa(HZ935e4
zkhmx!7J!p-pWp$iLSiDnz{Ug<*eD{Vg2tF&0xFmYiHXq&Y+Nwa2x$I^tO6RBOh8pg
address@hidden
z+|-Fs*J&F%Z9}JR>O`pP#0sGu>6D=}W$Hwz>*R(`Zs_EuPK3J7w4pO?=uDeB5$Zaz
zQfcQiW9ZD7IuYtRCk&address@hidden&^c-9M5ybWGIUNEI;TvX2z8x~q0=#R
zI;Kv9y3VYjGi&I~nmQ5cI;Rbt(address@hidden>O`pPbPb)Zq0=>WBGh%x
z8aihUowKG+gu2c-L+6~KbI#O>P}h0N(0R(address@hidden&YL<B>N-ygW+7S$
zPYY%-TI^0sruQTyrXOL?7|b&U^Nh(vs58$R%(DjbtjR>EGtU{!a|ZLA$wa6#&l}A1
z2J^hhM5r^L5lrPW&j_Yk<DZdCwQwUOrgD-6qvnE9bHS{MP}a0zpaso9%gyS*K+#6w
z$UqUGtPJ7^R8bhH#0g8XaK9sf$}wXSszPEaX)sWURR*d-$v`DkFv&m>Vl>J?B{qtv
zrt(@cPzfCvC_)TfU}2yV8%4xa2bT;~LIsly6rs`y1C?08gn?>MGEfN>Ofpb}N+%3d
zVg(ZhszJ#>B~&oUKoKgPFi?pVOc<yJB?FaE!6XAksC2?WB~~zDpc<46R6+%l3>2Z#
z2?Lc_!GwWoP%=;n6-+Wvgi0q2RAL1a2C6~HKqXW#$v_b*oiI>|6-*eY1|<WPP{AYv
zMW}SbKqXc%VW1k63{*k|lMEE0(g_2VSiyvWYEUvz2^CB-P=rb+3{+wT69%e5$v`Dk
zFv&m>DxEM;i4{y3s0Jkil~BPX14XEG!ayZfFkzq?lnhit1(OUEq0$Khl~}=qfof1P
zPze=GGEjs{Ck#|#1rr9ULCHWRR4~av5h|T9P>B^x7^ns%1C>z0Bm+gLbizO-Rxn|p
z8k7uFLIsly6rs`y1C?08gn?>MGEfN>Ofpb}N+%3dVg(ZhszJ#>B~&oUKoKgPFi?pV
zOc<yJB?FaE!6XAksC2?WB~~zDpc<46R6+%l3>2Z#2?Ir>87Ly%KoRN&icm99jR^zQ
zm}H<DlMGa2!ay}93{+#1foe=LP>l%#)tE3)jY$ToG08wRCJa<#!ay}98K}l21J#%?
zP(<qN!axz>jERFu28s};L50Lr#})>address@hidden)address@hidden&}Z(M4lI=QGd=NR
z^^ks$K1|YAp}qghm*Vs*m7W#Q(+I2H*eJkpH;T0JXye-q&qg*%)Lx-YnKl*MovCi%
address@hidden>`ppnl`^7Lm(mZC>address@hidden)$r~PpJLR)AR2fw
zQX9uTLP7l&&){(address@hidden>}Gb3&wMt?QgOH&!}`sz5+j>CC7(;address@hidden
zd{6XD(UT5#NCOh_sZO)ewC?XjW1#ZXA5||7RmWq6A6>nuRWFL_MT}3cUUZMIUThx(
zq}>~;&SOte-qXr^qP#a$-aDbZ7nS#i%j0p`k5=z%<$Y1!A1d#kP~MNqmxjwHo}zq7
zD_;`jOGD*LCzLNm<yVHwk3B{C6|MY=D8DjPe&address@hidden@Z^
z^5v*}Ww`wKQ<Sf0<tw6mWvG1Rgz^=XPtZ~}T;7r8)#8EM3VO^Yo?4oHZc<address@hidden
zN;address@hidden;_ZlPVWZ$vrMy|address@hidden;=GaYVK
zM$*Z?W7CaX2eW26+`o*ZlYPgg8=2R0W;)!|jHHu&$EF*Zr>D$xxYHR)C;QBFPW5H^
zhQQ<3pFAtCH%d)46FDwG_|Jq_zm}`Kdn^3o?LXvp-+J%e+q*a3dXKd&uU=b?X5<9t
zW$U}lcNr^#N89indf)P01`qW2FH%roIgg&pd)2k3<u!uWEU)z2yu}ip7x;F2f0{sX
zuUV?)fb<Kk93CZC*Q$2Ns1x4w!gcWm0b`Nln<#koYCgZ1rxD0EG-GboYpuK)>+{|Y
z`^3xV^Ecf}60d#=srJR|address@hidden)K(9>
zZZJlQp01EJoC+C^&address@hidden)QYhHN+~j&Q%67!f4S1P<3Q90%VD
address@hidden<1pRN{OdpNhvva{-QA#|sTo-g>address@hidden@UH3
zd$<#a;Mmc%KgK&3Oe<Vr_+W-&address@hidden
zDPub~-*(SpE|address@hidden(Y&Tp?5thV-jo$C1(mv7EGOz~^?V_J1(oQU4Bq<F
zySsOCJ0q8+J0org`>9^wuQl)v33sDyE2w#^%q=7XlweQxVZO94(!QgkN56j1B}Ui{
za1HcldI3$40B04`%A(-mT;J^lbgo4&address@hidden)V+53h2t$(uRNCVIpC=7nGWv
address@hidden>u3MN7aC3-jMh-z??Vxexa(0>address@hidden|_&QpC69oNA*VG5pJ!C$R{z_nru#^
zS&_}3)=H}Pc{HQmxuEbyggt|address@hidden)bDny`0jgstAH#LY$f!Iy#zWads
zX#Xz7mgvliPV3g7hgvn-SL^%ZJ?dtVyu6fM;O9QYQvF0SNhO&iQOH|f;vDHa(1hkB
zxKVQs1L}lSnRbVioOXsZPTCcnA)*bMS1!9h3F>bI*6;}k(c4icwd?*Yz{E|AfNlos
address@hidden&-3tL`du#+~p*tFYBPPBum}mjVjCN1sN?6v{Et>T-Rh?S)dSp`By7vlR
address@hidden<9qJal=x{EPRI7J0&address@hidden|
zESyfsmvcVbrVeY+Q9wtwcZ0_UJ;kUeKIrk-cKG3)E$%RSiFt3EvGDFDa^KswSh#(!
zyUA{E9(address@hidden(ZZoj9T5rypZ`IG=y}LC)J86SF(oBl{?zQ*CsjkK%h1EQUvDY>(|@
zORt(8Z&address@hidden&aT<~o&qxVk${)2$C<|&%SOK?XV&+~^EfkzC&V24uRilQhC#nC
address@hidden(MOSly;t=;eTe(}Kpef`_7Yg+<X<U<Rxj$;ZYA(ng;s&5<v|m-61ik9
zY2huo^W1eTc+KU`bTVP#Fra<address@hidden@4VNU(g;Jrt_;O2cv!P;>zouyp5aKC<WKB
address@hidden<address@hidden)pd&|CDe(-`-!KAWln0
zjusGXYSgNsg)1r7-ak)(0=vq^B8W>AORHE(address@hidden<-Zj#p7m{T5;
zf15}*^LhMVfc}KiK6t*Fe?<m3nHIwhZ*$SdYEO+N)mWxR`(UcM7!iSuF*jNF)>`cU
D-{y{a

literal 0
HcmV?d00001

diff --git a/tests/bios-tables-test.c b/tests/bios-tables-test.c
index 92c90dd..3d87f9e 100644
--- a/tests/bios-tables-test.c
+++ b/tests/bios-tables-test.c
@@ -838,6 +838,41 @@ static void test_acpi_piix4_tcg_ipmi(void)
     free_test_data(&data);
 }
 
+static void test_acpi_piix4_tcg_pxb(void)
+{
+    test_data data;
+
+    memset(&data, 0, sizeof(data));
+    data.machine = MACHINE_PC;
+    data.variant = ".pxb";
+    data.required_struct_types = base_required_struct_types;
+    data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types);
+    test_acpi_one("-machine accel=tcg"
+                  " -device pxb,id=pxb,bus_nr=0x80,bus=pci.0"
+                  " -object 
memory-backend-file,size=4G,mem-path=/tmp/shmem,share,id=mb"
+                  " -device ivshmem-plain,memdev=mb,bus=pxb",
+                  &data);
+    free_test_data(&data);
+}
+
+static void test_acpi_q35_tcg_pxb_pcie(void)
+{
+    test_data data;
+
+    memset(&data, 0, sizeof(data));
+    data.machine = MACHINE_Q35;
+    data.variant = ".pxb_pcie";
+    data.required_struct_types = base_required_struct_types;
+    data.required_struct_types_len = ARRAY_SIZE(ipmi_required_struct_types);
+    test_acpi_one("-machine q35,accel=tcg"
+                  " -device pxb-pcie,id=pxb,bus_nr=0x80,bus=pcie.0"
+                  " -device ioh3420,id=rp,bus=pxb,slot=1"
+                  " -object 
memory-backend-file,size=4G,mem-path=/tmp/shmem,share,id=mb"
+                  " -device ivshmem-plain,memdev=mb,bus=rp",
+                  &data);
+    free_test_data(&data);
+}
+
 int main(int argc, char *argv[])
 {
     const char *arch = qtest_get_arch();
@@ -856,6 +891,8 @@ int main(int argc, char *argv[])
         qtest_add_func("acpi/q35/tcg/bridge", test_acpi_q35_tcg_bridge);
         qtest_add_func("acpi/piix4/tcg/ipmi", test_acpi_piix4_tcg_ipmi);
         qtest_add_func("acpi/q35/tcg/ipmi", test_acpi_q35_tcg_ipmi);
+        qtest_add_func("acpi/piix4/tcg/pxb", test_acpi_piix4_tcg_pxb);
+        qtest_add_func("acpi/q35/tcg/pxb-pcie", test_acpi_q35_tcg_pxb_pcie);
     }
     ret = g_test_run();
     boot_sector_cleanup(disk);
-- 
2.4.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]